linuxĿ¼²Ù×÷º¯Êý£ÛתUC£Ý
ת×Ô£º
http://blog.chinaunix.net/u2/63316/showart_547992.html
LinuxϵÄĿ¼ÊÇÒÀÕÕ±ê×¼À´Êµ×÷µÄ£¬Òò´Ë£¬Äú¿ÉÒÔºÁÎÞÎÊÌâµØÒÆÖ³µ½ÈÎºÎÆäËüUNIXƽ̨¡£
--------------------------------------------------------------------------------
getcwd/getwd : È¡µÃĿǰËùÔÚĿ¼
--------------------------------------------------------------------------------
#include
char * getcwd(char *buf,size_t size);
buf½«»á·µ»ØÄ¿Ç°Â·¾¶Ãû³Æ¡£
ÈκεĴíÎó·¢Éú£¬½«»á·µ»ØNULL¡£Èç¹û·¾¶³¤¶È³¬¹ýsize£¬errnoΪERANGE¡£getcwd·µ»ØµÄÖµÓÀÔ¶ÊÇûÓÐsymbol linkµÄ¡£
--------------------------------------------------------------------------------
#include
char *getwd(char *buf);
getwdÊǸöΣÏյĺ¯Êý£¬Ò»°ã¶¼»áÇ¿ÁÒ½¨Òé²»ÒªÓã¬ÒòΪÄúÎÞ·¨È·¶¨×µÄĿ¼³¤¶ÈΪ¶àÉÙ¡£PATH_MAX¶¨ÒåÁË×µÄ·¾¶³¤¶È¡£ÔÚLinuxÏÂËùÒÔÌṩÕâ¸öº¯ÊýÖ÷ÒªÊÇÒòΪ¡¸´«Í³¡¹¡£
--------------------------------------------------------------------------------
//»ñȡϵͳĿ¼×î´ó³¤¶È
long pathconf(char* path, int flag);
--------------------------------------------------------------------------------
chdir/fchdir/chroot : ¸Ä±äĿǰËùÔÚĿ¼
--------------------------------------------------------------------------------
#include
int chdir(const char * pathname);
int fchdir(int fd);
chdir¸ù¾Ýpathname±ä¸üĿǰµÄËùÔÚĿ¼£¬ËüÖ»¸Ä±ä¸Ã³ÌʽµÄËùÔÚĿ¼¡£
fchdir¸ù¾ÝÒÑ¿ªÆôµÄfd(file descriptor)Ŀ¼À´±ä¸ü¡£
//sample
/*¸ü¸Äµ±Ç°¹¤×÷Ŀ¼µ½Éϼ¶Ä¿Â¼*/
if(chdir("..")==-1){
perror("Couldn't change current working directory.\n");
return 1;
}
--------------------------------------------------------------------------------
#include
int chroot(const char * path);
chroot¸Ä
Ïà¹ØÎĵµ£º
1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......
Red-black Trees (rbtree) in Linux
January 18, 2007
Rob Landley <rob@landley.net>
=============================
red-blackÊ÷ÊÇʲôÑùµÄÊ÷£¬ÎªÊ²Ã´ÐèÒªred-blackÊ÷£¿
------------------------------------------------
red-black tree£¨RBÊ÷£©ÊÇÒ»ÖÖÆ½ºâ¶þ²æÊ÷£¬ËüÖ÷ÒªÓÃÓÚ´æ´¢»òÕß˵ ......
ÏîÄ¿Öг£Óöµ½ÐèÒª¶ÔĿǰÔËÐеÄϵͳ½øÐÐЧÂÊ·ÖÎö£¬»òÅöµ½¿Í»§×ÉѯÈçºÎÓÅ»¯ÏµÍ³µÄЧÂÊÎÊÌâ¡£¸ü¶àµÄÇé¿öÊÇ£¬ÔÚϵͳ³öÏÖÎÊÌâµÄʱºò£¬ÐèÒª·ÖÎöÔÒò£¬¶¨Î»ÏµÍ³ ¹ÊÕÏ»òÆ¿¾±£¬µ±È»£¬×îºÃÊÇ¿ÉÒÔÒ»²¢½â¾ö¹ÊÕÏ¡£µ«Êµ¼ÊÉÏ£¬²Ù×÷ϵͳÓÅ»¯ÊÇÒ»¸ö·Ç³£¸´ÔÓµÄÎÊÌ⣬¿öÇÒlinuxÓÐ×Ô¼ºÒ»Ì×ÓбðÓÚÆäËû²Ù×÷ϵͳ¹ÜÀíµÄ»úÖÆ£¬ÓÉ´Ë »áÒýÆðºÜ¶à²»±ØÒ ......
1.“/bin”¡¢“/sbin”¡¢“/usr/bin”¡¢“/usr/sbin”¡¢“/usr/local/bin”µÈ·¾¶ÒѾÔÚϵͳ»·¾³±äÁ¿ÖÐÁË£¬Èç¹û¿ÉÖ´ÐÐÎļþ ÔÚÕ⼸¸ö±ê׼λÖã¬ÔÚÖÕ¶ËÃüÁîÐÐÊäÈë¸ÃÈí¼þ¿ÉÖ´ÐÐÎļþµÄÎļþÃûºÍ²ÎÊý£¬»Ø³µ¼´¿É¡£
2.Èç¹û²»ÔÚ±ê׼λÖã¬ÎļþÃûÇ°ÃæÐèÒª¼ÓÉÏÍêÕûµÄ ......
ÔÚlinuxÖÐÓû§·ÖΪÁ½Àࣺ1¡¢root³¬¼¶Óû§ 2¡¢ÆÕͨÓû§
/bin
¡¡¡¡Òýµ¼Æô¶¯ËùÐèµÄÃüÁî»òÆÕͨÓû§¿ÉÄÜÓõÄÃüÁî(¿ÉÄÜÔÚÒýµ¼Æô¶¯ºó)¡£
¡¡¡¡/sbin
¡¡¡¡ÀàËÆ/bin £¬µ«²»¸øÆÕͨÓû§Ê¹Óã¬ËäÈ»Èç¹û±ØÒªÇÒÔÊÐíʱ¿ÉÒÔʹÓá£
¡¡¡¡/etc
¡¡¡¡Ìض¨µÄÅ ......