当前位置: 首页 > news >正文

计算机操作系统 左万利 第二章课后习题答案

计算机操作系统 左万利 第二章课后习题答案

1、为何引进多道程序设计,在多道程序设计中,内存中作业的道数是否越多越好?说明原因。

引入多道程序设计技术是为了提高计算机系统资源的利用率。在多道程序系统中,内存中作业的道数并非越多越好。一个计算机系统中的内存、外设等资源是有限的,只能容纳适当数量的作业。当作业道数增加时,将导致对资源的竞争激烈,系统开销增大,从而导致作业的执行缓慢,系统效率下降。

2、多道程序设计会带来那些问题?如何解决?

问题:
1、处理器资源管理问题
2、内存资源管理问题
3、设备资源管理问题
解决办法: 确定适当的分配策略,对资源进行管理。

3、什么是进程?进程具有哪些主要特性?试比较进程与程序之间的相同点和不同点。

进程:进程是具有一定独立功能的程序关于一个数据集合的一次运行活动。

特点:

  1. 并发性
  2. 动态性
  3. 独立性
  4. 交往性
  5. 异步性
  6. 结构性

相同点与不同点: 程序是静态的,进程是动态的;进程是有生存期的,而程序没有,一个程序可对应多个进程,而一个进程只能对应一个程序。

4、有人说,用户进程所执行的程序一定是用户自己编写的。这种说法对么?如果不对,举例说明

不对,例如 C编译程序以用户进程身份运行,但是C编译程序并不是用户自己编写的,字处理程序等工具软件也一样。

5、什么是进程上下文?进程上下文包括哪些成分?那些成分对目态程序是可见的?

进程的物理实体和支持进程运行的物理环境称为进程上下文 进程上下文包含三个组成部分:

  1. 用户级上下文。是由用户进程的程序块、用户数据块(含共享数据块)和用户堆栈组成的进程地址空间。
  2. 系统级上下文。包括进程控制块、内存管理信息、进程环境块,以及系统堆栈等组成的进程地址空间。
  3. 寄存器上下文。由程序状态寄存器、各类控制寄存器、地址寄存器、通用寄存器、用户堆栈指针等组成

其中用户级上下文以及部分的寄存器上下文对于目态程序可见

6、进程一般具有哪三个主要状态?举例说明状态转换的原因

三种状态:

  1. 运行态(Run) 进程占有处理机资源,正在运行。
  2. 就绪态(Ready)进程本身具备运行条件,但是处理机的个数少于可运行的进程个数,未投入运行,在等待处理机资源。
  3. 等待态(Wait)也称挂起态(Suspend)、封锁态(Blocked)、睡眠态(Sleep) 进程本身不具备运行条件,等待某个事件发生,比如等待某个资源被释放。

状态转换原因:
就绪进程获得处理机,状态转化为运行态
运行进程被剥夺处理机,比如用完时间片或者出现级别高于此进程的进程,状态转化为就绪
运行进程受阻时,比如申请资源被占用,启动I/O传输未完成,状态转换为等待;当所等待事件发生时,如得到申请资源,I/O传输完成,状态转化为就绪。

7、对于循环轮转进程调度算法、可抢占CPU的优先数进程调度算法、不可抢占CPU的优先数进程调度算法,分别画出进程状态转换图

进程状态转换图

8、有几种类型的进程队列?每类各应设置几个队列?

三种类型进程队列:

  1. 就绪队列(整个系统一个)
  2. 等待队列(每个等待事件一个)
  3. 运行队列(在单CPU系统中只有一个)

9、什么是进程控制块?进程控制块中一般包含哪些哪些内容?

进程控制块是标志进程存在的数据结构,其中包含系统对进程进行管理所需要的的全部信息。一般包括:进程标识、用户标识、进程状态、调度参数、现场信息、家族联系、程序地址、当前打开文件、消息队列指针、资源使用情况、进程队列指针等

10、什么是线程,图示线程与进程之间的关系

线程:进程中一个相对独立的执行流
线程与进程的关系
在这里插入图片描述

11、试比较进程状态与该进程内部线程之间的关系

进程状态是指每个进程在其生命周期中的当前状态,它是由进程内部线程综合所决定的。每个进程都由多个线程构成,每个线程都可以有不同的状态,这也就决定了进程状态的不同。举例来说,当进程中的一个线程在运行时,进程的状态就是“运行”;如果它的所有线程都处于等待状态,进程的状态就是“等待”。

12、什么是线程控制块? 线程控制块中一般包含哪些内容?

线程控制块是标志线程存在的数据结构,其中包含系统对线程进行管理所需要的全部信息 一般包含:线程标识、线程状态、调度参数、现场信息、链接指针等

13、同一进程中的多个线程有哪些成分是共用的。哪些成分是私用的?

共用:内存地址空间、文件句柄以及其他系统资源
私用:寄存器、线程栈以及其他状态信息

14、 试比较用户级别线程和核心级别线程间在以下几个方面的差别和各自的优缺点

(1)创建速度
(2)切换速度
(3)并行性
(4)线程控制块的存储位置

创建速度:用户级别线程的创建速度更快,因为它们受用户控制,而核心级别线程受内核控制,需要更多的准备工作,这需要时间。
切换速度:用户级别线程的切换速度更快,因为它们受用户控制,可以在用户空间执行,而核心级别线程受内核控制,需要切换到内核空间,这需要时间。
并行性:用户级别线程的并行性有限,因为它们运行在同一个进程中,而核心级别线程的并行性更高,因为它们可以在不同的进程之间共享资源。
线程控制块的存储位置:用户级别线程的线程控制块存储在用户空间,而核心级别线程的线程控制块存储在内核空间。

优点:用户级别线程有更少的切换时间,更快的创建速度和更少的资源消耗,而核心级别线程有更高的并行性和可靠性。
缺点:用户级别线程有有限的并行性,而核心级别线程有更多的切换时间,更慢的创建速度和更多的资源消耗。

15、试比较linux系统中fork()和clone()两个系统调用之间的差异

fork()会创建一个新的进程,该进程与调用fork()的父进程完全相同,包括其内存空间、数据和状态。
fork()会返回一个整数值,用于区分父进程和子进程。
clone()也会创建一个新的进程,但这个新的进程可以从父进程中复制不同的部分,包括其栈、堆、文件描述符等。
clone()返回一个新的标识符,用于识别新进程。

16、何谓作业? 何谓作业步? 作业何时转变为进程

作业:用户要求计算机系统为其完成的计算任务的集合。

作业步:作业中一个相对独立的处理步骤

进入进程:根据作业步的要求建立进程。

17、 试分析作业、进程、线程三者之间的关系

联系:一个作业包含多个进程,一个进程包含多个线程;

区别:作业是计算机提交任务的任务实体,而进程是执行实体,是资源分配的基本单位,线程是处理机调度的基本单位。

18、何谓系统开销,举例说明

系统开销: 运行操作系统程序对系统进行管理而花费的时间和空间。如:作业调度、进程调度、进程切换。

相关文章:

计算机操作系统 左万利 第二章课后习题答案

计算机操作系统 左万利 第二章课后习题答案 1、为何引进多道程序设计,在多道程序设计中,内存中作业的道数是否越多越好?说明原因。 引入多道程序设计技术是为了提高计算机系统资源的利用率。在多道程序系统中,内存中作业的道数并…...

CODESYS开发教程10-文件读写(SysFile库)

今天继续我们的小白教程,老鸟就不要在这浪费时间了😊。 前面一期我们介绍了CODESYS的文件操作库CAA File。这一期主要介绍CODESYS的SysFile库所包含的文件读写功能块,主要包括文件路径、名称、大小的获取以及文件的创建、打开、读、写、拷贝…...

Linux安装redis

Linux安装redis一.下载二.解压配置1.创建文件夹2.上传文件3.解压4.编译配置三.启动测试1.启动2.防火墙配置3.测试四.设置开机自启1.配置脚本2.添加服务3.测试一.下载 redis官网:https://redis.io/ redis官方下载地址:http://download.redis.io/releases…...

计算机组成与体系结构 性能设计 William Stallings 第2章 性能问题

2.1 优化性能设计例如,当前需要微处理器强大功能的桌面应用程序包括:图像处理、三维渲染、语音识别、视频会议、多媒体创作、文件的声音和视频注释、仿真建模从计算机组成与体系结构的角度来看,一方面,现代计算机的基本组成与50多…...

anaconda详细介绍、安装及使用(python)

anaconda详细介绍、安装及使用1 介绍1.1 简介1.2 特点1.3 版本下载2 Anaconda管理Python包命令3 安装3.1 windows安装4 操作4.1 Conda 操作4.2 Anaconda Navigator 操作4.3 Spyder 操作4.4 Jupyter Notebook 操作5 示例参考1 介绍 1.1 简介 Anaconda是用于科学计算&#xff08…...

雅思经验(6)

反正我是希望遇到的雅思听力section 4.里面填空的地方多一些,之后单选的部分少一些。练了一下剑9 test3 的section 4,感觉还是不难的,都是在复现,而且绕的弯子也不是很多。本次考试的目标就是先弄一个六分,也就是说&am…...

CentOS9源码编译libvirtd工具

卸载原有版本libvirt [rootcentos9 ~]# yum remove libvirt Centos9配置网络源 [rootcentos9 ~]# dnf config-manager --set-enabled crb [rootcentos9 ~]# dnf install epel-release epel-next-release 安装依赖包 [rootcentos9 ~]# yum install -y libtirpc-devel libxml2-de…...

搭建内网穿透

文章目录摘要npsfrp服务提供商摘要 内网穿透是一种方便的技术,可以让用户随时随地访问内网设备。有两种方式可以使用内网穿透:自己搭建,使用nps/frps软件;购买服务,快速享受内网穿透带来的便利。 nps 内网穿透。参考…...

vue3组件库项目学习笔记(八):Git 使用总结

目前组件库的开发已经接近尾声,因为这次是使用 git 进行协作的开发模式,在团队协作的时候遇到很多的问题,开发过程中发现小伙伴们对于 git 的使用还不是很熟练,这里就简单总结一下常用的 git 的操作,大致有&#xff1a…...

ISO7320FCQDRQ1数字隔离器LMG1025QDEETQ1半桥GaN驱动器

1、数字隔离器 DGTL ISO 3000VRMS 2CH 8SOIC型号:ISO7320FCQDRQ1批次:新技术:容性耦合类型:通用隔离式电源:无通道数:2输入 - 侧 1/侧 2:2/0通道类型:单向电压 - 隔离:30…...

openmmlab 语义分割算法基础

本文是openmmlab AI实战营的第六次课程的笔记,以下是我比较关注的部分。简要介绍语义分割:如下图,左边原图,右边语义分割图,对每个像数进行分类应用语义分割在个各种场景下都非常重要,特别是在自动驾驶和医…...

2023年深圳/东莞/惠州CPDA数据分析师认证报名入口

CPDA数据分析师认证是中国大数据领域有一定权威度的中高端人才认证,它不仅是中国较早大数据专业技术人才认证、更是中国大数据时代先行者,具有广泛的社会认知度和权威性。 无论是地方政府引进人才、公务员报考、各大企业选聘人才,还是招投标加…...

RabbitMQ-客户端源码之AMQChannel

AMQChannel是一个抽象类,是ChannelN的父类。其中包含唯一的抽象方法: /*** Protected API - called by nextCommand to check possibly handle an incoming Command before it is returned to the caller of nextCommand. If this method* returns true…...

注意力机制(SE,ECA,CBAM) Pytorch代码

注意力机制1 SENet2 ECANet3 CBAM3.1 通道注意力3.2 空间注意力3.3 CBAM4 展示网络层具体信息1 SENet SE注意力机制(Squeeze-and-Excitation Networks):是一种通道类型的注意力机制,就是在通道维度上增加注意力机制,主要内容是是…...

Vue2笔记03 脚手架(项目结构),常用属性配置,ToDoList(本地存储,组件通信)

Vue脚手架 vue-cli 向下兼容可以选择较高版本 初始化 全局安装脚手架 npm install -g vue/cli 创建项目:切换到项目所在目录 vue create xxx 按照指引选择vue版本 创建成功 根据指引依次输入上面指令即可运行项目 也可使用vue ui在界面上完成创建&…...

Java程序的执行顺序、简述对线程池的理解

点个关注,必回关 文章目录一、Java程序是如何执行的二、合理利用线程池能够带来三个好处一、Java程序是如何执行的 我们日常的工作中都使用开发工具(IntelliJ IDEA 或 Eclipse 等)可以很方便的调试程序,或者是通 过打包工具把项目…...

【前言】嵌入式系统简介

随手拍拍💁‍♂️📷 日期: 2022.12.01 地点: 杭州 介绍: 2022.11.30下午两点时,杭州下了一场特别大的雪。隔天的12月路过食堂时,边上的井盖上发现了这个小雪人。此时边上的雪已经融化殆尽,只有这个雪人依旧维持着原状⛄…...

React设计原理—1框架原理

阅读前须知 本文是笔者学习卡颂的《React设计原理》的读书笔记,对书中有价值内容以Q&A方式进行呈现,同时结合了自己的理解🤔阅读时推荐先看问题,想想自己的答案,再和答案比对一下本文属于前端框架科普,…...

(C00034)基于Springboot+html前后端分离技术的宿舍管理系统-有文档

基于Springboothtml技术的宿舍管理系统-有文档项目简介项目获取开发环境项目技术运行截图项目简介 基于Springboothtml的前后端分离技术的宿舍管理系统项目为了方便对学生宿舍进行管理而设计,分为后勤、宿管、学生三种用户,后勤对整体宿舍进行管理、宿管…...

Flink面试题

一 基础篇Flink的执行图有哪几种?分别有什么作用Flink中的执行图一般是可以分为四类,按照生成顺序分别为:StreamGraph-> JobGraph-> ExecutionGraph->物理执行图。1)StreamGraph顾名思义,这里代表的是我们编写…...

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...