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工作原理概述
相关推荐
斑马1399 小时前
ARM学习笔记(二)——ARM汇编基础
汇编·arm开发·arm
ARM&开发(Haidong)1 天前
ADRV9026 Linux驱动文档详解
arm开发
斑马1391 天前
ARM学习笔记(一)——基本概念
arm开发·arm
斑马1391 天前
ARM学习笔记(三)——i.MX6ULL—LED点灯
arm开发
Awh-1 天前
ARM 裸机开发 day02 学习笔记
linux·arm开发·arm
M78佐菲2 天前
ARM学习笔记(四)
linux·arm开发·笔记·嵌入式硬件·学习
昌原的儿子LEO2 天前
i.MX6ULL 裸机开发 C 语言驱动与 BSP 工程管理学习总结
linux·arm开发·学习
AAA代码批发商2 天前
Days 46 i.MX6ULL 裸机开发|从内核切入外设,汇编点亮 LED(补充)
arm开发·嵌入式·裸机开发
xx~t2 天前
嵌入式——ARM——汇编2
linux·汇编·arm开发·嵌入式硬件·启动代码
M78佐菲2 天前
ARM学习笔记(三)
linux·arm开发·笔记·嵌入式硬件·学习