首先,linux整体的架构如图:
再来看linux内核架构,
内核由五个主要子系统组成:
process scheduler :
进程调度(sched)负责控制对cpu的进程访问。调度程序执行相应的策略,使得多个进程能在cpu中“微观串行,宏观并行”地执行。进程调度处于系统的中心位置,内核中其他的子系统都依赖它,因为每个子系统都需要挂起或恢复进程。在用户空间,进程是由进程标示符(pid)表示的。在linux内核空间,每个进程都有一个独立的数据结构,用来保存该进程的id、优先级、地址的空间等信息,这个结构也被称做进程控制块(process control block)。所谓的进程管理就是对进程控制块的管理。
memory manager:
内存管理器(mm)允许多个进程安全地共享机器的内存系统。此外,内存管理器还支持虚拟内存,该虚拟内存允许linux支持使用的内存量超过系统可用内存的进程。为了解决物理内存有时被耗尽的问题,内存管理子系统规定页面可以移出内存并放入磁盘中,这个过程称为交换。内存管理的源代码可以在./linux/mm中找到。
virtual file system :
虚拟文件系统(vfs)通过为所有设备提供通用文件接口来抽象化各种硬件设备的详细信息。它独立于各个具体的文件系统,是对各种文件系统的一个抽象,它使用索引节点inode存放文件的物理信息,使用目录项dentry存放文件的逻辑信息。
network interface :
网络接口可分为网络协议和网络驱动程序,网络协议部分负责实现每一种可能的网络传输协议,网络设备驱动程序负责与硬件设备通信。写网络应用程序,使用socket通过tcp/ip协议与其他机器通信。网络数据从用户进程到达实际的网络设备需要四个层次:用户进程,套接字,网络协议,网络设备。
inter-process communication :
进程通信支持提供进程之间的通信,linux支持进程间的多种通信机制,包含信号量、共享内存、管道等。
为什么戴森的产品这么贵还有人买单
为什么说全新一代途锐并非是大众版Q7,而是大众版的卡宴呢?
RFID领域软件构件化开发技术你知道吗
流体组装技术将提升Micro LED外延片芯片利用率
RT-Thread移植使用webserver (lwip+httpd)
Linux内核架构--基本概念
雷声技术公司正在研究先进的射频混合模式电路设计
5G时代下,未来线下能否进一步智能化?
HTC One X详细拆解过程 超强四核处理器
浅析寄存器与触发器锁存器两者的关系
串口传输速率低于波特率的原因和解决方法
物联网开发为企业带来的五大贡献
如何看待LED屏扫描方式?
飞凌嵌入式亮相德国纽伦堡Embedded World 2023!
高压放大器在改良电形成制备GV的交流电场参数优化研究
基于AT89C51智能型稳压电源的设计
2017智能家居产业发展十大猜想
用于评估不同平台上的定位和建图精度的多传感器校园数据集
并联电阻器基础认识
智能家居以走进生活,5年内辐射一二线城市