Linux内核目录结构

  • /arch
    存放与特定cpu和体系结构相关的代码,相关的.h放在inclue/asm下;其下子目录分别对应一种cpu;针对不同体系结构所移植的版本都含有boot, kernel, lib, mm子目录
  • /kernel
    存放大多数内核函数,包含调度,等待队列,时钟和定时器操作,用户和组标识;进程操作,信号操作;软终端操作
  • /mm
    存放独立于体系结构的主存管理文件,包括虚拟存储管理
  • /fs
    存放VFS和系统支持的各种文件系统源代码,每个子目录代表一种文件系统ext2 ext3 fat ntfs usb proc
  • /include
    存放重要的内核头文件,为各种cpu各设一个子目录;平台无关.h放在include/asm目录下;还有通用子目录include/linux include/net
  • /drivers
    存放设备驱动代码,分为7类,1)块设备/block 2) 字符设备/char 3) cd-rom 驱动 4) PCI伪设备 5)SCSI设备驱动 6) 网络驱动 7) 声卡驱动
  • /ipc
    进程通信代码。System V IPC 的 ipc_perm结构在include/linux/ipc.h中描述,ipc_msg.c, ipc_sem.c, ipc_shm.c, ipc_pipe.c分别实现消息队列,信号量,共享内存,管道
  • /net
    存放网络子系统,如各种网卡,网络规程驱动
  • security
    存放安全子系统
  • sound
    音频子系统
  • init
    内核引导和初始化代码,main.c version.c就存在于这个目录下。该文件还包含许多内核代码,如cpu_idle()代码
  • lib
    存放内核需要的通用工具性内核函数,如对出错信息的处理
  • scripts
    存放编译内核所用脚本和用于系统配置的命令文件
  • documentation
    相关文档

    defeattroy#gmail.com  (replace # by @) 2009-9-15

你可能感兴趣的:(Linux内核目录结构)