操作系统的体系结构
分层结构
特性:内核分多层,每层可单向调用更低一层的接口。
优点:便于调试和验证,自底向上逐层调试验证。
缺点:效率低,不可跨层调用,系统调用执行时间长。
模块化
特性:将内核划分为多个模块,各模块之间相互协作。
内核=主模块+可加载内核模块
主模块只负责核心功能,如进程调度、内存管理
优点:支持动态加载新的内核模块,增强OS适应性。
任何模块都可以直接调用其他模块,无需采用消息传递进行通信,效率高。
缺点:模块间相互依赖,更难调试和验证。
大内核
特性:所有的系统功能都放在内核里。
优点:性能高,内核内部各种功能都可以直接相互调用
缺点:内核庞大功能复杂,难以维护。
大内核中某个功能模块出错,就可能导致整个系统崩溃。
微内核
特性:只把最核心的功能放入内核,进程管理、文件管理、设备管理等功能以用户进程的形式运行在用户态。
优点:内核小功能少、易于维护,内核可靠性高。
内核外的某个功能模块出错不会导致整个系统崩溃。
缺点:性能低,需要频繁的切换用户态、核心态。用户态下的各功能模块不可用直接相互调用,只能通过内核的”消息传递“来间接通信。
外核
特性:内核负责进程调度、进程通信等功能,外核负责为用户进程分配未经抽象的硬件资源,且由外核负责保证资源使用安全。
优点:外核可直接给用户进程分配“不虚拟、不抽象”的硬件资源,使用户进程可以更灵活的使用硬件资源。
减少了虚拟硬件资源的“映射层”,提升效率。
缺点:降低了系统的一致性,使系统变得更复杂。
标签:硬件资源,调用,操作系统,外核,内核,模块,进程,体系结构 From: https://www.cnblogs.com/Mr-black-7/p/17088698.html