freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

多線程網(wǎng)絡(luò)文件傳輸系統(tǒng)的設(shè)計與實現(xiàn)_畢業(yè)論文-文庫吧資料

2025-03-12 08:35本頁面
  

【正文】 調(diào)度。這項操作稱為上下文轉(zhuǎn)換。在這些對象中,只有某些對象被視為可以調(diào)度的對象。這個上下文結(jié)構(gòu)反映了線程上次運行時該線程的 CPU寄存器的狀態(tài)。當(dāng)一個線程終止運行時,在與它相關(guān)聯(lián)的線程內(nèi)核對象的所有未結(jié)束的引用關(guān)閉之前,該內(nèi)核對象不會自動被釋放。 ? 如果線程是進程中最后一個活動線程,系統(tǒng)也將進程視為已經(jīng)終止運行。其他對象只有在擁有線程的進程終止運行時才被撤消。但是一個線程擁有兩個用戶對象,即窗口和掛鉤。 線程的終止 當(dāng)線程終止運行時,會發(fā)生下列操作: ? 線程擁有的所有用戶對象均被釋放。該內(nèi)存是從進程的地址空間分配而來的,因為線程并不擁有它自己的地址空間。這使得單個進程中的多個線程確實能夠非常容易地互相通信。新線程運行的進程環(huán)境與創(chuàng)建線程的環(huán)境相同??梢詫⒕€程內(nèi)核對象視為由關(guān)于線程的統(tǒng)計信息組成的一個小型數(shù)據(jù)結(jié)構(gòu)。 當(dāng) CreateThread 被調(diào)用時,系統(tǒng)創(chuàng)建一個線程內(nèi)核對象。線程函數(shù)必須由一個返回值,它將成為該線程的退出代碼。線程函數(shù)可以使 14 用任何合法的名字。在單個 CPU上,由于操作系統(tǒng)把 CPU 的時間分成很短的片段分配給每個線程,這樣給人的感覺好像是多個線程真的同時運行,他們只是“看起來”同時在運行。線程技術(shù)使不同的代碼可以同時運行。在每一個 Win32的應(yīng)用程序中都至少有一個線程,它通常被稱為主線程或默認線程。這些線程還能共享內(nèi)核對象句柄,因為句柄表依賴于每個進程而不是每個線程存在。因此,如果在單進程環(huán)境中,你有兩個或多個線程正在運行,那么這兩個線程將共享單個地址空間。線程總是在某個進程環(huán)境中創(chuàng)建的,而且它的整個壽命期都在該進程中。 2.另一個是線程堆棧,它用于維護線程在執(zhí)行代碼時需要的所有函數(shù)參數(shù)和局部變量。 1.一個是線程的內(nèi)核對象,操作系統(tǒng)用它來對線程實施管理。雖然 ExitProcess()函數(shù)可以在結(jié)束進程的同時通知與其相關(guān)聯(lián)的動態(tài)鏈接庫,但是由于它的這種執(zhí)行的強制性,使 得 ExitProcess()函數(shù)在使用上將存在安全隱患。 Exit Process()函數(shù)即可在進程中的某個線程中使用,并將立即終止本進程的運行。這種進程的終止方式是進程的正常退出,進程中的所有線程資源都能夠得到正確的清除。 13 結(jié)束進程:進程只是提供了一段地址空間和內(nèi)核對象,其運行是通過在其地址空間內(nèi)的主線程來 體現(xiàn)的。相對于普通 PC 來說,服務(wù)器在穩(wěn)定性、安全性、性能等 方面都要求更高,因此 CPU、 芯片組 、內(nèi)存、磁盤系統(tǒng)、網(wǎng)絡(luò)等硬件和普通 PC 有所不同。 服務(wù)器( Server) 服務(wù)器指一個管理資源并為用戶提供服務(wù)的計算機軟件,通常分為文件服務(wù)器、數(shù)據(jù)庫服務(wù)器和應(yīng)用程序服務(wù)器。一般安裝在普通的客戶機上,需要與服務(wù)端互相配合運行。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務(wù)合理分配到 Client 端和Server端來實現(xiàn),降低了系統(tǒng)的通訊開銷。在估計該連接所需的當(dāng)前延遲時通常利用一些統(tǒng)計學(xué)的原理和算法(如 Karn 算法),從而得到 TCP 重發(fā)之前需要等待的時間值。當(dāng)發(fā)送一個數(shù)據(jù)段時,同時啟動連接的定時器,如果在定時器 超時前確認到達,則記錄所需要的時間( M),并修正 RTT 的值,如果定時器超時前沒有收到確認,則將 RTT 的值增加 1 倍。目前采用較多的算法是 Jacobson 于1988 年提出的一種不斷調(diào)整超時時間間隔的動態(tài)算法。它需要根據(jù)互聯(lián)網(wǎng)當(dāng)時的通信情況,給出合適的數(shù)據(jù)重發(fā) 。在發(fā)送一個數(shù)據(jù)段的同時啟動一個重發(fā)定時器,如果在定時器超時前收到確認 就關(guān)閉該定時器,如果定時器超時前沒有收到確認,則重傳該數(shù)據(jù)段。一端將 字節(jié)流放到 TCP 連接上,同樣的字節(jié)流將出現(xiàn)在 TCP 連接的另一端。如果一方的應(yīng)用程序先傳 10 字節(jié),又傳 20 字節(jié),再傳 50 字節(jié),連接的另一方將無法了解發(fā)方每次發(fā)送了多少字節(jié)。 TCP不在字節(jié)流中插入記錄標(biāo)識符。這將防止較快主機致使較慢主機的緩沖區(qū)溢出。 5. TCP 還能提供流量控制 , TCP 連接的每一方都有固定大小的緩沖空間。 4. 既然 TCP 報文段作為 IP 數(shù)據(jù)報來傳輸,而 IP 數(shù)據(jù)報的到達可能會失序,因此TCP 報文段的到達也可能會失序。這是一個端到端的檢驗和,目的是檢測數(shù)據(jù)在傳輸過程中的任何變化。當(dāng) TCP 收到發(fā)自 TCP 連接另一端的數(shù)據(jù),它將發(fā)送一個確認。 2.當(dāng) TCP 發(fā)出一個段后,它啟動一個定時器,等待目的端確認收到這個報 文段。這和 UDP 完全不同,應(yīng)用程序產(chǎn)生的數(shù)據(jù)報長度將保持不變。廣播和 多播 不能用于 TCP。這一過程與打電話很相似,先撥號振鈴,等待對方摘機說 “ 喂 ” ,然后才說明是 誰 。 TCP 提供一種面向連接的、可靠的字節(jié)流服務(wù)。不是所用的 TCP通信量始終都能通過所有的防火墻, UDP經(jīng)常用作視頻和音頻流(例如 RealAudio)的傳輸方式。分組在路由器上可能會發(fā)生溢出,從而帶 來嚴(yán)重的問題,但是,差錯校驗和序列編號等功能也可以加入到選用 UDP 的應(yīng)用中去。因此,它通常用于多媒體應(yīng)用,如實時的視頻會議,流式音頻和視頻以及因特網(wǎng)電話。 UDP 雖然不如 TCP可靠,卻可以在網(wǎng)絡(luò)上快速地發(fā)送大量的數(shù)據(jù),因而可以用于廣播?;旧希?UDP 在 IP 上增加了端口尋址功能。如果檢測到錯誤,分組將被丟棄,且不會執(zhí)行進一步的動作。即使在 Inter 暫時出現(xiàn)堵塞的情況下, TCP 也能夠保證通信的可靠。這是因 為它為兩臺計算機之間的連接起了重要作用:當(dāng)一臺計算機需要與另一臺遠程計算機連接時, TCP 協(xié)議會讓它們建立一個連接、 9 發(fā)送和接收數(shù)據(jù)以及終止連接。 TCP 提供 端到端 、全雙工通信;采用字節(jié)流方式,如果字節(jié)流太長,將其分段;提供緊急數(shù)據(jù)傳送功能。 Windows Sockets 規(guī)范定義并記錄了如何使用 API 與 Inter 協(xié)議族( IPS,通常我們指的是 TCP/IP)連接,尤其要指出 的是所有的 Windows Sockets 實現(xiàn)都支持流套接口和數(shù)據(jù)報套接口。 WINSOCK 是在 Windows 進行網(wǎng)絡(luò)通信編程的 API 接口,也是 Windws 網(wǎng)絡(luò)編程的事實標(biāo)準(zhǔn)。線程是一組指令的集合,或者是程序的特殊段,它可以在程序里獨立執(zhí)行,也可以把它理解為代碼運行的上下文。 TCP 提供端到端通信;采用字節(jié)流方式,如果字節(jié)流太長,將其分段;提供緊急數(shù)據(jù)傳送功能。 關(guān)鍵要點分析 文件傳輸?shù)谋举|(zhì)用一句話概括就是:發(fā)送方將文件數(shù)據(jù)讀出來,然后調(diào)用套接字的發(fā)送函數(shù)將數(shù)據(jù)傳輸?shù)浇邮辗剑邮辗秸{(diào)用套接字接收函數(shù)接收數(shù)據(jù),然后重新建立文件并將數(shù)據(jù)寫入文件。這樣就能看到完整的已發(fā)送和已接收到的消息列表,還可以對發(fā)送消息的應(yīng)用程序和接收消息的應(yīng)用程序進行比較。消息被發(fā)送之后,就被加到已發(fā)送消息的列表中。最后,如果一方或雙 方完成了對話,連接即關(guān)閉,就像打完電話一樣,你能夠知道電話中的對方是否把電話給掛斷了,或者雙方由于其它原因連接不上了。一旦兩個應(yīng)用程序建立了連接,它們之間就可以互相發(fā)送和接收消息 。當(dāng)然,要完成電話的呼叫,必須知道被呼叫方的電話號碼。這種試圖找開連接的方式就類似于向某人打電話。計算機上的一個應(yīng)用程序正在等待另一個程序打開通信連接,可以說這前一個應(yīng)用程序正在“偵聽”該連接請求,這很像你在等待某人給你打電話時,一直在留心電話鈴聲。 軟件需要實現(xiàn)的功能 這里就分別介紹了服務(wù)器和客戶端需要完成的功能,其中由于文件只能從服務(wù)器發(fā)送到客戶端,而不能從客戶端發(fā)送到服務(wù)器,所以在文件傳輸時服務(wù)器只能發(fā)送文件而客戶端只能接收文件。 服務(wù)器只能開啟一個,并向客戶端傳送文件,客戶端可 以開啟多個,并且可以同時接收服務(wù)器的文件,傳送文件時,服務(wù)器可以實現(xiàn)對文件的分割,所以可以傳送較大的文件。 功能模塊描述 我設(shè)計實現(xiàn)的文件傳輸系統(tǒng)主要包括兩個大的部分:服務(wù)器端和客戶端。根據(jù)客戶端對服務(wù)器端訪問的特點,在服務(wù)器端采用異步方式監(jiān)聽客戶端的連接請求,避免客戶端長時間等待服務(wù)器端的回應(yīng)出現(xiàn)卡死現(xiàn)象,更好的完成客戶的文件傳輸需求,充分利用服務(wù)器端的系統(tǒng)資源。 本文件傳輸系統(tǒng)主要實現(xiàn)了服務(wù)器端和客戶端的文件傳輸,并且采用多線程技術(shù),有效地提高了 文件傳輸?shù)男?。其中服?wù)器端開啟服務(wù),監(jiān)聽客戶端的連接,然后如果有客戶端開啟,建立了連接以后,就可以由服務(wù)器端選擇文件來進行發(fā)送傳輸??蛻舳讼日{(diào)用connect()與服務(wù)器建立連接,然后用 send()發(fā)送數(shù)據(jù);服務(wù)器端先調(diào)用 listen()偵聽客戶端的連接請求,然后調(diào)用 accept()對連接請求進行響應(yīng),如果需要接收數(shù)據(jù),則會調(diào)用 receive()接收。 綜上所述,目前的文件傳輸系統(tǒng)在文件多線程傳輸?shù)膶崿F(xiàn)上還不是很完善,雖然可供用戶選擇的文件傳輸軟件種類繁多,但仍然存在質(zhì)量良莠不齊、功能各有異同的問題 ,用戶在使用的時候也總會遇到諸多的不便,需要對一些技術(shù)做進一步的改進和提高,對于那些經(jīng)常需要同時傳輸多個文件的特殊行業(yè)和生產(chǎn)領(lǐng)域,更加需要有針對性的進行改善。過去,企事業(yè)單位往往將文件傳輸系統(tǒng)與 OA 系統(tǒng)結(jié)合在一起并將其作為 OA 系統(tǒng)的一個模塊來處理。許多軟件在斷點續(xù)傳、多線程傳輸、進度顯示以及文件的動態(tài)壓縮等方面還存有欠缺。迅雷主要針對的是文件快速下載的實現(xiàn),而飛鴿傳書則主要應(yīng)用于局域網(wǎng)中的文件共享。這些軟件大都是針對用戶下載來設(shè)計的,能夠?qū)崿F(xiàn)功能完善的下載服務(wù)。由于網(wǎng)絡(luò)編程技術(shù)的發(fā)展,人們使用的文件傳輸軟件也表現(xiàn)出更多的高性能、易操作、穩(wěn)定好等特點,但是開發(fā)者在注重下載功能實現(xiàn)的同時,往往忽略了用戶上 傳文件的需要。隨著科學(xué)技術(shù)的發(fā)展,各種以局域網(wǎng)或是廣域網(wǎng)為基礎(chǔ)的文件傳輸系統(tǒng)已經(jīng)進入穩(wěn)健發(fā)展時期。 國內(nèi)外研究現(xiàn)狀 目前,國內(nèi)外企事業(yè) 單位對文件傳輸系統(tǒng)的認識和使用情況并不好,各企事業(yè)單位大多在局域網(wǎng)內(nèi)實現(xiàn)文件傳輸,資源共享方面還存在較多缺陷,對相關(guān)技術(shù)的理論研究也不夠深入。 windows socket 進行高性能開發(fā) 本系統(tǒng)采用 windows socket 實現(xiàn), windows socket 是因特網(wǎng)上進行通信程序設(shè)計的常用方法,是開發(fā)高性能網(wǎng)絡(luò)程序的基礎(chǔ),采用 socket 方法可以編寫出滿足各種應(yīng)用需要的網(wǎng)絡(luò)程序,具有很強的適應(yīng)性。在國內(nèi),隨著企業(yè)資源管理的規(guī)范化和規(guī)模的不斷擴大,企業(yè)的計算機資源管理將不僅僅停留在依靠硬件或者 Inter 網(wǎng)絡(luò)獲取,而且將會向著安全的內(nèi)部網(wǎng)絡(luò)化資源管理方式邁進。 文件傳輸系統(tǒng)由于比較復(fù)雜,可變因素較多,安全性低,因此發(fā)展還不成熟。 研究背景及意義 研究背景 目前,國內(nèi)外企業(yè)對局域網(wǎng)的文件傳輸系統(tǒng)認識和使用情況并不好,各個企業(yè)單位在局域網(wǎng)內(nèi)實現(xiàn)文件傳輸,資源共享還有很大的缺陷。否則,傳輸?shù)奈募霈F(xiàn)很多問題。但是要遇到一個問題就是各個 線程 對文件的共享問題。創(chuàng)建線程后,一個應(yīng)用程序可以同時有多個線程一起運用 CPU 的資源,大大的加強對 CPU 的利用率。而服務(wù)器端繼續(xù)處于監(jiān)聽狀態(tài),繼續(xù)接收其他客戶端的連接請求。為此,客戶端的套接字必須首先描述它要連接的服務(wù)器的套接字 ,指出服務(wù)器套接字的地址和端口號,然后再向服務(wù)器端套接字提出連接請求。服務(wù)器監(jiān)聽是指服務(wù)端套接字并不定位具體的客戶端套接字,而是處于等待連接的狀態(tài),實時監(jiān)控網(wǎng)絡(luò)狀態(tài)。 要通過 Inter 進行通信,至少需要一對套接字,其中一個運行在客戶端,稱之為ClientSocket,另一個運行于服務(wù)器端面,稱為 ServerSocket。 其次,在 Windows 中編程是通過套接 字 SOCKET 來編程的,套接 字 可以看成是兩個網(wǎng)絡(luò)應(yīng)用程序進行的通信時,各自通信連接種的一個端點。 網(wǎng)絡(luò)應(yīng)用程序是一種在不同系統(tǒng)的新 進程間通過網(wǎng)絡(luò)通信協(xié)議進行的進程間的通 3 信問題。在通信協(xié)議的分層模型中,文件傳輸協(xié)議是在 TCP(Transmission control Protocol,傳輸控制協(xié)議 )之上的一個應(yīng)用層協(xié)議,應(yīng)用程序之間的通信需要用到傳輸層提供的字節(jié)流透明無誤傳輸服務(wù)。比如說,用戶發(fā)出一條命令 ,要求服務(wù)器向用戶傳送某一個文件的一份拷貝,服務(wù)器會響應(yīng)這條命令,將指定文件送至用戶的機器上。在實現(xiàn)的層面上, FTP又可理解為一個可用于文件傳輸?shù)目蛻魴C /服務(wù)器系統(tǒng)( C/S 架構(gòu)),該系統(tǒng)包括客戶機端程序和服務(wù)器端程序,客戶端和服務(wù)器端通信規(guī)則為 FTP協(xié)議。 FTP 允許您從數(shù)以千計的遠程主機上把文件傳輸?shù)侥闹鳈C上,您可以傳輸計算機程序、圖像、聲音、電影或其它任何文件。基于不同的計算機操作系統(tǒng),就有不同的 FTP 應(yīng)用程序,而所有的這些應(yīng)用程序都遵守同一種協(xié)議,這樣我們就可以把自己的文件傳送給別人,或者從其他的計算機用戶中獲得文件。而這些連接在網(wǎng)上的計算機也在各自運行著不同的操作系統(tǒng),有運行Windows、 Dos 的個人電腦,有運行 MacOS 的蘋果機,也有運行 unix 的服務(wù)器等,而各種操作系統(tǒng)的文件結(jié)構(gòu)也各不相同。在 Inter 上早期實現(xiàn)文件傳輸并不是一件很容易的事,因為Inter 是一個非常復(fù)雜的計算機環(huán)境,有個人電腦、工作站、 MAC、服務(wù)器、還有大型機等。 FTP 中文意思為文件傳輸協(xié)議,用于管理計算機之間的文件傳送。 procedures in Windows XP system and under Visual C + + piler, and Running well
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1