2006-11-10

Linux核心数据结构--vm_area_struct

关键字: 进程的一个虚拟内存区域
表示某进程的一个虚拟内存区域。 struct vm_area_struct { struct mm_struct * vm_mm; /* VM area parameters */ unsigned long vm_start; unsigned long vm_end; pgprot_t vm_page_prot; unsigned short vm_flags; /* AVL tree of VM areas per task, sorted by address */ short vm_avl_height; struct vm_area_ ...
2006-11-10

Linux核心数据结构--tq_struct

关键字: 已经排队的任务信息,描叙那些无需立刻 执行的任务。
每个任务队列结构(tq_struct)包含着已经排队的任务信息。它被设备驱动用来描叙那些无需立刻 执行的任务。 struct tq_struct { struct tq_struct *next; /* linked list of active bh's */ int sync; /* must be initialized to zero */ void (*routine)(void *); /* function to call */ void *data; /* argumen ...
2006-11-10

Linux核心数据结构--timer_list

关键字: 进程实现实时时钟
用来为进程实现实时时钟。 struct timer_list { struct timer_list *next; struct timer_list *prev; unsigned long expires; unsigned long data; void (*function)(unsigned long); };
2006-11-10

Linux核心数据结构--socket

关键字: BSD套接口的信息。它不独立存在,一般位于一个VFS inode结构中
包含BSD套接口的信息。它不独立存在,一般位于一个VFS inode结构中。 struct socket { short type; /* SOCK_STREAM, ... */ socket_state state; long flags; struct proto_ops *ops; /* protocols do most everything */ void *data; ...
2006-11-10

Linux核心数据结构--sock

关键字: BSD套接口的协议相关信息
包含BSD套接口的协议相关信息。例如对于一个INET(Internet Address Domain)套接口此数据结构 包含TCP/IP和UDP/IP信息。 struct sock { /* This must be first. */ struct sock *sklist_next; struct sock *sklist_prev; struct options *opt; atomic_t wmem_alloc; atomi ...
2006-11-10

Linux核心数据结构--sk_buff

关键字: 协议层之间交换的网络数据
用来描叙在协议层之间交换的网络数据。 struct sk_buff { struct sk_buff *next; /* Next buffer in list */ struct sk_buff *prev; /* Previous buffer in list */ struct sk_buff_head *list; /* List we are on */ int magic_debug_cookie; struct sk_bu ...
2006-11-10

Linux核心数据结构--semaphore

关键字: 保护临界区数据结构和代码信号灯
保护临界区数据结构和代码信号灯。 struct semaphore { int count; int waking; int lock ; /* to make waking testing atomic */ struct wait_queue *wait; };
2006-11-10

Linux核心数据结构--rtable

关键字: 路由信息,在IP路由cache内部使用
用来描叙向某个IP主机发送包的路由信息。此结构在IP路由cache内部实用。 struct rtable { struct rtable *rt_next; __u32 rt_dst; __u32 rt_src; __u32 rt_gateway; atomic_t rt_refcnt; atomic_t rt_use; unsigned long rt_window; atomic_t ...
2006-11-10

Linux核心数据结构--request

关键字: 向系统的块设备发送请求。它总是向buffer cache读出或写入数据块
被用来向系统的块设备发送请求。它总是向buffer cache读出或写入数据块。 struct request { volatile int rq_status; #define RQ_INACTIVE (-1) #define RQ_ACTIVE 1 #define RQ_SCSI_BUSY 0xffff #define RQ_SCSI_DONE 0xfffe #define RQ_SCSI_DISCONNECTING 0xffe0 kdev_t rq_dev ...
2006-11-10

Linux核心数据结构--pci_dev

关键字: PCI设备,包括PCI-PCI和PCI-PCI桥接器
表示系统中的每个PCI设备,包括PCI-PCI和PCI-PCI桥接器。 /* * There is one pci_dev structure for each slot-number/function-number * combination: */ struct pci_dev { struct pci_bus *bus; /* bus this device is on */ struct pci_dev *sibling; /* next device on this bus */ struct pci_dev *next; / ...
2006-11-10

Linux核心数据结构--pci_bus

关键字: PCI总线
表示系统中的一个PCI总线。 struct pci_bus { struct pci_bus *parent; /* parent bus this bridge is on */ struct pci_bus *children; /* chain of P2P bridges on this bus */ struct pci_bus *next; /* chain of all PCI buses */ struct pci_dev *self; /* bridge device as seen by parent * ...
2006-11-10

Linux核心数据结构--mm_struct

关键字: 某任务或进程的虚拟内存
用来描叙某任务或进程的虚拟内存。 struct mm_struct { int count; pgd_t * pgd; unsigned long context; unsigned long start_code, end_code, start_data, end_data; unsigned long start_brk, brk, start_stack, start_mmap; unsigned long arg_start, arg_end, env_start, env_end; unsigned long rss, total_vm, ...
2006-11-10

Linux核心数据结构--mem_map_t

关键字: 物理页面的信息
用来保存每个物理页面的信息。 typedef struct page { /* these must be first (free area handling) */ struct page *next; struct page *prev; struct inode *inode; unsigned long offset; struct page *next_hash; atomic_t count; unsigned flags; ...
2006-11-10

Linux核心数据结构--linux_binfmt

关键字: 二进制文件格式
用来表示可被Linux理解的二进制文件格式。 struct linux_binfmt { struct linux_binfmt * next; long *use_count; int (*load_binary)(struct linux_binprm *, struct pt_regs * regs); int (*load_shlib)(int fd); int (*core_dump)(long signr, struct pt_regs * regs); };
2006-11-10

Linux核心数据结构--irqaction

关键字: 中断处理过程
用来描叙系统的中断处理过程。 struct irqaction { void (*handler)(int, void *, struct pt_regs *); unsigned long flags; unsigned long mask; const char *name; void *dev_id; struct irqaction *next; };
2006-11-10

Linux核心数据结构--ipc_perm

关键字: 系统V IPC对象的存取权限
此结构描叙对一个系统V IPC对象的存取权限。 struct ipc_perm { key_t key; ushort uid; /* owner euid and egid */ ushort gid; ushort cuid; /* creator euid and egid */ ushort cgid; ushort mode; /* access modes see mode flags below */ ushort seq; /* sequence number */ };
2006-11-10

Linux核心数据结构--inode

关键字: 磁盘上一个文件或目录的信息
此VFS inode结构描叙磁盘上一个文件或目录的信息。 struct inode { kdev_t i_dev; unsigned long i_ino; umode_t i_mode; nlink_t i_nlink; uid_t i_uid; gid_t i_gid; k ...
2006-11-10

Linux核心数据结构--gendisk

关键字: 硬盘的信息,用于磁盘初始化与分区检查
包含关于某个硬盘的信息。用于磁盘初始化与分区检查时。 struct hd_struct { long start_sect; long nr_sects; }; struct gendisk { int major; /* major number of driver */ const char *major_name; /* name of major driver */ int minor_shift; /* number of times minor is shifted to ...
2006-11-10

Linux核心数据结构--fs_struct

关键字: 还不知道是啥
这个还不知道是啥 struct fs_struct { int count; unsigned short umask; struct inode * root, * pwd; };
2006-11-10

Linux核心数据结构--files_struct

关键字: 进程打开的所有文件
描叙被某进程打开的所有文件。 struct files_struct { int count; fd_set close_on_exec; fd_set open_fds; struct file * fd[NR_OPEN]; };
2006-11-10

Linux核心数据结构--file

关键字: 文件、套接口
每个打开的文件、套接口都用此结构表示。 struct file { mode_t f_mode; loff_t f_pos; unsigned short f_flags; unsigned short f_count; unsigned long f_reada, f_ramax, f_raend, f_ralen, f_rawin; struct file *f_next, *f_prev; int f_owner; /* pid or -pgrp where SIGIO should be sent */ struct i ...
2006-11-10

Linux核心数据结构--device_struct

关键字: 被块设备和字符设备用来向核心登记(包含设备名称以及可对此设备进行的文件操作)
此结构被块设备和字符设备用来向核心登记(包含设备名称以及可对此设备进行的文件操作)。chrdevs和blkdevs 中的每个有效分别表示一个字符设备和块设备。 struct device_struct { const char * name; struct file_operations * fops; };
2006-11-10

Linux核心数据结构--device

关键字: 设备数据结构
系统中每个网络设备都用一个设备数据结构来表示。 struct device { /* * This is the first field of the "visible" part of this structure * (i.e. as seen by users in the "Space.c" file). It is the name * the interface. */ char *name; /* I/O specific fields ...
2006-11-10

Linux核心数据结构--buffer_head

关键字: buffer cache中一块缓存的信息
此结构包含关于buffer cache中一块缓存的信息。 /* bh state bits */ #define BH_Uptodate 0 /* 1 if the buffer contains valid data */ #define BH_Dirty 1 /* 1 if the buffer is dirty */ #define BH_Lock 2 /* 1 if the buffer is locked */ #define BH_Req 3 /* 0 ...
2006-11-10

Linux核心数据结构--block_dev_struct

关键字: 登记块设备
此结构用于向核心登记块设备,它还被buffer cache实用。所有此类结构都位于blk_dev数组中。 struct blk_dev_struct { void (*request_fn)(void); struct request * current_request; struct request plug; struct tq_struct plug_tq; };
2006-11-10

Linux核心数据结构--进程或任务

关键字: 进程或任务
struct task_struct{ /* these are hardcoded - don't touch */ volatile long state; /* -1 unrunnable, 0 runnable, >0 stopped */ long counter; long priority; unsigned long signal; unsigned long blocked; /* bitmap ...
highsky
搜索本博客
我的相册
Fa1b6bb4-b2f1-4fe3-b315-680db82818d0-thumb
白云山(1)
共 1 张
最近加入圈子
存档
最新评论