Linux KernelÇýÖðAndroid£ºµ½µ×·¢ÉúÁËʲô
¹Ø×¢Android£¬¹Ø×¢Google ǰÈÕLinux Kernelά»¤ÕßGreg Kroah-Hartman°ÑAndroid´úÂë´ÓLinux Kernel´úÂë¿âÖÐɾ³ýµÄÏûÏ¢ÒýÀ´Á˹㷺¹Ø×¢£¬¿ª·¢½çÒÑÓкܶàÆÀÂÛ¶Ô´ËʽøÐÐÌÖÂÛ¡£ifanr½ñÈÕÌṩÁ˵±ÌìGregÉùÃ÷µÄÈ«ÒëÎÄ£¬ÏÂÃæ¾ÍÈÃÎÒÃÇÀ´¿´¿´¡£ 2.6.33 °æÄÚºËÒÆ³ýÁËAndroidµÄ´úÂë¡£ºÜ¶àÈ˲»¶ÏµØÎÊÎÒ·¢ÉúÁËʲô£¬¶ÔÓÚAndroidÏÂÒ»²½ÒªÔõô°ì¡£ÕâÀïÊÇÎÒ¶ÔÕû¼þÊÂÇéµÄ³ÎÇ壺 Ê×ÏÈ£¬ÎÒºÜϲ»¶Androidƽ̨¡£Ö±µ½ÉÏÖÜ£¬ÎÒ»¹Ã¿ÌìʹÓÃÎҵĿª·¢ÊÖ»úG1¡£Ëü¹¤×÷Á¼ºÃ£¬×÷ΪÓû§ÎÒºÜÂúÒâ¡£ÁíÍ⣬´Ó¼¼Êõ½Ç¶ÈÎÒÒ²ºÜϲ»¶Ëû¡£ÁîÈ˾ªÆæµÄÊÇ£¬Google½ö½öʹÓÃLinuxÄں˹¹½¨ÁËÒ»¸ö¿ÉÒÆÖ²µÄºÍ½¡×³µÄÊÖ»úƽ̨£¬¶ø²¢Ã»ÓÐʹÓá±´«Í³¡±LinuxµÄÈÎºÎÆäËû¶«Î÷¡£¸ü¼ÓÄÑÄܿɹóµÄÊÇ£¬Äã¿ÉÒÔ ÔÚAndroidϵͳ֮Éϰ²×°Ò»¸ö¡±ÕæÕý¡±µÄLinux¾µÏñ£¬Á½Õß¶¼ÄÜÕý³£¹¤×÷¶øÎÞÐèÈκÎÐ޸ġ£ Android Ò²½â¾öÁËÊÖ»úÖÆÔìÉ̶àÄêÀ´Óöµ½µÄÎÊÌ⣺Ëü´´ÔìÁËÒ»¸öÃâ·ÑµÄJavaÐéÄâ»úºÍͳһµÄÓ¦ÓÃÈí¼þ²ã£¬Ê¹³ÌÐò¿ÉÒÔÔÚËùÓм¯³ÉËüµÄÊÖ»úƽ̨ÉÏÔËÐС£ÒòΪËûËüµÄ³öÏÖ£¬ ËùÓÐÏÖ´æµÄ¡±LinuxÊÖ»úлᡱ£¨¡±Linux Phone Consortium¡± £©×éÖ¯¶¼Ðû¸æÖսᣬ»òÕß¼´½«¹Ø±Õ¡£ ³öÁËʲôÎÊÌ⣿ ·¢ÉúÁËʲôÖÂʹAndroidÄں˴úÂ뱻ɾ³ý£¿ ¼òµ¥µÄ˵£¬Ã»ÓÐÈ˹ØÐÄ´úÂ룬ËùÒÔËû±»É¾³ýÁË¡£ÕýÈçÎÒ֮ǰµÄÉùÃ÷£¬¿ª·¢·ÖÖ§µÄ´úÂëÐèÒª¼ÌÐøÐ޸IJÅÄܺϲ¢½øÄÚºËÖ÷ÏßÄÚºËÊ÷£¬·ñÔò½«±»É¾³ý¡£µ«ÊÇ£¬Õâ¶ù»¹ÓиüÑÏÖØµÄÎÊÌâ¡£Android´úÂë²»½ö½öÊÇdrivers/staging/androidĿ¼ÏµÄһЩÇý¶¯³ÌÐò¡£ AndroidϵͳµÄÕý³£ÔËÐУ¬ÐèÒªGoogle´´½¨µÄÒ»ÖÖеÄÄÚºËËøºÍÆä°²È«Ä£ÐÍËøÒÀÀµµÄºËÐÄϵͳÖеĹ³×Ó£¨hooks£©¡£ÒªÐ´³öÄܹ»ÔÚAndroidÉÏÖ´ÐеÄÇý¶¯³ÌÐò£¬ÄãÐèҪǡµ±µÄʹÓÃеÄÄÚºËËø£¬ÓÐʱºò»¹ÐèҪʹÓùÖÒìµÄ°²È«Ä£ÐÍ¡£ ÕâÒâζ×ÅËùÓÐΪAndroidÓ²¼þƽ̨±àдµÄÇý¶¯¶¼²»ÄÜÈںϽøÖ÷ÏßÄÚºËÊ÷£¬ËüÃÇÔÚÖ÷ÏßÄÚºËÖлá±àÒëʧ°Ü¡£ÒòΪËüÃÇÒÀÀµµÄ´úÂëÖ»´æÔÚÓÚGoogleµÄÄں˷ÖÖ§ÖС£ÒòΪÉÏÃæÕâЩ£¬Google×è°ÁË´óÁ¿Ó²¼þÇý¶¯¡¢Æ½Ì¨´úÂëºÍÖ÷ÏßÄÚºËÊ÷µÄÕûºÏ¡£²¢´´½¨ÁËÒ»¸öºÜ¶àÖÆÔìÉÌÏÖÔÚÒÀÀµµÄÄں˷ÖÖ§¡££¨ÒëÕ߯ÀÂÛ£ºÐ°¶ñµÄ×ö·¨£¬ÀûÓÿªÔ´µÄ³É¹ûıÀû£¬¶ø²¢Ã»ÓлØÀ¡¿ªÔ´ÉçÇø£© ´´ÔìÄÚºËÔ´´úÂë·ÖÖ§²¢Ã»ÓÐÎÊÌ⣬¼¸ºõÿһ¸ö·¢Ðа涼ÓÐ×Ô¼ºµÄ·ÖÖ§¡£µ«ÊǸüÔãµÄÊÇ£¬Google²»°ÑËûÃǵĴúÂëÕûºÏ½øÖ÷ÏßÄÚºËÊ÷£¬Ê¹±àдÇý¶¯ºÍƽ̨´úÂëµÄ¹«Ë¾ÎÞ·¨»ØÀ¡¿ªÔ´ÉçÇø¡£Äں˿ª·¢ÉçÇøÔçÔÚ¼¸Äêǰ¾Í¸æËßÕâЩ¹«Ë¾Ê¹ËûÃǵĴúÂëºÏ²¢½øÖ÷ÏßÄںˣ¬ÒԵõ½×Ô¶¯µÄ°²È«ÐÞ¸´ºÍ×Ô¶¯´¦ÀíAPI±ä¶¯£¬ºÜ¶à¹«Ë¾Ìý´Ó½¨Ò
Ïà¹ØÎĵµ£º
#define EPERM 1 /* Operation not permitted */
#define ENOENT 2 /* No such file or directory */
#define ESRCH&nbs ......
Ìõ¼þ±äÁ¿Í¨¹ýÔÊÐíÏß³Ì×èÈûºÍµÈ´ýÁíÒ»¸öÏ̷߳¢ËÍÐźŵķ½·¨ÃÖ²¹ÁË»¥³âËøµÄ²»×㣬Ëü³£ºÍ»¥³âËøÒ»ÆðʹÓá£Ê¹ÓÃʱ£¬Ìõ¼þ±äÁ¿±»ÓÃÀ´×èÈûÒ»¸öỊ̈߳¬µ±Ìõ¼þ²»Âú×ãʱ£¬Ïß³ÌÍùÍù½â¿ªÏàÓ¦µÄ»¥³âËø²¢µÈ´ýÌõ¼þ·¢Éú±ä»¯¡£Ò»µ©ÆäËüµÄij¸öÏ̸߳ıäÁËÌõ¼þ±äÁ¿£¬Ëü½«Í¨ÖªÏàÓ¦µÄÌõ¼þ±äÁ¿»½ÐÑÒ»¸ö»ò¶à¸öÕý±»´ËÌõ¼þ±äÁ¿×èÈûµ ......
LinuxÄÚºËÅäÖð취£º
1. make config
ÕâÖÖ°ì·¨»á±éÀúËùÓÐÅäÖÃÏҪÇóÓû§Öð¸öÑ¡ÔñY/N/M
2. make menuconfig
Õâ¸ö°ì·¨ÊÇ»ùÓÚncurse¿â±àÖÆµÄͼÐνçÃæ¹¤¾ß¡£³£ÓÃ
3. make xconfig
ÓÃÓÚ»ùÓÚX11µÄͼÐι¤¾ß
4. make gconfig
ÓÃÓÚ»ùÓÚgtk+ͼÐι¤¾ß
5. make defconfig
´´½¨Ò»¸öĬÈϵÄÅäÖã¬Éú³Éµ±Ç°µÄ.config
6. make x ......
ÔÚ/etc/rc.d/init.d/ ´´½¨oracle10gÎļþ
touch oracle10g
chmod a+x oracle10g
[root@test~]# vi /etc/rc.d/init.d/oracle10g
#!/bin/bash
#chkconfig:345 51 49
#description:starts the oracle database deamons
#
ORACLE_HOME=/oracle/product/10.2.0/db_1
ORACLE_OWNER=oracle
case "$1" in
start)
echo ......
/*
* linux/fs/file_dev.c
*
* (C) 1991 Linus Torvalds
*/
#include <errno.h>
#include <fcntl.h>
#include <linux/sched.h>
#include <linux/kernel.h>
#include <asm/segment.h>
#define MIN(a,b) (((a)<(b))?(a):(b))
#defi ......