LinuxÏÂÎļþµÄ²Ù×÷(zt)
1£®ÎļþµÄ´´½¨ºÍ¶Áд
¡¡¡¡µ±ÎÒÃÇÐèÒª´ò¿ªÒ»¸öÎļþ½øÐжÁд²Ù×÷µÄʱºò,ÎÒÃÇ¿ÉÒÔʹÓÃϵͳµ÷Óú¯Êýopen.ʹÓÃÍê³ÉÒÔºóÎÒÃǵ÷ÓÃÁíÍâÒ»¸öcloseº¯Êý½øÐйرղÙ×÷.
¡¡¡¡¡¡¡¡int open(const char *pathname,int flags);
¡¡¡¡¡¡¡¡int open(const char *pathname,int flags,mode_t mode);
¡¡¡¡¡¡¡¡int close(int fd);
¡¡¡¡openº¯ÊýÓÐÁ½¸öÐÎʽ.ÆäÖÐpathnameÊÇÎÒÃÇÒª´ò¿ªµÄÎļþÃû(°üº¬Â·¾¶Ãû³Æ,ȱʡÊÇÈÏΪÔÚµ±Ç°Â·¾¶ÏÂÃæ).flags¿ÉÒÔÈ¥ÏÂÃæµÄÒ»¸öÖµ»òÕßÊǼ¸¸öÖµµÄ×éºÏ.
¡¡¡¡¡¡¡¡O_RDONLY¡¡¡¡:ÒÔÖ»¶ÁµÄ·½Ê½´ò¿ªÎļþ.
¡¡¡¡¡¡¡¡O_WRONLY¡¡¡¡:ÒÔֻдµÄ·½Ê½´ò¿ªÎļþ.
¡¡¡¡¡¡¡¡O_RDWR¡¡¡¡¡¡:ÒÔ¶ÁдµÄ·½Ê½´ò¿ªÎļþ.
¡¡¡¡¡¡¡¡O_APPEND¡¡¡¡:ÒÔ×·¼ÓµÄ·½Ê½´ò¿ªÎļþ.
¡¡¡¡¡¡¡¡O_CREAT¡¡¡¡ :´´½¨Ò»¸öÎļþ.
¡¡¡¡¡¡¡¡O_EXEC¡¡¡¡¡¡:Èç¹ûʹÓÃÁËO_CREAT¶øÇÒÎļþÒѾ´æÔÚ,¾Í»á·¢ÉúÒ»¸ö´íÎó.
¡¡¡¡¡¡¡¡O_NOBLOCK¡¡ :ÒÔ·Ç×èÈûµÄ·½Ê½´ò¿ªÒ»¸öÎļþ.
¡¡¡¡¡¡¡¡O_TRUNC¡¡¡¡ :Èç¹ûÎļþÒѾ´æÔÚ,Ôòɾ³ýÎļþµÄÄÚÈÝ.
¡¡¡¡Ç°ÃæÈý¸ö±êÖ¾Ö»ÄÜʹÓÃÈÎÒâµÄÒ»¸ö.Èç¹ûʹÓÃÁËO_CREATE±êÖ¾£¬ÄÇôÎÒÃÇҪʹÓÃopenµÄµÚ¶þÖÖÐÎʽ¡£»¹ÒªÖ¸¶¨mode±êÖ¾£¬ÓÃÀ´±íʾÎļþµÄ·ÃÎÊȨÏÞ¡£mode¿ÉÒÔÊÇÒÔÏÂÇé¿öµÄ×éºÏ.
¡¡¡¡¡¡¡¡-------------------------------------------------
¡¡¡¡¡¡¡¡S_IRUSR Óû§¿ÉÒÔ¶Á S_IWUSR Óû§¿ÉÒÔд
¡¡¡¡¡¡¡¡S_IXUSR Óû§¿ÉÒÔÖ´ÐÐ S_IRWXU Óû§¿ÉÒÔ¶ÁдִÐÐ
¡¡¡¡¡¡¡¡-------------------------------------------------
¡¡¡¡¡¡¡¡S_IRGRP ×é¿ÉÒÔ¶Á S_IWGRP ×é¿ÉÒÔд
¡¡¡¡¡¡¡¡S_IXGRP ×é¿ÉÒÔÖ´ÐÐ S_IRWXG ×é¿ÉÒÔ¶ÁдִÐÐ
¡¡¡¡¡¡¡¡-------------------------------------------------
¡¡¡¡¡¡¡¡S_IROTH ÆäËûÈË¿ÉÒÔ¶Á S_IWOTH ÆäËûÈË¿ÉÒÔд
¡¡¡¡¡¡¡¡S_IXOTH ÆäËûÈË¿ÉÒÔÖ´ÐÐ S_IRWXO ÆäËûÈË¿ÉÒÔ¶ÁдִÐÐ
¡¡¡¡¡¡¡¡-------------------------------------------------
¡¡¡¡¡¡¡¡S_ISUID ÉèÖÃÓû§Ö´ÐÐID S_ISGID ÉèÖÃ×éµÄÖ´ÐÐID
¡¡¡¡¡¡¡¡-------------------------------------------------
¡¡¡¡ÎÒÃÇÒ²¿ÉÒÔÓÃÊý×ÖÀ´´ú±í¸÷¸öλµÄ±êÖ¾.Linux×ܹ²ÓÃ5¸öÊý×ÖÀ´±íʾÎļþµÄ¸÷ÖÖȨÏÞ.
¡¡¡¡¡¡¡¡µÚһλ±íʾÉèÖÃÓû§ID.
¡¡¡¡¡¡¡¡µÚ¶þλ±íʾÉèÖÃ×éID,
¡¡¡¡¡¡¡¡µÚÈýλ±íʾÓû§×Ô¼ºµÄȨÏÞλ,
¡¡¡¡¡¡¡¡µÚËÄλ±íʾ×éµÄȨÏÞ,
¡¡¡¡¡¡¡¡×îºóһλ±íʾÆäËûÈ˵ÄȨÏÞ.
¡¡¡¡¡¡¡¡Ã¿¸öÊý×Ö¿ÉÒÔÈ¡1(Ö´ÐÐȨÏÞ),2(дȨÏÞ),4(¶ÁȨÏÞ),0(ʲôҲûÓÐ)»òÕßÊÇÕ⼸¸öÖµµÄºÍ.
Ïà¹ØÎĵµ£º
¹ØÓÚlinuxÏÂÁ½ÖÖÄÚ´æÒýµ¼Ä£Ê½µÄÇø±ð
Linux µÄ initrd ¼¼ÊõÊÇÒ»¸ö·Ç³£ÆÕ±éʹÓõĻúÖÆ£¬linux2.6 ÄÚºËµÄ initrd µÄÎļþ¸ñʽÓÉÔÀ´µÄÎļþϵͳ¾µÏñÎļþת±ä³ÉÁË cpio ¸ñʽ£¬±ä»¯²»½ö·´Ó³ÔÚÎļþ¸ñʽÉÏ£¬ linux Äں˶ÔÕâÁ½ÖÖ¸ñʽµÄ initrd µÄ´¦ÀíÓÐ׎ØÈ»µÄ²»Í¬¡£
initrd µÄÓ¢Îĺ¬ÒåÊÇ boot loader ......
¼ò½é
Ä£¿é£¨module£©ÊÇÔÚÄں˿ռäÔËÐеijÌÐò£¬Êµ¼ÊÉÏÊÇÒ»ÖÖÄ¿±ê¶ÔÏóÎļþ£¬Ã»ÓÐÁ´½Ó£¬²»ÄÜ
¶ÀÁ¢ÔËÐУ¬µ«ÊÇ¿ÉÒÔ×°Ôص½ÏµÍ³ÖÐ×÷ΪÄں˵ÄÒ»²¿·ÖÔËÐУ¬´Ó¶ø¿ÉÒÔ¶¯Ì¬À©³äÄں˵ŦÄÜ¡£Ä£¿é×îÖ÷ÒªµÄÓô¦¾ÍÊÇÓÃÀ´ÊµÏÖÉ豸Çý¶¯³ÌÐò¡£
ʹÓÃÄ£¿éµÄÓŵ㣺
1,½«À´ÐÞ¸ÄÄÚºËʱ£¬²»±ØÈ«²¿ÖØбàÒëÕû¸öÄںˣ¬¿É½ÚÊ¡²»ÉÙʱ¼ä
2,ϵͳ ......
################## Ð޸ķÀ»ðǽ¶Ë¿Ú #################
µ±Linux´ò¿ª·À»ðǽºó£¬Äã»á·¢ÏÖ£¬´Ó±¾»úµÇ¼23¶Ë¿ÚÊÇûÓÐÎÊÌâµÄ£¬µ«ÊÇÈç¹û´ÓÁíһ̨pcµÇ¼¸Ãlinuxϵͳºó£¬Äã»á·¢ÏÖÌáʾÕâÑùµÄ´íÎó£º
²»ÄÜ´ò¿ªµ½Ö÷»úµÄÁ¬½Ó£¬ ÔÚ¶Ë¿Ú 23: Á¬½Óʧ°Ü
²é¿´¶Ë¿ÚÇé¿ö£ºservice iptables status
ÒòΪlinux·À»ðǽĬÈÏÊǹرÕ23¶Ë¿ÚµÄ ......
LinuxÖжÔÓÚһЩ´óÈÎÎñÐèÒªÔÚºǫ́ÔËÐУ¬·ñÔò»áÒ»Ö±Õ¼ÓÃÆÁÄ»£¬·À°Ê¹ÓÃÕßʹÓÃÖÕ¶ËÈ¥Íê³ÉÆäËüµÄÈÎÎñ¡£ÆäÖлáÌṩÈçϼ¸¸öÃüÁîÀ´½øÐкǫִ́ÐУº
1¡¢ ÉèÖÃcrontabÎļþ£¬²¢ÓÃËüÀ´Ìá½»×÷Òµ£»ÆäÖÐcron ϵͳµ÷¶È½ø³Ì£¬¿ÉÒÔʹÓÃËüÔÚÿÌìµÄ·Ç¸ß·å¸ººÉʱ¼ä¶ÎÔËÐÐ×÷Òµ£¬»òÔÚÒ»ÖÜ»òÒ»ÔÂÖеIJ»Í¬Ê±¶ÎÔËÐС£
2¡¢ ʹÓÃatÃüÁîÀ ......
#include <stdio.h>
#include <pthread.h>
#include <stdlib.h>
#include <unistd.h>
pthread_mutex_t wqy_mutex_pause = PTHREAD_MUTEX_INITIALIZER;
pthread_cond_t wqy_cond_pause = PTHREAD_COND_INITIALIZER;
bool wqy_pthread_pause = false;
void wqy_pthread_suspend(void)
{
if ......