锘??xml version="1.0" encoding="utf-8" standalone="yes"?>女同一区二区,一本高清dvd不卡在线观看,欧美三级视频http://www.shnenglu.com/newplan/category/5224.html闃垮熀綾沖痙鍦ㄦ礂婢℃檪鐧肩従嫻姏鍘熺悊錛岄珮鑸堝緱渚嗕笉鍙婄┛銌栬げ瀛愶紝璺戝埌琛椼問澶у枈錛欵ureka錛堟垜鎵懼埌浜嗭級銆?/description>zh-cnMon, 19 May 2008 13:40:49 GMTMon, 19 May 2008 13:40:49 GMT60浜斾釜鍝插瀹剁嚎紼嬪疄鐜?/title><link>http://www.shnenglu.com/newplan/archive/2008/01/04/40374.html</link><dc:creator>灞辨硥寮歡</dc:creator><author>灞辨硥寮歡</author><pubDate>Thu, 03 Jan 2008 16:14:00 GMT</pubDate><guid>http://www.shnenglu.com/newplan/archive/2008/01/04/40374.html</guid><wfw:comment>http://www.shnenglu.com/newplan/comments/40374.html</wfw:comment><comments>http://www.shnenglu.com/newplan/archive/2008/01/04/40374.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/newplan/comments/commentRss/40374.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/newplan/services/trackbacks/40374.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">#include </span><span style="color: #000000;">"</span><span style="color: #000000;">apue.h</span><span style="color: #000000;">"</span><span style="color: #000000;"><br>#include </span><span style="color: #000000;">"</span><span style="color: #000000;">semaphore.h</span><span style="color: #000000;">"</span><span style="color: #000000;"><br>#include </span><span style="color: #000000;">"</span><span style="color: #000000;">pthread.h</span><span style="color: #000000;">"</span><span style="color: #000000;"><br><br>#define N </span><span style="color: #000000;">5</span><span style="color: #000000;"><br>static </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> necs;<br>static sem_t  </span><span style="color: #000000;">*</span><span style="color: #000000;">forks;<br><br>void </span><span style="color: #000000;">*</span><span style="color: #000000;"><br>takeFork(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i)<br>{<br></span><span style="color: #0000ff;">if</span><span style="color: #000000;">(i</span><span style="color: #000000;">==</span><span style="color: #000000;">N</span><span style="color: #000000;">-</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>    {<br>     sem_wait(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[</span><span style="color: #000000;">0</span><span style="color: #000000;">]);<br>     sem_wait(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[i]);<br>    }<br>   </span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br>     {<br>     sem_wait(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[i]);<br>     sem_wait(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[i</span><span style="color: #000000;">+</span><span style="color: #000000;">1</span><span style="color: #000000;">]);<br>     }<br>}<br>void </span><span style="color: #000000;">*</span><span style="color: #000000;"><br>putFork(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i)<br>{<br></span><span style="color: #0000ff;">if</span><span style="color: #000000;">(i</span><span style="color: #000000;">==</span><span style="color: #000000;">N</span><span style="color: #000000;">-</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>    {<br>     sem_post(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[</span><span style="color: #000000;">0</span><span style="color: #000000;">]);<br>     sem_post(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[i]);<br>    }<br></span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br>    {<br>    sem_post(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[i]);<br>    sem_post(</span><span style="color: #000000;">&</span><span style="color: #000000;">forks[i</span><span style="color: #000000;">+</span><span style="color: #000000;">1</span><span style="color: #000000;">]);<br>   }<br>}<br>void <br>thinking(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i,</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> necs)<br>{<br>    printf(</span><span style="color: #000000;">"</span><span style="color: #000000;">pholosopher %d  is thinking\n</span><span style="color: #000000;">"</span><span style="color: #000000;">,i);<br>    sleep(necs);<br><br>}<br>void<br>eating(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i,</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> necs)<br>{<br>    printf(</span><span style="color: #000000;">"</span><span style="color: #000000;">pholosopher %d  is eating\n</span><span style="color: #000000;">"</span><span style="color: #000000;">,i);<br>    sleep(necs);<br>}<br>void </span><span style="color: #000000;">*</span><span style="color: #000000;"><br>philosopher(void </span><span style="color: #000000;">*</span><span style="color: #000000;">n)<br>{<br>    </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i</span><span style="color: #000000;">=</span><span style="color: #000000;">(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> )n;<br>    </span><span style="color: #0000ff;">while</span><span style="color: #000000;">(</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>    {<br>     thinking(i,necs);<br>     takeFork(i);<br>     eating(i,necs);<br>     putFork(i);<br>    }<br>}<br></span><span style="color: #000000;">//============================</span><span style="color: #000000;">main </span><span style="color: #0000ff;">function</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"><br>main(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> argc,char </span><span style="color: #000000;">*</span><span style="color: #000000;">argv[])<br>{<br>   pthread_t tid;<br>  <br>   </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(argc</span><span style="color: #000000;">==</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>          necs</span><span style="color: #000000;">=</span><span style="color: #000000;">2</span><span style="color: #000000;">;<br>   </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(argc </span><span style="color: #000000;">==</span><span style="color: #000000;">2</span><span style="color: #000000;">)<br>          necs</span><span style="color: #000000;">=</span><span style="color: #000000;">atoi(argv[</span><span style="color: #000000;">1</span><span style="color: #000000;">]);<br>   </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> return </span><span style="color: #000000;">1</span><span style="color: #000000;">;<br>  <br>   forks</span><span style="color: #000000;">=</span><span style="color: #000000;">(sem_t</span><span style="color: #000000;">*</span><span style="color: #000000;">)malloc(N</span><span style="color: #000000;">*</span><span style="color: #000000;">sizeof(sem_t));<br>   <br>   </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i;<br>   </span><span style="color: #0000ff;">for</span><span style="color: #000000;">(i</span><span style="color: #000000;">=</span><span style="color: #000000;">0</span><span style="color: #000000;">;  i</span><span style="color: #000000;"><</span><span style="color: #000000;">N;  i</span><span style="color: #000000;">++</span><span style="color: #000000;">)<br>   sem_init(forks</span><span style="color: #000000;">+</span><span style="color: #000000;">i,</span><span style="color: #000000;">0</span><span style="color: #000000;">,</span><span style="color: #000000;">1</span><span style="color: #000000;">);<br><br>   </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> status;<br>   </span><span style="color: #0000ff;">for</span><span style="color: #000000;">(i</span><span style="color: #000000;">=</span><span style="color: #000000;">0</span><span style="color: #000000;">;i</span><span style="color: #000000;"><</span><span style="color: #000000;">N;i</span><span style="color: #000000;">++</span><span style="color: #000000;">)<br>    {<br>      status</span><span style="color: #000000;">=</span><span style="color: #000000;">pthread_create(</span><span style="color: #000000;">&</span><span style="color: #000000;">tid,</span><span style="color: #0000ff;">NULL</span><span style="color: #000000;">,philosopher,(void</span><span style="color: #000000;">*</span><span style="color: #000000;">)i);<br><br>      </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(status</span><span style="color: #000000;"><</span><span style="color: #000000;">0</span><span style="color: #000000;">)<br>      err_sys(</span><span style="color: #000000;">"</span><span style="color: #000000;">create error!</span><span style="color: #000000;">"</span><span style="color: #000000;">);  <br>    } <br>    pthread_join(tid ,</span><span style="color: #0000ff;">NULL</span><span style="color: #000000;">);<br>    return </span><span style="color: #000000;">0</span><span style="color: #000000;">;  <br>}<br></span></div> <br><img src ="http://www.shnenglu.com/newplan/aggbug/40374.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/newplan/" target="_blank">灞辨硥寮歡</a> 2008-01-04 00:14 <a href="http://www.shnenglu.com/newplan/archive/2008/01/04/40374.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>浜斾釜鍝插瀹惰繘紼嬪疄鐜?/title><link>http://www.shnenglu.com/newplan/archive/2008/01/04/40373.html</link><dc:creator>灞辨硥寮歡</dc:creator><author>灞辨硥寮歡</author><pubDate>Thu, 03 Jan 2008 16:13:00 GMT</pubDate><guid>http://www.shnenglu.com/newplan/archive/2008/01/04/40373.html</guid><wfw:comment>http://www.shnenglu.com/newplan/comments/40373.html</wfw:comment><comments>http://www.shnenglu.com/newplan/archive/2008/01/04/40373.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/newplan/comments/commentRss/40373.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/newplan/services/trackbacks/40373.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">#include </span><span style="color: #000000;">"</span><span style="color: #000000;">apue.h</span><span style="color: #000000;">"</span><span style="color: #000000;"><br>#include </span><span style="color: #000000;">"</span><span style="color: #000000;">lock.h</span><span style="color: #000000;">"</span><span style="color: #000000;"><br>#include </span><span style="color: #000000;">"</span><span style="color: #000000;">lock.c</span><span style="color: #000000;">"</span><span style="color: #000000;"><br><br></span><span style="color: #000000;">/*</span><span style="color: #000000;">define some important variable</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br></span><span style="color: #000000;">/*=======================================*/</span><span style="color: #000000;"><br>pid_t  pid;<br><br>static char </span><span style="color: #000000;">*</span><span style="color: #000000;">forks[</span><span style="color: #000000;">5</span><span style="color: #000000;">]</span><span style="color: #000000;">=</span><span style="color: #000000;">{<br></span><span style="color: #000000;">"</span><span style="color: #000000;">fork0</span><span style="color: #000000;">"</span><span style="color: #000000;">, </span><span style="color: #000000;">"</span><span style="color: #000000;">fork1</span><span style="color: #000000;">"</span><span style="color: #000000;">, </span><span style="color: #000000;">"</span><span style="color: #000000;">fork2</span><span style="color: #000000;">"</span><span style="color: #000000;"> ,</span><span style="color: #000000;">"</span><span style="color: #000000;">fork3</span><span style="color: #000000;">"</span><span style="color: #000000;"> ,</span><span style="color: #000000;">"</span><span style="color: #000000;">fork4</span><span style="color: #000000;">"</span><span style="color: #000000;"><br>};<br><br>static </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> necs;<br><br>#define N </span><span style="color: #000000;">5</span><span style="color: #000000;"><br><br></span><span style="color: #000000;">/*======================================*/</span><span style="color: #000000;"><br>void takeFork(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i)<br>{<br></span><span style="color: #0000ff;">if</span><span style="color: #000000;">(i</span><span style="color: #000000;">==</span><span style="color: #000000;">N</span><span style="color: #000000;">-</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>  {<br>     lock(forks[</span><span style="color: #000000;">0</span><span style="color: #000000;">]);<br>     lock(forks[i]);<br>  }<br></span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br>{<br>lock(forks[i]);<br>lock(forks[i</span><span style="color: #000000;">+</span><span style="color: #000000;">1</span><span style="color: #000000;">]);<br>}<br>}<br><br><br>void putFork(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i)<br>{<br>   </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(i</span><span style="color: #000000;">==</span><span style="color: #000000;">N</span><span style="color: #000000;">-</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>    {<br>    unlock(forks[</span><span style="color: #000000;">0</span><span style="color: #000000;">]);<br>    unlock(forks[i]);<br>    }<br>  </span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br>   {<br>   unlock(forks[i]);<br>   unlock(forks[i</span><span style="color: #000000;">+</span><span style="color: #000000;">1</span><span style="color: #000000;">]);<br><br>   }<br>}<br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"><br>thinking(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i,</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> necs){<br>printf(</span><span style="color: #000000;">"</span><span style="color: #000000;">pholosopher %d is thinking\n</span><span style="color: #000000;">"</span><span style="color: #000000;">,i);<br>return sleep(necs);<br>}<br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> <br>eating(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i,</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> necs)<br>{printf(</span><span style="color: #000000;">"</span><span style="color: #000000;">pholosopher %d is eating\n</span><span style="color: #000000;">"</span><span style="color: #000000;">,i);<br>return sleep(necs);<br>}<br>void philosopher(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i)<br>{<br></span><span style="color: #0000ff;">while</span><span style="color: #000000;">(</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>{<br>thinking(i,necs);<br>takeFork(i);<br>eating(i,necs);<br>putFork(i);<br><br>}<br>}<br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"><br> main(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> argc ,char </span><span style="color: #000000;">*</span><span style="color: #000000;">argv[])<br>{<br> </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(argc</span><span style="color: #000000;">=</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br>      necs</span><span style="color: #000000;">=</span><span style="color: #000000;">2</span><span style="color: #000000;">;<br></span><span style="color: #0000ff;">else</span><span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(argc</span><span style="color: #000000;">==</span><span style="color: #000000;">2</span><span style="color: #000000;">)<br>     necs</span><span style="color: #000000;">=</span><span style="color: #000000;">atoi(argv[</span><span style="color: #000000;">1</span><span style="color: #000000;">]);<br></span><span style="color: #0000ff;">else</span><span style="color: #000000;">  return </span><span style="color: #000000;">0</span><span style="color: #000000;">;<br> <br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i;   <br></span><span style="color: #0000ff;">for</span><span style="color: #000000;">(i</span><span style="color: #000000;">=</span><span style="color: #000000;">0</span><span style="color: #000000;">;i</span><span style="color: #000000;"><</span><span style="color: #000000;">N;i</span><span style="color: #000000;">++</span><span style="color: #000000;">)<br>{<br> pid</span><span style="color: #000000;">=</span><span style="color: #000000;">fork();<br> </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(pid </span><span style="color: #000000;">==</span><span style="color: #000000;">0</span><span style="color: #000000;">)<br>     philosopher(i);<br>}<br>return </span><span style="color: #000000;">0</span><span style="color: #000000;">;<br>}<br></span></div> <br><img src ="http://www.shnenglu.com/newplan/aggbug/40373.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/newplan/" target="_blank">灞辨硥寮歡</a> 2008-01-04 00:13 <a href="http://www.shnenglu.com/newplan/archive/2008/01/04/40373.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鍚屾鍐欎笌寮傛鍐欐枃浠跺疄鐜?/title><link>http://www.shnenglu.com/newplan/archive/2007/11/21/37099.html</link><dc:creator>灞辨硥寮歡</dc:creator><author>灞辨硥寮歡</author><pubDate>Wed, 21 Nov 2007 10:45:00 GMT</pubDate><guid>http://www.shnenglu.com/newplan/archive/2007/11/21/37099.html</guid><wfw:comment>http://www.shnenglu.com/newplan/comments/37099.html</wfw:comment><comments>http://www.shnenglu.com/newplan/archive/2007/11/21/37099.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/newplan/comments/commentRss/37099.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/newplan/services/trackbacks/37099.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><span style="color: #008000;">/*<br> 07.11.20 浜庢搗闊?br>*/<br>#</span><span style="color: #008000;">include  "sys/times.h"<br>#include "apue.h"<br>#include "fcntl.h"</span><span style="color: #008000;"><br></span><span style="color: #000000;">clock_t </span><span style="color: #0000ff;">times</span><span style="color: #000000;">(struct tms </span><span style="color: #000000;">*</span><span style="color: #000000;">buf);<br><br>static void pr_times(clock_t real </span><span style="color: #000000;">,</span><span style="color: #000000;">struct tms </span><span style="color: #000000;">*</span><span style="color: #000000;">tmsstart</span><span style="color: #000000;">,</span><span style="color: #000000;"> struct tms </span><span style="color: #000000;">*</span><span style="color: #000000;">tmsend);<br><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> main(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> argc</span><span style="color: #000000;">,</span><span style="color: #000000;"> char </span><span style="color: #000000;">*</span><span style="color: #000000;">argv[])<br>{<br>  struct tms tmsstart</span><span style="color: #000000;">,</span><span style="color: #000000;">tmsend;<br> <br>  clock_t  start</span><span style="color: #000000;">,</span><span style="color: #000000;">end;<br> <br>  off_t excursion;<br> <br>  </span><span style="color: #0000ff;">if</span><span style="color: #000000;">((excursion</span><span style="color: #000000;">=</span><span style="color: #000000;">lseek(</span><span style="color: #800000;">0</span><span style="color: #000000;">,</span><span style="color: #800000;">0</span><span style="color: #000000;">,</span><span style="color: #000000;">SEEK_END))</span><span style="color: #000000;">==-</span><span style="color: #800000;">1</span><span style="color: #000000;">)</span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">can not seek!\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);<br> <br>  char buf[excursion];<br> <br>  </span><span style="color: #000000;">/*</span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">excutsion ==#%d\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">excursion);</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>  </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> outfile_fd;</span><span style="color: #000000;">/*</span><span style="color: #000000;">out file descrite tag </span><span style="color: #000000;">*/</span><span style="color: #000000;"><br> <br>  lseek(</span><span style="color: #800000;">0</span><span style="color: #000000;">,</span><span style="color: #800000;">0</span><span style="color: #000000;">,</span><span style="color: #000000;">SEEK_SET);</span><span style="color: #000000;">/*</span><span style="color: #000000;">it is very importent  to go back  to the beginning of input file</span><span style="color: #000000;">!*/</span><span style="color: #000000;"><br> <br>  </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #0000ff;">read</span><span style="color: #000000;">(</span><span style="color: #800000;">0</span><span style="color: #000000;">,</span><span style="color: #000000;">buf</span><span style="color: #000000;">,</span><span style="color: #000000;">excursion)</span><span style="color: #000000;">==</span><span style="color: #800000;">0</span><span style="color: #000000;">)</span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">read OK!\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);<br>  </span><span style="color: #000000;">/*</span><span style="color: #000000;"> buf[excursion]</span><span style="color: #000000;">=</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000; font-weight: bold;">\0</span><span style="color: #000000; font-weight: bold;">'</span><span style="color: #000000;">;</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>  </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(argc</span><span style="color: #000000;">==</span><span style="color: #800000;">3</span><span style="color: #000000;">  </span><span style="color: #000000;">&&</span><span style="color: #000000;">  strcmp(argv[</span><span style="color: #800000;">2</span><span style="color: #000000;">]</span><span style="color: #000000;">,</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">sync</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">)</span><span style="color: #000000;">==</span><span style="color: #800000;">0</span><span style="color: #000000;">)<br>      { </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(( outfile_fd</span><span style="color: #000000;">=</span><span style="color: #0000ff;">open</span><span style="color: #000000;">(argv[</span><span style="color: #800000;">1</span><span style="color: #000000;">]</span><span style="color: #000000;">,</span><span style="color: #000000;">O_RDWR</span><span style="color: #000000;">|</span><span style="color: #000000;">O_CREAT</span><span style="color: #000000;">|</span><span style="color: #000000;">O_SYNC</span><span style="color: #000000;">,</span><span style="color: #800000;">0666</span><span style="color: #000000;">))</span><span style="color: #000000;"><</span><span style="color: #800000;">0</span><span style="color: #000000;">)err_sys(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">creat error</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);}<br>    </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(argc</span><span style="color: #000000;">==</span><span style="color: #800000;">2</span><span style="color: #000000;">)<br>       {</span><span style="color: #0000ff;">if</span><span style="color: #000000;"> (( outfile_fd</span><span style="color: #000000;">=</span><span style="color: #0000ff;">open</span><span style="color: #000000;">(argv[</span><span style="color: #800000;">1</span><span style="color: #000000;">]</span><span style="color: #000000;">,</span><span style="color: #000000;">O_RDWR</span><span style="color: #000000;">|</span><span style="color: #000000;">O_CREAT</span><span style="color: #000000;">,</span><span style="color: #800000;">0666</span><span style="color: #000000;">))</span><span style="color: #000000;"><</span><span style="color: #800000;">0</span><span style="color: #000000;">)err_sys(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">creat error</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);}<br>    </span><span style="color: #0000ff;">else</span><span style="color: #000000;">{</span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">para error!\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);</span><span style="color: #0000ff;">exit</span><span style="color: #000000;">(</span><span style="color: #800000;">1</span><span style="color: #000000;">);}<br>    long size</span><span style="color: #000000;">=</span><span style="color: #800000;">1024</span><span style="color: #000000;">; <br>    fflush(stdin);<br>    </span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">BUFFSIZE  USER CPU  SYSTEM CPU  REAL TIMES  CIRCLE TIMES\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);<br>    </span><span style="color: #0000ff;">int</span><span style="color: #000000;">  n;<br>    </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> t;<br>    char </span><span style="color: #000000;">*</span><span style="color: #000000;">p</span><span style="color: #000000;">=</span><span style="color: #000000;">buf;<br>    long  redo_count;</span><span style="color: #000000;">/*</span><span style="color: #000000;">re </span><span style="color: #0000ff;">do</span><span style="color: #000000;"> copy </span><span style="color: #0000ff;">times</span><span style="color: #000000;">*/</span><span style="color: #000000;"> <br><br>  </span><span style="color: #0000ff;">do</span><span style="color: #000000;">{ <br>      </span><span style="color: #0000ff;">if</span><span style="color: #000000;">((start</span><span style="color: #000000;">=</span><span style="color: #0000ff;">times</span><span style="color: #000000;">(</span><span style="color: #000000;">&</span><span style="color: #000000;">tmsstart))</span><span style="color: #000000;">==-</span><span style="color: #800000;">1</span><span style="color: #000000;">)err_sys(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">times error</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);<br>      redo_count</span><span style="color: #000000;">=</span><span style="color: #800000;">0</span><span style="color: #000000;">;</span><span style="color: #000000;">/*</span><span style="color: #000000;">it is very </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> to set the counter zero at every circle </span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>      t</span><span style="color: #000000;">=</span><span style="color: #800000;">1</span><span style="color: #000000;">;</span><span style="color: #000000;">/*</span><span style="color: #000000;">it is </span><span style="color: #0000ff;">use</span><span style="color: #000000;"> in the inside </span><span style="color: #0000ff;">while</span><span style="color: #000000;"> </span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>      </span><span style="color: #0000ff;">while</span><span style="color: #000000;">((n</span><span style="color: #000000;">=</span><span style="color: #0000ff;">write</span><span style="color: #000000;">(outfile_fd</span><span style="color: #000000;">,</span><span style="color: #000000;">p</span><span style="color: #000000;">,</span><span style="color: #000000;">size))</span><span style="color: #000000;">==</span><span style="color: #000000;">size)<br>              {   p</span><span style="color: #000000;">+=</span><span style="color: #000000;">size;</span><span style="color: #000000;">/*</span><span style="color: #000000;">the begin buf must increase every </span><span style="color: #0000ff;">time</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>                  redo_count</span><span style="color: #000000;">++</span><span style="color: #000000;">;</span><span style="color: #000000;">/*</span><span style="color: #000000;">count how many </span><span style="color: #0000ff;">times</span><span style="color: #000000;"> circle </span><span style="color: #0000ff;">do</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>                  t</span><span style="color: #000000;">=</span><span style="color: #000000;">size</span><span style="color: #000000;">*</span><span style="color: #000000;">redo_count;</span><span style="color: #000000;">/*</span><span style="color: #000000;">one tag to count how many charaters we have travered</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>                  </span><span style="color: #000000;">/*</span><span style="color: #000000;"> </span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">excursion==%d  t==%d   excursion-t==%d  size==%d\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">excursion</span><span style="color: #000000;">,</span><span style="color: #000000;">t</span><span style="color: #000000;">,</span><span style="color: #000000;">excursion</span><span style="color: #000000;">-</span><span style="color: #000000;">t</span><span style="color: #000000;">,</span><span style="color: #000000;">size);</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>                  </span><span style="color: #0000ff;">if</span><span style="color: #000000;">((excursion</span><span style="color: #000000;">-</span><span style="color: #000000;">t)</span><span style="color: #000000;"><</span><span style="color: #000000;">size)break;<br>              }<br>      </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(excursion</span><span style="color: #000000;">-</span><span style="color: #000000;">t</span><span style="color: #000000;">></span><span style="color: #800000;">0</span><span style="color: #000000;">)<br>         </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #0000ff;">write</span><span style="color: #000000;">(outfile_fd</span><span style="color: #000000;">,</span><span style="color: #000000;">p</span><span style="color: #000000;">,</span><span style="color: #000000;">excursion</span><span style="color: #000000;">-</span><span style="color: #000000;">t)</span><span style="color: #000000;">!=</span><span style="color: #000000;">(excursion</span><span style="color: #000000;">-</span><span style="color: #000000;">t))err_sys(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">read error</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);<br>      </span><span style="color: #0000ff;">if</span><span style="color: #000000;">((end</span><span style="color: #000000;">=</span><span style="color: #0000ff;">times</span><span style="color: #000000;">(</span><span style="color: #000000;">&</span><span style="color: #000000;">tmsend))</span><span style="color: #000000;">==-</span><span style="color: #800000;">1</span><span style="color: #000000;">)err_sys(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">times error</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);<br>      </span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">%7ld</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">size);<br>      pr_times(end</span><span style="color: #000000;">-</span><span style="color: #000000;">start</span><span style="color: #000000;">,&</span><span style="color: #000000;">tmsstart</span><span style="color: #000000;">,&</span><span style="color: #000000;">tmsend);<br>      </span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">%7ld\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">redo_count);<br>      lseek(outfile_fd</span><span style="color: #000000;">,</span><span style="color: #800000;">0</span><span style="color: #000000;">,</span><span style="color: #000000;">SEEK_SET);</span><span style="color: #000000;">/*</span><span style="color: #000000;">let the outfile pointer go back to the beginning of outfile</span><span style="color: #000000;">!*/</span><span style="color: #000000;"><br>      p</span><span style="color: #000000;">=</span><span style="color: #000000;">buf;</span><span style="color: #000000;">/*</span><span style="color: #000000;">let p </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> to the beginning of buf;</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>     </span><span style="color: #000000;">/*</span><span style="color: #000000;"> </span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">size=%d  excursion=%d\n</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">size</span><span style="color: #000000;">,</span><span style="color: #000000;">excursion);</span><span style="color: #000000;">*/</span><span style="color: #000000;"><br>     } </span><span style="color: #0000ff;">while</span><span style="color: #000000;">((size</span><span style="color: #000000;">*=</span><span style="color: #800000;">2</span><span style="color: #000000;">)</span><span style="color: #000000;"><=</span><span style="color: #000000;">excursion);<br>  <br></span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #800000;">0</span><span style="color: #000000;">;<br>}<br>static void<br>pr_times(clock_t real </span><span style="color: #000000;">,</span><span style="color: #000000;">struct tms </span><span style="color: #000000;">*</span><span style="color: #000000;">tmsstart</span><span style="color: #000000;">,</span><span style="color: #000000;">struct tms </span><span style="color: #000000;">*</span><span style="color: #000000;">tmsend)<br>{static long clktck</span><span style="color: #000000;">=</span><span style="color: #800000;">0</span><span style="color: #000000;">;<br></span><span style="color: #0000ff;">if</span><span style="color: #000000;">(clktck</span><span style="color: #000000;">==</span><span style="color: #800000;">0</span><span style="color: #000000;">)<br> </span><span style="color: #0000ff;">if</span><span style="color: #000000;">((clktck</span><span style="color: #000000;">=</span><span style="color: #000000;">sysconf(_SC_CLK_TCK))</span><span style="color: #000000;"><</span><span style="color: #800000;">0</span><span style="color: #000000;">)<br>    </span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">sysconf error</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">);<br><br></span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">   %2.5f</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">(tmsend</span><span style="color: #000000;">-></span><span style="color: #000000;">tms_utime</span><span style="color: #000000;">-</span><span style="color: #000000;">tmsstart</span><span style="color: #000000;">-></span><span style="color: #000000;">tms_utime)</span><span style="color: #000000;">/</span><span style="color: #000000;">(double)clktck);<br></span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">   %2.5f</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">(tmsend</span><span style="color: #000000;">-></span><span style="color: #000000;">tms_stime</span><span style="color: #000000;">-</span><span style="color: #000000;">tmsstart</span><span style="color: #000000;">-></span><span style="color: #000000;">tms_stime)</span><span style="color: #000000;">/</span><span style="color: #000000;">(double)clktck);<br></span><span style="color: #0000ff;">printf</span><span style="color: #000000;">(</span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000; font-weight: bold;">     %2.5f    </span><span style="color: #000000; font-weight: bold;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">real</span><span style="color: #000000;">/</span><span style="color: #000000;">(double)clktck);<br>} <br> </span></div> <br><img src ="http://www.shnenglu.com/newplan/aggbug/37099.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/newplan/" target="_blank">灞辨硥寮歡</a> 2007-11-21 18:45 <a href="http://www.shnenglu.com/newplan/archive/2007/11/21/37099.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>unix_綆鍗晄hell瀹炵幇http://www.shnenglu.com/newplan/archive/2007/11/06/35991.html灞辨硥寮歡灞辨硥寮歡Tue, 06 Nov 2007 15:18:00 GMThttp://www.shnenglu.com/newplan/archive/2007/11/06/35991.htmlhttp://www.shnenglu.com/newplan/comments/35991.htmlhttp://www.shnenglu.com/newplan/archive/2007/11/06/35991.html#Feedback0http://www.shnenglu.com/newplan/comments/commentRss/35991.htmlhttp://www.shnenglu.com/newplan/services/trackbacks/35991.html#include "apue.h"
#include 
<sys/wait.h>
extern  char 
**environ;
static void sign_Int(
int signnal)
{printf(
"Be interrupted\n%%");}
static void sign_Quit(
int signnal)
{printf(
"quit\n%%");
}

int 
main(void)
{
   
    char 
*argv[20];
    pid_t pid;
    
int status;
    
if(signal(SIGINT,sign_Int)==SIG_ERR)
       err_sys(
"signal error\n");
    
if(signal(SIGQUIT,sign_Quit)==SIG_ERR)
         err_sys(
"signal error\n");
    printf(
"%%");
    
while (1)
    {        char buf[MAXLINE];
             
int index=0,i=0;
           
if(fgets(buf,MAXLINE,stdin)==NULL)
             break;  
        
while( buf[i] != '\0'&&buf[i]!='\n' )
        {
           
if(buf[i] != ' ' )
           {  
               argv[index]
= buf+i;
               index
++;
               
for(;buf[i]!= ' '&&buf[i]!='\n';i++);
               if(buf[i]=='\n')
               break;               
               buf[i]
='\0';
                i++;
                
while(buf[i]==' ') 
                       i++
           }  
        } 
        buf[i]
='\0';
        argv[index] = NULL;
        
if((pid = fork() ) < 0 ) 
           err_sys(
"fork error\n");
        
else if( pid == 0 )
        {
           execve(argv[
0],argv,environ);
           err_ret(
"coundn't execute:%s",argv[0]);           
           
exit(127);
          }
        
if(( pid = waitpid(pid,&status,0)) < 0)
           err_sys(
"waitpid error\n");
          printf(
"%%"); 
     }
     
exit(0);
}


]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            另类天堂av| 久久九九免费视频| 亚洲欧洲在线一区| 免费观看成人鲁鲁鲁鲁鲁视频| 韩国av一区二区三区四区| 久久亚裔精品欧美| 欧美成人首页| 亚洲无毛电影| 性欧美办公室18xxxxhd| 亚洲福利视频网站| 一区二区三区国产| 精品动漫3d一区二区三区免费| 欧美激情综合色| 欧美视频三区在线播放| 亚洲国产精品久久久久秋霞蜜臀| 亚洲欧美一区二区三区久久 | 欧美激情第二页| 欧美精品粉嫩高潮一区二区| 午夜日韩视频| 另类亚洲自拍| 欧美一区二区三区在线播放| 久久全球大尺度高清视频| av成人激情| 久久久久久免费| 亚洲一区二区三区四区中文| 久久蜜桃精品| 午夜在线电影亚洲一区| 欧美wwwwww| 欧美在线视频网站| 欧美日韩国产在线播放| 蜜桃久久精品乱码一区二区| 欧美日韩综合不卡| 亚洲高清免费| 国产一区二区看久久| 99在线热播精品免费| 1000部精品久久久久久久久| 亚洲一区二区精品在线| 日韩一级精品| 久久综合伊人77777麻豆| 欧美在线视频一区二区三区| 欧美日韩黄色大片| 亚洲国产日日夜夜| 在线高清一区| 欧美在线观看日本一区| 午夜久久资源| 国产精品久久久久久av福利软件 | 久久国产乱子精品免费女 | 久久久xxx| 欧美在线视频免费播放| 欧美性大战xxxxx久久久| 最新成人在线| 亚洲三级观看| 欧美电影专区| 亚洲国产精品久久| 亚洲精品国精品久久99热| 久久视频一区| 欧美91视频| 在线播放一区| 久久婷婷国产综合国色天香| 久久精品国产精品亚洲精品| 国产精品亚洲美女av网站| 一区二区免费看| 亚洲欧美一区二区精品久久久| 欧美三级不卡| 亚洲性夜色噜噜噜7777| 午夜精品久久久久久| 国产精品你懂的在线欣赏| 中文一区二区| 欧美在线你懂的| 国产一区二区三区成人欧美日韩在线观看| 亚洲午夜激情网站| 久久本道综合色狠狠五月| 国产一区二区视频在线观看| 久久超碰97人人做人人爱| 免费观看欧美在线视频的网站| 亚洲电影在线免费观看| 欧美成人午夜| 一区二区激情视频| 欧美在线观看一二区| 韩国精品一区二区三区| 免费日韩成人| 在线亚洲自拍| 久久久久久午夜| 亚洲人成网站色ww在线| 欧美色精品天天在线观看视频| 亚洲一级黄色片| 免费欧美高清视频| 夜夜爽www精品| 国产日韩一区欧美| 毛片一区二区三区| 一区二区激情视频| 久久综合九色九九| 亚洲视频一区二区在线观看 | 在线精品国产欧美| 欧美日韩一区二区视频在线| 亚洲一区二区网站| 亚洲二区在线视频| 翔田千里一区二区| 亚洲精品日韩欧美| 国产一区二区三区av电影| 欧美jizz19性欧美| 亚洲天堂第二页| 亚洲第一搞黄网站| 欧美一级成年大片在线观看| 亚洲欧洲综合另类在线| 国产精品午夜av在线| 欧美激情国产高清| 久久精品99国产精品酒店日本| 亚洲免费观看高清在线观看| 看欧美日韩国产| 午夜在线一区| 99精品视频免费全部在线| 好吊视频一区二区三区四区 | 欧美日韩一区二区三区四区在线观看| 欧美一区二视频| 一本色道久久88综合亚洲精品ⅰ| 蜜臀va亚洲va欧美va天堂| 小黄鸭精品aⅴ导航网站入口| 亚洲美女视频网| 亚洲风情亚aⅴ在线发布| 国产视频精品免费播放| 国产精品久久久久一区二区三区| 欧美成人69av| 久久亚洲欧美| 久久久夜色精品亚洲| 欧美在线观看你懂的| 亚洲欧美综合另类中字| 亚洲特黄一级片| 一本久道久久综合中文字幕| 亚洲人精品午夜| 欧美激情aⅴ一区二区三区| 麻豆av一区二区三区| 久久久久久久综合狠狠综合| 欧美一区二区三区久久精品茉莉花| 亚洲天堂久久| 亚洲一区二区三区精品视频| 在线一区日本视频| 国产精品99久久久久久久久久久久 | 欧美日韩国产天堂| 欧美久色视频| 欧美日韩一区二区在线| 欧美视频在线视频| 欧美视频一区二区三区四区| 欧美天天视频| 国产精品每日更新| 国产欧美日韩精品一区| 国产一区日韩一区| 亚洲第一综合天堂另类专| 亚洲国产精品久久久| 亚洲狼人综合| 亚洲天堂成人在线观看| 亚洲欧美日韩综合| 久久精品99无色码中文字幕| 久久中文字幕一区| 欧美二区不卡| 亚洲免费av片| 欧美一级黄色网| 久久久一区二区| 欧美精品日韩www.p站| 欧美午夜精品一区| 国内一区二区在线视频观看| 亚洲国产日韩欧美在线99 | 在线一区二区视频| 欧美一级淫片aaaaaaa视频| 看欧美日韩国产| 亚洲黄色一区二区三区| 久久精品亚洲热| 欧美69视频| 亚洲精品乱码久久久久久黑人| 亚洲美洲欧洲综合国产一区| 亚洲欧美美女| 欧美 日韩 国产一区二区在线视频| 欧美日韩成人激情| 国产综合香蕉五月婷在线| 亚洲精品1区2区| 亚洲欧美制服中文字幕| 狂野欧美一区| 99热在这里有精品免费| 久久精品欧洲| 欧美网站在线观看| 亚洲大片一区二区三区| 亚洲一级黄色| 欧美成熟视频| 亚洲欧美一区二区激情| 欧美精选在线| 一区三区视频| 香蕉国产精品偷在线观看不卡| 欧美激情中文字幕一区二区| 亚洲欧美成人| 国产精品v片在线观看不卡| 亚洲国产精品成人一区二区| 性18欧美另类| 一区二区三区www| 欧美14一18处毛片| 狠色狠色综合久久| 亚欧成人精品| 99视频有精品| 欧美精品免费在线观看| 亚洲国产清纯| 免费观看日韩av|