linuxµÄ´óС¶Ë¡¢ÍøÂç×Ö½ÚÐòÎÊÌâ
×ܽ᣺1¡¢80X86ʹÓÃС¶Ë·¨£¬ÍøÂç×Ö½ÚÐòʹÓôó¶Ë·¨¡£
2¡¢¶þ½øÖƵÄÍøÂç±à³ÌÖУ¬´«ËÍÊý¾Ý£¬×îºÃÒÔunsigned char, unsigned short, unsigned int
À´´¦Àí£¬ unsigned short ,unsigned short ÒÔÍøÂç×Ö½ÚÐò´¦ÀíºóÔÙ¿½±´µ½·¢Ë͵ÄbufferÀï
3¡¢½á¹¹ÌåǰºóÒªÖ¸¶¨ #pragma pack(1)
¶ÔÓÚ×Ö½ÚÐò(´ó¶Ë·¨¡¢Ð¡¶Ë·¨)µÄ¶¨Òå¡¶UNXIÍøÂç±à³Ì¡·¶¨Ò壺ÊõÓï“С¶Ë”ºÍ“´ó¶Ë”±íʾ¶à×Ö½ÚÖµµÄÄÄÒ»¶Ë(С¶Ë»ò´ó¶Ë)´æ´¢ÔÚ¸ÃÖµµÄÆðʼµØÖ·¡£Ð¡¶Ë´æÔÚÆðʼµØÖ·£¬¼´ÊÇС¶Ë×Ö½ÚÐò£»´ó¶Ë´æÔÚÆðʼµØÖ·£¬¼´ÊÇ´ó¶Ë×Ö½ÚÐò¡£
Ò²¿ÉÒÔ˵£º
1.С¶Ë·¨(Little-Endian)¾ÍÊǵÍλ×Ö½ÚÅÅ·ÅÔÚÄÚ´æµÄµÍµØÖ·¶Ë¼´¸ÃÖµµÄÆðʼµØÖ·£¬¸ßλ×Ö½ÚÅÅ·ÅÔÚÄÚ´æµÄ¸ßµØÖ·¶Ë¡£
2.´ó¶Ë·¨(Big-Endian)¾ÍÊǸßλ×Ö½ÚÅÅ·ÅÔÚÄÚ´æµÄµÍµØÖ·¶Ë¼´¸ÃÖµµÄÆðʼµØÖ·£¬µÍλ×Ö½ÚÅÅ·ÅÔÚÄÚ´æµÄ¸ßµØÖ·¶Ë¡£
¾Ù¸ö¼òµ¥µÄÀý×Ó£¬¶ÔÓÚÕûÐÎ0x12345678¡£ËüÔÚ´ó¶Ë·¨ºÍС¶Ë·¨µÄϵͳÄÚÖУ¬·Ö±ðÈçͼ1ËùʾµÄ·½Ê½´æ·Å¡£
ÍøÂç×Ö½ÚÐò
ÎÒÃÇÖªµÀÍøÂçÉϵÄÊý¾ÝÁ÷ÊÇ×Ö½ÚÁ÷£¬¶ÔÓÚÒ»¸ö¶à×Ö½ÚÊýÖµ£¬ÔÚ½øÐÐÍøÂç´«ÊäµÄʱºò£¬ÏÈ´«µÝÄĸö×Ö½Ú£¿Ò²¾ÍÊÇ˵£¬µ±½ÓÊÕ¶ËÊÕµ½µÚÒ»¸ö×Ö½ÚµÄʱºò£¬ËüÊǽ«Õâ¸ö×Ö½Ú×÷Ϊ¸ßλ»¹ÊǵÍλÀ´´¦ÀíÄØ£¿
ÍøÂç×Ö½ÚÐò¶¨Ò壺ÊÕµ½µÄµÚÒ»¸ö×Ö½Ú±»µ±×÷¸ßλ¿´´ý£¬Õâ¾ÍÒªÇó·¢ËͶ˷¢Ë͵ĵÚÒ»¸ö×Ö½ÚÓ¦µ±ÊǸßλ¡£¶øÔÚ·¢ËͶ˷¢ËÍÊý¾Ýʱ£¬·¢Ë͵ĵÚÒ»¸ö×Ö½ÚÊǸÃÊý×ÖÔÚÄÚ´æÖÐÆðʼµØÖ·¶ÔÓ¦µÄ×Ö½Ú¡£¿É¼û¶à×Ö½ÚÊýÖµÔÚ·¢ËÍǰ£¬ÔÚÄÚ´æÖÐÊýÖµÓ¦¸ÃÒÔ´ó¶Ë·¨´æ·Å¡£
ÍøÂç×Ö½ÚÐò˵ÊÇ´ó¶Ë×Ö½ÚÐò¡£
±ÈÈçÎÒÃǾ¹ýÍøÂç·¢ËÍ0x12345678Õâ¸öÕûÐΣ¬ÔÚ80X86ƽ̨ÖУ¬ËüÊÇÒÔС¶Ë·¨´æ·ÅµÄ£¬ÔÚ·¢ËÍǰÐèҪʹÓÃϵͳÌṩµÄhtonl½«Æäת»»³É´ó¶Ë·¨´æ·Å£¬Èçͼ2Ëùʾ¡£
×Ö½ÚÐò²âÊÔ³ÌÐò
²»Í¬cpuƽ̨ÉÏ×Ö½ÚÐòͨ³£Ò²²»Ò»Ñù£¬ÏÂÃæÐ´¸ö¼òµ¥µÄC³ÌÐò£¬Ëü¿ÉÒÔ²âÊÔ²»Í¬Æ½Ì¨ÉϵÄ×Ö½ÚÐò¡£
1
#include <stdio.h>
2
#include <netinet/in.h>
3
int main()
4
{
5
int i_num = 0x12345678;
6
printf("[0]:0x%x\n", *((char *)&i_num + 0));
7
Ïà¹ØÎĵµ£º
1¡¢ÒýÑÔ
ÔÚlinuxϵͳÏ£¬Èç¹ûÄãÏÂÔØ²¢°²×°ÁËÓ¦ÓóÌÐò£¬ºÜÓпÉÄÜÔÚ¼üÈëËüµÄÃû³ÆÊ±³öÏÖ“command not
found”µÄÌáʾÄÚÈÝ¡£Èç¹ûÿ´Î¶¼µ½°²×°Ä¿±êÎļþ¼ÐÄÚ£¬ÕÒµ½¿ÉÖ´ÐÐÎļþÀ´½øÐвÙ×÷¾ÍÌ«·±ËöÁË¡£ÕâÉæ¼°µ½»·¾³±äÁ¿PATHµÄÉèÖÃÎÊÌ⣬¶øPATHµÄÉèÖÃÒ²
ÊÇÔÚlinux϶¨ÖÆ»·¾³±äÁ¿µÄÒ»¸ö×é³É²¿·Ö¡£±¾Î ......
ÒÔÏÂÊǸöÈ˾õµÃ±È½ÏÏêϸ¶øÇÒÒ×ÓÚÀí½âµÄ¼¸ÆªÎÄÕ£¬ËùÒÔ°ÑËüÒ»ÆðÌù³öÀ´×öΪ±Ê¼Ç£¨Ò»£©¡¢£¨¶þ£©¡¢£¨Èý£©£¬Ò²Ï£Íû¶Ô¹ý·ÕßÌṩһµã·½±ã¡£
µÚ3ÕÂÎļþI / O
3.1 ÒýÑÔ
±¾Õ¿ªÊ¼ÌÖÂÛU N I Xϵͳ£¬ÏÈ˵Ã÷¿ÉÓõÄÎļþI / Oº¯Êý——´ò¿ªÎļþ¡¢¶ÁÎļþ¡¢Ð´ÎļþµÈµÈ¡£´ó¶àÊýU N I ......
alarm
Èç¹û²»ÒªÇóºÜ¾«È·µÄ»°£¬Óà alarm() ºÍ signal() ¾Í¹»ÁË
unsigned int alarm(unsigned int seconds)
ʾÀý£º
&nbs ......
viÊÇËùÓÐUNIXϵͳ¶¼»áÌṩµÄÆÁÄ»±à¼Æ÷£¬ËüÌṩÁËÒ»¸öÊÓ´°É豸£¬Í¨¹ýËü¿ÉÒÔ±à¼Îļþ¡£µ±È»£¬¶ÔUNIXϵͳÂÔÓÐËùÖªµÄÈË£¬»ò¶à»òÉÙ¶¼¾õµÃvi³¬¼¶ÄÑÓ㬵«viÊÇ×î»ù±¾µÄ±à¼Æ÷£¬ËùÒÔÏ£Íû¶ÁÕßÄܺúðÑËüѧÆðÀ´£¬ÒÔºóÔÚUNIXÊÀ½çÀï±Ø½«³©ÐÐÎÞ×è¡¢ÓÎÈÐÓÐÓ࣬ÒòΪÆäËû¼¸ÖÖÎı¾´¦ÀíÆ÷²¢·ÇUNIX±ê×¼Å䱸¡£Ëµ²»¶¨±ðÈ˵ÄLinux»úÆ÷û°²×°joe»ò ......