1. ARM开始

这是一张操作系统分层架构示意图,清晰展示了从用户空间到内核空间再到硬件的层次结构与功能模块,可从以下维度解读:

1. 层次划分与核心组件

层次 组件与功能
User space(用户空间) - 应用程序(App1、App2等):运行用户业务逻辑的程序。 - C library:封装系统调用,为应用提供统一的接口(如标准C库)。
Kernel space(内核空间) - 系统调用接口(System call interface) :用户空间与内核交互的桥梁,应用通过它请求内核服务。 - 核心功能模块 : - 进程管理:负责进程的创建、调度、销毁等。 - 内存管理:管理系统内存的分配、回收、虚拟内存等。 - 文件系统支持及类型:提供文件系统抽象,支持ext4、FAT32等不同文件系统类型。 - 设备控制:管理硬件设备,包含存储驱动、字符设备驱动(键盘、鼠标等)、网络设备驱动(网卡等)。 - 网络:处理网络协议栈、数据传输等。 - 硬件支持模块:CPU支持代码、CPU/MMU支持代码,适配不同硬件架构,提供底层硬件支持。
Hardware(硬件层) 包含CPU、RAM(内存)、存储设备(硬盘等)、字符设备(键盘、显示器等)、网络设备(网卡等)等物理硬件。

2. 架构意义与设计思想

  • 分层与隔离:通过用户空间、内核空间、硬件层的分层,实现"硬件抽象"和"权限隔离"------用户程序无法直接操作硬件,需通过内核的系统调用间接访问,保障系统稳定性。
  • 模块化设计:内核按功能拆分为进程管理、内存管理、文件系统、设备控制等模块,各模块职责明确,便于维护和扩展(如新增文件系统类型、支持新硬件驱动)。
  • 典型应用:这是Linux、Unix等现代操作系统的经典架构模型,解释了应用程序如何通过C库和系统调用,借助内核的各功能模块与硬件交互,是理解操作系统工作原理的核心参考框架。
  • 多级存储结构与地址空间
  • CPU工作原理概述
相关推荐
森焱森10 小时前
GD32F4 DSP
linux·c语言·arm开发·驱动开发·嵌入式硬件
shandianchengzi14 小时前
【记录】ARM|Ubuntu 24 快速安装 arm-none-eabi-gdb 及 QEMU 调试实战
linux·arm开发·ubuntu·arm·qemu
切糕师学AI1 天前
ARM 架构中的 PRIMASK、FAULTMAST、BASEPRI 寄存器
arm开发·架构·嵌入式·寄存器
tang_shou1 天前
STM32CubeMx使用STM32F4系列芯片实现串口DMA接收
c语言·arm开发·stm32·单片机·嵌入式硬件·mcu·stm32cubemx
切糕师学AI1 天前
ARM 架构中的数据同步屏障(DSB)是什么?
arm开发·架构·数据同步·屏障
Ivy_belief2 天前
Linux:设置和获取单片机gpio引脚和key值
linux·arm开发·qt·gpio·event事件
徐某人..2 天前
网络编程学习--第一天
arm开发·单片机·学习·arm
嘻哈baby2 天前
WireGuard为何取代IPSec成为Linux内核首选:协议架构与性能实测
linux·arm开发·架构
物随心转2 天前
给arm的cpu设置为user模式
arm开发
切糕师学AI2 天前
ARM架构程序状态寄存器(PSR)详解:从基础概念到现代实现
arm开发·架构·嵌入式·程序状态寄存器·psr