暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
实时系统和非实时系统的区别.txt
18
4页
0次
2025-04-22
免费下载
主题:实时操作系统与通用操作系统的一些比较(转载)
把字符转化成整形
int strToDigitFour(char * str)
{
int tmp = 0;
while (*str)
{
tmp *= 10;
tmp += *str - '0';
++str;
}
return tmp;
}
int atoi(const char*s)
{
char *p =s;
char c;
int i = 0;
while(c=*p++)
{
if(c>='0'&&c<='9')
{
i=i*10+(c-'0');
}
else
return -1; //Invalid string
}
return i;
}
C++工程中设置全局函数 (2010-03-04 15:12:06)转载▼
标签: 杂谈
每次想写全局函数的时候我都想翻书,总是忘记如何声明,我这种小心翼翼的性格不知道何时才能改掉。
记录下吧,以后就来博客中寻找自己想要的答案,否则总是翻书,总是求助也不是太好的做法。
cpp 文件中进行函数的定义:
const std::string TimeConvert(const LCSH::Time& time )
{
std::string m_time;
m_time = getstring(time.year);
………
return m_time;
}
在头文件中对该函数进行全局函数的声明:
extern const std::string TimeConvert(const LCSH::Time& time );
这样定义后则在整个工程中都能对该函数进行调用。
实时操作系统的特征:
实时操作系统是抢占式操作系统,如果你的进程优先级高,则肯定第一个得到执行,直至结束执行,中间
的时间通过 CPU 频率等可以推算出来。
其实就是要求你对他的请求,他得在一定时限内给你结果,而不能因为系统忙或调度算法的原因拖沓,也就
是只要指定了时间或发生了高优先级时间,无论任何操作,必须立刻中断,即使内核也是如此。
Windows 的内核是不可抢占的,所以它不是实时操作系统。Linux 是软实时的,内核中仍然有大量不可抢占
区域。时限要求高的是硬实时,时限要求低的是软实时
非实时操作系统:
通常的通用操作系统 Windows Linux 都叫分时操作系统,一般采用公平调度算法,线程/进程一多就得
分享 CPU 时间,Linux 下有针对“实时进程”的调度,调度算法和普通进程不一样,但也只是相对的响应时间降
低而已,类似的 Windows 下的“实时”优先级,也只不过是最高优先级,而不是真正的实时
真正的实时操作系统内核是可中断可抢占的。而非实时的操作系统通常在执行内核功能时是不可中断的,
Linux 是软实时的,它在内核中加入了若干可中断点,而不是任何时候都允许中断。
Windows 的内核是不可抢占的,所以它不是实时操作系统。Linux 是软实时的,内核中仍然有大量不可抢占
区域。
这样对内核的设计就要求很高。
有的第三方的硬实时基于 Linux 的实现一般都是将 Linux 内核作为一个任务,由另外的实时 OS 内核进行调
实时系统与非实时系统的根本区别
  实时系统与非实时系统的根本区别在于:实时系统具有与外部环境及时交互作用的能力。也就是说实时
系统从外部获取信息以及系统得出结论要在很短的限制时间内成。
入式实时系统中采用的操作系统我们称入式实时操作系统,它入式操作系统,是实时操作系统。
作为一种入式操作系统,它具有入式软件有的可裁剪、资源占用低功等特点而作为一种实时操
作系统(本文对实时操作系统特性的限于实时操作系统,下面提到的实时操作系统也实时操作
系统),它与通用操作系统(如 WindowsUnixLinux 等)相比有很大的别,下将通过比较这
种操作系统间的别来逐步描述实时操作系统的主要特点。
常工作学习环境中接触最多的是通用操作系统,通用操作系统是由分时操作系统发而来,大部分都
支持多用和多进程,负责管理众多的进程为它系统资源。分时操作系统的基本设计原则是:
短系统的平响应时间并提高系统的吞吐率,在单位时间内为可能多的用请求提供服务。由此可以出,
分时操作系统注重均表现性能,不注重体表现性能。如对于整个系统来说,注重所有任务的平响应时间
而不个任务的响应时间,对于个任务来说,注重每次执行的平响应时间而不次特定执行
的响应时间。通用操作系统中采用的很多策略技巧现出了这种设计原则,如虚存管理机制中由于采用了
LRU 页替换算法,使得大部分的访存需求能够快速地通过物理存完成,只有很小一部分的访存需要通
过调页完成,但从总体上,平均访存时间与不采用虚存技术相比有很大的高,获得了虚空间可
大于物理存容量等好,因此虚存技术在通用操作系统中得到了广泛的应用。类似的例子还有很多,
Unix 文件系统中文件存放位置的间接索引查询机制等,至硬件设计中的 Cache 技术以及 CPU 动态
支预测技术等也都现出了这种设计原则。由此可,这种注重均表现,即统计型表现特性的设计原则的
响是深远的。
而对于实时操作系统,前面经提到,它了要满足应用的功能求以外,更重要的是满足应用
的实时性要求,而成一个应用的多实时任务对于实时性的要求是不相的,此外实时任务间可能还会
有一些杂的关联同步关系,如执行顺序限制、共资源的互斥访问要求等,这就为系统实时性的保证带
了很大的困难。因此,实时操作系统所遵循的最要的设计原则是:采用种算法和策略始终保证系统行为
的可预测(predictability)。可预测性是指在系统行的任何时刻,在任何情况下,实时操作系统的
配策略都能为争夺资源(包括 CPU存、网络带宽)的多个实时任务合理地配资源,使每个实时任
务的实时性要求都能得到满足。与通用操作系统不,实时操作系统注重的不是系统的平均表现,而是要求每
个实时任务在最坏情况下都要满足其实时性要求,也就是说,实时操作系统注重的是个体表现,更准确地讲
坏情况表现。举例来说,如果实时操作系统采用标虚存技术,则一个实时任务执行的最坏情况是每
访存要调,如此来的该任务在最坏情况下的行时间是不可预测的,因此该任务的实时性无法
得到保证。从而可以出在通用操作系统中广泛采用的虚存技术在实时操作系统中不采用。
由于实时操作系统与通用操作系统的基本设计原则别很大,因此在很多资源调度策略选择上以及操作系统
实现的方法上两者都具有较大的差异,这些差异主要现在以下点:
(1) 任务调度策略
of 4
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜