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

正文內容

畢業(yè)設計-基于linux網(wǎng)絡聊天室的設計-wenkub

2022-12-14 19:27:58 本頁面
 

【正文】 n and Implementation of the course in under linux simple work chat rooms. Prepared in the Linux and debugging serverside processes and client to achieve the client, server and munications link between. Can open up two windows on the standalone operation, respectively, customers, serverside procedures, or to connect two hosts, respectively, as the way the client and server. The design of the work socket using the socket and multithreaded applications in the work, and under linux based vi editor. The program by the success of gcc debug debugger, you can chat in the use of standalone work. Key words Network Chat Rooms。 在 Linux 下編寫并調試服務器端程序和客戶端程序,實現(xiàn)了客戶、服務器之間的連接和通信 。 可以在單機上開辟兩個窗口分別運行客戶、服務器端的程序,或者將兩臺主機連接分別作為客戶和服務器的方式。 Linux。但對很多習慣于 Windows 操 作系統(tǒng)的人來說, Linux 的操作不夠人性化、交互界面不夠美觀,這給 Linux 操作系統(tǒng)的普及帶來了很大的阻礙。 提到 Linux 我們不能不提 GNU 和 Unix。 GPL 充分體現(xiàn)了 Stallman 的思想:只要用戶所做的修改是同等自由的 ,用戶可以自由地使用、拷貝、查詢、重用、修改甚至發(fā)布這個軟件。 Unix 的最初版本免費提供給許多知名的大學的計算機系使用。而Linux 最初是專門為基于 Intel 的個人計算機設計的。 1994 年 ,Linux 已經(jīng)升級到 版本。它既被當作郵件服務器的一種候選平臺 ,也被當作一種強壯而安全的防火墻。 ( 3) Linux 的明天 Linux 最強大的生命力在于其公開的開發(fā)過程。本聯(lián)盟就是想通過 bazaar 開發(fā)模型 ,在網(wǎng)上召集一些 Linux 的愛好者 ,開發(fā) 《 基于 Linux網(wǎng)絡聊天室的設計 》 第 5 頁 共 21 頁 出更優(yōu)秀的操作系統(tǒng)或軟件。它的特點是:因無連接,故提供的是不 可靠的信道,但也是因無連接而具有很好的傳輸效率。 由于 TCP 要提供可靠的、面向連接的運輸服務,所以不可避免地增加了許多系統(tǒng)開銷,比如確認、流量控制、計時器以及連接管理等都需要占用許多系統(tǒng)的時空資源。所以多個客戶端之間的通信就變?yōu)榱丝蛻舳伺c服務端的通信。 (3) 按要求通過 socket 發(fā)送和接受數(shù)據(jù)。而每個進程進行通信的環(huán)節(jié)都包括了發(fā)送信息和接口信息兩個任務,這兩個任務通過一個端口地址發(fā)送和接收。這樣,當接收信息任務因沒有信息而被阻塞時,不至于影響發(fā)送任務的執(zhí)行。因此,本實驗需要使用兩個線程去分別完成發(fā)送和接收信息的任務,這兩個線程共享其進程擁有的統(tǒng)一個端口地址。 參數(shù)說明: Family:表示地址族,可以去 AF_UNLX 和 AF_INT。其中,SOCK_STREAM 表明使用的是 TCP 協(xié)議,這樣提供按順序的、可靠的、雙向、面向連接的比特流; SOCKE_DGRAM 表明使用的是 UDP 協(xié)議,這樣只會提供定長、不可靠、無連接的通信。 (3) listen() 格式: int listen(int sockfd, int backlog)。 《 基于 Linux網(wǎng)絡聊天室的設計 》 第 11 頁 共 21 頁 (4) accept() 格式: Int accept (int sockfd, void *addr, int *addrlen)。 Addrlen:表示地址的長度。 Servaddr:表示村訪目的端口和 ip 地址(套接字)的數(shù)據(jù)結構。 作用:用于流式 socket、數(shù)據(jù)報 socket 內部之間的通信。 Sockfd = socket( AF_INT, SOCK_STREAM,0) 2) 此步驟涉及到 IP 地址及其處理過程。 /*將地址族類型設定好 */ =htons(MYPORT。 /*sockfd 是分配的 socket 名字, myaddr 則便是分配好的端口與 IP,用 bind 綁定 */ b) 利用 listen 監(jiān)聽請求 (2) 發(fā)送請求 1)利用 gethostbyname 獲取主機信息。 2)創(chuàng)建子進程,顯示歡迎信息; 3)接收返回信息,顯示連接成功,并推出連接; 4)關閉客戶端口 socket; 《 基于 Linux網(wǎng)絡聊天室的設計 》 第 13 頁 共 21 頁 5)關閉服務端 socket,結束子線程。 char buf[MAXDATASIZE]。\039。 exit(1)。 sin_size = sizeof(struct sockaddr_in)。 exit(1)。 exit(1)。 《 基于 Linux網(wǎng)絡聊天室的設計 》 第 15 頁 共 21 頁 } = AF_INET。(),8)。 } if(listen(sockfd,BACKLOG) == 1){ perror(listen)。 exit(1)。 close(new_fd)。 close(sockfd)。 pthread_t recthread。 exit(1)。 close(sockfd)。 struct sockaddr_in their_addr。 exit(1)。 = htons(PORT)。 if(connect(sockfd,(struct sockaddr *)amp。recthread,NULL,(void *)recmessage,NULL))!=0){ printf(Create thread error!\r\n)。 if(send(sockfd,msg,strlen(msg),0) == 1){ perror(send)。 close(sockfd)。 測試軟件: putty、 vmware 虛擬機 (1) 在編寫 完 TCP 服務端程序 后,用 gcc –lpthread –o server 生成程序server。 1) 客戶端、服務器端窗皆通過鍵盤輸入消息內容平回車,以發(fā)送消息給對方; 2) 消息中若使用空格,則作為本條消息結束及下一條消息的開始; 3) 輸入 exit 則推出運行。 2) 發(fā)送消息“ hello!“和” Good!‖給服務器端; 3) 接收服務器發(fā)來的消息“ OK!‖。 《 基于 Linux網(wǎng)絡聊天室的設計 》 第 21 頁 共 21 頁 結束語 通過本次課程設計對 Linux 網(wǎng)絡聊天室的設計 ,確實積累和總結了不少的經(jīng)驗,鍛煉了我的獨立工作和實際動手能力,加深了對計算機 網(wǎng)絡中 socket 工作原理及其相互聯(lián)系的認識,提高了對復雜的綜合性實踐環(huán)節(jié)具有分析問題、解決問題、概括總結的實際工作能力,對 網(wǎng)絡編程 項目的開發(fā)、設計過程有初步認識。但我從中學到了不少的道理,真正的理解到,理論與實踐之間還是有很大的距離,這必將有利于我們以后的學習。 時光匆匆飛逝, 三 年多的努力與付出,隨著論文的完成,終于 給自的 成教 生活 劃下了句點。 《 基于 Linux網(wǎng)絡聊天室的設計 》
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1