一、内核是什么

现代操作系统设计采用层次结构,往往将一些与硬件紧密相关的模块或运行频率较高的模块
设置在第一层软件中,称为操作系统的内核。


二、内核的功能

1. 支撑功能

是指内核可以提供给OS的其它众多模块所需要一些基本功能,以便支撑这些模块工作。下面是三种最基本的支撑功能:

(1)中断处理
此功能是内核最基本的功能,是整个操作系统活动的基础。OS中许多重要的活动无不依赖于中断,比如系统调用、IO操作、进程调度、设备驱动等,

(2)时钟管理
比如在时间片轮转调度中,每当时间片用完时,便由时钟管理产生一个中断信号,促使调度程序重新进行调度。还有实时系统的截止时间控制等。

(3)原语操作
原语(Primitive)是由若干条指令组成的,用于完成一定功能的一个过程。
它与一般过程的区别在于:它们是 原子操作。所谓原子操作就是,一个操作中的动作要么全做,要么全不做。也就是,它是一个不可分割的基本单位。因此,原语在执行过程中不允许被中断。

原语的作用: 在内核中有许多原语,比如用于对链表进行操作的原语、用于实现进程同步的原语等。

2. 管理功能

(1)进程管理
进程的调度与分派、创建与撤销等;实现进程同步、进程通信的原语等

(2)存储器管理
如将逻辑地址转换为物理地址、内存的分配与回收等

(3)设备管理
各类设备的驱动程序等

【OS笔记 9】操作系统内核的功能相关推荐

  1. java写linux内核,基于mykernel 2.0编写一个操作系统内核

    一.实验要求 1.按照https://github.com/mengning/mykernel 的说明配置mykernel 2.0,熟悉Linux内核的编译: 2.基于mykernel 2.0编写一个 ...

  2. linux实验三:基于mykernel 2.0编写一个简单的操作系统内核

    实验内容 按照https://github.com/mengning/mykernel的说明配置mykernel 2.0,熟悉Linux内核的编译:基于mykernel 2.0编写一个操作系统内核,参 ...

  3. 深入理解操作系统内核架构(送书)!

    近年来,我国自主研发操作系统被反复提及.近期,一个计算机领域内非常专业的词来到了几乎所有人的视线内,这就是--微内核.人们对操作系统内核的讨论越来越热烈,甚至有人说我不懂什么叫微内核,什么是宏内核,接 ...

  4. 微内核是什么?宏内核是什么?一文带你了解操作系统内核架构!

    近年来,我国自主研发操作系统被反复提及.近期,一个计算机领域内非常专业的词来到了几乎所有人的视线内,这就是--微内核.人们对操作系统内核的讨论越来越热烈,甚至有人说我不懂什么叫微内核,什么是宏内核,接 ...

  5. 【OS学习笔记】二十二 保护模式六:保户模式下操作系统内核如何加载用户程序并运行 对应的汇编代码之用户程序

    本汇编代码对应文章:保户模式下操作系统内核如何加载用户程序并运行中的实际用户程序代码. 对应的主引导扇区代码:主引导扇区代码 对应的内核代码:内核代码 ;代码清单13-3;文件名:c13.asm;文件 ...

  6. 【OS学习笔记】二十一 保护模式六:保户模式下操作系统内核如何加载用户程序并运行 对应的汇编代码之内核代码

    本汇编代码对应文章保户模式下操作系统内核如何加载用户程序并运行 中的实际内核代码 对应的主引导扇区代码:主引导扇区代码 对应的用户程序代码:用户程序代码 ;代码清单13-2;文件名:c13_core. ...

  7. 【OS学习笔记】二十 保护模式六:保户模式下操作系统内核如何加载用户程序并运行 对应的汇编代码之主引导扇区程序

    本汇编代码对应保户模式下操作系统内核如何加载用户程序并运行 的实际主引导扇区代码: 对应的内核代码在:内核代码 对应的用户程序代码在:用户程序代码 ;代码清单13-1;文件名:c13_mbr.asm; ...

  8. 多级队列调度算法可视化界面_进程调度功能由操作系统内核的进程调度程序完成...

    进程调度的功能与时机 一.进程调度的功能 进程调度功能由操作系统内核的进程调度程序完成,在Linux 内核中,进程调度功能的实现从调用内核函数schedule()开始.进程调度的功能是按照某种策略和算 ...

  9. 一般而言,以下不属于操作系统内核功能的是()————操作系统

    一般而言,以下不属于操作系统内核功能的是() A. 资源抽象 B. 资源分配 C. 资源共享 D. 程序编辑 答案: D 解析: 操作系统内核的基本功能有资源抽象,资源分配和资源共享.

  10. 【转载】笔记:计算机_体系结构_操作系统_软件_操作系统内核_GNU_Linux_C_Python_Latex_Java_TCP/IP_MacOS_Windows这些词语的历史,关系

    一.计算机的发明 世上本无路,走的人多了,就有了路.世上本无计算机,琢磨的人多了--没有计算机,一切无从谈起. 三个人对计算机的发明功不可没,居功至伟.阿兰·图灵(Alan Mathison Turi ...

最新文章

  1. 1000+个常用的Linux命令!看完通关!随手玩Linux!
  2. python初级数据分析师薪资_学会数据分析,薪资翻倍?!
  3. 为什么接吻需要闭眼睛?
  4. 前端学习(545):node的系统模块require
  5. Fedora 10初体验
  6. 大揭秘!RocketMQ如何管理消费进度
  7. ElementUI:导航nav设置路由模式后,切换路由导航样式不变话
  8. 车间调度建模系列2|复杂车间调度问题描述
  9. python set集合与列表_python set集合的添加、删除、修改和访问操作/frozenset 集合,集合内置方法完整列表-立地货...
  10. xshell与xftp免费版
  11. linux dd winpe,winpe/linux多重启动
  12. MySQL数据库简单使用
  13. html5 扩展 cs6,Dreamweaver CS6提高了HTML5工具的效率
  14. APP限制录屏怎么办?如何绕过APP录屏限制和截图限制-支持安卓和IOS
  15. linux就是这个范儿之特种文件系统(1)
  16. 私有云服务器同步盘的定义及优势详解!
  17. python中matplotlib调整图例位置
  18. 【Flutter从入门到实战】⑪、豆瓣案例-1、星星评分Widget、虚线Widget、TabbarWidget、BottomNavigationBarItem的封装、初始化配置抽取
  19. android 自定义图片裁剪,Android图片裁剪工具封装
  20. 三轴加速度计Triaxial accelerometer

热门文章

  1. 【shell】shel脚本开发-条件测试
  2. RadioButton下划线效果的使用
  3. Android 消息通知栏用法详解(一)
  4. 将文件夹下的多个文件的内容合并到一个文件中
  5. matlab由方波转换为梯形波,matlab怎样将方波转换为二进制数据
  6. 机器学习 ---- 新词发现
  7. Epub电子书格式(四)
  8. 如何理解概率论中的“矩”?
  9. 2个鸡蛋,100层楼问题
  10. 钉钉日志范文100篇_钉钉日志,让领导看得见你的工作