Linux上提供一个针对macOS软件的translation layer(翻译层),有点类似Wine这个项目所做的工作。...根据项目官方网站,项目名“Darling”是"Darwin”和“Linux”的组合而成的。Darwin是macOS基金会的开源工作,主要提供了macOS底层的Unix层。...▎What can you do with Darling Darling还是跟Wine不同,没法在Linux上运行例如Xcode IDE这样的完整macOS GUI程序。...总之,还需要一些时间才能看出Darling会否是一个成功的项目,希望最终能达到像Wine那样的成功,使得大量macOS application都能在Linux上运行起来。...可以确定的是,目前已经有一组开发者很有兴趣并且全力在想办法能让macOS application在Linux上运行起来。 LWN文章遵循CC BY-SA 4.0许可协议。 END
原文:Active memory defragmentation (https://lwn.net/Articles/105021/) 原创:By corbet @ Oct. 5, 2004 翻译:...Last month, this page looked at Nick Piggin's kswapd changes(https://lwn.net/Articles/101230/) which...One of those is Marcelo Tosatti, who posted a patch(https://lwn.net/Articles/104843/) which adds active...Dave Hansen described(https://lwn.net/Articles/105023/) two patches adding hotplug memory support - one
PuzzleFS container filesystem By Jonathan Corbet September 25, 2023 Kangrejos ChatGPT translation https://lwn.net...[感谢Linux基金会支持我们参加此活动。] 全文完 LWN 文章遵循 CC BY-SA 4.0 许可协议。
最初,Linux 内核是在单处理器系统上开发的 —— 当然可以理解,因为那时我们手头只有这种系统 —— 因此,代码在很大程度上基于这样的假设:它在 CPU 上运行,完全不存在其他的 CPU。...于是 BKL 最终需要被引入,才能让 Linux 能够运行在那些产业分析师向我们保证的未来将会大行其道的多处理器机器上。...在许多子系统中采取的方法(在 https://lwn.net/Articles/283066/ 一文中有更深入地描述)是将 BKL 下移至系统的更底层级别。...有关此机制的更详细讨论,请参见这篇文章 https://lwn.net/Articles/779738/ 以及 Weisbecker 为改进它所做的另一次尝试。...全文完 LWN 文章遵循 CC BY-SA 4.0 许可协议。
fast, low-overhead stack traces By Jake Edge August 8, 2023 OSSNA ChatGPT assisted translation https://lwn.net...她指出,关于现在已被接受的 Fedora 37 提案就要在该发行版的构建中默认启用帧指针的讨论(LWN 有报道)也触及了帧指针和 EH frame 方法的一些问题。...全文完 LWN 文章遵循 CC BY-SA 4.0 许可协议。
https://elixir.bootlin.com/linux/v6.5-rc3/source/fs/eventpoll.c https://man7.org/linux/man-pages/man2.../epoll_ctl.2.html https://lwn.net/Articles/667087/ https://lwn.net/Articles/542629/ https://www.man7....org/linux/man-pages/man7/socket.7.html https://www.geeksforgeeks.org/difference-between-so_reuseaddr-and-so_reuseport
https://github.com/torvalds/linux/blob/master/arch/x86/entry/syscalls/syscall_64.tbl 2....http://man7.org/linux/man-pages/man2/syscall.2.html 3. 系统调用的man文档。...http://man7.org/linux/man-pages/dir_section_2.html 4. 系统调用的源码分析。...Linux内核源码分析 - 系统调用 Linux内核源码分析 - 系统调用 . 续 5. 系统调用的相关文章。...https://lwn.net/Articles/604287/ https://lwn.net/Articles/604515/
《操作系统与存储:解析Linux内核全新异步IO引擎——io_uring设计与实现》(一) 《操作系统与存储:解析Linux内核全新异步IO引擎——io_uring设计与实现》(二) https://...v=-5T4Cjw46ys https://lwn.net/Articles/776703/ https://github.com/axboe/liburing 保持更新;
Linux 内核在 2022 年主要发布了 5.16-5.19 以及 6.0 和 6.1 这几个版本,每个版本都为 eBPF 引入了大量的新特性。...eBPF 进阶: 内核新特性进展一览 BPF kfuncs Bloom Filter Map:5.16 Compile Once – Run Everywhere:Linux 5.17 bpf_loop...BPF: Implement bloom filter map https://lwn.net/Articles/868024/ Compile Once – Run Everywhere:Linux...5.17 Linux 5.17 为 eBPF 添加了一次编译到处执行(Compile Once – Run Everywhere,简称 CO-RE),大大简化了 eBPF 程序处理多版本内核兼容时的复杂性以及循环逻辑的处理...所以,Linux 内核社区更推荐所有开发者使用 CO-RE 和 libbpf 来构建 eBPF 程序。实际上,如果你看过 BCC 的源代码,你会发现 BCC 已经把很多工具都迁移到了 CO-RE。
想起来大约四五年前,在linux-2.6.x上的时候,用一种很极端的方法实现过time函数。 下面就简单分析一下几种gettimeofday的实现。当然,实现方法是包括但不限于以下。...目前主流的CPU和Linux都是使用这种方式的。syscall相比于int 0x80,更加快速。...4,vsyscall LWN上有所介绍,https://lwn.net/Articles/446528/ The vsyscall area is the older of these two mechanisms...代码实现在linux/arch/x86/entry/vsyscall/vsyscall_64.c ?
Linux 内核在 2022 年主要发布了 5.16-5.19 以及 6.0 和 6.1 这几个版本,每个版本都为 eBPF 引入了大量的新特性。...-- TOC -->eBPF 进阶: 内核新特性进展一览BPF kfuncsBloom Filter Map:5.16Compile Once – Run Everywhere:Linux 5.17bpf_loop...BPF: Implement bloom filter map https://lwn.net/Articles/868024/Compile Once – Run Everywhere:Linux 5.17Linux...比如,你可以用 bpf_core_type_exists() 和bpf_core_field_exists() 分别检查内核数据类型和成员变量是否存在,也可以用类似 extern int LINUX_KERNEL_VERSION...所以,Linux 内核社区更推荐所有开发者使用 CO-RE 和 libbpf 来构建 eBPF 程序。实际上,如果你看过 BCC 的源代码,你会发现 BCC 已经把很多工具都迁移到了 CO-RE。
Linux 2.4.19: http://lwn.net/2001/0301/a/namespaces.php3 [2] Linux 2.6.19: http://lwn.net/Articles/179345.../ [3] Linux 2.6.19: http://lwn.net/Articles/187274/ [4] Linux 2.6.24: http://lwn.net/Articles/259217/...[5] 始于Linux 2.6.24 完成于 Linux 2.6.29: http://lwn.net/Articles/219794/ [6] 始于 Linux 2.6.23 完成于 Linux 3.8...: http://lwn.net/Articles/528078/ [7] stat(): http://man7.org/linux/man-pages/man2/stat.2.html [8] Namespaces...in operation, part 2: the namespaces API: https://lwn.net/Articles/531381/ [9] Docker基础技术:Linux Namespace
egui changelog :https://github.com/emilk/egui/blob/master/CHANGELOG.md 文章 - 致力于使用 Rust 编写内核代码 这篇来自 LWN.net...Rust-for-Linux项目在过去一年中增加了一名全职工程师和一名学生开发者,并得到了多家公司的支持。...Committing to Rust for kernel code : https://lwn.net/SubscriberLink/952029/412bfd44912e90b2/ Week In
fallocate(fd, FALLOC_FL_PUNCH_HOLE|FALLOC_FL_KEEP_SIZE, offset, length); Punching holes in files https://lwn.net...如果用 3.15 之后的 linux kernel ,在 ext4 (only for extent-based files) 和 XFS 文件系统上, http://man7.org/linux/man-pages.../man1/fallocate.1.html http://man7.org/linux/man-pages/man2/fallocate.2.html fallocate 这个 syscall 新增了
先看介绍:https://lwn.net/Articles/764482/本文不会对上文做翻译,只是谈谈自己的理解。...接下来再看看patch:https://lwn.net/ml/linux-kernel/20180907214047.26914-1-jschoenh@amazon.de/ 我的天,60个patch.....要点如下: 一组CPU 一组CPU按照现代服务器CPU缓存层次化布局来分组,类似Linux调度域那般的CPU分组方式。...这是 并行操作系统调度 的正确思路,和传统的Linux调度器核心是孑然不同的。...虽然Linux内核实现了组调度,但却没有实现组CPU。 换句话说, 现代Linux,现代Windows等现代操作系统内核对待多CPU平台的态度相当于对待多个单CPU平台的叠加。
Rust 代码在内核中的内存模型 LWN.net 发布了一篇文章,讨论了 Rust 代码在内核中如何适应内存模型的问题。...目前,内核开发者更熟悉 Linux 内核内存模型(LKMM),因此,当 Rust 代码与 C 代码交互时,应使用 C 代码所使用的模型。...阅读原文: https://lwn.net/SubscriberLink/967049/0ffb9b9ed8940013/ 一款运行在 UEFI 上的 IRC 客户端 Axle OS 的开发者发布了一篇文章
导论 Mount namespaces 是第一个进入Linux内核的namespace,首次出现在Linux 2.4.19版本。...因此,在大多数现代Linux发行版中,默认传递类型实际上是MS_SHARED。但是,还不能就此作结论。...THE END 本文中,我们讲解了mount namespace和共享子树,大家也可以阅读其他lwn上其他关于namespace的文章。...namespace系列链接:https://lwn.net/Articles/531114/#series_index 原文链接: https://lwn.net/Articles/689856/ 本文来源...:Linux内核之旅 ----
关于Linux内核月报 Linux阅码场 Linux阅码场内核月报栏目,是汇总当月Linux内核社区最重要的一线开发动态,方便读者们更容易跟踪Linux内核的最前沿发展动向。...https://github.com/alibaba/system-register-tool 文件系统和Block Layer 2.1 新的IO调度算法:i10 补丁:https://lwn.net...2.2 fscrypt支持直接IO 补丁:https://lwn.net/Articles/837510/ fscrypt:https://www.kernel.org/doc/html/latest/...2.3 close_range() 新增参数标志 CLOSE_RANGE_CLOEXEC 补丁:https://lwn.net/Articles/837602/ close_range()是比较新的系统调用了...2.4 支持直接读写压缩的数据 补丁:https://lwn.net/Articles/837656/ 这补丁添加了一些接口,实现直接从支持压缩的文件系统中读取裸的压缩数据,而不经过文件系统的透明解压过程
实际上KVM在2006年就已经被Qumranet开源并推向了Linux内核社区里。2007年2月发布的linux内核2.6.20正式带有KVM模块。所以KVM实际上12岁了。...在2016年KVM十周年时有篇文章回顾了KVM历史,《Ten years of KVM》:https://lwn.net/Articles/705160/ 十年之后,KVM已经成为主流开源云基础设施的重要技术支撑...http://lkml.iu.edu/hypermail/linux/kernel/0610.2/1369.html 第一次对AMD-V支持patch: ?...http://lkml.iu.edu/hypermail/linux/kernel/0611.3/0850.html 第一次进入内核upstream: ?...第一次进入Linux发行版: Linux 2.6.20,released on 2007-02-04。 第一次进入RHEL: RHEL 5.4 ,released on 2009-09-02。
系统调用(syscall) 在 Linux 的系统实现中,分为了用户态和内核态。...截止到 Linux 5.4 版本内核,64 位操作系统中大概有 547 个系统调用,具体参见syscall_64.tbl[4]。 ?...[14] The /proc Filesystemn 内核文档[15] LWN Syscall part 1[16] part2[17] open(2)[18] How to turn any syscall.../doc/html/latest/filesystems/proc.html [16] part 1: https://lwn.net/Articles/604287/ [17] part2: https...://lwn.net/Articles/604515/ [18] open(2): https://man7.org/linux/man-pages/man2/open.2.html [19] How
领取专属 10元无门槛券
手把手带您无忧上云