计算机系统应用教程网站

网站首页 > 技术文章 正文

关于操作系统里的一些概念 关于操作系统的叙述

btikc 2024-10-29 13:18:24 技术文章 12 ℃ 0 评论

两种指令


特权指令:不允许用户程序使用(只允许操作系统使用)如 IO 指令、中断指令


非特权指令:普通的运算指令


两种程序


内核程序:系统的管理者,可执行一切指令、运行在核心态

应用程序:普通用户程序只能执行非特权指令,运行在用户态


处理机状态


用户态(目态): CPU 只能执行非特权指令


核心态(又称管态、内核态):可以执行所有指令


用户态到核心态:通过中断(是硬件完成的)


核心态到用户态:特权指令 psw 的标志位,0用户态,1核心态


原语


处在操作系统的最底层,是最接近硬件的部分


这些程序的运行具有原子性,其操作只能一气呵成(即原语程序不可被切割)


这些程序的运行时间都较短,而且调用频繁


中断和异常

1.内中断(异常,信号来自内部):

  • 自愿中断﹣﹣指令中断
  • 强迫中断:硬件中断、软件中断(例如:0除以0)


2.外中断(中断,信号来自外部):

  • 外设请求、人工干预(打印机等)


系统调用


系统给程序员(应用程序)提供的唯一接口,可获得 OS 的服务,在用户态发生,核心态处理


体系结构


大内核、微内核


信号量


信号量机制是一种有效实现进程同步和互斥的工具


信号量的物理意义

(1)信号量的值

  • 大于0:表示当前资源可用数量
  • 小于0:其绝对值表示等待使用该资源的进程个数

(2)信号量初值为非负的整数变量,代表资源数

(3)信号量值可变,但仅能由 P 、 V 操作来改变


P / V 操作原语


1. P 操作原语 P ( S )

(1) P 操作一次, S 值减1,即 S = S -1(消耗一个资源)(请求分配一资源)

(2)如果 S >=0,则该进程继续执行;如果 S <0表示无资源,则该进程的状态置为阻塞态,把相应的 PCB 连入该信号量队列的末尾,并放弃处理机,进行等待(直至另一个进程执行 V ( S )操作


2. V 操作原语(等待) V ( S )

(1) V 操作一次, S 值加1,即 S = S +1(释放一单位量资源)

(2)如果 S >0,表示有资源,则该进程继续执行;如果 S <=0,则释放信号量队列上的第一个 PCB 所对应的进程(阻塞态改为就绪态),执行 V 操作的进程继续执行


本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表