操作系统概述

编程语言

机器语言

机器语言 ===> CPU运行

“0” 和“1”组成的二进制数

汇编语言

汇编语言 ======> 一般可由硬件转换为机器语言 ===> CPU运行

一种低级语言,亦称为符号语言。
用一些容易理解和记忆的字母、单词来代替一个“0” 和“1”组成的特定指令

注意点:

  1. CPU不同的指令架构有自己的机器语言指令集(电脑的x86 、x64,手机平板的ARM )
  2. 特定的汇编语言只能对应特定的机器语言指令集
  3. 所以不同的指令架构有着不同的汇编语言,汇编语言不能在不同的指令架构间移植
  4. 所以我们需要将高级语言根据不同指令架构编译成不同的汇编语言

高级语言

java、C等高级语言 =====> 编译器编译或解释成汇编语言 ======> 硬件转换为机器语言 ===> CPU运行

解释是把源程序翻译一句,执行一句的过程,而编译是源程序翻译成机器指令形式的目标程序的过程,再用链接程序把目标程序链接成可执行程序后才能执行


操作系统

作用和概念

在这里插入图片描述

计算机结构

在这里插入图片描述

操作系统怎样让用户使用的

在这里插入图片描述

操作系统运行机制

指令

在这里插入图片描述

在这里插入图片描述

用户态 核心态

进程、线程切换都需要用户态转换为核心态!
在这里插入图片描述

在这里插入图片描述

内核

内核中的模块均运行在核心态!!!

在这里插入图片描述
在这里插入图片描述

各自优缺点(注意:内核模块运行在内核态)

在这里插入图片描述

总结

在这里插入图片描述

中断机制

在这里插入图片描述

用户态与核心态是怎样切换的???

如进程、线程切换都是由中断机制产生的!!!(由操作系统内核在核心态下切换的)
在这里插入图片描述

中断分类

内中断(软中断),外中断(硬中断):
在这里插入图片描述

在这里插入图片描述

外中断处理过程

并根据中断信号,将对应的进程从阻塞队列中调入到就绪队列中
在这里插入图片描述

系统调用

系统调用: 就是用户(程序)对系统资源使用发起请求。

因为计算机资源是进程共享的,而操作系统就是对计算机资源协调管理的,用户进程不能直接使用计算机资源,由操作系统内核程序进行处理、协调这些请求。

所以:应用进程进行系统调用就会产生内中断,会将处理器从用户态变为核心态,再由操作系统内核块对调用请求进行协调执行。
在这里插入图片描述

在这里插入图片描述

我们使用的高级语言(C、java)是怎样使用系统调用的?

进程进行系统调用就会产生内中断, 由操作系统内核块对调用请求进行协调执行。
在这里插入图片描述

讲一下程序到运行的过程?(字节一面)

高级语言 ===> 编译成(汇编)指令文件保存到磁盘 ===> 当双击运行指令文件 ===> 系统会将指令加载程序到内存中 ===> CPU读取指令开始执行

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值