《计算机操作系统-第二章》之操作系统的运行机制与体系结构

简介: 《计算机操作系统-第二章》之操作系统的运行机制与体系结构

1.什么是指令?

我们平时所写的代码基本上都是用高级语言所书写的,但是计算机是无法直接识别的就需要编译器将我们所写的代码翻译成计算机能够直接识别的机器语言,而机器语言是用二进制代码表示的计算机直接识别和执行的一种机器指令的集合,综上指令即为二进制。

1.1指令的分类?

1.1.1非特权指令

所谓非特权指令就是权限比较小的命令,比如命令计算机进行加,减,乘,除这些普通的运算指令。

1.1.2特权指令

所谓的特权指令可以看做权限较高的命令,比如内存清零指令,如果用户程序使用了这个指令,就意味着一个用户程序有能力将其它的用户程序随意清零,这样明显是危险,毕竟在计算机中数据就是金钱。所以这类指令只用于操作系统或者3其它系统软件,一般不直接提供给用户使用。

上述可以特权指令是有点危险的,那么CPU如何判断当前是否可以执行特权指令?

CPU在运行的时有两种状态,一种是用户态(目态)此时CPU只能执行非特权指令,另一种是和核心态(管态)此时特权指令和非特权指令都可以执行。

CPU如何判断该处于什么状态?

使用CPU中程序状态字寄存器(PSW)中的某标志位来标识当前处理器处于什么状态,如0为用户态,1位核心态。用户自编程序运行在用户态,操作系统内核程序运行在核心态。

2.程序的分类

根据不同程序所能使用指令的不同将程序划分为以下两种

  1. 1.内核程序
  2. 2.应用程序

2.1什么是内核程序?

即实现操作系统内核功能的程序,内核程序是系统的管理者,既可以执行特权指令,也可以执行非特权指令,运行在核心态。

2.2什么是应用程序?

比如自己电脑上的微信qq等,都是应用程序,对于这些程序操作系统并不是很信任,所以只能执行非特权指令,运行在用户态。

操作系统的哪些功能由内核程序实现?

电脑有许许多多程序,但是不是每个程序都是至关重要的,像画图板等,哪怕就是直接干掉了它电脑照样运行,而一旦删除了某些系统文件就可能导致电脑出各种各样的问题,像我自己之前不知不觉中就删了某些系统文件,最后导致键盘上的回车以及几个字母按键使用不了,最后是重装系统才解决的。通过下图了解操作系统的内核部分。

内核是计算机上配置的最底层得软件,是操作系统最基本,最核心的部分。实现内核功能的那些程序就是内核程序。

由于不同的操作系统在划分最底层功能的时候可能不一样,因此就产生了不同的操作系统体系结构。

3.体系结构

3.1大内核

大内核就是如上图所示将大部分的功能都最为系统内核,,运行在核心态。该系统的优点为高性能,缺点为内核代码庞大,结构混乱,难以维护。

3.2微内核

微内核是保留最基本的功能在内核,具体看下图。该体系的优点为功能少,结构清晰,容易维护。缺点为需要频繁的在核心态和用户态之间切换,性能低。

最后的话

各位看官如果觉得文章写得不错,点赞评论关注走一波!谢谢啦!。如果你想变强那么点我点我 牛客网

相关文章
|
存储 Linux API
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
在计算机系统的底层架构中,操作系统肩负着资源管理与任务调度的重任。当我们启动各类应用程序时,其背后复杂的运作机制便悄然展开。程序,作为静态的指令集合,如何在系统中实现动态执行?本文带你一探究竟!
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
|
9月前
|
Android开发 Windows
这是我设想的免重启操作系统的状态下更新通用计算机、嵌入式操作系统的软件设计思路
本方案提出了一种名为slfm的软件系统,旨在实现通用计算机及嵌入式系统在不重启状态下完成操作系统更新。其核心机制是通过构建独立于原系统的运行环境(slfm Recovery与The Tube),在高权限模式下进行系统文件更新与切换,确保更新过程中设备持续运行,适用于普通设备与不可中断服务的关键系统(如医疗、服务器等)。同时具备失败回滚、数据同步、权限隔离等功能,提升系统更新的安全性与可用性。
|
监控 搜索推荐 开发工具
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2566 2
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
|
人工智能 并行计算 安全
用户实操:如何以龙蜥操作系统为底座在 CPU 上运行 DeepSeek-R1
介绍如何在 CPU 上使用 llama.cpp 推理 671B 版本的 DeepSeek R1,以及实际效果。
|
存储 安全 固态存储
计算机启动:从插上电源到操作系统启动的全过程
当我们插上电源,计算机从休眠状态苏醒,直至操作系统完全启动,这一系列复杂的过程涉及到硬件和软件的多个层面。本文将详细解析计算机插上电源后操作系统所做的工作,揭示这一过程的技术细节。
1073 6
|
消息中间件 安全 Linux
深入探索Linux操作系统的内核机制
本文旨在为读者提供一个关于Linux操作系统内核机制的全面解析。通过探讨Linux内核的设计哲学、核心组件、以及其如何高效地管理硬件资源和系统操作,本文揭示了Linux之所以成为众多开发者和组织首选操作系统的原因。不同于常规摘要,此处我们不涉及具体代码或技术细节,而是从宏观的角度审视Linux内核的架构和功能,为对Linux感兴趣的读者提供一个高层次的理解框架。
|
机器学习/深度学习 人工智能 物联网
操作系统的心脏——深入理解内核机制
在本文中,我们揭开操作系统内核的神秘面纱,探索其作为计算机系统核心的重要性。通过详细分析内核的基本功能、类型以及它如何管理硬件资源和软件进程,我们将了解内核是如何成为现代计算不可或缺的基础。此外,我们还会探讨内核设计的挑战和未来趋势,为读者提供一个全面的内核知识框架。
|
存储 消息中间件 算法
深入探索操作系统的心脏——内核机制解析
本文旨在揭示操作系统核心——内核的工作原理,通过剖析其关键组件与机制,为读者提供一个清晰的内核结构图景。不同于常规摘要的概述性内容,本文摘要将直接聚焦于内核的核心概念、主要功能以及其在系统管理中扮演的角色,旨在激发读者对操作系统深层次运作原理的兴趣与理解。
|
存储 资源调度 算法
操作系统的心脏:深入理解内核架构与机制####
【10月更文挑战第16天】 本文旨在揭开操作系统最神秘的面纱——内核,通过剖析其架构设计与关键机制,引领读者一窥究竟。在这篇探索之旅中,我们将深入浅出地讨论内核的基本构成、进程管理的智慧、内存分配的策略,以及那至关重要的系统调用接口,揭示它们是如何协同工作,支撑起现代计算机系统的高效运行。这既是一次技术的深潜,也是对“看不见的手”调控数字世界的深刻理解。 ####
409 3
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
575 12

热门文章

最新文章

推荐镜像

更多