(一) linux内核基础

1.linux体系结构

  linux的学习过程中,我们首先从整体到局部的方法进行展开,linux的整体学习中,首先对linux需要有一个整体的概念,以达到更好的去把握linux.通常我们把linux体系结构分为用户空间(User Space)和内核空间(Kernel Space)(见下图)。

(一) linux内核基础_第1张图片

内核空间以包含系统调用接口、内核、平台依赖代码以及硬件平台。 用户空间主要以调用系统内核函数库以及用户的应用程序,用户空间通过系统调用接口实现系统调用。linux将底层和应用层进行分开,实现内核和应用分工合作,保证了内核的安全性。

2.linux内核结构

  linux内核主要分为如下:SCI 层(System Call Interface)
PM(Procees Management)MM(Memory Management)VFS(Virtual File Systems)


(一) linux内核基础_第2张图片

SCI 层(System Call Interface),这一层是给应用用户空间提供一套标准的系统调用函数来访问 Linux。在 Linux 中,内核提供了一套标准接口,上层应用就可以通过这一套标准接口来访问底层。
PM(Procees Management),这一部分包括具体创建创建进程(fork、exec),停止进程(kill、exit),并控制他们之间的通信(signal 等)。还包括进程调度,控制活动进程如何共享 CPU。这一部分是 Linux 已经做好的,在写驱动的时候,只需要调用对应的函数即可实现这些功能,例如创建进程、进程通信等等。
MM(Memory Management),内存管理的主要作用是控制多个进程安全的共享内存区域。
VFS(Virtual File Systems),虚拟文件系统,隐藏各种文件系统的具体细节,为文件操作提供统一的接口。在 Linux 中“一切皆文件”,这些文件就是通过 VFS 来实现的。Linux 提供了一个大的通用模型,使这个模型包含了所有文件系统功能的集合。

你可能感兴趣的:(linux字符驱动)