当前位置:网站首页>管道、管程、管态的区别
管道、管程、管态的区别
2022-07-28 09:58:00 【interval_package】
管道、管程、管态的区别
总结对比
| 用途 | 性质 | |
|---|---|---|
| 管程 | 用于进程同步 | 一个数据结构,用于我们方便管理一系列的信号量,同时封装信号量操作 |
| 管道pipe | 用于进程通讯 | pipe的通讯时基于文件系统的,那么pipe就是一个实际上的文件,我们通过这个文件的IO来间接的实现进程之间的通讯 |
| 管态 | 控制进程的权限 | PCB之中的一个标识,用于确认目前进程的权限状态 |
借鉴一下别人的文章:
管程
(进程同步)将共享变量以及对于共享变量所能进行的所有操作集中在一个模块中,一个操作系统或并发程序与由若干个这样的模块所构成,由于一个模块通常较短,模块之间联系清晰,提高了可读性,便于维护和修改,正确性易于保证。
管道
(进程通信 还有socket、信箱、信号量、共享内存、消息队列等方式)
所谓管道,就是连接在两个进程之间的一个打开的共享文件,专用于进程之间进行数据通信。发送进程可以源源不断地从管道一端写入数据流,每次写入的长度是可变的;接收进程在需要时可以从管道的另一端读出数据,读出单位长度也是可变的。显然,管道通信的基础是文件系统。
管态
管态(系统态) V.S 目态(用户态)
CPU交替执行操作系统程序和用户程序。
CPU的状态属于程序状态字PSW的一位。大多数计算机系统将CPU执行状态分为管态和目态。
管态又叫特权态,系统态或核心态。CPU在管态下可以执行指令系统的全集。通常,操作系统在管态下运行。
目态又叫常态或用户态。机器处于目态时,程序只能执行非特权指令。用户程序只能在目态下运行,如果用户程序在目态下执行特权指令,硬件将发生中断,由操作系统获得控制,特权指令执行被禁止,这样可以防止用户程序有意或无意的破坏系统。
从目态转换为管态的唯一途径是中断。
从管态到目态可以通过修改程序状态字来实现,这将伴随这由操作系统程序到用户程序的转换。
边栏推荐
- 记录一次idea中的父子项目修改project与module名称,亲测!
- Fixedwindowrollingpolicy introduction
- 语音聊天app——如何规范开发流程?
- SQL server, MySQL master-slave construction, EF core read-write separation code implementation
- What kind of knowledge payment system functions are more conducive to the development of the platform and lecturers?
- web之圣杯和双飞翼布局、float、clear、both
- 医药行业数字化建设,箭在弦上
- 【JS高级】js之函数、重载、匿名函数、作用域及作用域链_03
- 【JZOF】15二进制中1的位数
- arthas使用教程
猜你喜欢

On July 13, 2021, we collapsed like this

PHP生成二维码(学习)

深度学习必懂的 13 种概率分布

LSA and optimization of OSPF

Flink - checkpoint Failure reason: Not all required tasks are currently running

Read Plato farm's eplato and the reason for its high premium

Illustrate three mainstream enterprise architecture models (recommended collection!)

为什么要考一级建造师,一建证书含金量有多高?

The blind box of super primitive series will be launched soon, and platofarm will enable more rights and interests
![[esp32][esp idf] esp32s3 quickly build lvglv7.9](/img/39/8efef047d0a9223b97819a54b5edf8.png)
[esp32][esp idf] esp32s3 quickly build lvglv7.9
随机推荐
SQL Server、MySQL主从搭建,EF Core读写分离代码实现
centos7下安装mysql,网上文章都不太准
Elk real time log analysis platform
Performance test of API gateway APIs IX in Google cloud T2a and T2D
Function introduction and description of @jsontype annotation in fastjson
Boss: there are too many systems in the company. Can we realize account interworking?
第四步-用户开发环境设置
关于软考高级要不要报班学习
每天在岗不足8小时被辞?腾讯前员工追讨1300万加班费等,法院终审获赔9万
ES(8.1)认证题目
Choosing a supplier service system is the first step for large health industry enterprises to move towards digital transformation
选择供应商服务系统,是大健康产业企业迈向数字化转型的第一步
头文件库文件
软件设计师考前20问,注意啦!!
It's settled! On July 30!
2021-10-13arx
Which strings will be resolved to null by fastjason?
Consul
Consul
Qt | 信号和槽的一些总结