Linux϶¯Ì¬¿âµÄÉú³É¼°Á´½Ó·½·¨(1)
Linux϶¯Ì¬¿âµÄÉú³É¼°Á´½Ó·½·¨ £¨1£©
Linux ϶¯Ì¬¿âÎļþµÄÀ©Õ¹ÃûΪ".so"£¨Shared Object£©¡£°´ÕÕÔ¼¶¨£¬ËùÓж¯Ì¬¿âÎļþÃûµÄÐÎʽÊÇlibname.so£¨¿ÉÄÜÔÚÃû×ÖÖмÓÈë°æ±¾ºÅ£©¡£ÕâÑù£¬Ï̺߳¯Êý¿â±»³Æ×÷ libthread.so¡£¾²Ì¬¿âµÄÎļþÃûÐÎʽÊÇlibname.a¡£¹²ÏíarchiveµÄÎļþÃûÐÎʽÊÇlibname.sa¡£¹²ÏíarchiveÖ»ÊÇÒ»ÖÖ¹ý¶ÉÐÎʽ£¬°ïÖúÈËÃÇ´Ó¾²Ì¬¿âת±äµ½¶¯Ì¬¿â¡£ ±¾ÎĽöÒÔ¼òµ¥µÄÀý×Ó½éÉܶ¯Ì¬¿âÎļþµÄÉú³ÉºÍÁ´½Ó·½·¨¡£²Ù×÷ϵͳ£ºVM_Red Hat Linux; GCC°æ±¾£º3.2.2-5.
Ò»¡¢¿âÎļþ¼°²âÊÔÎļþ´úÂë ¿âÎļþ¼°²âÊÔÎļþËùÔÚµÄĿ¼£º/home/myself/libtest/¡£
1.¿âÎļþÃû£ºmylib.c
/*lib test */
#include <stdio.h>
int my_lib_test (void)
{
printf ("\n==lib test!\n");
return 0;
}
2.²âÊÔÎļþÃû£ºtest.c
#include <stdio.h>
int main(void)
{
my_lib_test();
return 0;
}
¶þ¡¢¶¯Ì¬¿âµÄ±àÒë·½·¨
±àÒë¿âÎļþmylib.c:
$gcc -shared -o mylib.so mylib.c
Èç¹û±àÒë³É¹¦£¬»áÔÚµ±Ç°Ä¿Â¼ÏÂÉú³É¶¯Ì¬¿âÎļþ£ºmylib.so¡£
ÆäÖУ¬±àÒëÉú³É¶¯Ì¬¿âµÄÃüÁîΪ£ºgcc (-fpic) -shared -o mylib.so mylib.c -fpic ʹÊä³öµÄ¶ÔÏóÄ£¿éÊǰ´ÕÕ¿ÉÖØ¶¨Î»µØÖ··½Ê½Éú³ÉµÄ¡£ -sharedÖ¸¶¨°Ñ¶ÔÓ¦µÄÔ´ÎļþÉú³É¶ÔÓ¦µÄ¶¯Ì¬Á´½Ó¿âÎļþ¡£
Èý¡¢¶¯Ì¬¿âµÄ²âÊÔ·½·¨
±àÒë²âÊÔÎļþtest.c:
$ gcc -o test test.c ./mylib.so
³É¹¦±àÒëºó£¬Éú³ÉtestÎļþ£¬ÔËÐÐtest£º $ ./test
==lib test!
ÆäÖУ¬gcc -o test test.c ./mylib.soµÄ×îºóÒ»¸ö²ÎÊýÖ¸¶¨ËùÁ´½Ó¿âÎļþµÄÏà¶Ô·¾¶¡££¨Ïà¶Ô·¾¶ºÍ¾ø¶Ô·¾¶Ó¦¸ÃÖªµÀ°É£¿£©
Linux϶¯Ì¬¿âµÄÉú³É¼°Á´½Ó·½·¨ £¨2£©
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
¡¾ÕªÒª¡¿
±¾ÎÄÖ÷Òª½éÉÜÁËlinuxµÄʱ¼äºÍ¶¨Ê±Æ÷¡£
¡¾¹Ø¼ü´Ê¡¿
Linux ¶¨Ê±Æ÷ ʱ¼ä
Ò»¡¢ÎÊÌâµÄÌá³ö
ÎÒÃÇ¿ª·¢³ÌÐòʱ£¬¾³£»áÓöµ½Ê±¼äºÍ¶¨Ê±Æ÷µÄÎÊÌ⣬ΪÁ˸üºÃµÄʹÓÃʱ¼äºÍ¶¨Ê±Æ÷£¬ÏÖÔÚÁоÙÒ»¸öһЩʱ¼ä½á¹¹Ìå¡¢º¯ÊýºÍ¶¨Ê±Æ÷¡£
¶þ¡¢½â¾ö˼·
1.ʱ¼äÀàÐÍ
1) time_tÊÇÒ»¸ö³¤ÕûÐÍ£¬Ò»°ãÓÃÀ´±íʾÓÃ1970ÄêÒÔÀ´µÄÃëÊ ......
ÏñPHPºÍperlÒ»Ñù£¬MySQLÒ²ÌṩµÄCÓïÑÔʹÓõÄAPI. C´úÂëµÄAPIÊÇËæMySQLÒ»Æð·¢²¼µÄ¡£ Ëü°üº¬ÔÚmysqlclient¿âÖУ¬ ¿ÉÒÔʹC³ÌÐòÀ´·ÃÎÊÊý¾Ý¿â¡£
MySQLÔ´Âë°üÖеÄÐí¶à¿Í»§¶Ë¶¼ÊÇÓÃCдµÄ¡£ Èç¹ûÄãÕýÔÚÕÒʹÓÃÕâЩC APIµÄÀý×Ó£¬ ¿ÉÒÔ¿´¿´¿Í»§¶ËµÄд·¨¡£Äã¿ÉÒÔÔÚMySQLÔ´Âë°üµÄclientsĿ¼ÕÒµ½ÕâЩÀý×Ó¡£
& ......
LinuxÄÚ´æ³õʼ»¯¼¼Êõ£¨initrd£©ÓÃÓÚÖ§³ÖÁ½½×¶ÎµÄϵͳÒýµ¼¹ý³Ì£¬ÊÇÔÚϵͳÆô¶¯¹ý³ÌÖб»¹ÒÔØµÄÁÙʱrootÎļþϵͳ£¨ÒëÕß×¢£ºÕâÀïµÄrootÎļþϵͳÊÇÖ¸µÄ¸ùÎļþϵͳ£©¡£initrd°üº¬ºÜ¶à¿ÉÖ´ÐгÌÐòºÍÇý¶¯£¬²¢ÔÊÐíÔÚÁÙʱµÄÄÚ´æ´ÅÅ̸ùÎļþϵͳ±»Ð¶ÔØ£¬ÄÚ´æ±»Êͷźó¹ÒÔØÕæÊµµÄrootÎļþϵͳ¡£ÔÚÐí¶àǶÈëʽLinuxÎļþϵͳÖУ¬initrdÊÇ×îÖÕµÄ ......
ʹÓÃsudo¿ÉÒÔÔÚÒÔ·ÇrootÓû§µÇ¼ʱÁÙʱ»ñµÃrootȨÏÞ£¬²¢Ö´ÐÐÐèÒªµÄÃüÁî¡£
¿ÉÒÔʹÓÃsudoµÄÓû§¿ÉÒÔ½Ð×ösudoer¡£
Ìí¼ÓsudoerµÄ·½·¨£¨¼ÙÉèÄúÒѾ°²×°sudo£©£º
Ö´ÐÐ
# visudo
»ò
# sudoedit
Ìáʾ£º
ÓÐЩ·¢ÐаæµÄsudoÌṩÁËsudoedit£¬ÓеÄÔòÌṩÁËvisudo£¬¹¦ÄÜÉÏ»ù±¾ÊÇÒ»ÑùµÄ¡£
ÄãÒ²¿ÉÒÔʹÓÃÆäËû±à¼Æ÷Èçvi½øÐÐ ......