Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Ìí¼ÓLinuxÄ£¿é

ÓÐÁËϵͳµ÷Óõľ­Ñ飬Ìí¼ÓÄ£¿é»¹ÊǺÜ˳ÀûµÄ¡£
¡¾ÊµÑé»·¾³¡¿
Fedora£¬ÄÚºË2.6.21.6
¡¾ÊµÑé²½Öè¡¿
1. cd /root/homework/module
2. vi process.c
3. ¼ÓÈëÈçÏ´úÂ룺
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/module.h>
static int process_init(void)
{
int num=0;
struct task_struct *p;
for_each_process(p)
{
struct task_struct *q=p->parent;
printk("pid=%-5d,name=%-20s,",p->tgid,p->comm);
printk("prio=%-5d,",p->prio);
printk("my_parent is: %s[%d]\n",q->comm,q->tgid);
num++;
}
printk("\ntotal number is: %d\n",num);
return num;
}
static void process_exit(void)
{
printk("==================\n");
printk("process_exit,GoodBye!\n");
}
module_init(process_init);
module_exit(process_exit);
MODULE_LICENSE("GPL");

4. vi Makefile
5. ¼ÓÈëÈçÏ´úÂë
obj-m :=process.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(shell pwd) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(shell pwd) clean
6. make
7. /sbin/init 3 ½øÈë×Ö·û½çÃæ
8. insmod process.ko ÏÔʾ½á¹û
9. rmmod process.ko ÒÆ³öÄںˣ¬ÏÔʾ½á¹û


Ïà¹ØÎĵµ£º

ÅäÖÃRedHat Linux 5 DNS½âÎö

1¡¢vi /etc/resolv.conf
Ôö¼ÓÒÔÏÂÄÚÈÝ£º
nameserver DNSserver_ip_address1
nameserver
DNSserver_ip_address2
ÈçÏ£º
[root@REDHATAS5 /]# cat /etc/resolv.conf
nameserver 192.168.88.1
2¡¢²âÊÔDNSÊÇ·ñÉúЧ
[root@Develop-Server ~]# nslookup www.baidu.com
Server:      &nb ......

Linux»·¾³½ø³Ì¼äͨÐÅ£¨Î壩: ¹²ÏíÄڴ棨Ï£©


Linux»·¾³½ø³Ì¼äͨÐÅ£¨Î壩: ¹²ÏíÄڴ棨Ï£©
ÎĵµÑ¡Ïî
´òÓ¡±¾Ò³
½«´ËÒ³×÷Ϊµç×ÓÓʼþ·¢ËÍ
¼¶±ð£º ³õ¼¶
Ö£ÑåÐË (mlinux@163.com), ¹ú·À¿Æ´ó¹¥¶Á²©Ê¿Ñ§Î»
2003 Äê 5 ÔÂ 01 ÈÕ
ÔÚ¹²ÏíÄڴ棨ÉÏ£©ÖУ¬Ö÷ÒªÎ§ÈÆ×Åϵͳµ÷ÓÃmmap()½øÐÐÌÖÂ۵쬱¾²¿·Ö½«ÌÖÂÛϵͳV¹²ÏíÄڴ棬²¢Í¨¹ýʵÑé½á¹û¶Ô±ÈÀ´²ûÊöÁ½ÕßµÄÒìͬ¡£Ïµ ......

linux ²é¿´Îļþ¼Ð´óС

du -sh *   ²é¿´µ±Ç°Ä¿Â¼ÏµÄÎļþ¼Ð´óС
du ÃüÁî
ÓÃ;
¸ÅÊö´ÅÅÌʹÓá£
Óï·¨
du [ -a | -s ] [ -k ] [ -m ] [ -g ][ -l ] [ -r ] [ -x ] [ -H | -L ][ File ... ]
ÃèÊö
duÃüÁîÏÔʾÓÃÓÚÎļþµÄ¿éµÄÊýÁ¿¡£Èç¹ûÖ¸¶¨µÄFile²ÎÊýʵ¼ÊÉÏÊÇÒ»¸öĿ¼£¬¾ÍÒª±¨¸æ¸ÃĿ¼ÄÚµÄËùÓÐÎļþ¡£Èç¹ûûÓÐÌṩ File²ÎÊý£¬duÃüÁîÊ¹Ó ......

linux Ö÷ºÅÓë´ÓºÅ

¿ÉÒÔ¶ÁÈ¡/proc/devicesÎļþÒÔ»ñµÃLinuxÄں˷ÖÅ䏸¸ÃÉ豸µÄÖ÷É豸ºÅ¡£
Ö÷É豸ºÅÓÃÀ´Çø·Ö²»Í¬ÖÖÀàµÄÉ豸£¬¶ø´ÎÉ豸ºÅÓÃÀ´Çø·ÖͬһÀàÐ͵Ķà¸öÉ豸
ÔÚLinuxÄں˿´À´£¬Ö÷É豸ºÅ±êʶÉ豸¶ÔÓ¦µÄÇý¶¯³ÌÐò£¬
¸æËßLinuxÄÚºËʹÓÃÄÄÒ»¸öÇý¶¯³ÌÐòΪ¸ÃÉ豸(Ò²¾ÍÊÇ/devϵÄÉ豸Îļþ)·þÎñ£»¶ø´ÎÉ豸ºÅÔòÓÃÀ´±êʶ¾ßÌåÇÒΨһµÄij¸öÉ豸¡£
......

Ìí¼ÓLinuxϵͳµ÷ÓÃ

¡¾ÊµÑé»·¾³¡¿
Fedora£¬ÄÚºË2.6.21.6
¡¾ÊµÑé²½Öè¡¿
1. cd /usr/src/linux
2. vi kernel/sys.c
ÔÚ×îºóÌí¼ÓÈçÏ´úÂ룺
asmlinkage long sys_processinfo(void)
{
int num=0;
unsigned long state;
struct task_struct *p;
for_each_process(p)
{
printk("pid=%-5d,name=%-20s",p->tgid,p->co ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ