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

正文內(nèi)容

操作系統(tǒng)進(jìn)程通信共享內(nèi)存課程設(shè)計(jì)(參考版)

2025-07-10 14:15本頁面
  

【正文】 清華大學(xué)出版社,2006 26 。清華大學(xué)出版社,2007張堯?qū)W,史美林,張高編著西安電子科技大學(xué)出版社,2007嚴(yán)蔚敏,吳偉民編著十、參考文獻(xiàn)湯小丹,梁紅兵編著通過網(wǎng)絡(luò)、書本,請教老師、同學(xué),當(dāng)然團(tuán)隊(duì)合作很重要。通過對試驗(yàn)的操作,我們對課本上得知識得到了鞏固和提高,對操作系統(tǒng)文件操作,進(jìn)程通信,內(nèi)存共享等功能有了較全面的理解。剛開始接觸linux系統(tǒng),我們感覺無從下手,還好實(shí)驗(yàn)前有一節(jié)專門的實(shí)驗(yàn)輔導(dǎo),老師給我們指明了大致方向,還教授了一些試驗(yàn)中可能會遇到的問題,這樣的突擊掃盲對我們意義很大,從中一下子學(xué)到了不少東西,同時(shí)感覺到linux的強(qiáng)大,和它原始的非凡意義。 return 0。wait(0)。 if(!i)client(choice)。 if(!i)server(ch)。 } if(choice==4) return 0。choice)。choice!=4) { printf(輸入有誤,請重新輸入:\n)。choice!=3amp。choice!=2amp。 while(choice!=1amp。choice)。 do { printf(請選擇一項(xiàng)功能項(xiàng):\n)。 char ch[5][20]。 }printf(\n)。 if(i==12) printf(| : |\n)。 if(i==6) printf(| : |\n)。i=15。 int i。}exit(0)。 scanf(%s,ch2)。 addr3makr=1。 while(addr3makr!=1)。 shmid3=shmget(CLIENTTHREE,1024,0777|IPC_CREAT)。 addr2makr=2。 scanf(%d,amp。 addr2makr=1。 while(addr2makr!=1)。 shmid2=shmget(CLIENTTWO,1024,0777|IPC_CREAT)。 addr1makr=2。 while(addr1makr!=1)。 scanf(%s,addr1ch)。 addr1=shmat(shmid1,0,0)。 if(choice==1){ *addr=1。 addr=shmat(shmid,0,0)。 char ch1[20],ch2[50]。}void client(int choice){ int shmid1,shmid2,shmid3。 shmctl(shmid3,IPC_RMID,0)。 while(addr3makr==1)。 if(addr3makr==1) printf(請輸入您的手機(jī)號碼:\n)。 addr3makr=1。 addr3=shmat(shmid3,0,0)。 shmctl(shmid2,IPC_RMID,0)。 while(addr2makr==1)。 if(addr2makr==1) printf(Input Your Payroll:\n)。 addr2makr=1。 addr2=shmat(shmid2,0,0)。 shmctl(shmid1,IPC_RMID,0)。 while(addr1makr==1)。 } printf(手機(jī)號碼已選定,請繳費(fèi)100元:\n)。++i) if(strcmp(phonenumber[i],addr1ch)) { printf(手機(jī)號碼已存在,請重新選擇!\n)。 if(addr1makr==1) { for(i=0。 addr1makr=1。 addr1=shmat(shmid1,0,0)。 while(*addr==1)。 addr=shmat(shmid,0,0)。 int i。void server(char phonenumber[5][20]){ char ch1[20]。addre *addr1,*addr2,*addr3。char ch[50]。 ++i。 } else number[i]=c。 strcpy(phonenumber[j],number)。\039。\n39。 int i=0。 return 。 FILE *fp。\039。 char c。當(dāng)各項(xiàng)功能服務(wù)都不需要時(shí),可以選擇退出本系統(tǒng),選擇功能項(xiàng)4時(shí)自動(dòng)退出本服務(wù)系統(tǒng)。當(dāng)選擇功能項(xiàng)2時(shí),這是一個(gè)為用戶充值的服務(wù),選中該功能項(xiàng)時(shí)客戶端2會和服務(wù)器建立基于共享內(nèi)存的通信,這是用戶可以輸入自己的電話號碼,這里也可以關(guān)聯(lián)到文件,可以在當(dāng)前目錄下創(chuàng)建一個(gè)文件,其中記錄了用戶的電話號碼和對應(yīng)的余額,根據(jù)這個(gè)來為用戶提供要充值的服務(wù)。七、執(zhí)行結(jié)果及分析當(dāng)選這功能項(xiàng)1時(shí),客戶1與服務(wù)器建立共享區(qū)來建立通信,這里用到了和文件相關(guān)聯(lián),在當(dāng)前目錄下有一個(gè)文件,文件中有五條電話號碼記錄,當(dāng)客戶選擇自己的電話號碼是如果輸入的電話號碼和文件中五條記錄中的一項(xiàng)相同就會彈出“手機(jī)號碼已存在,請重新選擇!”這句話也就是說該號碼已被別人注冊并使用,提示用戶重新選擇自己的號碼。 shmctl(int shmid,int cmd,strucr shmid_ds *buf)頭文件: includesys/ includesys/參數(shù)定義:Shmid:共享內(nèi)存標(biāo)識符。shmaddr:指定共享內(nèi)存出現(xiàn)在進(jìn)程內(nèi)存地址什么位置,直接指定為NULL讓內(nèi)核自己決定一個(gè)合適的位置shmflg:SHM_RDONLY為只讀模式,其他為讀寫模式。用法: int shmget()返回值為開辟出來共享內(nèi)存的標(biāo)號。IPC_CREAT為真時(shí),如果內(nèi)核中不存在鍵值與key相等的共性內(nèi)存,則新建一個(gè)共享內(nèi)存;如果存在這樣的共享內(nèi)存,返回此共享內(nèi)存的標(biāo)識符。用法: int fork()其中返回int取值意義如下:0:創(chuàng)建子進(jìn)程,從子進(jìn)程返回的id值0:從父進(jìn)程返回的子進(jìn)程id值1:創(chuàng)建失敗 shmget(key,size,shmflg|IPC_CREAT)頭文件: includesys/ includesys/參數(shù)定義:key:為申請共享內(nèi)存的標(biāo)示符;size:為申請共享內(nèi)存的大小;shmfl
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1