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

ÿÈÕC(3.Linux³£ÓÃCº¯Êý ÄÚ´æ¿ØÖÆÆª)

ÄÚ´æ¿ØÖÆÆª
calloc
free
getpagesize
malloc
mmap
munmap
calloc£¨ÅäÖÃÄÚ´æ¿Õ¼ä£©
Ïà¹Øº¯Êý
malloc£¬free£¬realloc£¬brk
±íÍ·Îļþ
#include <stdlib.h>
¶¨Ò庯Êý
void *calloc(size_t nmemb£¬size_t size);
º¯Êý˵Ã÷
calloc()ÓÃÀ´ÅäÖÃnmemb¸öÏàÁÚµÄÄڴ浥λ£¬Ã¿Ò»µ¥Î»µÄ´óСΪsize£¬²¢·µ»ØÖ¸ÏòµÚÒ»¸öÔªËØµÄÖ¸Õë¡£ÕâºÍʹÓÃÏÂÁеķ½Ê½Ð§¹ûÏàͬ:malloc(nmemb*size);²»¹ý£¬ÔÚÀûÓÃcalloc()ÅäÖÃÄÚ´æÊ±»á½«ÄÚ´æÄÚÈݳõʼ»¯Îª0¡£
·µ»ØÖµ
ÈôÅäÖóɹ¦Ôò·µ»ØÒ»Ö¸Õ룬ʧ°ÜÔò·µ»ØNULL¡£
·¶Àý
/* ¶¯Ì¬ÅäÖÃ10¸östruct test ¿Õ¼ä*/
#include<stdlib.h>
struct test
{
int a[10];
char b[20];
}
main()
{
struct test *ptr=calloc(sizeof(struct test),10);
}
¡¡
free£¨ÊÍ·ÅÔ­ÏÈÅäÖõÄÄڴ棩
Ïà¹Øº¯Êý
malloc£¬calloc£¬realloc£¬brk
±íÍ·Îļþ
#include<stdlib.h>
¶¨Ò庯Êý
void free(void *ptr);
º¯Êý˵Ã÷
²ÎÊýptrΪָÏòÏÈǰÓÉmalloc()¡¢calloc()»òrealloc()Ëù·µ»ØµÄÄÚ´æÖ¸Õë¡£µ÷ÓÃfree()ºóptrËùÖ¸µÄÄÚ´æ¿Õ¼ä±ã»á±»Êջء£¼ÙÈô²ÎÊýptrËùÖ¸µÄÄÚ´æ¿Õ¼äÒѱ»ÊջػòÊÇδ֪µÄÄÚ´æµØÖ·£¬Ôòµ÷ÓÃfree()¿ÉÄÜ»áÓÐÎÞ·¨Ô¤ÆÚµÄÇé¿ö·¢Éú¡£Èô²ÎÊýptrΪNULL£¬Ôòfree()²»»áÓÐÈκÎ×÷Óá£
¡¡
getpagesize£¨È¡µÃÄÚ´æ·ÖÒ³´óС£©
Ïà¹Øº¯Êý
sbrk
±íÍ·Îļþ
#include<unistd.h>
¶¨Ò庯Êý
size_t getpagesize(void);
º¯Êý˵Ã÷
·µ»ØÒ»·ÖÒ³µÄ´óС£¬µ¥Î»Îª×Ö½Ú£¨byte£©¡£´ËΪϵͳµÄ·ÖÒ³´óС£¬²»Ò»¶¨»áºÍÓ²¼þ·ÖÒ³´óСÏàͬ¡£
·µ»ØÖµ
ÄÚ´æ·ÖÒ³´óС¡£¸½¼Ó˵Ã÷ÔÚIntel x86 ÉÏÆä·µ»ØÖµÓ¦Îª4096bytes¡£
·¶Àý
#include <unistd.h>
main()
{
printf(“page size = %d\n”,getpagesize( ) );
}
¡¡
malloc£¨ÅäÖÃÄÚ´æ¿Õ¼ä£©
Ïà¹Øº¯Êý
calloc£¬free£¬realloc£¬brk
±íÍ·Îļþ
#include<stdlib.h>
¶¨Ò庯Êý
void * malloc(size_t size);
º¯Êý˵Ã÷
malloc()ÓÃÀ´ÅäÖÃÄÚ´æ¿Õ¼ä£¬Æä´óСÓÉÖ¸¶¨µÄsize¾ö¶¨¡£
·µ»ØÖµ
ÈôÅäÖóɹ¦Ôò·µ»ØÒ»Ö¸Õ룬ʧ°ÜÔò·µ»ØNULL¡£
·¶Àý
void p = malloc(1024); /*ÅäÖÃ1kµÄÄÚ´æ*/
¡¡
mmap£¨½¨Á¢ÄÚ´æÓ³É䣩
Ïà¹Øº¯Êý
munmap£¬open
±íÍ·Îļþ
#include <unistd.h>
#include <sys/mman.h>
¶¨Ò庯Êý
void *mmap(void *start,size_t length,int prot,int flags,int fd,off_t offsize);
º¯Êý˵Ã÷
mmap()ÓÃÀ´½«Ä³¸öÎļþÄÚÈÝÓ


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

£¨L2CAPЭÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPЭÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼­Á¬½Ó¿ØÖƺÍÊÊÅäЭÒé (L2CAP) ΪÉϲãЭÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àЭÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãЭÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......

ʵսLinux Bluetooth±à³Ì(Áù) L2CAP±à³ÌʵÀý

ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
 Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......

ÓÃCдµÄ3DÃÔ¹¬

          Boss˵£¬Òª¿´OpenGL£¬¿´ÁË¿ìÒ»¸öÔ£¬×ÜËã³öÁ˸öÏñÑùµÄ¶«Î÷£¬ÓÃCдÁ˸ö3DÃÔ¹¬£¬
ËäȻֻÓÐ350ÐÐ
       ´úÂ룬²»¹ý±ßѧ±ßд£¬×ã×ãдÁËÒ»ÖÜʱ¼ä£¬»¹ÊÇСÓгɾ͸е쬻î»î»î£¡
         &n ......

È«Ãæ½âÎöLinuxÄں˵Äͬ²½Ó뻥³â»úÖÆ ͬ²½Æª ÊÕ²Ø

¡¾Ç¶ÈëʽLinuxѧϰÆß²½ÇúÖ®µÚÎåÆª LinuxÄں˼°Çý¶¯±à³Ì¡¿È«Ãæ½âÎöLinuxÄں˵Äͬ²½Ó뻥³â»úÖÆ--ͬ²½Æª Êղؠ
 
Powered by CSDN Blog 
±¾ÎÄÀ´×ÔCSDN²©¿Í£¬×ªÔØÇë±êÃ÷³ö´¦£ºhttp://blog.csdn.net/sailor_8318/archive/2008/06/30/2599357.aspx ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ