操作系统原理(概述)

article/2025/10/14 22:01:56

1.操作系统的工作:

(1)程序的执行:负责启动每个程序,以及结束程序的工作。

(2)完成与硬件有关的工作:实现代码中包含存储器的物理地址、对设备接口寄存器和设备接口缓冲区的读写等等。

(3)完成与应用无关的工作:该工作是指任何一个程序都需要的,最基本的工作。与具体应用没有直接关系,与应用需要实现的目标没有直接关系。

(4)计算机系统的效率和安全问题:(个人感觉:对硬件资源的合理分配会提高效率和硬件调用安全)

2.操作系统的定义:

操作系统是计算机系统中直接控制和管理(手段)各种软硬件资源(对象)合理地对各类作业进行调度以及方便用户(目标)程序的集合(实体)

3.操作系统的作用:

用户角度:OS是系统硬件和软件的接口

{

用户接口:菜单式、命令脚本式、GUI(图形用户界面)

程序接口:系统调用、应用编程中资源调用。

}

资源管理角度:OS是计算机系统资源的管理者

{

管理对象:【处理器、存储器、I/O设备、信息(数据和程序)】

管理的内容:资源的当前状态(数量和使用情况)、资源分配、回收和访问操作、相应管理策略(用户权限的设置)

}

功能角度:OS是扩展机(隐藏硬件细节,向用户提供虚拟机,方便使用)

{

在裸机上添加:处理机管理、存储器管理、设备管理、文件管理功能。

}

4.操作系统的功能:

{

处理机管理

存储器管理

设备管理

文件管理功能

}

5.操作系统的特征:

【并发、共享、虚拟、异步性】

1)程序执行的并发性:

并发:多个事件在同一时间段内发生。

并行:多个事件在同一时刻发生

操作系统要完成这些并发过程的管理。程序并发执行可以大大提高资源利用率。在一段时间内多个程序同时推进完毕。

2)资源的共享性:

共享指系统的资源可供内存中多个并发执行的进程共同使用。

资源有两种不同属性:

【1】

在一段时间内只允许一个进程访问该资源。

即:资源分配后到释放前,不能被其他进程所用。

此资源称为临界资源

例子:音频设备、打印机等。

共享方式:互斥共享方式

【2】

允许一段时间内由多个进程同时对他进行访问。

例子:可重入代码、磁盘文件等

共享方式:同时访问方式

3)对象的虚拟性

通过某种技术将一个物理实体映射为若干个逻辑上的对应物——通过分时的方式实现。

分时技术:把处理机的运行时间分为很短的时间片,按时间片轮流把处理机分给各联机作业使用。

虚拟是操作系统管理系统资源的重要手段。

(虚拟性个人理解:多台计算机共享服务器的资源时,通过分时性使得计算机用户认为服务器在为他一人服务。)

4)程序执行的异步性(不确定性)

指进程的执行顺序和执行时间的不确定性。

{

进程运行速度不可预知:当多个进程并发执行时,不能知道各进程的进度。

执行顺序不确定

最终结果一致:所有程序执行完毕。(通过进程互斥和同步手段来保证)

}

 


http://chatgpt.dhexx.cn/article/KVwP3Q12.shtml

相关文章

Unity UGUi之Panel

Unity UGUI之Panel制作滑块 新建一个Panel和一个Image,image放在Panel下做子物体。 给Panel添加 Scroll Rect 和 Mask 组件, Mask组件是用来隐藏image超出Panel的区域。 然后将image拖拽到Scroll Rect组件下的Content属性上。 Horizontal是水平滑动,…

winform 设置panel边框

var panel1 new Panel(); var old panel1.Margin; panel1.Margin new Padding(old.Left, -50, old.Right, old.Bottom);

EasyUI中Panel面板的简单使用

场景 效果 属性 名称类型描述默认值idstring面板(panel)的 id 属性。nulltitlestring显示在面板(panel)头部的标题文字。nulliconClsstring在面板(panel)里显示一个 16x16 图标的 CSS class。nullwidthnu…

[C# WinForm设计]Panel布局及TabControl增加关闭按钮和Treeview导航 源码

前段时间因工作需要做一个类似进销存的系统,这里要用到基于C/S架构的WinForm界面,为了给我一样的菜鸟多一个参考,现将过程及关键界面的实现代码贴在后面,供参考!老鸟飘过~~ 一、实现效果 演示 namespace TabTest {part…

C#Winform中如何将窗体显示在panel中

在窗体中我们有时候做美观就需要将一个窗体显示在panel或SplitContainer里的panel中如何实现呢? 代码: public void Showform(Form form) //定义方法 { //清除panel里面的其他窗体 this.splitContainer1.Panel2:要显示的panel this.splitCont…

从零开始学习CANoe(四)—— 设计panel

相关文章 从零开始学习CANoe(一)—— 新建工程从零开始学习CANoe(二)—— CANdb 创建 dbc文件从零开始学习CANoe(三)—— 系统变量的创建和使用从零开始学习CANoe(四)—— 设计pane…

winform无边框在panel上拖动窗口位置,改变窗口大小

将窗体的FormBorderStyles属性设置为None 窗体上放一个新的panel,设置Dock属性为Fill 创建变量 private bool isMouseDown false;//表示鼠标当前是否处于按下状态,初始值为否 MouseDirection direction MouseDirection.None;//表示拖动的方向&#x…

C# Winform Panel 内控件大小不随Panel大小改变设置

(1)将Anchor属性设置为:None (2)将AutoSize属性设置为:False 不过还存在一个问题点,就是Button的位置还是会随着Panel大小变化而改变。

Panel控件

今天小编来给大家介绍一下panel控件; 首先来看一下panel控件是什么? 是什么: Panel 控件提供了一种用于组织控件的分组机制。Panel 控件可被递归嵌套在 Form 控件(Panel 控件最外面的容器)中。面板呈现它本身包含的控件。 面板上…

UI的Panel面板

1.Panel panel控件又叫面板,该面板实际就是一个容器,在其上可放置其他UI控件 当移动该面板时,放在其中的UI控件会随着移动,这样更加合理与方便地移动与处理一组控件 当面板被创建时,会默认包含一个Image(Script) Sour…

Unity Panel 控件

Panel 容器组件又叫面板组件,实际上就是一个容器,在其中可以放置其他的UI元素。 注意,在Unity中,子物体的位置是相对于父物体的,而非绝对位置 在Panel的参数区中,除了空间位置这个常用参数外,我…

Linux系统之部署Linux管理面板1Panel

Linux系统之部署Linux管理面板1Panel 一、1Panel介绍1.1Panel简介2.1Panel特点 二、本地环境规划1.本此实践目的2.本地环境规划 三、检查本地环境1.检查操作系统版本2.检查系统内核版本 四、部署1Panel1.创建安装目录2.一键部署1Panel3.检查1Panel服务运行状态4.检查1Panel监听…

javasocket编程(javasocket通信)

Java网络编程-JavaSocket编程是什么呢? Socket传输模式 Sockets有两种主要的操作方式:面向连接的和无连接的。面向连接的sockets操作就像一部电话,他们必须建立一个连接和一人呼叫。所有的事情在到达时的顺序与它们出发时的顺序时…

(Android)JavaSocket编程,文件上传到服务器,客户端Android,服务器端J2SE

SD卡中有encrypt.png文件 在E盘可以看到,从模拟器SD卡中发送来的文件 服务器端代码,我这里是使用CMD命令演示的。服务端等待客户端连接,然后接收客户端的数据。包括文件名,大小,和文件数据。 import java.io.Buffered…

Java Socket实现文件传输

阿里云双11服务器优惠(年度最佳优惠): A:1核2GB 1M 服务器年69元 B:1核2GB 1M 服务器三年180元 C:2核4GB 1~10M 服务器三年567元(强烈推荐) D:4核8GB 1~10M 服务器三年10…

Java Tcp(Socket、ServerSocket)

TCP所提供服务的主要特点: 面向连接的传输;端到端的通信;高可靠性,确保传输数据的正确性,不出现丢失或乱序;全双工方式传输;采用字节流方式,即以字节为单位传输字节序列&#xff1b…

【Socket】Java Socket通信(一)

前段时间在网上学习了Java Socket的应用编程。 端口 用于区分不同应用程序端口号范围065535,其中01023为系统所保留IP地址和端口号组成了所谓的Socket,Socket是网络上运行的程序之间双向通信链路的终结点,是TCP和UDP的基础http:…

java socket编程总结

java socket编程总结 说明一、TCP/IP协议模型二、获取IP相关信息InetAddressInetSocketAddressURL 三、TCP编程四、UDP编程五、关于TCP与UDP 说明 更新时间:2020/12/01 17:17,更新完基本内容 java的socket编程做一个总结,主要是面向Tcp和Ud…

Java Socket网络编程,你要的实验,我都有

JAVA Socket编程 目录 JAVA Socket编程多人聊天室客户端源代码服务器端源代码运行展示 邮件发送客户端运行展示 在线云笔记客户端窗口服务器端代码运行展示 多人聊天室 客户端源代码 import java.awt.BorderLayout; import java.awt.HeadlessException; import java.awt.event…

【Java高级】初探socket编程 ——JavaSocket连接与简单通信

新学期生活开始一段时间了,要继续学习一些新的技术(这里指socket /doge),目标是尝试完成一个在线即时聊天的小程序(尽量不咕)。会更新一系列socket编程的技术文章,欢迎关注交流~ 那么千里之行&…