从我的研究中,我无法找到在eCos中使用的内核类型,比如单块或微内核。我从我的研究中发现,内核是一个实时的内核,或者网站只是把它描述为eCos内核,这是否意味着它是一个定制的内核?
关于eCos,我所知道的是,它是一个硬实时操作系统,尽管在安全性方面有些脆弱,它使用基于优先级的队列调度。
发布于 2018-12-05 21:54:49
我认为这是一个铁板一块的内核。如果您查看此页面:http://ecos.sourceware.org/getstart.html
它被用来代替linux内核,linux内核支持单片内核。此外,如果是微内核,则会突出显示内核类型,如QNX内核类型,即微内核。
发布于 2018-12-11 21:12:52
微核是:
..。能够提供实现操作系统(OS)所需机制的几乎最小数量的软件。这些机制包括低层地址空间管理、线程管理和进程间通信(IPC).(2018年12月11日维基百科)
eCos内核在其参考手册中进行了描述,因此:
它提供了开发多线程应用程序所需的核心功能:
通过对这些描述的比较,可以很清楚地看出这是一个微内核.eCos提供的其他服务,如文件系统、网络和设备驱动程序,都是外部的,并且与内核分离。也就是说,您可以在没有此类服务的情况下单独部署内核,而且它仍然是可行的。
在单块内核中,这些服务很难或不可能分离,因为它们是整体的固有部分。与eCos、mand和大多数其他实时操作系统不同,它们不能很好地扩展到嵌入式系统中常见的小型硬件平台。单片内核适用于桌面和通用计算平台,因为这些平台本身是单寡头计算机--没有文件系统、显示器、键盘等的PC实际上是不可行的,而在嵌入式系统中则并非如此。
虽然Linux,甚至Windows都在嵌入式系统中使用,但是微内核可以部署在只有几十千字节内存的平台上,而一个最小的嵌入式Linux需要几个兆字节,并且将包含大量您的应用程序可能从未使用过的代码。
与术语一样,这种区别最终可能是无关紧要的。这就是它的本质。您并不是在此条件下选择内核或操作系统,而是选择它是否提供所需的服务、在目标上运行以及是否适合可用的资源。
https://stackoverflow.com/questions/53641170
复制相似问题