《Linux嵌入式实时应用开发实战(原书第3版)》—— 1.2 什么是实时

简介:

本节书摘来自华章计算机《Linux嵌入式实时应用开发实战(原书第3版)》一书中的第1章,第1.2节,作者:(美)Doug Abbott 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.2 什么是实时

实时的概念更难解释。实时的基本含义是我们期望计算机对它的环境即时响应。但是什么是“即时”呢?有人认为实时意味着真的很快,这并不完全正确。实时仅仅意味着在系统运行的环境里足够快。如果我们谈论的是控制汽车发动机的计算机,那就是快!这个计算机需要决定每次发动机转一圈时对燃料流量、点火时间的控制。
另一方面,考虑一个或多个计算机控制的化工厂,计算机系统负责控制过程和检测潜在的破坏性故障。因为化学过程的时间常数最少在几秒到几分钟之间,所以可以假设计算机系统可以有足够的时间处理任何故障以避免造成损失。
但是假设当故障发生时,计算机正在打印一份关于上周生产情况的长篇报告或正在处理工资单,那么它对潜在的紧急情况的反应有多快呢?
实时处理的本质不仅在于计算机对它的环境有足够快速的响应,而且在于足够快的可靠响应。发动机的控制计算机必须在发动机转动的每一圈都调整燃料流量和点火时间。如果有所延迟,发动机就不能正常工作。化工厂的控制器必须有足够的时间正确检测和响应异常情况以避免事故,如果不能,这个控制器就是无效的。
我觉得下面这句话说得很恰当:
实时系统处理的正确性不仅要求处理的逻辑正确,也要求在规定时间内有结果。如果系统的时间约束不能被满足,那么可以说系统就失效了。
——Donald Gillies,实时处理常见问题
所以实时编程的艺术就是在随机的异步事件中,设计能可靠地满足时间约束的系统。的确,这说起来容易做起来难,目前有很多研究实时系统原理的文献和开发工作。

相关文章
|
5月前
|
安全 应用服务中间件 网络安全
在Linux环境部署Flask应用并启用SSL/TLS安全协议
至此,你的Flask应用应该能够通过安全的HTTPS协议提供服务了。记得定期更新SSL证书,Certbot可以帮你自动更新证书。可以设定cronjob以实现这一点。
387 10
|
5月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
615 13
|
4月前
|
存储 数据采集 监控
ubuntu(linux)系统主要应用于哪些工业场景中?研维三防ubuntu系统的手持工业三防平板电脑在哪些行业中有实际应用
Ubuntu 系统凭借其独特的优势,在众多工业场景中得到了广泛应用,为工业数字化、智能化发展提供了有力支持。而研维三防基于 Ubuntu 定制系统的手持工业三防平板电脑,更是将 Ubuntu 系统的优势与工业级的性能、坚固耐用性完美结合,在电力、物流、制造等多个行业中展现出强大的应用价值,助力企业提高生产效率、优化管理流程、提升产品质量,成为推动工业现代化发展的重要力量。随着技术的不断进步与创新,相信 Ubuntu 系统以及研维三防这类工业级设备将在更多的工业领域中发挥更大的作用,为工业发展带来更多的机遇与变革。
|
10月前
|
机器学习/深度学习 安全 Linux
Linux 主要应用领域的归纳
服务器领域 Linux在服务器领域的应用是其最为广泛和成熟的领域之一。由于其开源、稳定、高效和安全的特性,Linux成为许多企业服务器的首选操作系统。 Web服务器:Linux是Web服务器的理想选择,因为它支持Apache、Nginx等流行的Web服务器软件,这些软件在Linux上运行稳定且性能卓越。Linux服务器可以高效地处理大量并发请求,提供快速、可靠的Web服务。 数据库服务器:Linux也广泛用于数据库服务器,如MySQL、PostgreSQL和Oracle等数据库管理系统在Linux上运行良好。Linux的稳定性和安全性使得它成为存储和管理敏感数据的理想平台。 邮件服务器:Lin
594 5
|
11月前
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
623 15
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
556 13
|
缓存 Linux 开发者
Linux内核中的并发控制机制:深入理解与应用####
【10月更文挑战第21天】 本文旨在为读者提供一个全面的指南,探讨Linux操作系统中用于实现多线程和进程间同步的关键技术——并发控制机制。通过剖析互斥锁、自旋锁、读写锁等核心概念及其在实际场景中的应用,本文将帮助开发者更好地理解和运用这些工具来构建高效且稳定的应用程序。 ####
267 5
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###
|
Unix Linux Ruby
在windows和linux上高效快捷地发布Dash应用
在windows和linux上高效快捷地发布Dash应用
628 4
|
Linux iOS开发 开发者
跨平台开发不再难:.NET Core如何让你的应用在Windows、Linux、macOS上自如游走?
【8月更文挑战第28天】本文提供了一份详尽的.NET跨平台开发指南,涵盖.NET Core简介、环境配置、项目结构、代码编写、依赖管理、构建与测试、部署及容器化等多个方面,帮助开发者掌握关键技术与最佳实践,充分利用.NET Core实现高效、便捷的跨平台应用开发与部署。
1498 3