首页 > 其他分享 >操作系统运行机制

操作系统运行机制

时间:2023-08-05 10:31:27浏览次数:40  
标签:调用 操作系统 中断 程序 用户 指令 寄存器 运行机制

  • 操作系统通常分批处理环境、交互式环境、实时环境

系统调用传递参数方法

  1. 寄存器
  2. 堆栈
  3. 指令自带

用户进程在实现系统调用的时候,通过变量传递是不能用于传递参数的

 

系统调用:调用程序在用户态,被调程序在核心态

 

处理器中对用户可见的寄存器,通常是对用户程序可用的是:地址寄存器、数据寄存器、条件码寄存器

不可见的寄存器多是用户控制处理的操作:程序寄存器、指令寄存器、程序状态字寄存器

 

用户在编写程序时,若要在屏幕上画圆,需要系统调用

 

 

程序状态字(PSW)

用来指示处理器状态的寄存器

通过设置PSW指令可以改变的是管态(内核态)到目态(用户态)

访管指令是目态到管态

包含的标志位

  1. 进位标志位(CF)
  2. 结果为零标志位(ZF)
  3. 符号标志位(SF)
  4. 溢出标志位(OF)
  5. 陷阱标志位(TF)
  6. 中断使用(屏蔽)标志位(IF):当运行中的进程不希望被外部事件打扰时
  7. 虚拟终端标志位(VIF)
  8. 虚拟终端待决标志位(VIP)
  9. CPU工作状态码(S)
  10. 条件码(C)

没有有效位(A)这个玩意

没有保护位(P)这个玩意

 

程序计数器(PC)

用来指示要执行的下一条指令的寄存器

 

指令寄存器(IR)

包含取出的指令

 

数据寄存器

用于各种算术逻辑指令

 

地址寄存器

用于存储数据及指令的物理地址、线性地址或有效地址

 

条件码寄存器

保存CPU操作结果的各种标记

 

特权指令

用户程序中不能使用特权指令。

当用户程序正在处理器上运行,取到了一条特权指令,则产生一个”非法操作“的事件

 

操作系统提供了三个类型的接口供用户使用

命令接口

程序接口

图形界面接口

 

关闭中断响应指令

这个指令是属于特权指令,用户程序不能直接执行,必须要使CPU陷入核心态,由操作系统来执行该特权指令,因此程序必须先发起防管中断,让CPU由用户态向核心态转换的方法。

 

中断与异常

中断处理程序的入口地址一般在中断向量表里

 

中断是由外部事件引发的,而异常则是由正在执行的指令引发的

被零整除属于软件引起的 异常

目态程序试图执行特权指令 是 异常

进程打开文件时出错  是 异常

产生缺页故障 是异常

访问不允许访问的存储位置 是 异常

操作系统需要处理器从内核态状态转为用户态,采用修改程序状态字

 

(考了两次尼玛)可以在内核态下运行又可以在用户态下运行的指令是置移位方向标志

 

  • 中断请求是中断控制器向处理器发出的信号
  • 中断响应是指处理器暂停当前程序,转而进入中断处理程序
  • 中断断点是正在运行的程序的暂停点

 

中断系统是由硬件和软件互相配合实现的

 

微内核结构

提高操作系统的可靠性

较高的灵活性和可扩充性

融入面对对象技术

可移植性

适用于分布式系统

 

 

系统调用不能实现的功能是调用程序多次嵌套与递归

 

被调用程序返回调用程序的描述

过程调用直接返回到调用程序,系统调用在返回到调用程序前先运行调度程序

 

 

 

多道程序设计技术

缩短作业的平均周转时间

提高各种资源利用率

多种硬件资源可以并行工作

标签:调用,操作系统,中断,程序,用户,指令,寄存器,运行机制
From: https://blog.51cto.com/u_15763679/6973812

相关文章

  • 操作系统(Operating System)
    一.操作系统的定位操作系统就是搞计算机资源管理的软件统称1.对上就是要管理好各种硬件设备2.对下就是要给应用程序提供一个稳定的运行环境操作系统是软件,硬件和用户之间交换的媒介二.什么是进程(Process/任务(Task))下面的这些都是进程程序是一个可执行文件(静态的),如果双击运行......
  • 操作系统需要重点关注指标
    机器层面的监控分为两部分,带内监控和带外监控。带内监控就是通过带内网络来监控,主要是以在OS里部署Agent的方式,来获取OS的CPU、内存、磁盘、IO、网络、进程等相关监控指标。外监控走的是带外网络,通常和业务网络不互通,通过IPMI、SNMP等协议获取硬件健康状况。IPMI可用于监......
  • 漏洞发现-操作系统之漏洞探针利用修复
    一.探针1.goby忍者系统测试2.nmap扫描---如果加上参数,就会调用script目录下的nse插件进行扫描Nmap--script=vuln默认nse插件Nmapvulscanvulners调用第三方库探针加入拓展扫描模块https://cnblogs.com/shwang/p/12623669.html#输入指令nmap--script=vulnip地址,想......
  • 操作系统概述
    分散概念组成操作系统的主要部分通常是进程线程管理、内存管理、设备管理和文件管理从软件设计和开发角度来看,操作系统的主要作用提供软件开发基础平台从计算机系统发展角度来看,操作系统主要作用是提供虚拟机和扩展机操作系统为用户提供了高效使用计算机的接口,操作系统提供人机交互......
  • 学习记录 麒麟操作系统桌面工程师
    麒麟的证书 工信部的专项技术证书 学习感想我比较关注国产化软件基础设施,当知道麒麟操作系统有相应的认证之后,就开始咨询培训事宜、攒学费,自费报名了培训课程。认证考试的内容是系统的、基础的,适合作为新人上手学习的第一站。培训备考阶段有视频课程和模拟考试,对新人较......
  • 学习记录 麒麟操作系统运维工程师
    麒麟的证书 工信部的专项技术证书 学习感想自从考过麒麟操作系统桌面工程师的认证后,我就开始计划再上一个台阶,想着把麒麟操作系统运维工程师认证给考过了。于是乎,又开始新的一轮,咨询培训事宜,攒学费,自费报名培训。运维工程师的培训内容就有一些难度了,要懂一些操作系统、网......
  • 显示锁,隐式锁 (管程、monitor 、操作系统)
    无锁时并发出问题importjava.util.*;/***无锁*@authorwitas**/publicclassBank{publicstaticvoidmain(String[]args){finalintNACCOUNTS=100;finaldoubleINITIAL_BALANCE=1000;finaldouble......
  • kali渗透测试之三操作系统识别-nmap
    识别操作系统:    在确定目标主机在线后,应当识别他们使用的操作系统,这个阶段的工作称为识别操作系统(也称为操作系统指纹识别),识别操作系统的的方式分为两种:主动式和被动式。主动式识别工具向目标机器发送数据包,并根据目标的响应确定其使用的操作系统,这种方式的优点在于探测......
  • 操作系统概述
    2.1.1操作系统的概念操作系统 是一组控制盒管理计算机系统的硬件和软件资源、控制程序执行、改善人机界面、合理地组织计算机工作流程并未用户使用计算机提供良好运行环境的一种系统软件。 目的:提高计算机系统的效率,增强系统的处理能力,提高系统资源的利用率,方便用户使用计算机。2......
  • 什么是 GNU操作系统
    GNU操作系统是一种自由和开源的操作系统,由RichardStallman在1983年发起并由自由软件基金会(FreeSoftwareFoundation,FSF)领导开发。GNU是"GNU'sNotUnix"(GNU不是Unix)的递归缩写,这意味着GNU是一个类Unix操作系统的自由替代品。传统的Unix操作系统是由贝尔实验室开发的,并在许多计......