操作系统设计思想--主奴思想

掌握 Cinder 的设计思想 - 每天5分钟玩转 OpenStack(46) 上一节介绍了 Cinder 的架构,这节讨论 Cinder 个组件如何协同工作及其设计思想。 阅读详情

操作系统设计思想–主奴思想

对于操作系统而言,如何稳定可靠运行无疑是最重要的。目前的方案均为将用户进程和其他用户进程、将用户进程和操作系统进行分离。实现操作系统可以管理用户进程,但用户进程不能侵入内核,同时用户进程之间也不能互相干预。那么,在同一个cpu同一个指令集以及内存条等的情况下,如何实现该机制?

这就是操作系统设计的一个思想,主奴思想,即特权思想。

我们希望能够实现,操作系统可以访问以及管理应用程序,但应用程序之间不能够互相干预,同时应用程序的权限是有限的,即不可以干扰操作系统。

因此,操作系统需要管理应用程序,令其可访问的内存空间是有界的,同时操作系统负责管理用户进程的CPU访问时间,并且全权管理硬件,应用程序需要使用外设等必须向操作系统请示。

主奴机制的三方面体现
  • 进程调度方面。由操作系统全权管理CPU的调度,Linux操作系统每次分配给进程的运行时间由若干时间片组成,分配多少直接由操作系统决定,同时时间片一旦用完将强制交还给内核。因此,操作系统完全支配CPU调度,这保证了应用程序占用CPU资源的情况最多也只影响分配给该程序的时间片范围,避免了如果由进程自己管理则会出现恶意进程占据CPU不归还的现象,将导致系统崩溃。

  • 内存管理方面。操作系统将管理内存分配,在进程的task_struct结构中明确定义了进程的边界,未经允许的跨界行为将被制止。因此清晰的边界保证了进程不能直接越界访问操作系统内核,也不能随意直接访问其他进程的空间。

    在Linux设计中,将空间氛围了内核专用区和进程分页区,内核可以访问两个区域,但进程不可以访问内核专用区。同时,通过段页机制,用户进程只能访问虚拟地址而不能直接使用物理地址。因为一旦内核地址泄露便很可能会被利用而攻击,一旦恶意程序获得了内核的管理权则直接完全控制了整个机器。

  • 文件系统方面。操作系统管理着磁盘调度,用户需要读写文件都需要向操作系统申请,同时该过程受操作系统调度。

实
【Boost】Asio 基本使用与核心设计思想 Asio 基本使用与核心设计思想 阅读详情

相关推荐

深入解析 ReDoc:从零构建高性能 API 文档的终极指南

ReDoc 是一个强大的开源工具,用于将 OpenAPI 规范转换为高质量、响应式的 API 文档。本文详细介绍了如何使用 ReDoc 构建和自定义 API 文档,包括如何编写支持 OpenAPI 的 API 注解、配置 HTML 页面以加载文档,以及如何利用 ReDoc 的高级功能进行定制。通过实例代码,您将学会如何灵活地展示 API 文档,提升用户体验。无论是初学者还是经验丰富的开发者,都能从本文中获得实用的技巧与方案,帮助快速搭建符合需求的 API 文档界面。

楠搏万的博客 4627

Chkdsk误删文件?5步教你从FOUND.000文件夹找回重要数据(附工具推荐)

本文详细介绍了当Chkdsk误删文件后,如何从FOUND.000文件夹中找回重要数据的5个步骤。包括理解Chkdsk与FOUND.000的关系、定位与访问FOUND.000文件夹、手动恢复CHK文件的技巧、使用UnCHK工具自动化恢复以及预防数据丢失的关键措施。适用于Windows用户解决数据丢失问题,特别是NTFS文件系统下的文件恢复。

weixin_30687051的博客 391

华为昇腾NPU环境搭建:torch-npu安装避坑指南(附常见错误解决方案)

本文详细解析了在华为昇腾NPU环境中安装torch-npu适配包的全流程与核心要点。从基础环境准备、严格的版本匹配策略,到针对‘RuntimeError: NPU error’、‘ImportError: libxxx.so’等高频错误的深度解析与解决方案,提供了一份实用的避坑指南,旨在帮助开发者高效搭建稳定的PyTorch开发环境。

weixin_29094979的博客 411

25个Prompt去除AI味,让AI写作更像真人

自然语言生成技术飞速发展,如今AI写作已经深度融入内容创作、营销运营和日常办公。但许多用户发现,AI生成的文本常常带着一股“AI味”——句子过于工整、过度总结、细节空洞,导致内容被一眼识破,甚至面临“AI率”过高的尴尬。其实,这种塑料感源于大模型的训练数据与对齐机制,它偏好生成结构完整、逻辑平滑的“安全文本”。要解决这一问题,核心不在于更换工具或复杂调参,而在于掌握提示词工程的底层逻辑:通过限制结构、注入细节、切换视角、打乱顺序等具体指令,引导模型生成更接近人类表达习惯的文本。本文基于实战经验,提供25个可

weixin_26824299的博客 259

电源芯片MPQ3431A

MPQ3431A是一款具有宽输入范围的固定频率为450kHz的高度集成的升压转换器,其输入电压低至2.7V,采用恒定关断时间(COT)的控制拓扑,可提供快速的瞬态响应。芯片支持通过MODE管脚配置PSM(pulse-skip mode)、FCCM(forced continuous conduction mode)和USM(ultrasonic mode);还支持通过电流限制配置来达到精确的过流保护;同时芯片欠压保护(UVLO)和过温保护(OTP)。MPQ3431A采用QFN-13(3mmx4mm)封装。保

qflook的博客 1560

CKA-CN考试之路----2

部分知道就可以了,考试不用输入,后面不再复述.这里我们需要将两端内容凭借成1个yaml。执行题目中给的的命令进行测试。

Q先生 242

运行 ui5 serve 命令行报错的处理方法

如果大家运行 ui5 serve 命令行,报如下的错误消息: ui5 不是内部或外部命令,也不是可运行的程序: 只需要执行命令行,全局安装 ui5 cli(command line interface)这个命令行工具即可: npm install --global @ui5/cli 这个 ui5 cli 的入口执行文件,实际安装在了我 Node.js 的安装目录下: 更多Jerry的原创文章,尽在:“汪子熙”: ...

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1341

【SigmaStudio】自定义算法组件之XML编写规范(一)

SigmaStudio生成自定义算法组件时,需要XML和DLB文件,本文主要记录XML文件的编码规范

liang_song的博客 1140

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

上一篇: Linux内核学习--内存寻址
下一篇: Linux进程间通信机制详谈
coding丁
博客等级 码龄9年 383粉丝 147原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值