Àú³ÌÓÅÏȼ¶¶ÔLinuxϵͳÐÔÄܵÄÓ°Ïì
Àú³ÌÓÅÏȼ¶¶ÔLinuxϵͳÐÔÄܵÄÓ°Ïì
ÔÚLinux²Ù×÷ϵͳÖУ¬Àú³ÌµÄµ÷ÀíÊÇÒ»¸öºÜÊÇÖ÷ÒªµÄÎÊÌ⣬¶øÀú³ÌµÄÓÅÏȼ¶ÔòÊÇÓ°ÏìÀú³Ìµ÷ÀíµÄÒªº¦ÒòËØÖ®Ò»¡£LinuxϵͳÖУ¬Àú³Ì¿ÉÒÔ·ÖΪʵʱÀú³ÌºÍͨË×Àú³Ì£¬¶øÀú³ÌµÄÓÅÏȼ¶ÔòÊǾöÒéϵͳµ÷Àí³ÌÐòÔõÑù°²ÅÅÀú³ÌÖ´ÐеÄÒ»¸öÖ÷Òª²ÎÊý¡£
Àú³ÌµÄÓÅÏȼ¶ÓÃÒ»¸öÊýÖµÌåÏÖ£¬¹æÄ£Ò»Ñùƽ³£Îª-20£¨×î¸ßÓÅÏȼ¶£©µ½19£¨×îµÍÓÅÏȼ¶£©¡£ÊýֵԽС£¬ÌåÏÖÀú³ÌµÄÓÅÏȼ¶Ô½¸ß£¬ÏµÍ³»á¸üƵÈԵص÷ÀíÕâЩÀú³ÌÖ´ÐС£
Àú³ÌµÄÓÅÏȼ¶¶ÔLinuxϵͳÐÔÄܵÄÓ°ÏìÖ÷ÒªÌåÏÖÔÚÒÔϼ¸¸ö·½Ã棺
ÏìӦʱ¼ä
Àú³ÌµÄÓÅÏȼ¶¸ß£¬ÏµÍ³µ÷Àí³ÌÐò¸üÇãÏòÓÚÈÃÕâЩÀú³Ì»ñµÃCPUʱ¼äƬ£¬´Ó¶ø¸ü¿ìµØÏìÓ¦Óû§²Ù×÷¡£Òò´Ë£¬ÔÚһЩÐèÒª¿ìËÙÏìÓ¦µÄÓ¦Óó¡¾°Ï£¬Ìá¸ßÀú³ÌµÄÓÅÏȼ¶¿ÉÒÔÏÔ×ŵظÄÉÆϵͳµÄÏìÓ¦ËÙÂÊ¡£
ϵͳÍÌÍÂÁ¿
Àú³ÌµÄÓÅÏȼ¶¸ß£¬»á¸üƵÈԵر»ÏµÍ³µ÷Àí³ÌÐòÖ´ÐУ¬Òò´Ëϵͳ¿ÉÄÜ»á¸ü¶àµØÆÆ·ÑÔÚ¸ßÓÅÏȼ¶Àú³ÌÉÏ£¬´Ó¶ø½µµÍϵͳÕûÌåµÄÍÌÍÂÁ¿¡£ÔÚһЩÐèÒª´ó×ÚÅÌËãʹÃüµÄ³¡¾°Ï£¬¹ý¶àµØÌá¸ßÀú³ÌµÄÓÅÏȼ¶¿ÉÄܻᵼÖÂϵͳÍÌÍÂÁ¿Ï½µ¡£
ϵͳÎȹÌÐÔ
¹ý¶àµØÌá¸ßÀú³ÌµÄÓÅÏȼ¶¿ÉÄܻᵼÖÂϵͳÆäËûÀú³ÌµÃ²»µ½³ä·ÖµÄCPUʱ¼äƬ£¬ÉõÖÁ·ºÆð¡°¼¢¶ö¡±Õ÷Ï󣬴ӶøÓ°ÏìϵͳµÄÎȹÌÐÔ¡£Òò´Ë£¬ºÏÀíÉèÖÃÀú³ÌµÄÓÅÏȼ¶ÊÇά³ÖϵͳÎȹÌÐÔµÄÖ÷ÒªÒòËØÖ®Ò»¡£
ÏÂÃæͨ¹ýÒ»¸öÏêϸµÄ´úÂëʾÀýÀ´Õ¹Ê¾Àú³ÌÓÅÏȼ¶¶ÔLinuxϵͳÐÔÄܵÄÓ°Ï죺
#include <stdio.h> #include <unistd.h> int main() { int i; pid_t pid; pid = fork(); if (pid < 0) { fprintf(stderr, "Fork failed "); return 1; } else if (pid == 0) { // ×ÓÀú³Ì nice(10); // Ìá¸ß×ÓÀú³ÌµÄÓÅÏȼ¶ for (i = 0; i < 5; i++) { printf("×ÓÀú³ÌÕýÔÚÔËÐÐ "); sleep(1); } } else { // ¸¸Àú³Ì for (i = 0; i < 5; i++) { printf("¸¸Àú³ÌÕýÔÚÔËÐÐ "); sleep(1); } } return 0; }
µÇ¼ºó¸´ÖÆ
ÔÚÕâ¸ö´úÂëʾÀýÖУ¬ÎÒÃǽ¨ÉèÁËÒ»¸ö×ÓÀú³Ì£¬ÔÚ×ÓÀú³ÌÖÐͨ¹ýnice(10)º¯ÊýÌá¸ßÁË×ÓÀú³ÌµÄÓÅÏȼ¶¡£Í¨¹ýÔËÐÐÕâ¶Î´úÂ룬ÎÒÃÇ¿ÉÒÔÊӲ쵽×ÓÀú³Ì»á¸üƵÈÔµØÖ´ÐУ¬ÓÉÓÚÆäÓÅÏȼ¶¸ü¸ß£¬´Ó¶øÓ°ÏìÁËϵͳµÄÐÔÄÜÌåÏÖ¡£
ͨ¹ýºÏÀíÉèÖÃÀú³ÌµÄÓÅÏȼ¶£¬¿ÉÒÔÓÐÓõص÷½âϵͳµÄÐÔÄÜÌåÏÖ£¬Ìá¸ßϵͳµÄÏìÓ¦ËÙÂÊ»òϵͳÍÌÍÂÁ¿£¬Í¬Ê±Ò²ÐèҪעÖØÔÚÌá¸ßÓÅÏȼ¶µÄͬʱҪ×èÖ¹¶ÔϵͳÎȹÌÐÔÔì³ÉÓ°Ïì¡£
Àú³ÌÓÅÏȼ¶¶ÔLinuxϵͳÐÔÄܵÄÓ°ÏìÊÇÒ»¸öÖØ´óµÄÎÊÌ⣬ÐèҪƾ֤ÏêϸµÄÓ¦Óó¡¾°ºÍÐèÇóÀ´ºÏÀíÉèÖÃÀú³ÌµÄÓÅÏȼ¶£¬ÒÔµÖ´ï×î¼ÑµÄϵͳÐÔÄÜÌåÏÖ¡£
ÒÔÉϾÍÊÇÀú³ÌÓÅÏȼ¶¶ÔLinuxϵͳÐÔÄܵÄÓ°ÏìµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡