专题二:操作系统基本原理

news/2024/10/18 23:45:42

1. 操作系统概述

操作系统:

  • 管理系统的硬件、软件、数据资源

  • 控制程序运行

  • 人机之间的接口

  • 应用软件与硬件之间的接口

进程管理

存储管理

文件管理

作业管理

设备管理

2. 进程管理

2.1. 进程状态(三态模型、五态模型)

2.2. ★★★信号量与PV操作★★★

2.2.1. 前趋图

2.2.2. 进程的同步与互斥

互斥:如千军万马过独木桥

同步:速度有差异,在一定情况停下等待

2.2.3. PV操作

临界资源:诸进程间需要互斥方式对其进行共享的资源,如打印机、磁带机等

临界区:每个进程中访问临界资源的那段代码称为临界区

信号量:是一种特殊的变量

单缓冲区生产者、消费者问题PV原语描述:

生产者: 消费者:

生产一个产品: P(s2):

P(s1): 从缓冲区取产品:

送产品到缓冲区: V(s1):

v(s2): 消费产品:

S1初值为1,S2初值为0

2.3. ★★★进程死锁问题★★★

进程管理是操作系统的核心,但如果设计不当,就会出现死锁的问题。如果一个进程在等待一件不可能发生的事,则进程就死锁了。而如果一个或多个进程产生死锁,就会造成系统死锁。

例:系统有3个进程:A、B、C。这3个进程都需要5个系统资源。如果系统至少有多少个资源,则不可能发生死锁。

进程A

进程B

进程C

2.3.1. 临界值问题:最小资源总数=m*(n-1)+1,m为进程数,n为单个进程需要的资源数

2.3.2. 死锁的条件与避免

2.3.3. ★★★进程调度★★★

先来先服务

优先数调度

轮转法

短作业优先

3. 存储管理

3.1. 段式存储

3.2. 页式存储

页号

页内地址

31 16 15 0

3.3. ★★段页式存储★★

4. 文件管理

4.1. ★索引文件结构★

索引最大长度

磁盘块大小1KB,每个块号占3B,因此一个磁盘物理块可存放1024/3=341个块号

一级索引

341*磁盘块大小(B)/1024=341KB

二级索引

341341磁盘块大小(B)/1024=116281KB

4.2. ★树形目录结构★

绝对路径:是从盘符开始的路径。

相对路径:是从当前路径开始的路径

若当前目前为:D1,要求F2路径,则:绝对路径:/D1/W2/F2,相对路径:W2/F2

4.3. ★空闲存储空间的管理(位示图法)

位示图

5. 设备管理

5.1. I/O设备管理软件

用户进程

设备无关程序

设备驱动程序

中断处理程序

硬件

5.2. 缓冲技术(单缓冲区、多缓冲区)

单缓冲区

(每个盘读入缓冲区时间 +缓冲区送至用户区时间)* 磁盘块个数+ 每个磁盘块处理时间

双缓冲区

每个盘读入缓冲区时间 *磁盘块个数 +缓冲区送至用户区时间 +每个磁盘块处理时间

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/73273.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

乘风破浪,扬帆出海,专门为英语学习者设计的在线学习平台之English Pod

什么是English Podhttps://learnenglishpod.comEnglish Pod是一个专门为英语学习者设计的在线学习平台,提供各种各样的英语学习播客(pod cast)和教学资源。其目标是帮助不同水平的学习者通过日常对话和实用内容提高英语听力、口语、词汇和语法能力。EnglishPod的课程通常包括对…

C++内存模型实践探索

C++对象模型是个常见、且复杂的话题,本文基于Itanium C++ ABI通过程序实践介绍了几种 简单C++继承 场景下对象模型,尤其是存在虚函数的场景,并通过图的方式直观表达内存布局。前言 C++对象模型是个常见、且复杂的话题,本文基于Itanium C++ ABI通过程序实践介绍了几种 简单C…

课堂练习

Complex.h中的代码:#include <iostream> #pragma once class Complex { public:Complex(double x=0, double y=0);Complex(const Complex& p);~Complex();void add(const Complex& p);double get_real() const;double get_imag() const;friend Complex add(cons…

乘风破浪,乘风出海,学习英语之English Pod

什么是English Podhttps://learnenglishpod.comEnglish Pod是一个专门为英语学习者设计的在线学习平台,提供各种各样的英语学习播客(podcast)和教学资源。其目标是帮助不同水平的学习者通过日常对话和实用内容提高英语听力、口语、词汇和语法能力。EnglishPod的课程通常包括对…

20222306 2024-2025-1 《网络与系统攻防技术》实验二实验报告

1.实验内容 1.1 实践目标 (1)使用netcat获取主机操作Shell,cron启动某项任务(任务自定) PS:cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程 (2)使用socat获取主机操作Shell, 任务计划启动 (3)使用MSF meterpreter(或其他软件)生成可执行文件,利…

transformers 推理 Qwen2.5 等大模型技术细节详解(一)transformers 初始化和对象加载(文末免费送书)

本文详细讲解 transformers 推理大语言模型的初始化过程,包括 Python 包搜索、LazyModule 延迟模块、模块搜索和 Python 包 API 设计美学……上周收到一位网友的私信,希望老牛同学写一篇有关使用 transformers 框架推理大模型的技术细节的文章。 老牛同学刚开始以为这类的文章…

UI开发概述

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(MaoistLearning)➤博客园地址:为敢技术(https://www.cnblogs.com/strengthen/ )➤GitHub地址:https://github.com/strengthen➤原文地址:https://www.cnblogs…

MiGPT让你的小爱音响更聪明

大家好,我是晓凡。 今天要给大家带来一个超级有趣的开源项目MiGPT。 这个项目,简直就是给小爱音箱装上了超级大脑,让你的小爱音箱更聪明。 想象一下,当小爱音箱接入大模型后,上知天文,下知地理,从“人工智障”秒变学霸。 一、什么是MiGPTMiGPT是一个由idootop团队开发的…