泰晓科技 -- 聚焦 Linux - 追本溯源,见微知著!
网站地址:https://tinylab.org

泰晓Linux实验盘,即刻上手内核与嵌入式开发
请稍侯

泰晓资讯·08月 / 第四期 / 2019

Wang Chen 创作于 2019/08/23

“泰晓资讯”,广泛报道 “Linux/开源” 业界资讯。欢迎广大读者投递相关资讯来源和素材,本站将进一步收集整理后发布给大家。

Debian 26 岁生日快乐!Happy DebianDay!

debain 26 years old!

谨将以上全文翻译如下,并以此向 Debian 社区及所有的开源社区致敬!


                                   泰晓科技 2019.8

今天是 2019 年 8 月 16 日,也是 debian 诞生的日子

作者:Donald Norwood

26 年前的今天(8月16日),在 comp.os.linux.development 新闻组的一篇文章中,Ian Murdock 宣布完成了一个名为 Debian 的全新 Linux 发布包。

从那天至今,我们提交了超过 1,288,688,830 行代码,发布了 300 多个派生版本,据统计,26 年来,一共有 6,155 位同志向我们贡献了自己的代码,并提交了超过 975,619 个错误报告。

Debian 社区在全球拥有数千名用户,每年我们都会聚集在一起,在全球不同的国家举办我们的年度 Debian 开发者大会 DebConf,同样在今天,世界各地都在举办庆祝活动庆祝我们的 DebianDay 。

让我们现在就开始一个即兴的 DebianDay 庆祝活动吧,或者行动起来,加入一个正在开展的庆祝活动。

在庆祝 Debian 周年庆的同时,祝福我们众多的贡献者,开发者,团队,组织,维护者和用户。您的所有努力和支持都将继续推动 Debian 成为一个真正的、全世界通用的操作系统。

祝大家 DebianDay 快乐!

关键词: Debian, DebianDay

内核编译时将对 C 语言的 switch 语句进行更严格的语法检查

The C switch statement has, since the beginning of the language, required the use of explicit break statements to prevent execution from falling through from one case to the next. This behavior can be a useful feature, allowing for more compact code, but it can also lead to bugs. The effort to rid the kernel of implicit fall-through coding patterns came to a conclusion with the 5.3-rc2 release, where the last cases were fixed.

凡是接触过 C 语言的同学都知道 C 语言的 switch 多路选择语法中,在各路分支处理逻辑里可以利用 break 语句跳出 switch 逻辑。如果对一路 case 没有使用 break 语句则根据 C 语言的缺省语法在处理完当前 case 分支后会继续进入紧跟着的下一个 case 分支(如果有的话)继续处理。有时候我们会明确不写 break 以达到上述效果,但更多的时候却是忘记写 break,造成程序逻辑异常,而这种问题往往很难定位。Linux 内核也是用 C 语言写的,所以同样受到这个问题的困扰。为了解决上述问题,内核社区和 gcc 社区通(狼)力(狈)合(为)作(奸),从 GCC 7 开始,提出了一个特殊的编译选项 “-Wimplicit-fallthrough”。打开这个编译选项后,除非程序员在某个 switchcase 分支中通过特殊的关键字扩展(fallthrough)来明确告诉 gcc 这里的确不需要 break,否则 gcc 会在编译时给出告警。工具手段是有了,但内核中究竟有多少处(严格地说就是和 switch-case-break 有关)代码需要加上这些关键字扩展说明呢。可以预见这是一件多么闹心的事情。内核代码涉及千千万万的开发人员,就算 Linus 大神一声令下,相关人等限期 XX 天内自检完毕,恐怕也很难在短时间内完成这项清理工作;换句话说在编译内核时 “-Wimplicit-fallthrough” 这个编译选项始终是英雄无用武之地啊!但内核社区里真是一个英雄辈出的地方,初生牛犊不怕虎,新进内核开发人员 Gustavo A. R. Silva 竟然一个人埋头花了两年多的时间,把内核几千万行代码都撸了一遍,统计并完成了一共 2311 处 fallthrough 相关改动(此处应有掌声)。所有的改动最终在 5.3-rc2 告一段落,这也意味着从此以后,内核的 Makefile 文件中,缺省的编译选项将会多一个选择 - “-Wimplicit-fallthrough”。

关键词: Linux, fall-through

Mozilla 吹响进军 WebThings 的号角

The “Web of Things” (WoT) is meant as a way to enable Internet of Things (IoT) devices to appear on the web. Mozilla’s entry into the WoT world is the WebThings project, which consists of both a Framework API and a Gateway software distribution to host applications. On July 25, the project announced the Gateway 0.9 release with support for the Turris Omnia wireless home router.

Web of Things” (WoT) 的目标是希望提供一种更灵活便捷的方法,使得 Internet of Things (IoT,物联网)设备能在互联网上更容易被 “发现(appear)” 。最近 Mozilla 发布了自己的 WebThings 项目,宣告了 Mozilla 也进入了 WoT 这一领域。WebThings 让用户可以通过网页监控设备,它包括 WebThings Gateway 和 WebThings Framework 两个部分。其中,WebThings Gateway 是用于家庭智能网关的软件发行版,专注于隐私、安全和互动;WebThings Framework 可以帮助开发者构建可重复利用的软件组件集。在今年 7月 25 日,Mozilla 发布了 Gateway 的 0.9 版本,具体承载的硬件为 Turris Omnia 的无线家庭路由器。

关键词: Mozilla, WoT, IoT, WebThings

GNU 工具链将引入对 Compact C Type Format 的支持

The Compact C Type Format (CTF) is a way of representing information about a binary program; it can be seen as a simpler alternative to the widely used DWARF format. While CTF has been around for some years, it has not seen much use in the Linux world. According to Elena Zannoni, who talked about CTF at the 2019 Open Source Summit Japan, that situation may be about to change; work is underway to bring CTF support to the GNU tools shipped universally with Linux systems.

大家知道当我们运行 GCC 的时候一旦带上 ”-g” 选项,则在编译的时候,编译器会从源文件中收集大量的信息,例如变量名、变量类型、变量所在行号、函数名、函数参数、函数的地址范围、行号和地址的对应关系等等,然后按照一种特定的格式写入到编译后的文件中。调试的时候,调试器便从文件中读取并解析这些内容,从而方便人们对程序的调试。调试信息一般都是按照什么样的格式存放的呢?主要有下面几种:stabs,COFF,PE-COFF,OMF,IEEE-695 和 DWARF。其中 DWARF 在 Linux 中被普遍使用。DWARF 的全称是 “Debugging With Attributed Record Formats”,该格式设计灵活,可以包含丰富的调试信息,但带来的缺点是格式复杂,臃肿,加上 “-g” 编译选项后生成的可执行程序文件体积太大,甚至导致某些系统上在提供二进制程序文件时不得不将调试信息和实际可执行指令部分分离开,以单独的 debuginfo 软件包的形式按需下载提供。在今年日本开源峰会上,Elena Zannoni 女士给大家带来了一个好消息是:CTF (Compact C Type Format)作为另一种表达调试信息的格式正在被引入到 Linux 系统上,该格式的特点就是精简且可以满足基本的调试需求。Zannoni 给出了两个典型的对比例子:一个是对于同一个程序,使用 CTF 格式存放的信息只需要区区 213 KB 字节,而同样情况下的 DWARF 格式数据则需要高达 4MB。另一个是对于内核发布,采用 DWARF 的内核 image 占用 1.6GB,而 CRF 的数据是不到 7MB。GNU 的工具链团队目前已经开始着手引入对 CTF 格式的支持。

关键词: Linux, CTF, DWARF

莫非是受了隔壁 RISC-V 盛会的刺激,蓝色巨人 IBM 也正式宣布开源 POWER 处理器指令集

IBM is planning to allow chip designers around the world to freely create OpenPower-compatible processors. The aim is obvious: to encourage the implementation of OpenPower CPUs, and get more Power-based systems out into data centers and the wider world. It also means engineers can customize their own OpenPower chips to run particular AI or analytical workloads, for example.

本周二 IBM 在圣地亚哥的 OpenPOWER 峰会上宣布发布 POWER 指令集架构(ISA)作为开放标准。这一声明是在 OpenPOWER 基金会成立六年之后发布的,该基金会旨在促进第三方供应商创建硬件,这些供应商在数据中心集成了 POWER 架构。 作为该计划的一部分,OpenPOWER 基金将会成为 Linux 基金会的一个部门。

关键词: IBM, OpenPower

GNOME and KDE 将携手承办将于今年 11 月举行的 Linux App 峰会

The GNOME and KDE projects are teaming up to host the Linux App Summit (LAS) that will be held in Barcelona, November 12-15. “LAS is the first collaborative event co-hosted by the two organizations since the Desktop Summit in 2009. Both organizations are eager to bring their communities together in building an application ecosystem that transcends individual distros and broadens the market for everyone involved. KDE and GNOME will no longer be taking a passive role in the free desktop sector. With the joint influence of the two desktop projects, LAS will shepherd the growth of the FOSS desktop by encouraging the creation of quality applications, seeking opportunities for compensation for FOSS developers, and fostering a vibrant market for the Linux operating system.” The CfP is open until August 31.

Linux 在桌面计算机上一直处于分裂状态。最近的消息宣称,“两个主要的 Linux 桌面竞争对手,GNOME 基金会 和 KDE 已经同意合作。” 这两个组织将成为今年 11 月在巴塞罗那举办的 Linux App Summit(LAS)2019 的赞助商。这一举措在某种程度上似乎是对桌面计算不再是争夺支配地位的最佳场所的回应。无论是什么原因,Linux 桌面的粉丝们都有新的理由希望未来出现一个标准化的 GUI 环境。

关键词: GNOME, KDE

联系我们

资讯内容部分来自 “LWN.net“。如果您对某些 LWN 文章感兴趣(譬如希望获得全文翻译的)请扫描二维码加微信联系我们:

tinylab wechat

文末福利

更多 Linux 精彩欢迎透过下方免费体验卡访问『Linux 知识星球』:

『Linux 知识星球』免费体验卡



Read Album:

Read Related:

Read Latest: