Linux子系统简介

日期:2023-02-02

版本号:V1.0

一、GNU/Linux体系结构

       该体系的上部分是用户空间(或应用程序,同时包含应用程序常用的标准C库,例如stdlib.h),这是用户应用程序执行的环境(位置)。

Linux分为三部分,首先为应用程序提供的服务接口(不同版本的Linux通常会提供相同的系统调用,可以保障应用程序的源码不因内核版本的切换而进行修改);其次是狭义上的内核部分(与硬件体系无关,基于内核为应用和内核自身提供相关服务的部分),最后是板级驱动BSP(与硬件体系有关,基于硬件为应用或内核自身提供相关服务的部分)。

就目前行业内嵌入式系统使用来说,大部分技术公司都是基于芯片厂家提供的解决方案进行开发(芯片厂家将CPU\SOC\IC以及相关电路整合到一块电路上,并基于这块电路移植操作系统、相关BSP驱动程序,形成一套嵌入式开发平台)。下游的应用系统会在某一芯片厂家的某一开发平台基础上,基于成本和功能的考量,进行通常较少的软硬件修改,然后在此基础上开发相应的应用程序。

作者主要本文主要讨论与硬件和应用均无直接关系的狭义内核部分。

二、内核基本结构

2.1 进程调度SCHED

调度器究其根本,主要是控制众多进程对CPU资源的访问,当需要选择一个进程运行时,由调度程序选择最值得运行的进程并让其使用CPU运行。调度器主要包含三部分:(1)调度策略;(2)调度触发方式;(3)进程切换过程。

进程创建后至执行完毕退出间,通常会在若干个状态之间切换,切换的主要原因相关资源满足/不满足的状态变化,例如处于运行态的用户进程在请求不到相关资源时,通常会进入休眠态,而由于时间片资源使用完毕时会切换到就绪态。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值