当前位置: 首页 > web >正文

操作系统-lecture2(操作系统结构)

回顾下lecture1

swap区域不可以马上执行,即虚拟内存的数据和指令不可以被执行,得交换回到内存区域

操作系统的服务

在这里插入图片描述
主要提供两种服务

  • 面向普通用户:user interface
  • 面向程序员:应用级程序代码

为用户

在这里插入图片描述
为用户提供了操作包括但不限于

  • 命令行shell操作
  • 图形化界面
  • 各种各样的app

为程序员

在这里插入图片描述

标准C程序的执行过程

在这里插入图片描述
其中printf函数会再系统级别调用write 会进入内核态,调用结束把数值传递到用户态

双重模式

在这里插入图片描述

运行模式的切换(trap 陷阱)

在这里插入图片描述
系统调用在 内核态
用户应用程序在 用户态
调用printf函数的执行过程用上图来表示,中间用户需等待,这个可以用trap来形容
在这里插入图片描述

系统调用的实现机制

在这里插入图片描述

操作系统的构建方式

在这里插入图片描述
但这引发了一个问题:由于多路设计相当复杂,很耗费人力

在这里插入图片描述
因此怎样更好地设计操作系统变得尤为重要
在这里插入图片描述

GNU/Linux

在这里插入图片描述

历史

在这里插入图片描述

各类发行版操作系统

在这里插入图片描述
参考

B站操作系统

http://www.xdnf.cn/news/16681.html

相关文章:

  • 微服务 01
  • Objective-c 初阶——异常处理(try-catch)
  • Typecho handsome新增评论区QQ,抖音,b站等表情包
  • 用FunASR轻松实现音频转SRT字幕:完整脚本与解析
  • iOS仿写 —— 计算器
  • Python 程序设计讲义(28):字符串的用法——格式化字符串
  • [leetcode] 组合总和
  • 冒泡排序算法
  • Java中什么是类加载?类加载的过程?
  • bash变量名不能有连字符
  • 【Redis实现基础的分布式锁及Lua脚本说明】
  • 爬虫逆向之瑞数五案例:某某医学院(补环境,联调)
  • Makefile 快速入门指南
  • 嵌入式第十四课!!!指针在字符数组的应用与数组指针
  • JavaWeb 入门:CSS 基础与实战详解(Java 开发者视角)
  • DataParallel (DP) DistributedDataParallel (DDP)
  • JavaWeb学习打卡18(JDBC案例详解)
  • [leetcode] 电话号码的排列组合
  • CSRF漏洞原理
  • CentOS7 安装和配置教程
  • USRP X410 X440 5G及未来通信技术的非地面网络(NTN)
  • Matplotlib(三)- 图表辅助元素
  • 经典算法题解析:从思路到实现,掌握核心编程思维
  • 天学网面试总结 —— 前端开发岗
  • Go 语言-->指针
  • 【2025/07/28】GitHub 今日热门项目
  • 【服务器知识】nginx配置ipv6支持
  • 大模型的开发应用(十九):AIGC基础
  • 【Spring WebFlux】 三、响应式流规范与实战
  • Java 笔记 serialVersionUID