关于linux内核

关于linux内核的了解资料来源:

1. The Linux Kernel Archives

1. Linux Kernel Organization

全称linux kernel organization;简介中提到,除了分发linux内核外,还有其他不收费的开源软件(未知)

linux内核组织由 The Linux Foundation (linux基金会)管理


2. linux内核

​ 由linus和其他全网hackers从0编写,与 POSIX he SINGLE UNIX 标准兼容。

​ Linux 有如下特点:真实的多任务(true multitasking)、虚拟内存(virtual memory)、共享函数库(shared libraries)、需求加载( demand loading)、共享写入时拷贝可执行文件(shared copy-on-write executables)、合理的内存管理(proper memory management)、支持IPv4和IPv6的多栈连网(multistack networking including IPv4 and IPv6)

​ 对于linux新用户需要知道的:linux kernel 只是可运行的linux系统的一部分。更需要知道了解的是 a distribution of Linux —— linux 发行版才是完整的linux系统。这里是linux内核官网提供的镜像网址(此页面的所有内容还是来自于提供发行版镜像的供应商)

​ 获得发行版镜像的方法:Internet或供应商提供的CD-ROM(网络较慢或其他原因可采用此方法)


3. 阅读FAQ的一些问题

  • blob:big large object,二进制大型物件;

  • fireware:固件

    • 维基百科的回答:fireware是一个跟随linux内核发布的package(软件包),这个软件包中包含了针对确定硬件的必要的部分或全部功能所必须的二进制blob。这些二进制blob是其硬件制造商的专有的。
  • fireware blob (在Ask Ubuntu的回答)

    • 硬件制造商会将器件功能隐藏进闭源的blob中,并跟随driver发布blob。这些blob是被加载到硬件中,而后OS可以通过driver管理设备。fireware不仅仅是driver,它是由设备执行的代码,并且可以与driver通信。
    • linux的维护人员从供应商处或 drivers 获得 fireware,并将blob累加到 linux-firmware.git
    • 发行版的维护人员(比如Canonical)将fireware打包。比如在ubuntu是 linux-firmware 软件包,是由内核 linux-firmware git 和每次的更新内容组成。
  • 稳定版 stable/EOL 和 长期版 longterm 的含义

    • “stable/EOL”:到达"End of Life",后续不会再发布此内核的漏洞修复(bugfixes)。

    • “longterm”:维护者会对此内核版本在更长一段时间内进提供漏洞修复。

      查看是内核版本是稳定版还是长期维护版:Active kernel releases

  • LTS 的内核在首页(the front page)被标记为 "stable"的原因:

​ 如果没有其他通用的 stable 内核版本,发布在在Release页面(上两行的超链接Active…)的 LTS 内核会被标记为 “stable”;这样做是为了避免破坏监视kernel.org的自动解析器,因为它总是期望有一个标记为 “stable” 的内核版本。

Linus已经标记(tagged)了一个新内核版本,但是该版本未显示在首页:

​ Linus Torvalds PGP-signs git repository 标记了所有的主线(mainline)内核版本,但是为了生成可下载的tarball文件,单独的PGP签名(signatures)集合要被稳定内核版本团队生成。由于 Linus 和稳定内核版本成员所处的时区不同,在主线发布版本被标记时和PGP-signed 的tarball文件可用时,通常有鸡哥小时的延迟。一旦这个过程完成,主页就会更新。

  • 以3.10.0-1160.45.1.foo 为例,在哪里可以找到此内核版本?

​ 版本号中存在破折号(dash)是被linux发行版打包的,并且被大量修改,因此需要向相应发行版供应商获取内核源代码。

内核主页提供的发行版地址:linux内核官网提供的镜像网址

  • 向对应发行版提交与内核有关的问题
发行版地址
UbuntuReport a problem in Ubuntu
Fedora ProjectHow to file a bug :: Fedora Docs (fedoraproject.org)
Arch LinuxArch Linux Bugtracker:: Arch Linux: Tasklist
Linux Mint[Reporting an issueLinux Mint Projects by linuxmint
Debian GNU/LinuxDebian – Debian 缺陷跟踪系统——报告缺陷
Red HatRed Hat Bugzilla Main Page
OpenSUSEBugzilla Main Page (opensuse.org)
SUSEBugzilla Main Page (suse.com)
Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐