LinuxÐźÅÁ¿ ¹²ÏíÄÚ´æºÍÏûÏ¢¶ÓÁÐ
LinuxÐźÅÁ¿ ¹²ÏíÄÚ´æºÍÏûÏ¢¶ÓÁÐ
1. ÐźÅÁ¿
ʹÓÃÐźÅÁ¿¿ÉÒÔʵÏÖ½ø³Ì¼äͬ²½¡£Ö÷Òªº¯Êý¶¨Ò壺
#include <sys/sem.h>
int semctl(int sem_id, int sem_num, int command, …);
int semget(key_t key, int num_sems, int sem_flags);
int semop(int sem_id, struct sembuf *sem_ops, size_t num_sem_ops);
semgetº¯Êý¸ù¾ÝÌṩµÄkeyÉú³ÉÐźÅÁ¿±êʶ·û£»
semctlº¯Êý³õʼ»¯»òÕßɾ³ýÐźÅÁ¿±êʶ·û£»
semopº¯Êý¸Ä±äÐźÅÁ¿´óС
2. ¹²ÏíÄÚ´æ
¹²ÏíÄÚ´æ»úÖÆÊ¹µÃÁ½¸ö²»Ïà¹Ø½ø³Ì¿ÉÒÔ¶ÁÈ¡ºÍÐÞ¸Äͬһ¶ÎÄÚ´æ´Ó¶øÊµÏÖÊý¾Ý¹²Ïí¡£Ö÷Òªº¯Êý¶¨Òå:
#include <sys/shm.h>
void *shmat(int shm_id, const void *shm_addr, int shmflg);
int shmctl(int shm_id, int cmd, struct shmid_ds *buf);
int shmdt(const void *shm_addr);
int shmget(key_t key, size_t size, int shmflag);
shmgetº¯Êý¸ù¾ÝkeyÉú³ÉÓÐЧµÄ¹²ÏíÄÚ´æ¶ÎÃû£¬¸ù¾Ý²ÎÊýsize²úÉú¹²ÏíµÄÄÚ´æÈÝÁ¿¡£
shmatº¯Êý½«´´½¨µÄ¹²ÏíÄÚ´æ¶ÎÁ¬½Óµ½Ò»¸ö½ø³ÌµÄÄÚ´æ¿Õ¼äÖУ¬ÕâÑù²Å¿ÉÒÔʹÓøöÎÄÚ´æ¡£
shmdtº¯Êý½«¹²ÏíÄÚ´æ´Óµ±Ç°ÄÚ´æÖзÖÀë¡£
shmctlº¯Êý¿ÉÒÔɾ³ý¹²ÏíÄÚ´æ¶Î¡£
3. ÏûÏ¢¶ÓÁÐ
ÏûÏ¢¶ÓÁкÍÃüÃû¹ÜµÀ·Ç³£ÀàËÆ£¬µ«ÉÙÁË´ò¿ªºÍ¹Ø±Õ¹ÜµÀµÄ¸´ÔÓÐÔ¡£Ö÷Òªº¯ÊýÈçÏ£º
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
int msgctl(int msqid, int cmd, struct msqid_ds *buf);
int msgget(key_t key, int msgflg);
int msgrcv(int msqid, void *msg_ptr, size_t msg_sz, long int msgtype, int msgflg);
int msgsnd(int msqid, const void *msg_ptr, size_t msg_sz, int msgflg);
Ïà¹ØÎĵµ£º
ÕâÒ»²¿·ÖµÄÌá³öÊÇΪÁË·Àֹʧ¿ØµÄ½ø³ÌÆÆ»µÏµÍ³µÄÐÔÄÜ
nuixºÍLinux¸ú×Ù½ø³ÌʹÓõĴ󲿷Ö×ÊÔ´£¬ÔÊÐíÓû§ºÍϵͳ¹ÜÀíԱʹÓöԽø³ÌµÄ×ÊÔ´ÏÞÖÆ
ÉèÖõÄÏÞÖÆÓÐÁ½ÖÖ£º Ó²ÏÞÖÆºÍÈíÏÞÖÆ
Ó²ÏÞÖÆÊÇ¿ÉÒÔÔÚÈκÎʱºòÈκνø³ÌÖÐÉèÖà µ«Ó²ÏÞÖÆÖ»ÄÜÓɳ¬¼¶Óû§ÌáÆð
ÈíÏÞÖÆÊÇÄÚºËʵ¼ÊÖ´ÐеÄÏÞÖÆ£¬Èκνø³Ì¶¼¿ÉÒÔ½«ÈíÏÞÖÆÉèÖÃΪÈÎÒ ......
linuxÉ豸Çý¶¯¿ª·¢Ïê½â——globalmem
ÊÕ²Ø
³£¼ûµÄÁ½ÖÖ´íÎó£º
1.ÔÚ²åÈëÄ£¿éµÄʱºò³öÏÖÈçÏÂÎÊÌ⣺
# insmod globalmem.ko insmod: error inserting 'globalmem.ko': -1
Device or res ......
Ò»¡¢ jdkµÄ°²×°
1. ÏÂÔØjdk£º ´Ówww.sun.comÏÂÔØjdk£¨ jdk-1_5_0_20-linux-i586-rpm.bin £©£¬ÏÂÔØºóʹÓÃsshÉÏ´«µ½linuxϵͳµÄhomeĿ¼Ï£¬µ±È»Ò²¿ÉÒÔ·ÅÔÚÆäËüĿ¼¡£
2. ½øÈ밲װĿ¼,ÐÞ¸ÄjdkµÄʹÓÃȨÏÞ,¸øËùÓÐÓû§Ìí¼Ó¿ÉÖ´ÐеÄȨÏÞ£º
#cd /home
#chmod +x jdk-1_5_0_20-linux-i586.rpm.bin ......
1¡¢´´½¨mysqlÊý¾Ý¿âµÄ¹ÜÀíÓû§
Êý¾Ý¿â°²×°ºÃºó£¬ÎÒÃÇÓ¦¸ÃΪmysqlÊý¾Ý¿â´´½¨Ò»¸ö¹ÜÀíÕʺš£Òª°ÑrootÓû§ÉèÖÃΪ¹ÜÀíÔ±£¬´ËʱÐèÒªÖ´ÐÐÏÂÃæÃüÁ
[root@CDS2 bin]# /usr/bin/mysqladmin -u root password 123456
˵Ã÷£ºÉÏÃæ´´½¨µÄmysqlÊý¾Ý¿â¹ÜÀíԱΪroot£¬ÃÜÂë123456
2¡¢´´½¨Ò»°ãµÄÓû§
¹¤×÷ÖÐÓõ½web·þÎñÆ÷ºÍmysql·þÎñÆ ......
×î½üÔÚ¿´Ò»¸ö¿ªÔ´µÄ´úÂ룬һ¶Î´úÂë¿´Á˺ܾö¼Ã»Óп´¶®£¬GoogleÁËһϣ¬¾¡È»ÊÇlinuxÖÐÁ´±íµÄ±éÀú¡£
±éÀúÁ´±í£º
±éÀúÁ´±ílist_for_eachÊÇÒ»¸öºê£¬Õ¹¿ªÁ˾ÍÊÇÒ»¸öforÑ»·
#define list_for_each(pos, head) \
for (pos = (head)->next; prefetch(pos->next), pos != ( ......