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 小时前
无需硬件开发板,从零构建并运行ARM aemfvp-a-rme软件栈
arm开发·arm
HMS工业网络19 小时前
主从结合,安全互联:Anybus工业通信解决方案全栈升级
arm开发
XINVRY-FPGA19 小时前
XC7Z010-2CLG400I Xilinx Zynq-7000 FPGA
arm开发·嵌入式硬件·算法·fpga开发·硬件工程·dsp开发·fpga
Emtronix英创1 天前
RK3568 CAN驱动测试及使用说明
linux·arm开发·rk3568·全国产主板
时空自由民.3 天前
Arm Coretex-M核MCU做IAP/OTA升级时候为什么要做中断向量表地址偏移?
arm开发·单片机·嵌入式硬件
黑猫学长呀3 天前
存储宝典第1篇:Nand SCA是什么
arm开发·arm·nand·存储芯片·nandflash·onfi
Freak嵌入式3 天前
WIZnet-EVB-Pico2开始,用MicroPython玩转以太网开发
arm开发·人工智能·python·嵌入式硬件·机器人·嵌入式·micropython
振南的单片机世界4 天前
推挽输出:上管推、下管拉,驱动强但不“合群”
arm开发·stm32·单片机·嵌入式硬件
沃普天科技5 天前
USB显示器多屏异显多屏拼接IF8032 IT690 VL171 8801 RTD2556
arm开发·驱动开发·算法·计算机外设·音视频·硬件工程·pcb工艺
凉、介5 天前
ARM GICv3 学习笔记(一)
arm开发·笔记·学习·嵌入式