- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
版权声明:本文为本文为博主原创文章,转载请注明出处。如有问题,欢迎指正。博客地址: https://www.cnblogs.com/wsg1100/ 。
Ubuntu Pro 订阅(以前称为 “Ubuntu Advantage”)是 Canonical 推出的一项扩展性的安全维护和合规性订阅计划,2022 年 10 月首次发布 Beta 版本,最初是为提供全球服务的大型企业客户而设计的,为他们额外提供 5 年的 Ubuntu LTS 版本的扩展安全维护更新,因为这类客户通常希望他们的基础设施和应用程序具有更加长期的稳定性.
最多可在 5 台设备上为个人和小规模商业用途免费订阅,Ubuntu Pro 仅适用于 Ubuntu LTS(长期支持)版本,从 Ubuntu 16.04 开始,并承诺 10 年的安全更新,以及访问专有工具.
Ubuntu Pro 订阅承诺在不到 24 小时内为关键的 CVE 打补丁,并将可选的技术支持扩展到主操作系统之外的额外 23000 个开源包和工具链,而不仅仅是 Ubuntu 的主软件存储库.
因此与标准的 Ubuntu 相比,Ubuntu Pro 是一个更全面的产品,除了为关键的、高度的和中度的常见漏洞提供扩展的安全更新,它还会将安全覆盖范围扩大到成千上万的应用程序和工具链,其中包括 Ansible、Apache Tomcat、Apache Zookeeper、Docker、Drupal、Nagios、Node.js、phpMyAdmin、Puppet、PowerDNS、Python 2、Redis、Rust、WordPress、 ROS 等等.
Ubuntu Pro 还使用户可以访问 FIPS 140-2 认证的加密包、在受监管和审计的环境中进行合规性管理的工具、对无重启内核更新的 Livepatch 支持,以及系统管理和使用 Landscape 的大规模自动修补.
Canonical 表示,如果 超过五台 PC 需要 Ubuntu Pro 订阅,则必须购买付费计划 ,目前工作站的价格为每年 25 美元,服务器的价格为每年 500 美元,并提供 30 天免费试用。官方 Ubuntu 社区成员可以获得最多 50 台设备的免费支持.
更多关于ubuntu pro介绍详见官网 https://ubuntu.com/pro 。
以上是Ubuntu Pro 的一些介绍,不是我们的重点.
“2023 年 2 月 14 日,伦敦,Canonical 宣布实时 Ubuntu 22.04 LTS 正式发布,实时 Ubuntu 提供对外部事件的确定性响应,旨在最大限度地减少指定期限内的响应时间保证。新的企业级实时内核非常适合严格的低延迟要求。 工业、电信、汽车、航空航天和国防以及公共部门和零售业 的企业现在可以在开源操作系统 (OS) 上运行其要求最苛刻的工作负载并开发各种 时间敏感型应用程序 。” 。
” 基于 Linux 内核的 5.15 版本 ,Ubuntu 22.04 LTS 集成了 x86 和 Arm 架构的树外PREEMPT_RT补丁。PREEMPT_RT补丁集可减少最严格工作负载所需的内核延迟,有助于确保时间可预测的任务执行。满足严格的确定性要求和上限执行时间,具有PREEMPT_RT的 Ubuntu 使内核比主线 Linux 更具抢占性。“ 。
这是ubuntu首次官方支持PRRMPT-RT,要知道,以往都是要开发者自己构建,实时性暂且不谈,可靠性、稳定性完全没有保障,这下有ubuntu在背后支持,可靠性、稳定性有保障,安装玩一玩.
实时ubuntu 基于Ubuntu 22.04 LTS,且只有Ubuntu Pro提供该服务,没有Ubuntu Pro服务是无法直接通过 apt-get install 安装的实时内核的.
3.1 安装Ubuntu 22.04 LTS 。
先安装Ubuntu 22.04 LTS版本,X64桌面版安装镜像下载地址: https://cn.ubuntu.com/download/desktop 。
3.2 注册并订阅个人服务 。
将 Ubuntu Pro 订阅添加到 Ubuntu LTS 设备,用户需要免费的 Ubuntu One 帐户,到Ubuntu Pro注册一个Ubuntu 账号, https://ubuntu.com/pro,并订阅个人服务,最多可在 5 台设备上为个人和小规模商业用途免费订阅.
在Ubuntu One 帐户中访问 Ubuntu Pro 令牌.
3.3 绑定设备 。
方式一,对于刚安装好的Ubuntu 22.04 LTS,第一次启动时在导航窗口可以输入token直接激活ubuntu prp服务,或者在在 Livepatch 选项卡中软件和更新实用程序中启用(其中 TOKEN 必须替换为用户的 Ubuntu Pro token).
方式二,命令行启用,打开终端执行激活ubunutu pro服务 。
sudo pro attach 你的token
激活ubunutu pro服务后,默认还是普通Linux内核,如果要使用实时ubuntu,通过 pro 命令启用:
wsg1100@wsg1100-virtual-machine:~$ sudo pro enable
cc-eal esm-infra fips-updates realtime-kernel ros-updates
esm-apps fips livepatch ros usg
wsg1100@wsg1100-virtual-machine:~$ sudo pro enable realtime-kernel
启用完成后,安装:
sudo apt-get install linux-realtime
重启,重启时grub中选中realtime kernel。检查当前内核版本:
测试机器硬件配置如下(未启用超线程):
忽略图中的'virtual-machine',实在不想在物理机上装系统,麻烦,先在虚拟机上安装好后,插到物理机上跑的,所以请忽略.
使用 stress 加点压力,开始测试
运行一小时多,结果如下(us)
注:中途stress被我不注意停了,所以没有全程加压 。
T: 0( 3466)P:99 I:1000 C:4105948 Min: 2 Act: 2 Avg: 3 Max: 246
T: 1( 3467)P:99 I:1500 C:2737299 Min: 2 Act: 2 Avg: 3 Max: 241
T: 2( 3468) P:99 I:2000 C:2052974 Min: 2 Act: 2 Avg: 3 Max: 237
T: 3 ( 3469) P:99 I:2500 C:1642379 Min: 2 Act: 2 Avg: 3 Max: 245
这是安装后直接测试的结果,未经任何配置,不同的工工况下对调度、中断、外设实时性要求不同,影响因素也不同。这里的测试也只是 cyclitest 周期定时调度 层面的实时性,定时调度只是最基本的应用场景,所以仅供参考.
实时ubuntu有ubuntu在背后支持,可靠性、稳定性有保障,一般情况下,如果只开发一些与实时无关的外设驱动模块,不需要内核源码,完成以上步骤即可.
但大多工业设备、电信、汽车使用场景,或多或少都需要实时外设,这个时候基本都需要修改PREEMPT-RT源码,比如使用实时外设需要调整外设中断线程优先级、使用网络优化实时网络包路径等等,这时候我们就需要修改内核源码,那如何获取ubuntu官方实时内核源码呢?
在 /etc/apt/sources.list.d/ubuntu-realtime-kernel.list 中启用源代码存储库.
deb [arch=amd64] https://esm.ubuntu.com/realtime/ubuntu jammy main
deb-src https://esm.ubuntu.com/realtime/ubuntu jammy main
通过 apt 获取源代码:
wsg1100@wsg1100-virtual-machine:~$ apt source --only-source linux-realtime
正在读取软件包列表... 完成
提示:linux-realtime 的打包工作被维护于以下位置的 Git 版本控制系统中:
git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/jammy
请使用:
git clone git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/jammy
获得该软件包的最近更新(可能尚未正式发布)。
需要下载 206 MB 的源代码包。
获取:1 https://esm.ubuntu.com/realtime/ubuntu jammy/main linux-realtime 5.15.0-1034.37 (tar) [195 MB]
22% [1 linux-realtime 55.5 MB/195 MB 28%] 1,690 kB/s 1分 29秒
获取后自动解压到本地目录下 linux-realtime-5.15.0 .
我们还可以从ubuntu仓库clone:
git clone https://git.launchpad.net/~git-ubuntu-import/ubuntu/+source/linux-meta-realtime
如果你想在没有启用ubunutu pro的机器上也安装上实时内核,该如何做?
方式一, apt-get install 安装的debian包会缓存在目录下 /var/cache/apt/archives/ ,也可以直接拷出到其他机器上安装.
wsg1100@wsg1100-virtual-machine:~$ ls /var/cache/apt/archives/linux-*realtime*
/var/cache/apt/archives/linux-headers-5.15.0-1034-realtime_5.15.0-1034.37_amd64.deb
/var/cache/apt/archives/linux-headers-realtime_5.15.0.1034.33_amd64.deb
/var/cache/apt/archives/linux-image-5.15.0-1034-realtime_5.15.0-1034.37_amd64.deb
/var/cache/apt/archives/linux-image-realtime_5.15.0.1034.33_amd64.deb
/var/cache/apt/archives/linux-modules-5.15.0-1034-realtime_5.15.0-1034.37_amd64.deb
/var/cache/apt/archives/linux-modules-extra-5.15.0-1034-realtime_5.15.0-1034.37_amd64.deb
/var/cache/apt/archives/linux-realtime_5.15.0.1034.33_amd64.deb
/var/cache/apt/archives/linux-realtime-headers-5.15.0-1034_5.15.0-1034.37_all.deb
方式二,我们可以从已安装的ubuntu中,重新打包出安装包,然后安装到其他机器上,命令如下:
#查看当前安装列表
$ dpkg -l | grep realtime
ii linux-headers-5.15.0-1034-realtime 5.15.0-1034.37 amd64 Linux kernel headers for version 5.15.0 on 64 bit x86 SMP
ii linux-headers-realtime 5.15.0.1034.33 amd64 Linux kernel headers for real-time systems.
ii linux-image-5.15.0-1034-realtime 5.15.0-1034.37 amd64 Signed kernel image realtime
ii linux-modules-5.15.0-1034-realtime 5.15.0-1034.37 amd64 Linux kernel extra modules for version 5.15.0 on 64 bit x86 SMP
ii linux-modules-extra-5.15.0-1034-realtime 5.15.0-1034.37 amd64 Linux kernel extra modules for version 5.15.0 on 64 bit x86 SMP
ii linux-realtime-headers-5.15.0-1034 5.15.0-1034.37 all Header files related to Linux kernel version 5.15.0
#从已安装系统重重新打包deb
$sudo dpkg-repack linux-modules-extra-5.15.0-1034-realtime linux-modules-5.15.0-1034-realtime linux-headers-5.15.0-1034-realtime
生成后在当前目录下,直接拷出到其他机器上安装:
$ ls *deb
linux-headers-5.15.0-1034-realtime_5.15.0-1034.37_amd64.deb linux-modules-extra-5.15.0-1034-realtime_5.15.0-1034.37_amd64.deb
linux-modules-5.15.0-1034-realtime_5.15.0-1034.37_amd64.deb
方式三,基于上面的源码重新编译构建,详见本博客其他文章.
到此本文水完了,本文中我是一个装系统的ε=(´ο`*)))。更多关于实时性和xenomai原理见本博客其他文章,更多PREEMPT-RT的原理和填坑敬请关注本博客.
最后此篇关于【原创】UbuntuPro中的RealTimelinux(Real-timeUbuntu/PREEMPT-RT/ubuntu官方PREEMPT-RT)的文章就讲到这里了,如果你想了解更多关于【原创】UbuntuPro中的RealTimelinux(Real-timeUbuntu/PREEMPT-RT/ubuntu官方PREEMPT-RT)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
今天上午据小米穿戴官方消息,为了保障更好的使用体验和更充足的备货,小米手表尊享版将延期至2020年2月开售。 据了解,早在今年11月初小米正式发布小米手表,共有标准版和尊享版两个版本,价格分别为1
我的意思是,如果我可以运行例如官方 docker 镜像 DEBIAN 并在此之上 运行具有相同支持架构的官方 docker 镜像 NGINX,例如Linux x86-64? 它会像我以非 docker
在 .NET 3.5 中,大量扩展方法被添加到核心代码库中。我注意到在 MSDN 中,IEnumerable<> 等添加了有关扩展方法的部分。 是否有已添加的所有扩展方法的列表以供引用? 编辑感谢您的
在vertx指南中,链接异步调用的顺序组合如下所示: FileSystem fs = vertx.fileSystem(); Future startFuture = Future.future();
neo4j 文档有 this page about creating unit tests for neo4j. 本质上它建议我们创建一个模拟数据库使用 graphDb = new TestGraph
我是 C++ 的新手,我想了解链接器是如何正式工作的。我正在使用 Linux Mint 16。是否存在 ld 链接器官方规范? 最佳答案 您可能会对链接器和共享库有更多了解 here还有here是 l
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
我想创建一个自定义 Android 汽车应用程序,而不会分散驾驶员的注意力。我浏览了很多博客和网站,发现自 3.0 版本以来曾经有一些自定义应用程序被屏蔽。这些自定义应用程序的开发人员使用的是非官方的
我刚找到 this Project就像。嘿。为什么不尝试使用它呢? 所以。刚刚下载它(我没有做任何更改!),打开 Android Studio,运行它,然后遇到以下问题。 error: cannot
Docker 的官方 Postgres 镜像使用两个环境变量:POSTGRES_USER 和 POSTGRES_PASSWORD 参数化数据库创建: https://registry.hub.dock
我刚刚从 Python download page 下载了 Python 2.7.3 64 位安装程序我想验证签名。所以我需要导入 key ,我的首选方法是从受信任的 key 服务器获取它们。 Pyt
当我安装 Andoird 5.0 SDK 并导入 Camera2Basic 示例源代码时。CameraDevice.StateListener 和 CameraCaptureSession.State
在Design Philosophy节official Fragment guide ,它说: You should design each fragment as a modular and reu
我正在使用 Roslyn 编写一个应用程序来从语法和语义上分析 C# 源代码。对于正在分析的源代码中定义的每种类型,我想存储它是引用类型(类)、值类型(结构)还是接口(interface)。 类型的类
有没有官方的 XSLT 验证器,比如 http://validator.w3.org/用于 HTML 和 XHTML? 我知道http://validator.w3.org/也可用于验证 XML 和
我主要使用 C++ 进行科学计算,最近我一直将自己限制在一个非常类似于 C 的 C++ 特性子集;即,除了复杂和 STL 之外没有类/继承,模板仅用于查找/替换各种替换,以及其他一些我无法用语言表达的
我了解到Google会根据访问它的浏览器/设备来自动提供 TTF , EOT , WOFF 或 SVG 字体文件。 现在,我计划从服务器本身托管和提供字体文件,为此,我首先必须下载Web字体的所有文件
他们有什么不同? 例如,与官方 SDK 相比,选择 libfreenect 或 OpenNI+SensorKinect 有什么优势,反之亦然? 有什么缺点? 最佳答案 请注意,以下答案是按日期计算的,
我想使用官方的 Hashicorp 镜像来运行 Terraform 而不是手动安装。我已经关注了 dockerhub 上的文档,但没有关于如何在何处安装卷的任何详细信息 - 例如在当前目录中使用“ma
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 5 年前。
我是一名优秀的程序员,十分优秀!