影音先锋男人资源在线观看,精品国产日韩亚洲一区91,中文字幕日韩国产,2018av男人天堂,青青伊人精品,久久久久久久综合日本亚洲,国产日韩欧美一区二区三区在线

linux操作系統(tǒng)-實驗九-Linux多線程文件傳輸實現(xiàn)

上傳人:簡****9 文檔編號:25834934 上傳時間:2021-08-01 格式:DOCX 頁數(shù):5 大小:48.10KB
收藏 版權(quán)申訴 舉報 下載
linux操作系統(tǒng)-實驗九-Linux多線程文件傳輸實現(xiàn)_第1頁
第1頁 / 共5頁
linux操作系統(tǒng)-實驗九-Linux多線程文件傳輸實現(xiàn)_第2頁
第2頁 / 共5頁
linux操作系統(tǒng)-實驗九-Linux多線程文件傳輸實現(xiàn)_第3頁
第3頁 / 共5頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《linux操作系統(tǒng)-實驗九-Linux多線程文件傳輸實現(xiàn)》由會員分享,可在線閱讀,更多相關(guān)《linux操作系統(tǒng)-實驗九-Linux多線程文件傳輸實現(xiàn)(5頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、學 號 姓 名 專業(yè)、班 實驗地點 實 1-416 指導教師 實驗時間 2015.12.15 一、實驗?zāi)康募耙? 通過本實驗的綜合實踐,使學生掌握 Linux多線程、socket編程和文件系 統(tǒng)操作等多項知識。 以學生自主訓練為主的開放模式組織教學 二、實驗設(shè)備(軟硬件環(huán)境)及要求 安裝后Ubuntu系統(tǒng)的VMWare 三、實驗內(nèi)容與步驟 實驗內(nèi)容:Linux多線程文件傳輸實現(xiàn) 實驗步驟: 包括服務(wù)器和客戶端兩部分。 ?6.1服務(wù)器端創(chuàng)建監(jiān)聽與文件管理 服務(wù)器負責的功能模塊主要有兩部分, 一是對連接進來客戶端所有線程的管 理和

2、服務(wù)器目錄下的文件管理;二是創(chuàng)建線程來單獨監(jiān)聽客戶端的動作。 為了使 于管理,創(chuàng)建兩個user.txt 和client.txt 兩個文檔來分別負責服務(wù)命的連接和 客戶端的連接。user.txt中存放了服務(wù)器名和密碼。client.txt 存放了連接客 戶端名字和密碼。 首先對服務(wù)器的創(chuàng)建有個監(jiān)測,即在啟動時先核實服務(wù)器的所有者 username 和密碼password,將輸入的用戶、密碼與user.txt中的用戶密碼比較,匹配成 功則同思啟動,否則return -1 表失敗。 接意創(chuàng)建一個socket套接口,綁止Ip設(shè)置客戶端的最大連接數(shù)為10,然后創(chuàng) 建一個sever線程來實現(xiàn)對

3、服務(wù)器本身監(jiān)聽動作。 接卜來創(chuàng)建線程完成對客戶端的監(jiān)聽 監(jiān)聽等待連接: while(1) 實驗序號:9 《操作系統(tǒng)》實驗報告 實驗項目名稱:Linux多線程文件傳輸實現(xiàn) sockdata = accept(sockfd,(struct sockaddr*)0,(int*)0); 我們定義結(jié)構(gòu)體: struct client_t { pthread_t tid; int conn_fd; int used; char name[20]; }p_client[10]; 來存放每個客戶端的socket信息、線程標識、使用號、連接號和客戶名。創(chuàng)建 線程實現(xiàn)單

4、獨監(jiān)聽: p_client[i].conn_fd = sockdata; p_client[i].used = i; strcpy(p_client[i].name , client_name); pthread_create(&p_client[i].tid,NULL,&client_conn,&p_client[i]) 接下來是線程client conn()的功能 監(jiān)聽客戶端的功能完成。 ?6.2客戶端連接與文件傳輸 在客戶端這邊同樣適用了檢測機制,運行客戶機時要將用戶名、密碼以及ip 地址和端口號作為參數(shù)輸進來,先建立與服務(wù)器的連接,然后將用戶名和密碼發(fā) 送到服務(wù)端檢測,

5、如果檢測失敗則接收到一條拒絕信息, 連接斷開,如果檢測成 功則接收到一條確認信息,雙方通信開始。 ?6.3實現(xiàn)步驟 基于多線程的TCP套接字文件傳輸通信工作流程圖,如圖 1所示。 通信工作的大致流程: 1) 服務(wù)器先用socket()函數(shù)來建立一個套接口,用這個套接口完成通 2) 服務(wù)器用bind()函數(shù)來綁定一個端口號和ip地址,是套接口與指定 的端口號和ip關(guān)聯(lián)。 3) 服務(wù)器調(diào)用listen()函數(shù),是服務(wù)器的端口和Ip處于監(jiān)聽狀態(tài),等 待網(wǎng)絡(luò)中某一個客戶機的連接請求。 4) 客戶機用socket()函數(shù)建立一個套接口,設(shè)定遠程ip和端口 5) 客戶機調(diào)用connec

6、t。函數(shù)連接遠程計算機指定的端口。 6) 服務(wù)器調(diào)用accept()函數(shù)來接受遠程計算機的連接請求,建立起與 客戶機之間的通信連接。 7) 建立連接之后,客戶機用 write()函數(shù)(或send())想socket中寫 入數(shù)據(jù)。也可以用read()函數(shù)(或recv()函數(shù))賭氣服務(wù)器發(fā)送來的數(shù)據(jù)。 8) 服務(wù)器用read()函數(shù)(或recv()函數(shù))來讀取客戶機發(fā)來的數(shù)據(jù), 也可以用write()函數(shù)(或send()函數(shù))來發(fā)送數(shù)據(jù)。 9) 完成通信以后,使用close()函數(shù)關(guān)閉socket連接。 客戶機進程 服務(wù)器進程 圖1 TCP套接字通信工作 四、實驗結(jié)果、

7、數(shù)據(jù)處理與過程截圖 1 .打開兩個終端分別作為服務(wù)器端和客戶端 2 .在服務(wù)器端程序編譯 gcc -o server server.c 服務(wù)器端程序的運行,在一個終端執(zhí)行 ./ serve nlngmo(aut)untu :vl client.c nlngmogubuntu:gcc -o client client.c ningmogubuntu:~S ./client 127.0.0.1 Please Input File Name On Server: sh File: 5h Can Not Open To Write 3 .在客戶端程序編譯 gcc -o clie

8、nt client.c 客戶端程序的運行,在另一個終端中執(zhí)行 ./client 127.0.0.1 (通過 127.0.0.1 訪問自己) ningmo@ubuntui:-/t€St/test9$ vi sarver.c ningmo@ubuntu:*/test/test9$ gcc -o server server.c ningmo@ubuntu:"/test/test9$ ?/server File: sh Not Found 因sh文件目錄不在服務(wù)器下所以傳送失敗 4 .傳送服務(wù)器下的test.txt 文件 ningmo^ubuntu:J client 127.6,9.1

9、 Please Input File Name On Server: test.txt Recieve File: test.txt From Server[127,0,0,1] Finished ningmo@ubuntu:Is 54< Desktop rect.sh~ test,txt 傳送成功,test.txt 文件出現(xiàn)在客戶端的目錄下 iingno@ubuntu:-/test/test9s Is server server.c test * txt ^ingmo^ubuntu:-/test/test9s ./server file_block_length = 6 FiLe; test,txt Transfer Finished 五、思考題 六、教師評語 成績 簽名: 日期:

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!