linux 内核基础

linux基础

linux 由用户空间内核空间构成,两者进行切换可以通过:

  1. 系统调用
  2. 硬件中断

用户空间可以划分为:

  1. 应用程序
  2. c库(glibc)

内核空间可以分为

  1. 系统调用接口
  2. 内核
  3. 体系结构相关代码

再补充一下ARM的七种工作模式:(1)用户模式(usr) (2)快速中断(fiq) (3)外部中断(irq)(4)管理模式(svc)(5)数据访问中止(abt)(6)系统模式(sys)(7)未定义指令异常(und)

内核的虚拟文件系统
隐藏各种文件系统的具体细节,为操作系统提供统一的接口,把不同类型的文件接口统一起来

内核的目录:(如果进行内核移植,需要经常改)

  1. arch目录:内核所支持的每一种CPU体系,在该目录下都有对应的子目录
  2. block目录:部分块设备驱动程序
  3. crypto目录:加密、压缩、CRC检查算法
  4. documentation目录:内核的相关文档,可供信息查询
  5. drivers目录:设备的驱动程序(这个经常要改)
  6. fs目录:文件系统
  7. include目录:内核所需的头文件
  8. lib目录:库文件目录
  9. mm目录:用于实现内存管理与体系结构无关的代码
  10. net目录:网络协议相关代码
  11. usr目录:cpio命令实现

你可能感兴趣的:(linux)