操作系统面试常问(中断与内核)

内核的架构分类

  • 宏内核,包含多个模块,整个内核像一个完整的程序
  • 微内核,有一个最小版本的内核,一些模块和服务则由用户态管理
  • 混合内核,是宏内核和微内核的结合体,内核中抽象出了微内核的概念,也就是内核中会有一个小型的内核,其他模块就在这个基础上搭建,整个内核是个完整的程序,也就是和宏内核类似

linux和window的内核架构区分

Linux 的内核设计是采用了宏内核,Window 的内核设计则是采用了混合内核。这两个操作系统的可执行文件格式也不一样, Linux 可执行文件格式叫作 ELF,扩展名通常是.elf、.bin、.exe等,Windows 可执行文件格式叫作 PE,扩展名通常是.exe、.dll、.sys等

操作系统的引导

Window下的主存是由RAM和ROM(BIOS包含:ROM引导程序),开机一旦通电,ROM就会读取磁盘中主引导记录(MBR):磁盘引导程序和分区,然后根据C盘第一部分的引导记录PBR里的程序找到启动管理器,这个启动管理器负责找到根目录下的启动管理程序,CPU在执行这个启动管理程序,执行开机的一系列的动作
Linux下,拿RK3568/RK3588/imx6ull举例,第一部分,这一部分位于不可擦除的 ROM 中(又名 BootROM),主要负责初始化一些硬件设备,以及加载第二阶段的启动程序。其地位相当于电脑上的 BIOS。BootROM 本身在上电时会被加载到特定内存 处,然后执行。它按如下顺序搜索设备中是否存在有效的 ID Block:SPI NOR Flash、SPI NAND Flash、eMMC、SD 卡。如果第二阶段的启动程序加载失败了(例如,在以上设备中均未找到),它会负责启动 MaskROM 烧写模式,以便用户可以线刷固件。第二部分,主要负责初始化 DDR 并加载下一阶段的启动程序(如 U-Boot)。第三部分,这一部分主要是U-Boot 程序,这是一个开源的启动程序,它可以从各种设备中加载内核镜像,然后启动操作系统内核。其地位相当于电脑上的 Windows 启动管理器。第二部分的程序载入器一般和 U-Boot 一起打包成一个镜像,然后写入一个设备中。U-Boot 也支持直接编译出单个可以烧写的、同时包含 SPL 和 U-Boot 的镜像,无需编译两次。第四部分,U-Boot 会从设备(即 Flash、eMMC、SD 卡等)中扫描所有分区,找到标记为可引导的分区,然后加载其中的内核镜像。第五部分,根文件系统,这是特定于 Linux 操作系统的内容了。它可能包含了你操作系统上一切重要的配置文件和关键程序,例如 /etc、/usr 等等。

中断分类

外中断

又称中断,与当前执行的命令无关,中断信号来自CPU外部,分为时钟中断和I/O中断请求

内中断

也称异常、例外,分为陷阱、陷入(这两个又应用程序故意引发)、故障(缺页)、终止(致命错误)

中断机制的基本原理

不同的中断信号,需要不同的中断处理程序来处理,例如根据中断向量表,以此来找中断处理程序在内存中的存放位置

外中断和异常有什么区别?

1、外中断是指由CPU执行指令以外的事件引起,如I/O完成中断,表示设备输入/输出处理已经完成,处理器能够发送下一个输入/输出请求。此外还有时钟中断、控制台中断等。
2、而异常时由CPU执行指令的内部事件引起,如非法操作码、地址越界、算术溢出等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值