操作系統(tǒng)實習(xí)報告_第1頁
操作系統(tǒng)實習(xí)報告_第2頁
操作系統(tǒng)實習(xí)報告_第3頁
操作系統(tǒng)實習(xí)報告_第4頁
操作系統(tǒng)實習(xí)報告_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

沈陽航空航天大學(xué)Linux系統(tǒng)操作實習(xí)匯報院(系):計算機學(xué)院專業(yè):計算機科學(xué)與技術(shù)班級:學(xué)號:姓名:指導(dǎo)教師:董燕舉李曉明畢靜完畢日期:7月17日Linux基本命令今天在李老師的指導(dǎo)下,我們初步學(xué)習(xí)了有關(guān)Linux系統(tǒng)的產(chǎn)生背景,及其與Windows系統(tǒng)某些不一樣。并且理解到,Linux系統(tǒng)是開源的操作系統(tǒng)。做完簡樸簡介后,我們便開始學(xué)習(xí)了Linux系統(tǒng)里的某些基本的終端命令,下面將這些命令做某些簡樸的羅列。1.系統(tǒng)關(guān)閉命令及使用方法:shutdown命令格式:shutdown[選項][時間][警告信息]命令中各選項的含義為: -k并不真正關(guān)機而只是發(fā)出警告信息給所有顧客

-r關(guān)機后立即重新啟動

-h關(guān)機后不重新啟動

-f迅速關(guān)機重啟動時跳過fsck

-n迅速關(guān)機不通過init程序

-c取消一種已經(jīng)運行的shutdown2.重啟系統(tǒng)命令及使用方法:reboot格式:reboot[-n][-w][-d][-f][-i]重要參數(shù)

-n:在重開機前不做把記憶體資料寫回硬盤的動作。

-w:并不會真的重開機,只是把記錄寫到/var/log/wtmp文獻里。

-d:不把記錄寫到/var/log/wtmp文獻里(-n這個參數(shù)包括了-d)。

-i:在重開機之前先把所有與網(wǎng)絡(luò)有關(guān)的裝置停止。3.列出目錄內(nèi)容命令:lsLs:ls[選項][文獻]ls-a列出目前目錄下的所有文獻,包括以.頭的隱含文獻ls–l|more列出目前目錄下文獻的詳細信息,more是分頁顯示,按空格繼續(xù)顯示下一種畫面,按Q鍵停止顯示4.顯示目前途徑命令:pwd5.變化工作目錄命令cd格式:cd[途徑]cd..回目前目錄的上一級目錄cd-回上一次所在的目錄cd~或cd回目前顧客的宿主目錄cd~顧客名回指定顧客的宿主目錄cdzkl切換到目前目錄下的zkl子目錄6.創(chuàng)立一種目錄mkdir格式:mkdir[選項]目錄名例如:mkdirzk選項–m設(shè)定權(quán)限m模式:在建立目錄時把按模式指定設(shè)置目錄權(quán)限。該目錄的權(quán)限分為:目錄所有者的權(quán)限、組中其他人對目錄的權(quán)限和系統(tǒng)中其他人對目錄的權(quán)限。這三個權(quán)限分別用三個數(shù)字之和來表達:對目錄的讀權(quán)限是4、寫權(quán)限是2、執(zhí)行權(quán)限是17.刪除目錄rmdir格式:rmdir目錄名一般狀況下要刪除的目錄必須為空目錄,假如所給的目錄不為空,系統(tǒng)會匯報錯誤。8.作用設(shè)定文獻或目錄權(quán)限chmod格式:chmod[選項]文獻和目錄列表闡明:只有文獻和目錄的所有者才有權(quán)限修改其權(quán)限,超級顧客可對所有文獻或目錄進行權(quán)限設(shè)置字符串表達:rwxrw-rw-三種不一樣的訪問權(quán)限:w寫訪問權(quán)限,r讀訪問權(quán)限,x執(zhí)行權(quán)限u(文獻擁有者)g(所屬顧客組)o(其他顧客)權(quán)限9.復(fù)制命令cp格式:cp[選項]源文獻或目錄目的文獻或目錄選項:-f覆蓋已經(jīng)存在的目的文獻而不提醒-i覆蓋已經(jīng)存在的目的文獻規(guī)定顧客確認-r若給出的源文獻是一種目錄,遞歸復(fù)制該目錄下所有子目錄和文獻,目的文獻必須是目錄10.移動文獻或目錄mv作用:格式:mv[選項]源文獻或目錄目的文獻或目錄選項:-f覆蓋已經(jīng)存在的目的文獻而不提醒-i覆蓋已經(jīng)存在的目的文獻規(guī)定顧客確認11.刪除文獻或目錄命令rm格式:rm[選項]源文獻或目錄目的文獻或目錄選項:-f覆蓋已經(jīng)存在的目的文獻而不提醒-i覆蓋已經(jīng)存在的目的文獻規(guī)定顧客確認12.在指定目錄中搜索文獻find格式:find[途徑][選項][文獻]選項:-name支持通配符*和?13.連接命令cat作用:并顯示一種和多種文獻的內(nèi)容格式:cat[選項]文獻1文獻214.useradd命令:作用:創(chuàng)立一種新的顧客格式:useradd[選項]顧客名15.passwd命令作用:為顧客創(chuàng)立密碼格式:passwd[選項]顧客名passwd-d顧客名刪除顧客密碼也能登陸passwd-S顧客名查詢賬號密碼16.who命令作用:顯示登錄顧客17.su命令作用:變更顧客帳號18.壓縮解壓命令gzip作用:對文獻進行壓縮和解壓縮格式:gzip[選項][文獻名]2.Linux服務(wù)器配置與管理(1)Web服務(wù)器配置與管理Web服務(wù)器的安裝與配置

檢測與安裝Apache

,檢測Linux系統(tǒng)中與否已經(jīng)安裝了Apache服務(wù)器可以只用下面的命令當(dāng)安裝完Apache服務(wù)器后,假如想讓其提供Web服務(wù)還必須啟動它。訪問www原理:上網(wǎng)顧客在IE中輸入網(wǎng)址(URL)回車;當(dāng)?shù)谼NS服務(wù)器把URL中的主機解析成IP;根域名服務(wù)器根據(jù)IP向WWW服務(wù)器提出祈求;WWW服務(wù)器響應(yīng)祈求,返回內(nèi)容。(2)DNS服務(wù)器配置與管理基本配置環(huán)節(jié)域名系統(tǒng)(DomainNameSystem,DNS),是一種分布式的、層次型的、客戶機/服務(wù)器模式的數(shù)據(jù)庫管理系統(tǒng)。DNS服務(wù)器功能重要有兩個:(1)將域名轉(zhuǎn)換成IP

地址(俗稱正向解析);(2)將IP

地址轉(zhuǎn)換成計算機的域名(俗稱逆向解析)。域名系統(tǒng)的構(gòu)造其構(gòu)造類似于一棵倒置的樹,由最頂端的根一層一層往下延伸。這樣所構(gòu)成的構(gòu)造,即稱為域的名稱空間。DNS域名解析的工作原理:(1)DNS客戶機提出域名解析祈求,并將該祈求發(fā)送給當(dāng)?shù)氐挠蛎?wù)器。(2)當(dāng)當(dāng)?shù)氐挠蛎?wù)器收到祈求后,就先查詢當(dāng)?shù)氐木彺?,假如有該記錄項,則當(dāng)?shù)氐挠蛎?wù)器就直接把查詢的成果返回。(3)假如當(dāng)?shù)氐木彺嬷袥]有該記錄,則當(dāng)?shù)貐^(qū)名服務(wù)器就直接把祈求發(fā)給根域名服務(wù)器,然后根域名服務(wù)器再返回給當(dāng)?shù)貐^(qū)名服務(wù)器一種所查詢域(根的子域)的主域名服務(wù)器的地址。(4)當(dāng)?shù)胤?wù)器再向上一步返回的域名服務(wù)器發(fā)送祈求,然后接受祈求的服務(wù)器查詢自己的緩存,假如沒有該記錄,則返回有關(guān)的下級的域名服務(wù)器的地址。(5)反復(fù)第4步,直到找到對的的記錄。(6)當(dāng)?shù)貐^(qū)名服務(wù)器把返回的成果保留到緩存,以備下一次使用,同步還將成果返回給客戶機。3.Linux多進程與多線程程序設(shè)計與開發(fā)(1)設(shè)計題目題目規(guī)定:Linux平臺下設(shè)計和開發(fā)一種多進程或多線程程序。編程語言可以用C、C++或Java。應(yīng)用范圍:內(nèi)容不限,如信息處理、信息管理、游戲、多媒體、網(wǎng)絡(luò)類等均可。顧客界面:推薦圖形顧客界面,命令行界面也可。(2)題目內(nèi)容1.多進程編程設(shè)計實現(xiàn)三個進程,第一種進程重要輸出一種菱形符號;第二個進程是調(diào)用了系統(tǒng)的cal命令來實現(xiàn)日期的顯示,重要采用傳遞參數(shù)的形式,可以輸出任何年、月的詳細時間;第三個進程重要用來實現(xiàn)一種簡樸的計算器,重要功能有加減、乘、除、退出等,除法運算可以對小數(shù)進行計算。通過對getpid(),fork(),execl(),wait()的函數(shù)的運用最終實現(xiàn)這一系列的編程任務(wù)。2.多線程編程任務(wù)設(shè)計六個線程來實現(xiàn)對組員姓名的三遍輸出,以及對每一種線程的線程號的輸出。詳細的創(chuàng)立六個線程通過函數(shù)調(diào)用傳參的形式來實現(xiàn)。通過調(diào)用pthread_self、pthread_create、pthread_join等系統(tǒng)函數(shù)來對線程進行創(chuàng)立、管理。規(guī)定:(1)理解Linux下面多進程系統(tǒng)調(diào)用措施:getpid(),fork(),execl(),wait()(2)每個進程的任務(wù)盡量有趣,有一定代碼量和難度(我將據(jù)此評估等級)(3)可以讀懂代碼,改代碼設(shè)計思緒多進程編程在父進程中運用switch語句來實現(xiàn)對應(yīng)進程的調(diào)用,運用fork()函數(shù)創(chuàng)立一種進程,此函數(shù)對子進程返回0,以此判斷是子進程,并調(diào)用execl()函數(shù)用一種新的進程來替代這個子進程,實現(xiàn)對應(yīng)的功能,若此函數(shù)返回的不是0,則調(diào)用wait()函數(shù)讓主進程等待子進程執(zhí)行,直到子進程執(zhí)行完畢。多線程編程在main線程中調(diào)用pthread_create()函數(shù)來創(chuàng)立一種線程,并將此線程與一種函數(shù)體對應(yīng)到一起,即此線程用來執(zhí)行這個函數(shù),以此創(chuàng)立六個線程。函數(shù)調(diào)用時通過傳遞參數(shù)將輸出的信息通過參數(shù)傳過去,在線程體中輸出,并調(diào)用pthread_self()系統(tǒng)函數(shù)來輸出線程號。在main線程中調(diào)用pthread_join(),使main線程等待,對應(yīng)的線程執(zhí)行,直到main線程執(zhí)行結(jié)束。數(shù)據(jù)構(gòu)造或類設(shè)計1.多進程編程多進程編程重要用到的頭文獻#include<sys/types.h>,在這個文獻中定義了pid_t這樣一種構(gòu)造體,是用來保留進程PID信息。多線程編程多線程編程重要用到的頭文獻#include<pthread.h>,在這個文獻中定義了pthread_t這樣一種構(gòu)造體,是用來保留線程ID信息。(5)算法1.多進程在父進程中創(chuàng)立三個進程,對應(yīng)三個小程序,當(dāng)調(diào)用子進程的時候讓父進程等待,直到子進程執(zhí)行結(jié)束,父進程可以繼續(xù)運行。開始Fork()創(chuàng)立三個進程Fork()創(chuàng)立三個進程子進程三子進程二子進程一子進程三子進程二子進程一阻塞式等待子進程結(jié)束阻塞式等待子進程結(jié)束否子進程結(jié)束?子進程結(jié)束?結(jié)束是結(jié)束圖1進程流程圖2.多線程在main線程中創(chuàng)立六個線程,各個線程并發(fā)執(zhí)行,執(zhí)行的快慢重要看cpu的分派。開始開始開始開始線程二線程二線程一Main線程結(jié)束結(jié)束結(jié)束結(jié)束結(jié)束圖2線程流程圖測試用例與測試成果表1進程測試用例測試用例號輸入數(shù)據(jù)期望輸出1選擇第一種進程輸出一種菱形圖案2選擇第二個進程,輸入年、月顯示當(dāng)月的日期3選擇第三個進程,選擇計算器,選擇加法運算輸出計算成果4選擇第三個進程,選擇計算器,選擇減法運算輸出計算成果程序運行線程運行狀況:進程運行狀況:實習(xí)總結(jié)(1)小組分工趙凱敏、趙曼迪重要負責(zé)linux命令;蘭洋、劉凱宇負責(zé)DNS,WEB的網(wǎng)絡(luò)的配置;張宏偉、李明明負責(zé)進程、線程程序的編寫;(2)收獲與體會這是一種不停創(chuàng)新的時代,我們每個人都應(yīng)當(dāng)與時俱進,我時刻提醒自己,唯有不停努力,才能與時俱進。在這次實習(xí)過程中,我很愛惜Linux系統(tǒng)的學(xué)習(xí)機會,也很難感謝老師和同學(xué)在這段時間里對我的指導(dǎo)和協(xié)助,我從中受益非淺。通過這次Linux服務(wù)器配置與管理的實習(xí),首先鞏固了自己所學(xué)知識,提高了自己處理實際問題的能力;另首先,它是我們從學(xué)校走向社會的一種過渡。我們在大學(xué)里所學(xué)的知識應(yīng)更多的與實踐結(jié)合在一起,用實踐來檢查真理。使一種??粕哂休^強的處理基本領(lǐng)務(wù)的能力與比較系統(tǒng)的專業(yè)知識,這才是我們學(xué)習(xí)與實習(xí)的真正目的。社會是不停發(fā)展變化,計算機技術(shù)更是日新月異的進步,我們只有不停學(xué)習(xí)學(xué)習(xí)再學(xué)習(xí),才能保持自己不會落后。這次實習(xí)它不僅使我在理論上對Linux這個領(lǐng)域有了全新的認識,并且在實踐能力上也得到了提高。通過這幾次上機實習(xí),使我愈加扎實的掌握了有關(guān)編程方面的知識,在設(shè)計過程中雖然碰到了某些問題,但通過一次又一次的思索,一遍又一遍的檢查終于找出了原因所在,也暴露出了前期我在這方面的知識欠缺和經(jīng)驗局限性。實踐出真知,通過編程,使我們掌握的知識不再是紙上談兵。其他能力上也均有了提高。更重要的是,在課程設(shè)計上,我們學(xué)會了諸多學(xué)習(xí)的措施。而這是后來最實用的,真的是受益匪淺。要面對社會的挑戰(zhàn),只有不停的學(xué)習(xí)、實踐,再學(xué)習(xí)、再實踐。(3)Linux實習(xí)方式局限性與改革提議Linux不是簡樸的操作系統(tǒng),是開源的系統(tǒng),就意味著不停有創(chuàng)新,不停的發(fā)展,不停的學(xué)習(xí),操作Linux系統(tǒng),就必須不停的自我學(xué)習(xí)、不停發(fā)現(xiàn)問題、處理問題。每個學(xué)生應(yīng)當(dāng)不僅是使用者,還是測試員、創(chuàng)作者、教師兼學(xué)員。附錄(源程序代碼)線程程序:#include<stdio.h>#include<pthread.h>voidthread(void){printf("第一種線程輸出:張宏偉張宏偉張宏偉id:%lu\n",pthread_self());}voidthread1(void){printf("第二個線程輸出:李明明李明明李明明id:%lu\n",pthread_self());}voidthread2(void){printf("第三個線程輸出:蘭洋蘭洋蘭洋id:%lu\n",pthread_self());}voidthread3(void){printf("第四個線程輸出:劉凱宇劉凱宇劉凱宇id:%lu\n",pthread_self());}voidthread4(void){printf("第五個線程輸出:趙凱敏趙凱敏趙凱敏id:%lu\n",pthread_self());}voidthread5(void){printf("第六個線程輸出:趙曼迪趙曼迪趙曼迪id:%lu\n",pthread_self());}intmain(void){inti,ret;pthread_tid,id1,id2,id3,id4,id5;//線程標(biāo)識符printf("9組有6名同學(xué)(張宏偉,李明明,蘭洋,劉凱宇,趙凱敏,趙曼迪)\n");ret=pthread_create(&id,NULL,(void*)thread5,NULL);//創(chuàng)立新線程if(ret!=0){printf("Createpthreaderror!\n");exit(1);}ret=pthread_create(&id1,NULL,(void*)thread4,NULL);//創(chuàng)立新線程if(ret!=0){printf("Createpthreaderror!\n");exit(1);}ret=pthread_create(&id2,NULL,(void*)thread3,NULL);//創(chuàng)立新線程if(ret!=0){printf("Createpthreaderror!\n");exit(1);}ret=pthread_create(&id3,NULL,(void*)thread2,NULL);//創(chuàng)立新線程if(ret!=0){printf("Createpthreaderror!\n");exit(1);}ret=pthread_create(&id4,NULL,(void*)thread1,NULL);//創(chuàng)立新線程if(ret!=0){printf("Createpthreaderror!\n");exit(1);}ret=pthread_create(&id5,NULL,(void*)thread,NULL);//創(chuàng)立新線程if(ret!=0){printf("Createpthreaderror!\n");exit(1);}pthread_join(id5,NULL);//等待線程執(zhí)行結(jié)束pthread_join(id4,NULL);//等待線程執(zhí)行結(jié)束pthread_join(id3,NULL);//等待線程執(zhí)行結(jié)束pthread_join(id2,NULL);//等待線程執(zhí)行結(jié)束pthread_join(id1,NULL);//等待線程執(zhí)行結(jié)束pthread_join(id,NULL);//等待線程執(zhí)行結(jié)束return(0);}進程程序:#include<stdio.h>#include<unistd.h>#include<sys/types.h>main(){printf("創(chuàng)立四個進程\n");pid_tpid;intchoice,flag;printf("1.輸出一種菱形\n");printf("2.顯示日期\n");printf("3.計算器\n");printf("4.退出\n");while(1){flag=0;printf("請輸入你的選擇:\n");scanf("%d",&choice);switch(choice){case1:pid=fork();if(pid=

溫馨提示

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

最新文檔

評論

0/150

提交評論