操作系统的工作方式:
- 把操作系统从用户态切换到内核态(用户应用程序到内核流程)
- 实现操作系统的系统调用(操作系统服务层)
- 应用操作系统提供的底层函数,进行功能实现
- 退出后从内核态切换到用户
上图这三个文件实现了系统内核服务层的接口(Linux0.11版本)
- ams文件实现用户态切换到内核态。
- 0.11版本的Linux中sys文件中的函数都没具体实现,等待后续版本完善,如下图。
操作系统内核中各级模块的相互关联
1、Linux内核的整体模块:
- 进程调度模块,
- 内存管理模块:Linux系统中,用户根本看不到真实的物理内存,提供给用户看的都是Linux的虚拟内存。
- 文件系统模块:
- 进程间通信模块:
- 驱动管理模块:
2、每个模块之间的关系
- 内存管理个驱动管理模块,虚拟内存的缓存和回存机制
- VFS虚拟文件系统,把硬件当成文件来使用
操作系统的独立性分为:
- 管理层
- 实现层
主要的目的是为了易于升级与维护
Linux内核源码下载KrisJiaqiXie/linux_kernel_study (github.com)https://github.com/KrisJiaqiXie/linux_kernel_study