内核

如何用 Rust 编写一个 Linux 内核模块

如何用 Rust 编写一个 Linux 内核模块

近些年来 Rust 语言由于其内存安全性和性能等优势得到了很多关注,尤其是 Linux 内核也在准备将其集成到其中,因此,我们特邀阿里云工程师苏子彬为我们介绍一下如何在 Linux 内核中集成 Rust 支持。
抽丝剥茧 Linux 浮点运算的原理

抽丝剥茧 Linux 浮点运算的原理

最近我们有一个需求,需要把用户态的浮点数运算全部放到内核态运行,以提高运行速度,移植的过程中发现问题没有这么简单,然后我们抽丝剥茧,揭开 Linux 对浮点处理的原理。
升级 Ubuntu Linux 内核的几种不同方法

升级 Ubuntu Linux 内核的几种不同方法

这个指南里介绍了 7 种为 Ubuntu 升级 Linux 内核的不同方法。这 7 种方法里,有 5 种需要重启系统来使新内核生效,其他两种则不用。
深入学习 Linux 内核模块

深入学习 Linux 内核模块

lsmod 命令能够告诉你当前系统上加载了哪些内核模块,以及关于使用它们的一些有趣的细节。
如何在 Fedora 30 中设置内核命令行参数

如何在 Fedora 30 中设置内核命令行参数

在调试或试验内核时,向内核命令行添加选项是一项常见任务。即将发布的 Fedora 30 版本改为使用 Bootloader 规范(BLS)。根据你修改内核命令行选项的方式,你的工作流可能会更改。继续阅读获取更多信息。
我应该使用哪些稳定版内核?

我应该使用哪些稳定版内核?

一直以来,尤其是那些现在已经延长支持时间的内核,都是由我和其他人提供支持,因此,给出这个问题的答案并不是件容易的事情。在这篇文章我将尝试去给出我在这个问题上的看法。
Caffeinated 6.828:实验 1:PC 的引导过程

Caffeinated 6.828:实验 1:PC 的引导过程

第一部分主要是为了熟悉使用 x86 汇编语言、QEMU x86 仿真器、以及 PC 的加电引导过程。第二部分查看我们的 6.828 内核的引导加载器,它位于 lab 树的 boot 目录中。第三部分深入到我们的名为 JOS 的 6.828 内核模型内部,它在 kernel 目录中。
什么是 Linux “oops”?

什么是 Linux “oops”?

Linux 内核正在盯着你,当它检测到系统上运行的某些东西违反了正常内核行为时,它会关闭系统并发出一个“oops”!
LKRG:用于运行时完整性检查的可加载内核模块

LKRG:用于运行时完整性检查的可加载内核模块

开源社区的人们正在致力于一个 Linux 内核的新项目,它可以让内核更安全。命名为 Linux 内核运行时防护(Linux Kernel Runtime Guard,简称:LKRG),它是一个在 Linux 内核执行运行时完整性检查的可加载内核模块(LKM)。
哪个 Linux 内核版本是 “稳定的”?

哪个 Linux 内核版本是 “稳定的”?

每次 Linus Torvalds 发布 一个新 Linux 内核的主线版本,几乎都会引起这种困惑,那就是到底哪个内核版本才是最新的“稳定版”?是新的那个 X.Y,还是前面的那个 X.Y-1.Z ?最新的内核版本是不是太“新”了?你是不是应该坚持使用以前的版本?