操作系统大题整理

专题一

程序代码题:程序设计与分析,主要考的是线程,多线程的并发?

大题第一问(1)操作系统的结构有哪几种常用的结构?

宏内核:宏内核是将操作系统的主要功能模块都集中在内核的一种结构。高性能,复杂度高,缺乏灵活性。具体表现在:由于所有的功能都在内核中,模块之间的调用通过函数调用实现,通信开销小,执行效率高。内核代码庞大且复杂,因为包含了众多功能模块,使得内核的开发,维护和调试都比较困难。

微内核:微内核只把操作系统最基本的功能放在内核中,其他功能如文件系统,设备管理等都放在内核之外的空间。高可靠性,良好的拓展性。内核小简单,减少了内核出错的概率,如果用户空间的服务出现故障,不会直接导致整个系统崩溃。可以方便的在用户空间添加新的服务。

混合内核:混合内核结合了宏内核和微内核的特点,它在内核中保留了较多的功能,但又采用了微内核的一些设计理念,如将部分功能模块进行了分离和模块化处理。性能与拓展性的平衡,复杂性适中。

大题第二问(2)Linux源码从git中如何下载(题干中源码的链接给了)?拓展一下git常用方法,git怎么用,分支管理,创建......

在下载源码之前,需要确保系统已安装 Git。如果未安装,可以通过以下方式安装

sudo apt- getinstall git

克隆远程仓库: git clone <repository rul> 远程仓库的地址(URL)

创建并切换到新分支: git checkout -b <branch name>

仅创建分支:如果只想创建分支而不切换: git branch <branch name>

合并分区:git merge <source branch>

大题第三问(3)对于Linux是典型的宏结构,但是它仍然把微内核的优势引用进来,动态的内核加载机制,可以动态加载,加载的步骤是什么?

只需要写核心的步骤:第一步编写内核,第二步进行编译,第三步编译之后加载内核,第四步加载完成后还可以进行卸载。

专题二 虚拟化(主要是虚拟处理器)

大题第一问(1)给你一组实验数据,这个实验数据是上课做过的,让你计算cpu的个数,物理cpu和逻辑cpu的个数。

大题第二问(2)得出是有多颗cpu的,多核的,再给你一组数据,查看有几个进程,请把这俩个进程绑定到指定的逻辑cpu上,怎么处理?

专题三:虚拟化(包含虚拟化的内存)

大题第一问(1)对着程序输出结果找到相应的地址段就行

大题第二问(2)还需要解释.bss .data .rodata .text的含义:

.text段通常存放程序的可执行代码,它是可读的,因为在程序运行的过程中,代码本身通常是不会被修改的。

.data段存放的是已经初始化的全局变量和静态变量(非零初始化)

.rodata段存放的是只读数据,例如字符串常量,被const修饰的全局变量等

.bss段存放的是未初始化的全局变量和静态变量

PS:初始化赋值为0的变量属于.bss段

大题第三问(3)内存管理中相应的又分为动态分区和静态分区,其中堆和栈的区别是什么?

堆是一种无序的数据存储区域,更像是把数据随意的堆放在一块大的内存空间里,数据的存储和释放并没有像栈那样固定的顺序。堆的内存空间大小相对于栈来说要大的多,它通常是可以动态扩展的。堆的数据访问速度相对于栈要慢一些。

栈是一种后进先出的数据结构。在内存中,栈的生长方向是从高地址向低地址进行的,数据的存入和取出操作都是在栈顶进行,新的数据入栈时会被压入栈顶,而数据出栈时也是从栈顶取出相应的数据。栈的大小通常是有限的,并且相对较小。栈的数据访问速度通常比较快。因为栈的内存分配和释放操作简单且有规律。

相关推荐
hi_ro_a9 分钟前
基于正倒排索引的boost搜索引擎
linux·c++·搜索引擎·项目
蓝速科技24 分钟前
国产化信创终端等保合规核心防护与落地方案丨蓝速科技
大数据·运维·数据库·人工智能·科技
GG-_-Bond26 分钟前
9.1kv存储持久化模拟面试
linux·c语言·数据结构·c++
Dola_Zou1 小时前
Linux工控机核心算法防逆向与自动化加固方案
linux·自动化·软件加密
欧米欧1 小时前
解析Linux从umask位运算到粘滞位
linux
pt10431 小时前
Cisco Splunk for AI Operations:AIOps企业实践
运维·人工智能·自动化
郝学胜-神的一滴1 小时前
C++20模板元编程 04:变量模板 别名模板与模板Lambda实战
服务器·开发语言·数据结构·c++·程序人生
江屿风2 小时前
【Linux系统】【Linux进程终止等待详解与程序替换机制初体验】流食般投喂
linux·运维·笔记·系统架构·centos·unix
螺蛳粉 螺蛳粉2 小时前
CentOS 7.9 自建 Yum 源服务器搭建指南
linux·服务器·centos
赋创小助手2 小时前
Qwen3.8-27B 本地推理 Benchmark 解析:llama.cpp、vLLM、SGLang 与长 Context 的性能差异
服务器·人工智能·大模型·qwen·vllm·sglang·context长度