Linu操作系統(tǒng)實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第1頁
Linu操作系統(tǒng)實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第2頁
Linu操作系統(tǒng)實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第3頁
Linu操作系統(tǒng)實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第4頁
Linu操作系統(tǒng)實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

實(shí)驗(yàn)1:安裝Linux系統(tǒng)【實(shí)驗(yàn)?zāi)康暮鸵蟆堪惭bLinux系統(tǒng),掌握操作系統(tǒng)的系統(tǒng)配置,建立應(yīng)用環(huán)境的過程?!緦?shí)驗(yàn)內(nèi)容】:1、首先在windows系統(tǒng)中安裝虛擬機(jī)。在網(wǎng)上找到VMwareWorksttionPro版本,確定安裝目錄。一直下一步,不需要太多的說明。2、 圖為安裝完成后的界面。系統(tǒng)鏡像,然后虛擬機(jī)創(chuàng)建新然后在阿里巴巴開源鏡像網(wǎng)站下載centos3、的虛擬機(jī),模式等等。進(jìn)行一些簡(jiǎn)單的虛擬機(jī)設(shè)置,設(shè)置了網(wǎng)絡(luò)鏈接nat安裝完成后的界面下Linuxc語言開發(fā):實(shí)驗(yàn)2語言開發(fā)一個(gè)應(yīng)用程序的全過程,包括,編譯,學(xué)會(huì)和掌握用【實(shí)驗(yàn)?zāi)康摹浚篶調(diào)試等等。.【實(shí)驗(yàn)步驟】首先在系統(tǒng)中查看是否已經(jīng)安裝有g(shù)cc,輸入查看命令發(fā)現(xiàn)沒有,于是需要安裝gcc。在centos系統(tǒng)中可以使用比較簡(jiǎn)便的yum命令。在之前已經(jīng)配置好了yum源。直接輸入yuminstallgcc?;剀囎詣?dòng)安裝程序和需要的依賴包。iiTipIc-fmhpWk?屠!h?■'吸■"比7>E4a:Hi!/M嚴(yán)IIP番1re3inaEJ*pi?ffiiTipIc-fmhpWk?屠!h?■'吸■"比7>E4a:Hi!/M嚴(yán)IIP番1re3inaEJ*pi?ffz.Li-&.e\5Inrt#l.l.■jl-tc■J ■Jrrfib律p尹8hlL巧t&fi.Hi■EE嚀均書館iTT吃幫!仇刪?ppiWgllhc?dev-el^lihc-'lE-adETSkarngl-li4-ad4ri詢{仃Mu芻?mIftritflRfi!SEWPiJfii-4?■用WE??▼軸?甫口)?--■F3tk^qe-mp-fr,)(a6_fidCir2.4i.l-5磯EwillIM安陌■一>M訃啊亡西1."昕.&A0^?10.2-ll楓E拆左機(jī)F趴行宰馳萱"■■>PickAgi-kw-rnal-liHdvrs.0:2.&.3^>754.9.1.?1&willb?奩我-?>左腔伕和■去窈訂師<4.7-?3.elS2.12-1.212.eU*Pr>-t.upe|s-l總b^hfci22HInitAll*d±1X4:3?M軟件。圖為xshell因?yàn)樘摂M機(jī)中和電腦很多地方切換使用不方便,所以安裝了中的截圖。xshell遲在安雄 :glibG.-ht?d?r¥-£^2-1,212 - 6435/5正樣左帖 ?glibc-devel-2.12-1212.elt.x963丄血亡苗 ■■[t-TF-2,41-6.Bl6X&65/9micpp-4..4.7-23t&16.se.O^心IE儀士Mlllh^iortp-4.4.7-23.elfi. 64iESSKEgit-4.4.7-23.Hfi.Xffl&_64"勺打Verifyan^LibgoiW.4.J-23.sLB.k3&541/9VerifyLn^gcc-4_4.7-23reU.XH£4-279Verifyinggllbe-htfed芒rs-^2.12-17212.s-lG.曲GG43/9Verifyingpliti匚-恥火-2?12心412上l鼠詣自WSVerlfyinfl■科廠2胡」托忑讓?朗E.稠5/9V?rifyi?vgi刈e?1?hflflder?-2S.3=2-7543,1.*1$.k&6C4■6/9Verif^21*9cpp-d..4,7-23.el6.x&6fid7/9MerifyirtgiWl-Oifi.2-ll.eU涎L酬VsFlfymgiElMg-ppl-0.]5.7-l. 536_64-get.H0G_G4g-4.4.T-23.elEdong-ppl.kS&_640^0.15.7-1.2.cpp.?@6_^9i).47*23.al6glitjc-devet? 6:2.12-1.212.el?gllUc-ftfMfers.x56_B40:2.32-1.21Z.fll6kernel-hMde".5tS6_640:2.&.32-750.^.1.ft!6LLbg£inp.xa6_6il0:*7?1.723.&1Ghpfr.x&B^4_a:3.4.1-£.slL&ppi.Ji66_i^0-D.lQ.2-LL.eL6龍時(shí)IroDtijfcui|安裝hello.cvim編寫完畢。然后使用vi或者world。運(yùn)行,在屏幕上打印出hello,3:進(jìn)程創(chuàng)建實(shí)驗(yàn)2.了解子進(jìn)程和父進(jìn)程【實(shí)驗(yàn)?zāi)康暮鸵蟆?.了解進(jìn)程的概念及意義;3.掌握創(chuàng)建進(jìn)程的方法。1.子進(jìn)程和父進(jìn)程的創(chuàng)建;【實(shí)驗(yàn)內(nèi)容】編寫附件中的程序?qū)嵗??文件中輸l_fork.c、打開終端,輸入命令geditl_fork.c,在【實(shí)驗(yàn)步驟】一1中的代碼;入l_fork.bmp,回車后顯示無錯(cuò)誤;2、輸入命令gccl_fork.c-ol_fork運(yùn)行程序。、輸入命令:./l_fork3文件中輸入2_vfork.cgedit2_vfork.c,在二、1、打開終端,輸入命令2_vfork.bmp中的代碼;命入3、輸無后顯示錯(cuò)誤:車令、2輸入命gcc2_vfork.c-o2_vfork,回運(yùn)行程序。令:./2_vfork因函數(shù)是不帶緩存的。我們知道write從上面可以看到兩次的運(yùn)行結(jié)果不一樣。庫(kù),所以其數(shù)據(jù)寫到標(biāo)準(zhǔn)輸出一次。但是,標(biāo)準(zhǔn)I/O為在fork之前調(diào)用write否則它是全緩存的。則它是行緩存的,是帶緩存的。如果標(biāo)準(zhǔn)輸出連到終端設(shè)備,輸出的行一次,其原因是標(biāo)準(zhǔn)輸出printf當(dāng)以交互方式運(yùn)行該程序時(shí),只得到printf緩存由新行符刷新。但是當(dāng)將標(biāo)準(zhǔn)輸出重新定向到一個(gè)文件時(shí),卻得到時(shí),該fork之前調(diào)用了forkprintf一次,當(dāng)調(diào)用輸出行兩次。其原因是,在行數(shù)據(jù)仍在緩存中,然后在父進(jìn)程數(shù)據(jù)空間復(fù)制到子進(jìn)程中時(shí),該緩存數(shù)據(jù)exit在子進(jìn)程各自有了帶該行內(nèi)容的緩存。于是那時(shí)父、也被復(fù)制到子進(jìn)程中。.之前的第二個(gè)printf將其數(shù)據(jù)添加到現(xiàn)存的緩存中。當(dāng)每個(gè)進(jìn)程終止時(shí),緩存中的內(nèi)容被寫到相應(yīng)文件中。實(shí)驗(yàn)4進(jìn)程通信【實(shí)驗(yàn)?zāi)康暮鸵蟆?、 了解進(jìn)程通信的概念及方法;2、 了解信號(hào)量、管道;3、 掌握出號(hào)量、管道和命名管道編程方法?!緦?shí)驗(yàn)原理】匿名管道只能用于具有親像關(guān)系的兩進(jìn)程之間通值。一個(gè)進(jìn)程在由pipe()創(chuàng)建管道后,一般用fork()函數(shù)復(fù)制一個(gè)子進(jìn)程,然后通過管道實(shí)現(xiàn)父子進(jìn)程間的通信,也可通過fork()函故復(fù)制多個(gè)說程實(shí)現(xiàn)兄始進(jìn)程之間的通信,管道兩端可分剛用指述字【實(shí)驗(yàn)步驟】1、程序lucy.c創(chuàng)建了FIFOwrite_fifo用于向程序peter.c發(fā)送消息;peter.c程序創(chuàng)建了FIFOread_fifo用于向lucy.c發(fā)送消息;同時(shí),lucy.c能夠通過打開peter.c創(chuàng)建的FIFO來得到的peter.c發(fā)來的消息,peter.c能夠通過打開lucy.c創(chuàng)建的FIFO來得到lucy.c發(fā)來的消息。因此兩者就能互相通信了,兩者必須在線才能進(jìn)行通信聊天,這個(gè)與qq的聊天功能有些類似。2、將lucy.c和peter.c的代碼編寫完后,在一個(gè)終端調(diào)試即gcclucy.c-olucy,無錯(cuò)誤后運(yùn)行./lucy;在另外一個(gè)新終端上調(diào)試即gccpeter.c-opeter,無錯(cuò)誤后運(yùn)行./peter;開始進(jìn)行聊天,若想結(jié)束聊天,則在一個(gè)終端上輸入bye,倆個(gè)終端就會(huì)同時(shí)關(guān)閉?!緦?shí)驗(yàn)結(jié)果】實(shí)驗(yàn)5多線程實(shí)現(xiàn)單詞統(tǒng)計(jì)工具【實(shí)驗(yàn)?zāi)康摹浚豪枚嗑€程實(shí)現(xiàn)文檔單詞書的統(tǒng)計(jì)【實(shí)驗(yàn)原理】:區(qū)分單詞原則:凡是一個(gè)非字母或數(shù)字的字符跟在字母或數(shù)字的后面,那么這個(gè)字母或數(shù)字就是單詞的結(jié)尾。.允許線程使用互斥鎖來修改臨界資源,確保線程間的同步與協(xié)作。如果兩個(gè)線程需要安全地共享-一個(gè)公共計(jì)數(shù)器,需要把公共計(jì)數(shù)器加鎖。線程需要訪問稱為互斥鎖的變量,它可以使線程間很好地合作,避免對(duì)于資源的訪問沖突?!緦?shí)驗(yàn)步驟】:第一步先創(chuàng)建兩個(gè)待統(tǒng)計(jì)的文件1.text,2.text第二步創(chuàng)建一個(gè).C文件里面敲多線程創(chuàng)建單詞統(tǒng)計(jì)工具代碼這里面包含了pthread.h這一個(gè)頭文件,因此再用gcc編譯的時(shí)候與以往的有所不同,需要改為gcc-o<目的文件名〉〈原文件名>Tpthread【運(yùn)行結(jié)果】實(shí)驗(yàn)6:搭建ftp服務(wù)器服務(wù)端【實(shí)驗(yàn)?zāi)康摹课覀冎纅tp是Tcp/ip協(xié)議中的一個(gè)文件傳輸協(xié)議,用來進(jìn)行與客戶端的文件的傳輸和下載,客戶端可分為匿名用戶登錄和實(shí)名用戶登錄。下面服務(wù)器服務(wù)端。ftp我們就來安裝配置【實(shí)驗(yàn)步驟】第一步,進(jìn)入Linux圖形界面,輸入用戶名密碼進(jìn)入命令行界面。第二步,安裝ftp服務(wù)器軟件,命令是sudoapt-getinstallvsftpd,我們安裝的是vsftpd這個(gè)軟件,第三步,修改配置文件,進(jìn)入etc(cdetc),然后,sudovivsftpd.conf進(jìn)入配置環(huán)境,第四步,將lensen-ipv6改成yes,意味著客戶端可以進(jìn)行訪問,w/r都要改成yes,chown-username改成whoever,意味著可以任何人都可以訪問,其他的也最好都改成yes,然后esc+wq返回根目錄。第五步,重啟服務(wù)器使配置

溫馨提示

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

評(píng)論

0/150

提交評(píng)論