操作系统复试

1、CPU中有哪些运行模式?什么时候会导致用户态转为内核态?(重点)
CPU中有两种运行模式:用户态和内核态。
用户态切换到内核态主要有两种原因:
①系统调用②中断/异常
2、操作系统是什么?
操作系统(Operating Ststem, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。
从中间往两边看,是软件和硬件资源的管理者;并进行合理的组织和调度计算机的工作和资源的分配。
从上往下看,是提供给用户的接口
从下往上看,是最基本的系统软件
3、操作系统的特点有哪些?
并发
共享
虚拟
异步
其中,并发和共享互为存在条件,是操作系统中最基本的特点。
并发、并行的区别:
并发是指两个或多个事件在同一时间间隔内发生。这些事件在宏观上是同时发生的,在微观上是交替发生的。
并行是指两个或多个事件在同一时刻同时发生
23-3-7 周二
4.系统调用和中断的区别?
区别:
1.中断是由外设产生,无意的,被动的。
2.系统调用是由应用程序请求操作系统提供服务产生,是有意的,主动的;是从用户态通过中断进入内核态。
联系:
1.中断过程:中断请求 中断响应 断点保护 执行中断服务程序 断点恢复 中断返回
2.系统调用过程:应用程序在用户态执行时请求系统调用,中断,从用户态进入内核态,在内核态执行相应的内核代码。
23-3-8 周三
5.进程概念及的三个组成部分?
进程由程序段、数据段、进程控制块(PCB)三部分组成,一般把进程实体简称为进程。
进程时进程实体的运行过程,是系统进行资源分配和调度的一个基本单位。
PCB是进程存在的唯一标志。它主要包含以下内容:
进程描述信息
进程标识符PID
用户标识符UID
进程控制和管理信息
CPU、磁盘、网络流量使用情况统计…
进程当前状态:就绪态/运行态/阻塞态…
资源分配清单
处理机相关信息
6.进程和程序的区别?
程序:是静态的,就是个存放在磁盘里的可执行文件
进程:是动态的,是程序的一次执行过程
同一个程序多次执行会对应多个进程
23-3-11
7.进程和线程区别和联系
进程和线程的关系:
一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。
资源分配给进程,同一进程的所有线程共享该进程的所有资源
处理机分给线程,即真正在处理机上运行的是线程
线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。线程是指进程内的一个执行单元,也是进程内的可调度实体。
进程与线程的区别:
调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位
并发性:不仅进程之间可以并发执行,同一个进程的不同线程之间也可以并发执行
拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源
系统开销:在创建或撤销进程时,由于系统都要为之分配和回收资源,导致系统的开销明显大于创建或撤销线程的开销
8.线程间的同步方式有哪些呢?
线程同步是两个或多个共享关键资源的线程的并发执行。应该同步线程以避免关键的资源使用冲突。
互斥量:采用互斥对象机制,只有拥有互斥对象的线程才有访问公共资源的权限。因为互斥对象只有一个,所以可以保证公共资源不被多个线程同时访问。比如:java中的synchronized关键字和各种Lock都是这种机制。
信号量:它允许同一时刻多个线程访问同一资源,但是需要控制同一时刻访问此资源的最大线程数量。
事件:通过通知操作的方式来保证多线程同步,还可以方便的实现多线程优先级的比较操作。
9.进程的调度算法
先到先服务(FCFS)调度算法:从就绪队列中选择一个最先进入该队列的进程为之分配资源,使它立即执行并一直执行到完成或发生某事件而被阻塞放弃占用CPU时再重新调度。
短作业优先(SJF)的调度算法:从就绪队列中选出一个估计运行时间最短的进程为之分配资源,使它立即执行并一直执行到完成或发生某事件而被阻塞放弃占用CPU时再重新调度。
时间片轮转调度算法:时间片轮转调度是一种最古老,最简单,最公平且使用最广的算法,又称 RR(Round robin)调度。每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。
多级反馈队列调度算法:前面介绍的几种进程调度的算法都有一定的局限性。如短进程优先的调度算法,仅照顾了短进程而忽略了长进程 。多级反馈队列调度算法既能使高优先级的作业得到响应又能使短作业(进程)迅速完成。,因而它是目前被公认的一种较好的进程调度算法,UNIX 操作系统采取的便是这种调度算法。
优先级调度 : 为每个流程分配优先级,首先执行具有最高优先级的进程,依此类推。具有相同优先级的进程以 FCFS 方式执行。可以根据内存要求,时间要求或任何其他资源要求来确定优先级。
10.什么是死锁?
死锁描述的是这样一种情况:多个进程/线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。由于进程/线程被无限期地阻塞,因此程序不可能正常终止。
11.死锁产生的四个必要条件
互斥:资源必须处于非共享模式,即一次只有一个进程可以使用。如果另一进程申请该资源,那么必须等待直到该资源被释放为止。
占有并等待:一个进程至少应该占有一个资源,并等待另一资源,而该资源被其他进程所占有。
非抢占:资源不能被抢占。只能在持有资源的进程完成任务后,该资源才会被释放。
循环等待:有一组等待进程{p0,p1,…,pn},p0等待的资源被p1占有,p1等待的资源被p2占有,…,pn-1等待的资源被pn占有,pn等待的资源被p0占有。
注意:必要条件,也就是说只要系统发生死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1. 什么是操作系统操作系统是计算机系统中最基本、最核心的软件之一,它负责管理和优化计算机系统的资源,协调各种应用程序的运行和交互。 2. 计算机系统有哪些资源需要操作系统管理? 计算机系统的资源包括CPU、内存、硬盘、输入输出设备等,操作系统需要管理这些资源的分配和使用,以及对外提供一些常用的基本服务。 3. 操作系统的主要功能有哪些? 操作系统的主要功能包括进程管理、内存管理、文件系统管理、输入输出管理、系统调用和用户界面等。 4. 什么是进程? 进程是指正在运行的一个程序实例,它拥有自己的地址空间、执行状态和相关资源,是操作系统进行资源管理和调度的基本单位。 5. 进程管理的任务包括哪些? 进程管理的任务包括进程创建、调度、同步和通信等,其中进程调度是操作系统的核心功能之一。 6. 什么是线程? 线程是一个轻量级的进程,和进程一样具有执行状态、栈指针和寄存器等资源,但它们共享同一个地址空间,可以更方便地进行并发编程。 7. 内存管理的任务包括哪些? 内存管理的任务包括内存分配、地址转换、内存保护和虚拟化等,其中内存分配和地址转换是操作系统的核心功能之一。 8. 什么是文件系统? 文件系统是操作系统中负责管理文件和目录的软件,它为应用程序提供了文件读写和文件管理的基本功能。 9. 文件系统管理的任务包括哪些? 文件系统管理的任务包括文件命名、目录组织、文件存储和文件保护等,其中文件存储和文件保护是操作系统的核心功能之一。 10. 输入输出管理的任务包括哪些? 输入输出管理的任务包括设备驱动、设备控制和缓冲管理等,它们为应用程序提供了对外设的控制和数据交换的基本功能。 11. 什么是系统调用? 系统调用是应用程序向操作系统请求服务的接口,它们常常被封装到高级编程语言(如C)中的库函数中,为应用程序提供了更高层次的抽象。 12. 什么是用户界面? 用户界面是应用程序和用户之间的交互界面,包括命令行界面和图形用户界面等,它们为用户提供了方便易用的操作环境。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值