資源描述:
《linux下的簡單聊天工具》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、湖南信息科學(xué)職業(yè)學(xué)院畢業(yè)論文Linux下的IM網(wǎng)絡(luò)聊天軟件作者姓名:專業(yè)名稱:作者學(xué)號:指導(dǎo)教師姓名:姜新成 論文提交日期:湖南·長沙摘要Linux作為免費(fèi)開源操作系統(tǒng)廣泛應(yīng)用于企業(yè)。Linux與UNIX有著深厚的淵源,而UNIX系統(tǒng)可謂“堅(jiān)如磐石”,其穩(wěn)定性受到廣泛贊譽(yù)。近年來,越來越多的就業(yè)崗位被提供給了Linux開發(fā)人員。IM即時(shí)通訊軟件是近年來流行的通信方式,企業(yè)、個(gè)人等都在更多地使用IM進(jìn)行溝通。通過計(jì)算機(jī)網(wǎng)絡(luò),信息的傳遞變得十分方便。并非所有IM軟件都要想騰訊QQ那樣復(fù)雜、龐大,作為內(nèi)部溝通,只需功能齊全、操作方便即可。作為課
2、程設(shè)計(jì)作品,在Linux下開發(fā)C/S式IM軟件,對于熟悉Linux、復(fù)習(xí)計(jì)算機(jī)網(wǎng)絡(luò)、進(jìn)一步學(xué)習(xí)軟件開發(fā)都有十分積極的意義。關(guān)鍵字:Linux即時(shí)通訊網(wǎng)絡(luò) AbstractAsisopensourcesoftware,Linuxhasbeenwidelyusedincorporations.Theseyears,moreandmorejobsareofferedtoLinuxdevelopers,forLinuxspokenhighlyofforitsstabilityasUNIX.IMsoftwarehasbecomethemostwidel
3、yusedcommunicationsoftwarebothforbusinessuseandforpersonaluse.Throughinternetworks-includingtheInternet,EnterpriseLAN,VPNs-informationcanbeexchangedmoreconvenientlyandimmediately.However,notallIMofC/SmodelisthatcomplexasTencentQQ.IMsoftwareinsideanEnterpriseLANshouldbelighte
4、randeasier.AsaproductdesignofLinux,developinganIMsoftwareishelpfultoreviewingkeypointsofLinux,Internet,andsoftwaredeveloping.Keywords:Linuxcommunicationnetworks第1章、設(shè)計(jì)任務(wù)1.1.設(shè)計(jì)任務(wù)概述1.1.1.課題名稱Linux下的IM網(wǎng)絡(luò)聊天軟件1.1.2.內(nèi)容摘要隨著嵌入式在生活中的應(yīng)用越來越廣泛,嵌入式LINUX下的Socket網(wǎng)絡(luò)編程也越來越熱。為了加強(qiáng)對在Linux系統(tǒng)下進(jìn)行編程
5、的學(xué)習(xí)和實(shí)踐,運(yùn)用計(jì)算機(jī)網(wǎng)絡(luò)、軟件工程等知識,我們選擇了Linux下網(wǎng)絡(luò)聊天工具作為課設(shè)題目。本系統(tǒng)主要功能在于實(shí)現(xiàn)多個(gè)客戶端一與服務(wù)器端之問的信息傳遞與文件傳輸功能。系統(tǒng)主要實(shí)現(xiàn)4人聊天室功能:注冊與登錄系統(tǒng),公聊,私聊,文件傳輸。應(yīng)用LINUX下的Socket網(wǎng)絡(luò)編程并使用TCP實(shí)現(xiàn)簡.單聊天程序。編程過程中不斷用各種網(wǎng)絡(luò)調(diào)試工具進(jìn)行調(diào)試程序,最終做成了簡單的在Linux下的聊天工具。關(guān)鍵詞:LinuxSocketIM軟件1.2.開發(fā)環(huán)境1.2.1.硬件環(huán)境Intelx86CPU架構(gòu)(主頻1GHz以上)512MBDDR2內(nèi)存支持800*60
6、0以上分辨率、16色以上的顯示設(shè)備1.2.2.軟件環(huán)境RedHatEnterpriseLinux(或Fedora)VIM編譯器1.3.要求在Linux下實(shí)現(xiàn)網(wǎng)絡(luò)聊天,包括公聊、一對多私聊等功能。實(shí)現(xiàn)客戶端之間經(jīng)網(wǎng)絡(luò)傳輸文件。能保存聊天記錄。第1章設(shè)計(jì)方案1.1.系統(tǒng)結(jié)構(gòu)1.1.1.結(jié)構(gòu)結(jié)構(gòu)組成:注冊、登錄、聊天、文件傳輸。1.1.2.結(jié)構(gòu)圖聊天系統(tǒng)分為五大模塊1.2.流程與模塊1.2.1.執(zhí)行流程1.2.2.各功能需要調(diào)用的模塊模塊需求注冊登錄聊天文件傳輸用戶注冊√用戶登錄√系統(tǒng)廣播√上下線提示√用戶私聊文件傳輸√強(qiáng)制下線√第1章實(shí)現(xiàn)原理1.1
7、.注冊、登錄模塊1.1.1.服務(wù)器端服務(wù)器端建立好socket,等待連接,當(dāng)有客戶端連接服務(wù)器的時(shí)候,服務(wù)器接收連接,并接受客戶端發(fā)送過來的消息,恨據(jù)接收到的結(jié)構(gòu)體所攜帶的協(xié)議來做相應(yīng)的功能:服務(wù)器端啟動后如圖31所示。圖31l、注冊:如果協(xié)議為reg,則為客戶端注冊,首先將發(fā)送過來的結(jié)構(gòu)體,提取用戶名和密碼,然后需要對川戶名合法性檢驗(yàn),驗(yàn)證之后如果用戶名合法則將川戶信.已保存到文件中,合法性的規(guī)則包括川戶名不能重復(fù)和不能使用all等協(xié)議作為川戶名,并且川戶名和密碼都不能為空。如果注冊成功,服務(wù)器端發(fā)送一個(gè)消息給注冊的客戶端,同樣將消息保存在一
8、個(gè)結(jié)構(gòu)休里.如果失敗,也給客戶端發(fā)送一個(gè)消息如“您榆入的用戶名小能為akk”或者“用戶名XX已經(jīng)存在”。注冊結(jié)果如圖32所示。圖322、登錄:如果協(xié)議