Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Windows via C/C++£ºÏ̵߳÷¶È——¸ÅÊö

»ùÓÚÓÅÏȼ¶µÄ²Ù×÷ϵͳ£¨preemptive operating system£©±ØÐëʹÓÃijÖÖËã·¨ÒÔ¾ö¶¨CPUÈçºÎµ÷¶ÈϵͳÖеÄỊ̈߳¬±¾Õ½«ÌÖÂÛWindows VistaʹÓõĵ÷¶ÈËã·¨¡£ ÎÒÃÇ֮ǰÌÖÂÛ¹ýÏ̵߳ÄÉÏÏÂÎĽṹCONTEXT£¬ÆäÖк¬ÓÐÏß³Ì×îºóÒ»´ÎÖ´ÐÐʱCPU¼Ä´æÆ÷×éµÄ״̬¡£ ²Ù×÷ϵͳÿ20ºÁÃë¼ì²éϵͳÖÐËùÓÐÏß³ÌÄں˶ÔÏóµÄ״̬£¬ÆäÖÐһЩ¶ÔÏó±»ÈÏΪÊǿɵ÷¶È£¨scheduable£©µÄ£¬²Ù×÷ϵͳ»á´Ó¿Éµ÷¶ÈµÄ¶ÔÏóÖÐÑ¡ÔñÒ»¸ö£¬²¢½«ÆäCONTEXTÖеÄÖµ¼ÓÔØµ½CPU¼Ä´æÆ÷×éÖУ¬Õâ¸öʵÏÖÏ̵߳÷¶ÈµÄ¹ý³Ì±»³ÆÎªÉÏÏÂÎÄÇл»£¨Context Switch£©¡£
½ÓÏÂÀ´£¬±»Ñ¡ÔñµÄÏ߳̽«ÔÚÆä½ø³ÌµØÖ·¿Õ¼äÖÐÖ´ÐдúÂë¡¢²Ù×÷Êý¾Ý¡£´ó¸Å20msÖ®ºó£¬Windows»áÖØÐ½«CPU¼Ä´æÆ÷×éµÄ״̬д»Øµ½¸ÃÏ̵߳ÄCONTEXT½á¹¹ÖУ¬²¢´ÓÆäËü¿Éµ÷¶ÈµÄÏß³ÌÄں˶ÔÏóÖÐÑ¡ÔñÒ»¸öÒªµ÷¶ÈµÄ¶ÔÏ󣬽«ÆäCONTEXT½á¹¹ÄÚÈݼÓÔØµ½CPU¼Ä´æÆ÷ÖУ¬ÕâÑùÔ­Ï߳̽«²»ÔÙÔËÐУ¬ÐÂÏ߳̿ªÊ¼ÔËÐС£ÉÏÏÂÎÄÇл»»á´ÓϵͳÆô¶¯¿ªÊ¼³ÖÐøµ½ÏµÍ³¹Ø±Õ¡£
ϵͳֻ»áµ÷¶È¿Éµ÷¶ÈµÄỊ̈߳¬µ«ÊÂʵÉÏϵͳÖеĴó¶àÊýÏ̶߳¼ÊDz»¿É¸ß¶ÈµÄ¡£±ÈÈ磬ÓÐЩÏ̵߳ÄÔÝÍ£¼ÆÊý£¨suspend count£©´óÓÚ0£¬ÕâÒâζ×ÅÏ̱߳»¹ÒÆðÇÒ²»Ó¦¸ÃΪÆä·ÖÅäÈκÎCPUʱ¼ä£¬ÎªÁË¹ÒÆðÒ»¸öỊ̈߳¬¿ÉÒÔÔÚ´´½¨Ïß³ÌʱΪCreateThreadÖ¸¶¨CREATE_SUSPEND±êÖ¾£¬±¾ÕºóÃæ»áÌÖÂÛ¹ÒÆðÒÑ´æÔÚÏ̵߳ķ½·¨£¨SuspendThreadºÍResumeThreadº¯Êý£©¡£
³ýÁË¹ÒÆðµÄỊ̈߳¬ÆäËüÏ߳̿ÉÄÜ»áÒòΪÔڵȴýijЩ×ÊÔ´¶ø±äµÃ²»¿Éµ÷¶È¡£±ÈÈ磬Äã´ò¿ªÁ˼Çʱ¾Ö®ºóʲôҲ²»×ö£¬¼Çʱ¾Ï߳̽«´¦Óڵȴý״̬£¬ÏµÍ³²»»áΪֱ·ÖÅäʱ¼äƬ£¬³ý·ÇÄãÒÆ¶¯Æä´°¿Ú»òÏòÆä±à¼­ÇøÖмüÈëÎı¾£¬´Ëʱ¼Çʱ¾Ï̱߳ä³É¿Éµ÷¶ÈµÄ£¬µ«Õâ²¢²»Òâζ×ÅËü»áÁ¢¼´»ñµÃCPUʱ¼ä£¬ÏµÍ³Ö»ÊÇ´ÓËùÓпɵ÷¶ÈµÄÏß³ÌÖа´µ÷¶ÈËã·¨Ìôѡһ¸öÏß³ÌÖ´ÐУ¬±»µ÷¶ÈµÄÏ̲߳»Ò»¶¨»áÊǼÇʱ¾Ï̡߳£


Ïà¹ØÎĵµ£º

ɾ³ýC/C++×¢ÊÍ

/********************************************************************
*ɾ³ýC/C++×¢ÊÍ
**********************************************************************/
#include <stdio.h>
//×¢Òâ
//1.¶Ô/****/µÄ´¦Àí
//2.Òª±£ÁôË«ÒýºÅÖ®¼äµÄÄÚÈÝ£¬Èçchar* test = "/*i am not comment */";
//3.¶ÔÓ ......

9)LinuxÏÂC¿ª·¢¹¤¾ß½éÉÜ

9)LinuxÏÂC¿ª·¢¹¤¾ß½éÉÜ
LinuxµÄ·¢ÐаæÖаüº¬Á˺ܶàÈí¼þ¿ª·¢¹¤¾ß. ËüÃÇÖеĺܶàÊÇÓÃÓÚ C ºÍ C++Ó¦ÓóÌÐò¿ª·¢
µÄ. ±¾ÎĽéÉÜÁËÔÚ Linux ÏÂÄÜÓÃÓÚ C Ó¦ÓóÌÐò¿ª·¢ºÍµ÷ÊԵŤ¾ß. ±¾ÎĵÄÖ÷Ö¼ÊǽéÉÜÈç
ºÎÔÚ Linux ÏÂʹÓà C ±àÒëÆ÷ºÍÆäËû C ±à³Ì¹¤¾ß, ¶ø·Ç C ÓïÑÔ±à³ÌµÄ½Ì³Ì.
GNU C ±àÒëÆ÷
GNU C ±àÒëÆ÷(GCC)ÊÇÒ»¸öÈ«¹¦Ä ......

CÓëC++µÄÇø±ð

CÊÇÒ»¸ö½á¹¹»¯ÓïÑÔ£¬ÈçÌ·ÀÏÒ¯×ÓËù˵£ºËüµÄÖØµãÔÚÓÚËã·¨ºÍÊý¾Ý½á¹¹¡£C³ÌÐòµÄÉè¼ÆÊ×Òª¿¼ÂǵÄÊÇÈçºÎͨ¹ýÒ»¸ö¹ý³Ì£¬¶ÔÊäÈ루»ò»·¾³Ìõ¼þ£©½øÐÐÔËËã´¦ÀíµÃµ½Êä³ö£¨»òʵÏÖ¹ý³Ì£¨ÊÂÎñ£©¿ØÖÆ£©£¬¶ø¶ÔÓÚC++£¬Ê×Òª¿¼ÂǵÄÊÇÈçºÎ¹¹ÔìÒ»¸ö¶ÔÏóÄ£ÐÍ£¬ÈÃÕâ¸öÄ£ÐÍÄܹ»ÆõºÏÓëÖ®¶ÔÓ¦µÄÎÊÌâÓò£¬ÕâÑù¾Í¿ÉÒÔͨ¹ý»ñÈ¡¶ÔÏóµÄ״̬ÐÅÏ¢µÃµ½Êä³ö»òʵÏÖ¹ ......

LinuxÏ»ñµÃϵͳʱ¼äµÄCÓïÑÔµÄʵÏÖ·½·¨

 LinuxÏ»ñµÃϵͳʱ¼äµÄCÓïÑÔµÄʵÏÖ·½·¨
#include<time.h>  //CÓïÑÔµÄÍ·Îļþ
#include<stdio.h>  //CÓïÑÔµÄI/O
void main()
{
time_t now;    //ʵÀý»¯time_t½á¹¹
struct tm  *timenow;    //ʵÀý»¯tm½á¹¹Ö¸Õë
time(&now);
//timeº¯Êý¶ÁÈ¡ÏÖÔÚµ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ