Äñî«linuxµÄÎļþ¶Áдȫ¹ý³Ì
http://blog.sina.com.cn/s/blog_61869e800100ek8w.html
¶ÁдÎļþ£¬ÊÇ×÷Ϊһ¸ö²Ù×÷ϵͳËùÌṩµÄ×î»ù±¾½Ó¿ÚÖ®Ò»¡£
ÎÒÃǾʹÓдÎļþ¹ý³Ì£ºopen£¬write£¬closeÕ⼸¸ö½Ó¿ÚÀ´ËµÆð£¬ÃèÊöдÎļþµÄÄÇЩʶù¡£
ƽʱ£¬ÎÒÃÇ×öÓ¦ÓóÌÐòµÄʱºò£¬³£³£Óõ½¶ÁдÎļþµÄº¯Êý½Ó¿Ú£¬¾ÍÄÃдÎļþÀ´Ëµ£¬ÎÒÃÇÓÃC/C++±àдʱ£¬Óõ½ÁËÒÔϵĺ¯Êý½Ó¿Ú£º
1>
FILE* fopen(const char*
restrict filename,const char* restrict mode);
2> size_t fwrite(const void*
restrict buffer,size_t size,size_t n,FILE * restrict fp);
3> int fclose(FILE * fp) ;
ÒÔÉÏÕ⼸¸öº¯Êý½Ó¿Ú´ó¼Ò¶¼±È½ÏÊìϤ£¬Èç¹û°´ÕÕÕâ¸öÀ´·ÖÎöËÆºõ¸ü¼ÓÃ÷ÁË¡£È»¶ø£¬ÉÏÃæµÄÕâЩ½Ó¿ÚÒѾÊÇÏÖ´ú°æ±¾µÄ½Ó¿Ú£¬ÆäʵÏÖÒÀÀµÓÚÏÖÔڵijÉÊìϵͳ£¬·ÖÎöÏÖÐÐ
ϵͳµÄÅÓ´ó´úÂëÎÒ»¹ÄÛÁ˵㣬ËùÒÔ¾ÍÄùýÈ¥°æ±¾µÄlinuxϵͳºÍһЩÔʼ½Ó¿Ú½øÐзÖÎö°É¡££¨Æäʵ´ó¼Ò¶¼ÖªµÀ£¬ÏÖÐвÙ×÷ϵͳÄں˵ĴúÂëÁ¿ÒѾ²»ÊÇÒ»¸öÈËÒ»±²
×ÓÄÜ¿´ÍêµÄÁË£¬ÎÒÃÇÖ÷ÒªÊÇ½è¼ølinuxµÄϵͳ˼Ï룬ȥ×÷ÎÒÃÇ×Ô¼ºµÄǶÈëʽ²Ù×÷ϵͳ£©
Àϰ汾µÄ½Ó¿ÚÊÇÕâ¸öÑù×ӵģº
1> int open(const char*
filename,int flag,...) ;
2> int write(int fildes,const
char* buf,off_t count) ;
3> int close(int fildes) ;
Õ⼸¸ö½Ó¿ÚµÄÉùÃ÷ÔÚÍ·ÎļþÖУ¬ÊµÏÖÔÚϵͳµÄLIB¿âÎļþÖУ¬ËùÒÔʹÓõÄʱºò£¬ÎÒÃÇÖ»ÐèÒª°üº¬¼¸¸öÏàÓ¦µÄÍ·Îļþ£¬È»ºóʹÓýӿڣ¬ÔÚ±àÒëµÄʱºò£¬±àÒëÆ÷°Ñ
LIB¿âÎļþÖеĶþ½øÖÆÊµÏÖÁ´½Ó½øÈ¥£¬ÕâÑù¾ÍÐÐÁË¡£
µ±È»£¬½ö½öÊÇʹÓò»ÊDZ¾ÎĵÄÄ¿µÄ£¬ÎÒÃÇÊÇҪ̽¾¿µÄÊÇÕâ¸öʹÓõı³ºóÊÇʲô£¬²Ù×÷ϵͳΪÎÒÃÇ×öÁËʲô¡£
Ê×ÏÈ£¬¿âÎļþÖеÄopenÊÇÔõôʵÏÖµÄÄØ£¿
int open(const char * filename,int flag,...){
register int res ;
va_list arg ;
va_start(arg,flag) ;
__asm__("int $0x80"
:"=a"(res)
:""(__NR_open),"b"(filename),"c"(flag),"d"(va_arg(arg,int))
 
Ïà¹ØÎĵµ£º
×î½üÔÚ¿´Linux 2.6.21Äں˵ÄI2CÇý¶¯£¬Ò²ÔÚÍøÉϲéÁËÒ»ÏÂ×ÊÁÏ£¬ÓдíÒ²Óжԣ¬ÓÐЩÐĵ㬼ǼÏÂÀ´°É¡£ÀïÃæÈÏʶ»òÐí¶àÓв»µ±Ö®´¦£¬»¹¿ÒÇëÖ¸Õý¡£
1. I2C ÐÒé
1.1 I2C×ÜÏß¹¤×÷ÔÀí
I2C×ÜÏßÊÇÓÉÊý¾ÝÏßSDAºÍʱÖÓSCL¹¹³ÉµÄ´®ÐÐ×ÜÏߣ¬¸÷ÖÖ±»¿ØÖÆÆ÷¼þ¾ù²¢ÁªÔÚÕâÌõ×ÜÏ ......
ËÄ¡¢quota
1.×÷ÓÃ
quotaÃüÁîÓÃÀ´ÏÔʾ´ÅÅÌʹÓÃÇé¿öºÍÏÞÖÆÇé¿ö£¬Ê¹ÓÃȨÏÞ³¬¼¶Óû§¡£
2.¸ñʽ
quota [£g][£u][£v][£p] Óû§Ãû ×éÃû
3.²ÎÊý
£g£ºÏÔʾÓû§ËùÔÚ×éµÄ´ÅÅÌʹÓÃÏÞÖÆ¡£
£u£ºÏÔʾÓû§µÄ´ÅÅÌʹÓÃÏÞÖÆ¡£
£v£ºÏÔʾûÓзÖÅä¿Õ¼äµÄÎļþϵͳµÄ·ÖÅäÇé¿ö¡£
£p£ºÏÔʾ¼ò»¯ÐÅÏ¢¡£
4.Ó¦ÓÃʵÀý
ÔÚÆóÒµÓ¦ÓÃÖдÅÅÌÅä ......
CentOS Èç¹ûÄãϲ»¶RHµÄ²úÆ·£¬¶øÄãÓÖÌÖÑáFC4µÄÓ·Ö×£¬ÄÇô³¢ÊÔÒ»ÏÂCentOS°É£¬µ±Äã´ò¿ªÕâ¸ö·¢ÐаæµÄʱºò£¬ÏàÐÅÄã»á´ó½ÐÒ»Éù£º"Õâ²»¾ÍÊÇRedhatô"£¬Êǵģ¬Õâ¸ö°æ±¾ÍêȫʹÓÃRHµÄsrpmÉú³Éϵͳ£¬¶øÇÒÐÔÄÜÒ²ºÜ²»´í¡£
Debian Õâ¸ö·¢Ðа汾ÔÚËùÓз¢Ðа汾ÀïÃæ¿°³Æ×îÑϽ÷µÄ£¬aptÈí¼þ°ü¹ÜÀí»úÖÆ¿ÉÒÔÈÃÓû§¿ìËÙ½¨Á¢ÆðÀ´¸ßЧµÄ²Ù×÷ϵͳ¡£ ......
1¡¢ÓÃGCC±àÒë
1.1¡¢´´½¨Ô´Îļþ
(main.c) C Ô´Îļþ - main.c
#include
#include “reciprocal.hpp”
int main (int argc, char **argv)
{
int i;
i = atoi (argv[1]);
printf (“The reciprocal of %d is %g\n”, i, reciprocal (i ......
¼òµ¥½âÊÍÒ»ÏÂipcsÃüÁîºÍipcrmÃüÁî¡£
È¡µÃipcÐÅÏ¢£º
ipcs [-m|-q|-s]
-m Êä³öÓйع²ÏíÄÚ´æ(shared memory)µÄÐÅÏ¢
-q Êä³öÓйØÐÅÏ¢¶ÓÁÐ(message queue)µÄÐÅÏ¢
-s Êä³öÓйؓÕÚ¶ÏÆ÷”(semaphore)µÄÐÅÏ¢
%ipcs -m
ɾ³ýipc
ipcrm -m|-q|-s shm_id
%ipcrm -m 105
ÀýÈ磬ÎÒÃÇÔÚÒÔ0x12345678ΪKEY´´½¨ÁËÒ»¸ö¹ ......