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

正文內(nèi)容

畢業(yè)論文基于linux的ftp服務(wù)器的研究與實(shí)現(xiàn)(參考版)

2024-11-11 20:55本頁面
  

【正文】 在此我謹(jǐn)向本導(dǎo)師以及在畢業(yè)設(shè)計(jì)過程中給予我很大幫助的老師、同學(xué)們致以最誠摯的感謝! 。其次,感謝在大學(xué)四年學(xué)習(xí)中教過本所有老師們和系主任,感謝他們傳授給了我知識(shí),傳授給了我學(xué)習(xí)的方法。} } transfer_data_last=transfer_data_now。 if (ret==1) {perror(nanosleep)。 int ret=nanosleep(amp。 =(long)(()*1000000000)。 temp_time=mytime。req,0,sizeof(req))。 speed_now=transfer_data * 1024。 float temp_time。 long transfer_data = transfer_data_nowtransfer_data_last。 } return data_conn_sock。cliaddr_llen)。 data_conn_sock=ipc_accept(pasv_connsock,(struct sockaddr *)amp。 set_euid_egid(tempname,1)。 if(res==1) perror(data_conn_sock)。 int res=connect(sockk,(struct sockaddr*)amp。 bind(sockk,(struct sockaddr*)amp。//ipc_socket 函數(shù)重定義 setsockopt(sockk,SOL_SOCKET,SO_REUSEADDR,(const void *)amp。 int opt=1。 =htonl(INADDR_ANY)。 =AF_INET。 //服務(wù)端地址 memset(amp。 =htons(port_port)。cli_addr,0,sizeof(cli_addr))。 if (strcmp(up_,PORT)==0) { socklen_t addrlen=sizeof(cli_addr)。 struct sockaddr_in ser_addr。 } umask(0)。i++ ) { close(i)。 if (closed == 1) { for (i=0。 if (pid==1) perror(fork)。 setsid()。 if (pid==1) perror(fork)。 pid_t pid。 break。 hash_insert(hash_ip_count,i_ntoa(),NULL,NULL,2)。 sprintf(tmp,%d,pid)。 close(connfd)。 exit(EXIT_SUCCESS)。 write_loop(connfd,220 wele to ftp\r\n,strlen(220 wele to ftp\r\n))。 switch(pid) { case 1: ERR_EXIT(fork)。 continue。 write_loop(connfd,421 Per IP connections to many . please try it later.\r\n,strlen (421 Per IP connections to many . please try it later.\r\n))。 conf_ipcount=atoi((char *)hash_getval(hash_conf,ipmax,1))。 if (temppp==NULL) nowipcount=0。 continue。 write_loop(connfd,421 Total connections too many . please try it later.\r\n,strlen(421 Total connections too many . please try it later.\r\n))。 nowcounts=test_max_count(0)。 continue。amp。cliaddrlen)。 connfd=accept(listenfd,(struct sockaddr *)amp。//創(chuàng)建共享內(nèi)存 信號(hào)量 for(。 signal(SIGQUIT,sighup_handler)。 signal(SIGCHLD,handle_quit)。//命令散列表初始化 listenfd=conn_server()。//最大連接數(shù)要到配置文件中取 hash_conf_init()。 int nowservermax。 int listenfd。 char *temppp。 基于 Linux的 FTP 服務(wù)器 21 參考文獻(xiàn) [1] 唐瑞明 .淺談 Linux在國內(nèi)的發(fā)展?fàn)顩r和前景 [M].大眾科學(xué) ,2020,2:293395. [2] Richard , Using and Porting the GNU Compiler Collection,For GCC Version ,the Free Software Foundation, gcc 的編程手冊 . [3] 童永清編著 .Linux C 編程實(shí)踐 [M].人民郵電出版社 .2020:133150. [4] 北京亞嵌教育研究中心組編 .嵌入式 Linux 上的 C 語言編程實(shí)踐 [M],電子工業(yè)出版社 ,2020(2):176177. [5] Brian ,Dennis C programming 1988. [6] 張威 .Linux網(wǎng)絡(luò)編程教程 [M].北京 :北京希望電虧出版社 ,2020:250361. [7]馬忠楠 ,李善平 ,康概 .ARMLinux 嵌人式系統(tǒng)教程 [M].北京 :北京航空航天大學(xué)出版社 ,2020,. [8] 謝希仁編著 .計(jì)算機(jī)網(wǎng)絡(luò) (第五版 )[J].電子工業(yè)出版社 ,2020,2:190191. [9] 譚浩強(qiáng) .C程序設(shè)計(jì) [M].北京:清華大學(xué)出版社 .2020:150170. [10] 呂慧 .Linux系統(tǒng)下守護(hù)進(jìn)程編程方法 .甘肅科技 .2020.(2):2030. [11] IT同路人編著 .Linux標(biāo)準(zhǔn)教程學(xué)習(xí) [J].人民郵電出版社 ,2020,3:5455. [12] Stevens 著 ,施振川 ,周利民 ,孫宏暈等譯 .UNIX 網(wǎng)絡(luò)編程 (美 )[M].北京 :人民郵電出 版社 ,1999.(5):5354. [13] 吳永忠 ,程文娟 ,等編著 .嵌入式 uC/OSII教程 [J].西安電子科技大學(xué)出版社 ,2020(12):3536. [14] Neil Matthew,Richard Stones 著 ,陳健 ,宋健健譯 .Linux 程序設(shè)計(jì) (第三版 )[M].北京 :人民郵電出 版社 , 第 1 版 :9295. [15] 百度百科 . 福州大學(xué)陽光學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 22 附錄一 進(jìn)程模型實(shí)現(xiàn)程序 函數(shù)功能 :服務(wù)器模型 參數(shù) :無 返回值 :無 void ftp_server() { pid_t pid。 PureFTPd 背后有積極的技術(shù)支持,安全性在設(shè)計(jì)中占有很重要的地位。 網(wǎng) 絡(luò)安全意思上的 0DAY 就是指一些沒有公布補(bǔ)丁的漏洞,或者是還沒有被漏洞 發(fā)現(xiàn)者 公布出來的漏洞利用工具,由于這種漏洞的利用程序?qū)W(wǎng)絡(luò)安全都具有巨大威脅 。所謂的 0DAY在網(wǎng)絡(luò)安全上的意思是指一些沒有公布補(bǔ)丁的漏洞,或者還沒有被漏洞發(fā)現(xiàn)者發(fā)布出來的漏洞利用工具,這種漏洞的利用對網(wǎng)絡(luò)安全可以說是致命的, 因此 0DAY 也成為 黑客 的最愛 。而下載解壓功能可以使客戶端的解壓時(shí)間。 ( 2)功能特性需求可以更進(jìn)一 步,比如說實(shí)現(xiàn)上傳下載的自動(dòng)的壓縮和解壓縮功能。在這里我對本課題 FTP 服務(wù)器的研究與實(shí)現(xiàn)有以下的幾點(diǎn)展望: ( 1)能夠兼容各個(gè)系統(tǒng),根據(jù)不同的系統(tǒng)有不同的版本,也可以同一個(gè)版本兼容于各個(gè)系統(tǒng)。監(jiān)控模塊主要是用來限制用戶上傳和下載的速度,以及限制客戶端的連接數(shù)。 55 登陸結(jié)果 福州大學(xué)陽光學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 20 結(jié)論 本課題基于 Linux 的 FTP 服務(wù)器的研究與實(shí)現(xiàn),是以 TCP 協(xié)議作為傳輸協(xié)議為核心 ,以 Linux 操作系統(tǒng)的虛擬機(jī)為開發(fā)平臺(tái),用 C 語言作為編程語言,實(shí)現(xiàn) 可以讓資 源得到共享的目的。 在默認(rèn)方式下是主動(dòng)模式登陸,被動(dòng)模式登陸模式設(shè)置如圖 56 所示。 圖 52 服務(wù)器的配置 ( 3)客戶端登陸模式如下圖所示。在程序中將自動(dòng)讀取你所改后的結(jié)果。如果要停止只要輸入 service hfftpd stop,重啟只要輸入 service hfftpd restart 即可。最后輸入啟動(dòng)服 務(wù)器的命令 service hfftpd start 看效果即可。然后用 make 運(yùn)行文件,以此大到編譯整個(gè)項(xiàng)目程序的效果,看編譯是否完全通后?;谶@些函數(shù)只要看懂了里面的參數(shù)就會(huì)運(yùn)用了,這些參數(shù)要看懂有些難度,但是只要細(xì)心一點(diǎn),基本不是太大問題。 HASH 表一: 進(jìn)程號(hào) IP 地址 HASH 表二: IP 地址 當(dāng)前連接數(shù) 圖 46 哈希表的結(jié)構(gòu) 是 否 圖 47 單 IP 連接數(shù)控制流程圖 利用 wait 避免僵尸進(jìn)程 從第一張表獲得進(jìn)程號(hào)對應(yīng)的客戶端 IP 地址 刪除第一張表中該客戶的記錄 從第二張表中獲得 IP 地址對應(yīng)的 IP 單連接數(shù) 判斷單連接是否是 0 系統(tǒng)當(dāng)前連接數(shù) 1 刪除第二張表中 IP 地址對應(yīng)的記錄 開始 結(jié)束 福州大學(xué)陽光學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 16 其它功能模塊的實(shí)現(xiàn) 在這里之所以不對其它模塊及功能的實(shí)現(xiàn)進(jìn)行詳細(xì)的描述了,是因?yàn)樗鼈兊膶?shí)現(xiàn)都是比較簡單的,就是幾個(gè)比較不常用的函數(shù)的使用。我們根據(jù)自己所寫的哈希表原理是通過一個(gè)關(guān)鍵字找到對應(yīng)的值,所以建兩張哈希表,一張表中有每個(gè)進(jìn)程號(hào)對應(yīng)的 IP 地址,另一張表是每個(gè) IP 地址當(dāng)前的連接數(shù),只要在捕獲 SIGCHLD 這個(gè)信號(hào)的處理函數(shù)中得到該進(jìn)程的進(jìn)程號(hào),再用 wait 函數(shù)避免僵尸進(jìn)程 [14],然后第一張表中得到對應(yīng)的 IP 地址,并將此記錄從表中刪除,再根據(jù)第二張表得到該 IP 地址當(dāng)前對應(yīng)的連接數(shù),并減一,如果減完后為 0則從表中刪除此記錄。我們可以從頭文件 /usr/src/linux/include /linux / 中看到內(nèi)核用基于 Linux的 FTP 服務(wù)器 15 來維護(hù)信號(hào)量狀態(tài)的各個(gè)結(jié)構(gòu)的定義。如果此時(shí)有進(jìn)程正在睡眠等待此信號(hào)量,則喚醒此進(jìn)程。 ( 3) 若此信號(hào)量為 0,則該資源目前不可用,進(jìn)程進(jìn)入睡眠狀態(tài),直至信號(hào)量值大于 0,進(jìn)程被喚醒,轉(zhuǎn)入步驟( 1) 。一般說來,只有初始化和 P、 V 操作才能改變信 號(hào)量的值,為了獲得共享資源,進(jìn)程需要執(zhí)行下列操作: ( 1) 測試控制該資源的信號(hào)量,看是否為正值。 信號(hào)量是一種通信機(jī)制,主要是用來協(xié)調(diào)不同進(jìn)程間的數(shù)據(jù)對象的,而最主要的應(yīng)用
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1