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

正文內(nèi)容

嵌入式操作系統(tǒng)-閱讀頁

2025-07-22 13:55本頁面
  

【正文】 rite等來對(duì)它進(jìn)行操作。/* 進(jìn)程一:讀有名管道*/include include void main() { FILE * in_file。char buf[80]。 if (in_file == NULL) {printf(Error in fdopen.\n)。 }while ((count = fread(buf, 1, 80, in_file)) 0)printf(received from pipe: %s\n, buf)。 }/* 進(jìn)程二:寫有名管道*/include include void main() { FILE * out_file。char buf[80]。 if (out_file == NULL) {printf(Error opening pipe.)。}sprintf(buf,this is test data for the named pipe example\n)。fclose(out_file)。(2) 創(chuàng)建兩個(gè)子進(jìn)程,分別向管道發(fā)下面一條信息后結(jié)束。兩個(gè)子進(jìn)程的發(fā)送沒有先后要求。 char outpipe[50]。char inpipe2[50]=”This is the second message!”; pipe(fd)。if (p1==0) {lockf(fd[1],1,0)。 exit(0)。 if (p2==0) { lockf(fd[1],1,0)。 exit(0)。read(fd[0],putpipe,50)。 printf(“Parent has received first message:\n”)。 wait(0)。lockf(fd[1],0,0)。printf(“$s\n”,outpipe)。} } } 例 信號(hào)發(fā)送及處理。include includesys/ includevoid new_op(int,siginfo_t *,void *)。 int sig。 sigemptyset(amp。=SA_SIGINFO。 if(sigaction(sig,amp。 printf(“wait for the signal\n”)。sleep(5)。同事。Lucy必須等到peter在線才能說話,然后需要等待peter答應(yīng)才能繼續(xù)發(fā)話,就是一來一往的聊天模式,如果不聊了,輸入quit即可。 char read_fifl_name[]=”readfifo”。 char buf[256]。struct stat stat_buf。if(ret==1){ printf(“Fail to creat FIFO %s:%s”,write_fifo_name,strerror(errno))。} write_fd=open(write_fifo_name,O_WRONLY)。 exit(1)。} while(1){ printf(“Lucy:”)。buf[strlen(buf)1]=’\0’。unlink(write_fifo_name)。 exit(0)。 len=read(read_fd,buf,256)。 printf(“Peter:%s\n”,buf)。char read_fifl_name[]=”writefifo”。char buf[256]。 int ret = mkfifo(write_fifo_name,S_IRUSR | S_IWUSR)。exit(1)。} write_fd=open(write_fifo_name,O_WRONLY)。 exit(1)。if(len0){ buf[len]=’\0’。}printf(“Peter:”)。 buf[strlen(buf)1]=’\0’。 unlink(write_fifo_name)。 exit(0)。},結(jié)果示例:[xionglocalhost xiong]$ ./lucy [xionglocalhost xiong]$ ./peterLucy:Hello Lucy:HelloPeter:Hello Peter:Hellolucy:How are you? lucy:How are you?Peter:Fine,and you? Peter:Fine,and you?Lucy:I’m fine too Lucy:I’m fine tooPeter:Bye Peter:ByeLucy:Bye Lucy:Bye[xionglocalhost xiong]$ peter:quit [xionglocalhost xiong]$includesys/ includesys/ includesys/ includeinclude include int main(){int pid,msqid。 /*消息類型*/ char mtex[20]。 if((msqid=msgget(IPC_PRIVATE,0700))0) /*建立消息隊(duì)列*/{printf(“msgget建立消息隊(duì)列失敗。 exit(1)。if((pid=fork())0) {prinf(“fork()函數(shù)調(diào)用失敗!\n”)。}else if (pid0) /*父進(jìn)程,發(fā)送消息到消息隊(duì)列*/{=1。printf(“發(fā)送到信息隊(duì)列的信息內(nèi)容為:%s\n”,)。send_buf,20,IPC_NOWAIT)0) /*發(fā)送send_buf中的信息到msqid對(duì)應(yīng)的消息隊(duì)列*/{printf(“msgsnd消息發(fā)送失敗。 exit(3)。\n”)。 exit(0)。 /*等待父進(jìn)程發(fā)送消息完成*/ int infolen。receive_buf,20,0,IPC_NOWAIT))0) /*自消息隊(duì)列接受信息*/{printf(“msgrcv讀取信息錯(cuò)誤。 exit(4):} elseprintf(“msgrcv讀取信息成功。printf(“自消息隊(duì)列讀取到的內(nèi)容為%s,共讀取%d個(gè)字節(jié)。if((msgctl(msqid,IPC_RMID,NULL))0) /*刪除msqid對(duì)應(yīng)的消息隊(duì)列*/{printf(“msgctl函數(shù)調(diào)用出現(xiàn)錯(cuò)誤。 exit(5)。\n”,msqid)。 } } }可對(duì)上述程序編譯后在運(yùn)行,結(jié)果如下: [rootlocalhost temp]./msgmsgget建立消息隊(duì)列成功,該消息隊(duì)列識(shí)別代號(hào)為98304.發(fā)送到消息隊(duì)列的信息內(nèi)容為:My test informationmsgsnd消息發(fā)送成功。自消息隊(duì)列讀取到的內(nèi)容為My test information,共讀取到20個(gè)字節(jié)。include char * write_address。struct shmid_ds dsbuf。 \n”)。} elseprintf(“shmid共享內(nèi)存分配成功,共享內(nèi)存識(shí)別代號(hào)為: %d\n”,shmid)。 exit(2)。 write_address=(char *)shmat(shmid,NULL,0)。\n”)。}else {printf(“shmat 連接共享內(nèi)存成功。strcpy(write_address,”我是寫入共享內(nèi)存的測(cè)試數(shù)據(jù)”)。if((shmdt((void *)write_address))0) printf(“shmdt 共享內(nèi)存斷開錯(cuò)誤. \n”)。 sleep(2)。} }else {sleep(2)。if((shmctl(shmid,IPC_STAT,amp。 exit(4)。printf(“該共享內(nèi)存的大小為: %d\n”,)。 exit(5)。printf(“最后一個(gè)操作該共享內(nèi)存的進(jìn)程ID是: %d\n”,)。exit(6)。if(shmctl(shmid,IPC_RMID,NULL)0){printf(“shmctl刪除共享內(nèi)存及其數(shù)據(jù)結(jié)構(gòu)出現(xiàn)錯(cuò)誤.\n”)。} elseprintf(“shmctl刪除共享內(nèi)存及其數(shù)據(jù)結(jié)構(gòu)成功.\n”)。} } }
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1