操作系统面试高频(操作系统基础)
操作系统基础
1 操作系统基本特性⭐⭐⭐⭐⭐
1 并发,并发是系统中程序能够并发执行的特征,可使得操作系统有效提高系统中的资源利用率,增加系统的吞吐量。
并发和并行
并发:两个或者多个事件在同一时刻发生。
并行:两个或者多个时间在同一时间间隔内发生。在多道程序下,并发性是指在一段时间内宏观上有多道程序同时运行,但是单处理机系统中,每一时刻只能有一道程序执行。
2 共享 在操作系统环境下的资源共享成为资源复用,是指系统中资源可供内存中多个并发执行的进程共同使用。
互斥共享和同时访问
互斥共享:系统的某些资源,虽然可以提供给多个进程使用,但应规定在一段时间内,只允许一个进程访问资源。
同时访问:系统中还有另一类资源,允许在一段时间内由多个进程同时对他们进行访问
并发和共享是操作系统的两个最基本的特征,它们互为存在的条件。一方面资源共享是以进行并发执行作为条件的,若系统不允许并发执行也就不存在资源共享问题;另一方面,若系统不能对资源共享实施有效管理,以协调好诸进程对资源共享的访问,也必然会影响到诸进程并发执行的程度,甚至无法并发执行。
3 虚拟 通过某种技术将一个物理实体变为若干个逻辑上对应的物的功能。在操作系统中可以通过时分复用技术和空分复用技术来实现虚拟的。
时分复用技术:可利用某设备为一用户服务的空闲时间,又转去为其他用户服务,使设备得到最充分的利用。
空分复用技术:利用存储器的空闲空间分区域存放和运行其他的多道程序,以此来提高内存的利用率。
4 异步 在多道程序环境下,系统允许多个进程并发执行。在单处理机程序环境下,由于系统只能运行一个进程,其余进程只能等待。由于资源等因素的限制,使进程的执行通常不是一气呵成的,而是走走停停的方式运行。
2 操作系统主要功能⭐⭐⭐⭐⭐
操作系统主要包括以下几个方面的功能 :
(1)CPU管理:其工作主要是进程调度,在单用户单任务的情况下,处理器仅为一个用户的一个任务所独占,进程管理的工作十分简单。但在多道程序或多用户的情况下,组织多个作业或任务时,就要解决处理器的调度、分配和回收等问题。
(2)存储管理,分为几种功能:存储分配、存储共享、存储保护、存储扩张。
(3)设备管理,分为以下功能:设备分配、设备传输控制、设备独立性。
(4)文件管理:文件存储空间的管理、目录管理、文件操作管理、文件保护。
(5)作业管理,是负责处理用户提交的任何要求。
3 CPU工作原理⭐⭐⭐⭐⭐
CPU的运行原理就是:控制单元在时序脉冲的作用下,将程序计数器里所指向的指令地址送到地址总线上去,然后CPU将这个地址里的指令读到指令寄存器进行译码。对于执行指令过程中所需要用到的数据,会将数据地址也送到地址总线,然后CPU把数据读到CPU的内部存储单元(就是内部寄存器)暂存起来,最后命令运算单元对数据进行处理加工。这个过程不断重复,直到程序结束。
4 CPU流水线⭐⭐⭐⭐⭐
CPU执行一条指令时,分为几个步骤,CPU并不会等一条指令完全执行完才执行下一条指令,而是像流水一样。
经典MIPS五级流水线将执行的生命周期分为五个部分:
1 取指
2 译码
3 执行
4 访存
5 写回
5 内核态和用户态的区别⭐⭐⭐⭐⭐
内核态和用户态是操作系统中的两种不同的运行态,它们的主要区别在于权限和特权级别的不同。
1 内核态(又称核心态、特权态)是操作系统的特权级运行态,只有操作系统内核本身才能够运行在内核态。在内核态运行时,操作系统拥有完全的管理权限和访问计算机硬件资源的权利,能够执行任何操作。
2 用户态(又称普通态、非特权态)是应用程序的运行态,应用程序只能运行在用户态。在用户态下,应用程序执行的指令和操作受到限制,不能直接访问和操作计算机硬件资源,必须通过操作系统提供的接口或系统调用来访问硬件资源。
什么时候进入内核态:共有三种方式:a、系统调用。b、异常。c、设备中断。其中,系统调用是主动的,另外两种是被动的。
总之,内核态和用户态的主要区别在于操作系统的权限和特权级别不同。。操作系统能够很好地利用这种不同特权级别来保证计算机系统的安全和稳定性,防止应用程序对计算机系统
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
该专栏面向嵌入式开发工程师、C++开发工程师,包括C语言、C++,操作系统,ARM架构、RTOS、Linux基础、Linux驱动、Linux系统移植、计算机网络、数据结构与算法、数电基础、模电基础、5篇面试题目、HR面试常见问题汇总和嵌入式面试简历模板等文章。超全的嵌入式软件工程师面试题目和高频知识点总结! 另外,专栏分为两个部分,大家可以各取所好,为了有更好的阅读体验,后面会持续更新!!!