🇨🇳
Site
  • 壹棵开花的树
  • 操作系统
    • Linux From Scratch
    • Linux
      • Linux内核
      • Untitled
      • Untitled
    • Winodws
      • 全家桶
  • 系统集成
    • Untitled
    • 系统集成
    • 机房建设
      • 服务器
      • Untitled
    • 弱电系统
    • 网络
      • 路由器
      • 交换机
      • 无线网络
      • 网络安全
      • TCP/IP
        • 1. 物理层
        • 2. 数据链路层
        • 3. 网络层
        • 4. 传输层
        • 5. 会话层
        • 6. 表示层
        • 7. 应用层
    • 数据中心
    • 信息安全
  • 网络
    • Untitled
    • Untitled
    • 协议
      • Untitled
      • Untitled
      • HTTP
  • DataBase
    • 关系型数据库
      • Access
      • MariaDB
      • MySQL
        • 数据库存储引擎
        • Untitled
        • MySQL Replication
        • 高可用架构
        • 数据库中间件
          • MyCAT
      • Oracle
      • PostgreSQL
      • SQL Server
    • NoSQL
      • Untitled
      • Untitled
      • Untitled
      • tu
      • lie
      • wendang
        • MongoDB
      • kv
        • Redis
    • 云数据库
  • 安全
    • Untitled
  • 消息队列
    • Untitled
    • ActiveMQ
      • Untitled
    • RabbitMQ
      • Untitled
    • RocketMQ
      • Untitled
    • Kafka
      • Untitled
  • 大数据
    • Untitled
      • 大数据概述
    • Hadoop 生态系统
      • Hadoop
        • HDFS常用Shell命令和基础开发
        • Untitled
        • Untitled
        • MapReduce
        • Yarn
        • Hadoop的优化与发展
      • ZooKeeper
        • Untitled
        • Untitled
        • Untitled
      • Hbase
        • HBase常用Shell命令和基础开发
      • Sqoop
      • Flume
      • Pig
      • Hive
      • Impala
      • Storm(流计算)
      • Pregel(图计算)
      • Loader
      • Flume
    • Spark生态系统
      • Untitled
    • Flink
    • BI
  • 云计算
    • 云计算
      • 技术栈
      • OpenStack
    • 虚拟化
      • 服务器虚拟化
        • Untitled
        • Proxmox VE
        • VMware
        • KVM
        • Hyper-V
        • H3C CAS
        • FusionCloud
        • FusionSphere
          • 安装
  • Cloud Native
    • DevOps
      • 版本控制
      • Untitled
      • Untitled
      • Untitled
      • CI/CD
        • Jenkins
    • Untitled
    • Microservices
      • Dubbo
      • Spring Cloud
        • 最佳实践
        • Untitled
    • Service Mesh
      • Istio
    • 容器
      • Untitled
      • Docker
        • Docker
        • Untitled
    • Kubernetes
  • 网站架构
    • Untitled
    • 集群
      • 负载均衡
      • HA
    • 关于
    • 一次完整的HTTP请求过程
    • 全文搜索引擎
      • Lucene
      • Solr
      • ElasticSearch
        • 安装配置
      • Untitled
    • HTTP Cache
    • 大型网站架构
    • 网站服务器
      • WEB服务器
        • Nginx
        • Apache
        • nginx
        • IIS
      • 应用服务器
        • Weblogic
        • Tomcat
        • Jboss
  • BlockChain
    • Untitled
  • 编程语言
    • 前端
    • Python
      • Tornado
      • Django
        • 最佳实践
        • Untitled
        • manage.py
    • Go
    • Java
      • Untitled
      • 关于Java
  • Test
    • 0. 测试
      • 软件测试
      • 测试分类
      • 测试模型
    • 1. 性能测试
      • 基础
    • 2. 接口测试
      • Untitled
      • 接口测试
      • Postman
    • 3. 自动化测试
      • Python测试驱动开发
      • Python测试框架
        • Unitest
          • 最佳实践
    • 4. 测试工具
      • Selenium
      • LoadRunner
      • JMeter
    • 5. 最佳实践
  • 开发与运维
    • 软件开发模式
    • 敏捷开发
  • 存储
    • Untitled
    • 分布式存储
      • Ceph
      • MinIO
      • FusionStorage
  • 关于
    • 认证
    • 知识管理
      • Hugo
      • Gitbook
    • 企业组织架构
    • 文本格式
      • JSON
      • YAML
      • XML
    • API
由 GitBook 提供支持
在本页

这有帮助吗?

  1. 操作系统
  2. Linux

Linux内核

Linux内核源代码的目录结构

Linux内核源代码包括三个主要部分:
1. 内核核心代码,包括第3章所描述的各个子系统和子模块,以及其它的支撑子系统,例如电源管理、Linux初始化等
2. 其它非核心代码,例如库文件(因为Linux内核是一个自包含的内核,即内核不依赖其它的任何软件,自己就可以编译通过)、固件集合、KVM(虚拟机技术)等
3. 编译脚本、配置文件、帮助文档、版权说明等辅助性文件
使用ls命令看到的内核源代码的顶层目录结构,具体描述如下。
include/ ---- 内核头文件,需要提供给外部模块(例如用户空间代码)使用。
kernel/ ---- Linux内核的核心代码,包含了3.2小节所描述的进程调度子系统,以及和进程调度相关的模块。
mm/ ---- 内存管理子系统(3.3小节)。fs/ ---- VFS子系统(3.4小节)。
net/ ---- 不包括网络设备驱动的网络子系统(3.5小节)。
ipc/ ---- IPC(进程间通信)子系统。
arch// ---- 体系结构相关的代码,例如arm, x86等等。 
    arch//mach- ---- 具体的machine/board相关的代码。 
    arch//include/asm ---- 体系结构相关的头文件。 
    arch//boot/dts ---- 设备树(Device Tree)文件。
init/ ---- Linux系统启动初始化相关的代码。 
block/ ---- 提供块设备的层次。 
sound/ ---- 音频相关的驱动及子系统,可以看作“音频子系统”。 
drivers/ ---- 设备驱动(在Linux kernel 3.10中,设备驱动占了49.4的代码量)。
lib/ ---- 实现需要在内核中使用的库函数,例如CRC、FIFO、list、MD5等。 
crypto/ ----- 加密、解密相关的库函数。 
security/ ---- 提供安全特性(SELinux)。 
virt/ ---- 提供虚拟机技术(KVM等)的支持。 
usr/ ---- 用于生成initramfs的代码。 
firmware/ ---- 保存用于驱动第三方设备的固件。
samples/ ---- 一些示例代码。 
tools/ ---- 一些常用工具,如性能剖析、自测试等。
Kconfig, Kbuild, Makefile, scripts/ ---- 用于内核编译的配置文件、脚本等。
COPYING ---- 版权声明。 
MAINTAINERS ----维护者名单。 
CREDITS ---- Linux主要的贡献者名单。 
REPORTING-BUGS ---- Bug上报的指南。
Documentation, README ---- 帮助、说明文档。
上一页Linux下一页Untitled

最后更新于5年前

这有帮助吗?