Autosar CP 操作系统详解

本文介绍了操作系统的相关知识。随着系统需求复杂化,操作系统应运而生。它分为分时和实时操作系统,两者因硬件虚拟化技术出现融合。还阐述了使用实时操作系统的原因和应用场景,最后详细解析了Autosar CP操作系统,包括概览图、基本对象、多核系统启动和关闭过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、背景介绍

我们知道传统所说的“裸机编程”就是不带操作系统的编程,在统需求相对比较简单的情况下使用裸机编程可以满足要求。

在Main函数中,写一个大循环(While),然后加一个定时器,分时间片的方式,定时去执行代码,就完成了简单的调度功能。

但是随着系统需求越来越复杂,此时就需要用到模块化设计方法以及多任务编程思想,否则后期软件升级维护成本将会急剧增加。

此时迫切需要一种机制来替我们完成各个任务之间的调度功能,使得开发人员能够更关注于应用软件的开发,提高软件开发效率,为此OS(Operation System)便应运而生

二、什么是操作系统

1、介于应用层和目标硬件之间,提供中间层的软件。

2、提供应用软件和目标硬件之间的抽象层

 

(1)管理分配控制器资源(CPU、内存、设备等)。

(2)控制执行应用层程序和I/O设备的操作

(3)以有效率的方式使用控制器硬件资源

三、操作系统分类

1、分时操作系统(TSOS)

分时操作系统是使一台计算机采用时间片轮转的方式同时为几个、几十个甚至几百个用户服务的一种操作系统。

把计算机与许多终端用户连接起来,分时操作系统将系统处理机时间与内存空间按一定的时间间隔,轮流地切换给各终端用户的程序使用。

由于时间间隔很短,每个用户的感觉就像他独占计算机一样。分时操作系统的特点是可有效增加资源的使用率。例如UNIX系统就采用剥夺式动态优先的CPU调度,有力地支持分时操作。

上图中,CPU是不可抢占的,即便高优先级的任务就绪了,也不能马上中断低优先级任务而得到执行,必须要等到低优先级任务主动挂起(sleep)或者时间片结束才能得到执行。

我们平常使用微软的windows、谷歌的Android、苹果的mac OS X这些操作系统,会遇到应用程序无响应的问题,也是因为这个原因。即:硬件资源一旦被其他任务占用,本任务就得不到立即执行

2、实时操作系统(RTOS)

实时操作系统”(Real Time OS)泛指所有据有一定实时资源调度以及通讯能力的操作系统。而所谓“实时”,不同语境中往往有着非常不同的意义。

某些时候仅仅用作“高性能”的同义词。但在操作系统理论中“实时性”所指的通常是特定操作所消耗的时间(以及空间)的上限是可预知的。

比如,如果说某个操作系统提供实时内存分配操作,那也就是说一个内存分配操作所用时间(及空间)无论如何也不会超出操作系统所承诺的上限。 

实时性在某些领域非常重要,比如在汽车行业、工业控制、医疗器材、影音频合成、以及军事领域,实时性都是无可或缺的特性。

 在上图中右边的任务2优先级高于左边的任务1当优先级更高的任务2就绪的时候,即便任务1正在运行中,也必须立刻交出CPU的使用权,也就是引入“中断”机制,先执行任务2,等任务2执行完或者主动挂起(sleep)让出CPU的时候,任务1才能接着运行。在真实的程序运行中,一般有多任务执行的情况下,就会引入“中断”机制。

 

3、硬件虚拟化技术

理论上两种类型的操作系统有着本质的区别,但Hypervisor(硬件虚拟化技术,提供虚 拟平台支持多操作系统)的出现,让两者出现了“融合”。

Hypervisor是一种将操作系统与硬件抽象分离的方法,以达到host machine的硬件能同时运行一个至多个虚拟机作为guest machine的目的,这样能够使得这些虚拟机高效地分享主机硬件资源

4、分时操作系统和实时操作系统的区别

评判标准

分时操作系统

实时操作系统

调度能力

高吞吐量

高效率使用系统资源

规定时间内完成所需任务(即使在资源使用率很高的情况下)

响应速度

快速平均响应时间

可预测对紧急事件的快速响应能力

已知最坏情况下对事件响应的时间

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值