开源先驱 Alan Cox:Linux 的重要推动者

注:本文为 "开源先驱 Alan Cox" 相关合辑。(了解一下 Linux 往事中的先驱)

英文引文,机翻未校。

中文引文,略作重排。

未整理去重。

图片清晰度受引文原图所限。

如有内容异常,请看原文。


Alan Cox (computer programmer)

艾伦・考克斯(计算机程序员)

Alan Cox is a British computer programmer renowned for his pivotal role in the early development and stabilization of the Linux kernel, including maintenance of its stable release branches and enhancements to core subsystems such as networking.[1][2] His contributions date back to the kernel's nascent stages in the early 1990s, where he addressed critical bugs, implemented symmetric multiprocessing (SMP) support in collaboration with others, and refined the terminal layer for improved usability.[3] Cox's work on the networking stack, in particular, fortified Linux's capabilities for reliable data transmission, enabling its adoption in diverse computing environments from embedded systems to servers.[1] Employed by Red Hat from 1999 to 2009, Cox focused on kernel fixes and stable releases while advancing open-source projects at home, emphasizing the intrinsic rewards of community-driven software improvement over proprietary constraints.[3][2] He later joined Intel around 2011, contributing to graphics support for specific hardware, but departed the company and stepped back from active kernel development by 2013, citing frustrations with certain distributions like Fedora 18.[3[4] Throughout his career, Cox advocated for free software principles, co-signing efforts against software patents alongside Linus Torvalds to preserve innovation in Europe.[5] His technical rigor and commitment to empirical debugging have left a lasting legacy in Linux's evolution as a robust, widely deployed operating system kernel.[1]

艾伦・考克斯是一名英国计算机程序员,因在 Linux 内核的早期开发与稳定化进程中发挥的关键作用闻名,其中包括维护内核的稳定发行分支,以及对网络等核心子系统进行功能增强 [1][2]。他的贡献可追溯至 20 世纪 90 年代初 Linux 内核的初创阶段,彼时他修复了大量关键漏洞,与团队合作实现了对称多处理(SMP)的支持功能,并优化了终端层以提升使用体验 [3]。考克斯在网络协议栈方面的工作尤为突出,强化了 Linux 内核的可靠数据传输能力,使其能在从嵌入式系统到服务器的各类计算环境中得到应用 [1]。1999 年至 2009 年,考克斯任职于红帽公司,期间专注于内核漏洞修复与稳定版本发布,同时推动本土开源项目发展,他更看重社区驱动的软件优化所带来的内在价值,而非受专有软件的限制 [3][2]。2011 年左右,他加入英特尔公司,为特定硬件的图形支持功能做开发工作,但到 2013 年时,因对 Fedora 18 等部分发行版存在不满,他从英特尔离职并退出内核的一线开发工作 [3][4]。在整个职业生涯中,考克斯始终倡导自由软件理念,曾与莱纳斯・托瓦兹联合署名,共同发起反对软件专利的行动,以维护欧洲的技术创新环境 [5]。他严谨的技术态度与对实证调试的坚持,为 Linux 内核发展为一款稳定、广泛部署的操作系统内核留下了深远影响 [1]。

Early Life and Education

早年生活与教育

Childhood and Initial Interests

童年经历与早期兴趣

Alan Cox was born on 22 July 1968 in Solihull, England.[2][6] Cox's initial exposure to computing centered on self-directed exploration rather than structured education, with early pursuits including the development of concepts for personal operating systems and engagement with multi-user dungeons (MUDs).[7] He began by playing Essex MUD, an early networkable implementation, which exposed him to Unix-based virtual environments and inspired further experimentation in efficient, multi-user software design.[8] These interests manifested in practical projects, such as prototyping ideas for custom operating systems and adapting MUD frameworks to incorporate Unix-like facilities for enhanced functionality and portability.[7] Cox initially relied on Amiga hardware for development, valuing its capabilities for personal computing tasks, but recognized its limitations---"getting a bit long in the tooth"---for scaling networked applications like MUDs, prompting a shift toward more robust PC exploration to support hardware-intensive server-side requirements.[7] This transition underscored his emphasis on pragmatic hardware choices driven by project needs over platform loyalty.[7]

艾伦・考克斯于 1968 年 7 月 22 日出生在英国索利赫尔 [2][6]。考克斯最初接触计算机是通过自主探索,而非系统化的教育,他早年的研究方向包括个人操作系统的概念开发,以及参与多用户地下城(MUD)的相关实践 [7]。他最初接触的是埃塞克斯多用户地下城,这是一款早期的可联网版本,让他得以接触基于 Unix 的虚拟环境,并启发他进一步尝试设计高效的多用户软件 [8]。这些兴趣最终落地为实际项目,比如为定制操作系统制作原型,以及改造多用户地下城的框架,融入类 Unix 的功能特性,提升其功能性与可移植性 [7]。考克斯最初使用 Amiga 硬件开展开发工作,看重这款硬件在个人计算任务中的表现,但他发现,对于多用户地下城这类需要横向扩展的网络应用,该硬件已显现出局限性 ------ 用他的话来说就是 "稍显老旧",因此他转而使用性能更稳定的个人计算机,以满足服务器端对硬件资源的高要求 [7]。这一转变也体现出,他更倾向于根据项目需求做出务实的硬件选择,而非固守某一平台 [7]。

Academic Background

教育背景

Alan Cox pursued undergraduate studies in computer science, initially at Aberystwyth before transferring to Swansea University, where he graduated with a Bachelor of Science degree in 1991.[9] His education emphasized practical computing skills amid the department's access to shared resources, including university machines that supported experimental software installations.[10] During his time at Swansea in the late 1980s and early 1990s, Cox installed an early version of Linux on a campus computer to achieve greater stability for networking-related projects, leveraging the institution's permissive environment for such modifications.[9] This hands-on approach reflected the department's culture of collaborative problem-solving, which connected individual tinkering with emerging technologies to wider software experimentation.[10] Cox did not pursue advanced research degrees in computer science, prioritizing applied development over theoretical academia; he later obtained a Master of Business Administration from Swansea University in 2005.[11]

艾伦・考克斯本科就读于计算机科学专业,最初入学阿伯里斯特威斯大学,后转学至斯旺西大学,并于 1991 年在该校获得理学学士学位 [9]。他就读的院系拥有丰富的共享资源,包括可安装实验性软件的校内计算机,因此其大学教育十分注重培养实际的计算机操作能力 [10]。20 世纪 80 年代末至 90 年代初,在斯旺西大学就读期间,考克斯为了让网络相关项目的运行更稳定,在一台校内计算机上安装了早期版本的 Linux,校方对这类技术改造的宽松态度也为他提供了条件 [9]。这种实践导向的研究方式,也体现了该院系注重协作解决问题的文化,将个人对新兴技术的探索与更广泛的软件实验相结合 [10]。考克斯并未继续攻读计算机科学的高阶研究型学位,他更重视应用型开发,而非理论学术研究;他后于 2005 年在斯旺西大学取得了工商管理硕士学位 [11]。

Entry into Computing and Open-Source

涉足计算机领域与开源事业

Development of AberMUD

阿伯多用户地下城(AberMUD)的开发

Alan Cox initiated the development of AberMUD in 1987 as a student at the University of Wales, Aberystwyth, creating one of the earliest portable multi-user dungeon (MUD) codebases. Written in the B programming language for a Honeywell mainframe, the game enabled networked, text-based multiplayer interactions where participants could explore virtual environments, engage in combat with monsters or other players, and solve puzzles collaboratively.[12][13] This effort built on Cox's prior experience playing earlier MUDs, such as the original Essex University implementation, and addressed limitations in existing systems by prioritizing efficiency and networkability for broader adoption.[8] In late 1988, Cox ported the codebase to the C programming language, dubbing it AberMUD2, to support execution on Unix systems, including those at institutions like Southampton University. This adaptation significantly improved portability, allowing the software to operate across diverse academic computing infrastructures without reliance on proprietary hardware. The resulting version emphasized modular design for easier maintenance and extension, reflecting Cox's focus on practical, scalable software that accommodated growing user demands in resource-constrained environments.[14] AberMUD's distribution model involved freely sharing the source code among developers and universities, which spurred variants and installations worldwide and prefigured collaborative development practices central to later open-source projects. By making the codebase publicly available rather than restricting it to closed systems, Cox facilitated community-driven enhancements, such as custom world-building tools and performance optimizations, underscoring a preference for functional, evolvable software unbound by commercial constraints. This approach not only amplified AberMUD's influence on subsequent MUD derivatives but also honed Cox's expertise in multi-user networking protocols, laying groundwork for his broader contributions to distributed systems.[15][16]

1987 年,艾伦・考克斯还是威尔士大学阿伯里斯特威斯分校的学生,他彼时启动了阿伯多用户地下城(AberMUD)的开发工作,打造出最早的可移植多用户地下城(MUD)代码库之一。这款游戏以 B 编程语言为霍尼韦尔大型机开发,支持基于文本的网络多人交互,玩家可在游戏中探索虚拟环境、与怪物或其他玩家对战,还能协作解开谜题 [12][13]。考克斯的这项开发工作,基于他此前玩过的初代多用户地下城游戏(如埃塞克斯大学开发的原版)的体验,他将效率与可联网性放在首位,以此解决现有系统的局限性,让这款游戏能被更广泛地使用 [8]。1988 年末,考克斯将该代码库移植到 C 编程语言中,并将其命名为 AberMUD2,使其能在 Unix 系统上运行,其中包括南安普顿大学等院校的校内系统。这一改造大幅提升了软件的可移植性,使其能在各类高校的计算基础设施上运行,无需依赖专有硬件。优化后的版本采用模块化设计,便于维护和功能扩展,这也体现出考克斯的开发理念 ------ 打造实用、可扩展的软件,以满足资源受限环境下不断增长的用户需求 [14]。阿伯多用户地下城采用的分发模式是在开发者与高校间免费共享源代码,这一模式推动了该游戏的各类衍生版本在全球落地部署,也为后来开源项目的核心协作开发模式奠定了雏形。考克斯选择将代码库公开,而非局限在封闭系统中,这一做法让社区得以驱动软件的功能增强,比如开发定制的世界构建工具、优化软件性能等,也体现出他对功能性强、可迭代进化、不受商业限制的软件的偏爱。这一开发与分发模式不仅让阿伯多用户地下城对后续的多用户地下城衍生作品产生了深远影响,也让考克斯的多用户网络协议专业能力得到锤炼,为他后续为分布式系统领域做出更多贡献打下了基础 [15][16]。

Initial Linux Adoption

初次接触并使用 Linux

In 1991, while developing AberMUD, a multi-user dungeon game requiring robust networking capabilities, Alan Cox sought a Unix-like environment to extend beyond the limitations of his Amiga system.[3] He encountered Linus Torvalds's announcement of Linux on the Minix newsgroup and installed an early version, finding it more usable than Minix for his immediate needs, particularly in providing Unix-like facilities without the hardware constraints of alternatives like 386BSD, which demanded a floating-point unit and extensive configuration.[7] This adoption was practical and serendipitous, driven by the kernel's ability to "just work" for AberMUD enhancements after initial testing revealed superior stability in networking tasks compared to contemporaries.[3][17] Cox's early engagement stemmed from hands-on experimentation, where Linux demonstrated empirical reliability advantages---such as fewer crashes during network-intensive operations---for his project-specific requirements, outperforming systems like Windows, which he deemed inadequate, and Minix, which lacked sufficient maturity.[7][3] Initial distributions facilitated this transition; MCC Interim Linux and subsequent Softlanding Linux System (SLS) offered simpler installation processes relative to the era's standards, enabling quicker setup on commodity hardware without proprietary dependencies.[7] These experiences prompted Cox to submit patches addressing bugs and deficiencies encountered in his workflow, initially focused on stabilizing networking for AberMUD rather than broader kernel architecture.[17] By late 1991, around Linux version 0.95, he had installed the kernel specifically to advance game development, marking the onset of contributions rooted in verifiable, need-driven fixes rather than ideological commitment.[17] This phase underscored Linux's causal edge in practical utility, as Cox's firsthand validation prioritized systems that reliably supported iterative coding over those prone to setup failures or incomplete features.[3]

1991 年,艾伦・考克斯正开发阿伯多用户地下城 ------ 这款多用户地下城游戏需要强大的网络支持能力,他为了突破 Amiga 系统的局限性,开始寻找类 Unix 的运行环境 [3]。他在 Minix 新闻组看到了莱纳斯・托瓦兹发布的 Linux 相关公告,随后安装了 Linux 的早期版本,发现该系统比 Minix 更能满足他的即时需求,尤其是它能提供类 Unix 的功能,且没有 386BSD 等替代系统的硬件限制 ------386BSD 需要浮点运算单元,还需进行大量配置工作 [7]。考克斯选择使用 Linux 是务实且偶然的,经过初步测试,他发现这款内核在网络任务中的稳定性远超同期系统,能顺畅支撑阿伯多用户地下城的功能升级,这是他选择该系统的核心原因 [3][17]。考克斯早期参与 Linux 相关工作源于实际的实验探索,针对他的项目需求,Linux 展现出了经实践验证的可靠性优势,比如在网络高负载操作中崩溃次数更少,表现优于他认为功能不足的 Windows 系统,以及尚未发展成熟的 Minix 系统 [7][3]。早期的 Linux 发行版也为他的系统切换提供了便利;相较于当时的行业标准,MCC 临时 Linux 版本以及后续的软着陆 Linux 系统(SLS)的安装流程更简便,能在普通硬件上快速完成部署,且无需依赖专有软件 [7]。这些使用体验促使考克斯提交补丁,修复他在开发过程中遇到的漏洞与功能缺陷,最初这些补丁的核心目标是稳定阿伯多用户地下城的网络运行,而非对 Linux 内核的整体架构进行改造 [17]。1991 年末,Linux 0.95 版本发布前后,考克斯为推进游戏开发专门安装了该内核,这也标志着他开始为 Linux 内核贡献代码,而这些贡献均基于可验证的、由实际需求驱动的漏洞修复,并非出于意识形态层面的认同 [17]。这一阶段也体现出 Linux 在实际实用性上的显著优势,考克斯通过亲身体验验证,更倾向于选择能稳定支撑迭代开发的系统,而非那些易出现部署失败、功能不完善的系统 [3]。

Contributions to the Linux Kernel

对 Linux 内核的贡献

Early Kernel Development (1991--1995)

内核早期开发(1991-1995 年)

Cox's involvement with the Linux kernel commenced in 1991, soon after Linus Torvalds announced the project, with initial contributions consisting of targeted patches to address stability issues encountered in early versions.[18] These fixes were derived from hands-on testing on hardware at Swansea University, where Cox installed nascent Linux distributions on campus systems to replicate and resolve bugs under real operational loads.[19] A primary focus during this period was refining the kernel's networking subsystem, originally implemented by Ross Biro, through debugging efforts that tackled performance bottlenecks and reliability gaps in the TCP/IP stack.[20] By early 1993, Cox's work on networking code had become central to overcoming obstacles impeding the kernel's progression to version 1.0, enabling more robust data transmission and error handling in multi-user environments.[21] His approach prioritized empirical validation from practical deployments, such as supporting networked MUD servers, over speculative redesigns, yielding verifiable enhancements in uptime and data integrity without assuming broader maintenance responsibilities.[3] This collaboration with Torvalds underscored a commitment to causal problem-solving, where patches were vetted against observed failures rather than untested ideals.[22]

莱纳斯・托瓦兹发布 Linux 项目后不久,艾伦・考克斯便于 1991 年开始参与 Linux 内核的开发工作,他最初的贡献是编写针对性的补丁,修复早期版本中存在的稳定性问题 [18]。这些补丁均源于他在斯旺西大学硬件设备上的实操测试,考克斯在校内系统安装了早期的 Linux 发行版,在实际业务负载下复现并修复各类漏洞 [19]。这一时期,他的核心工作是优化 Linux 内核的网络子系统 ------ 该子系统最初由罗斯・比罗开发,考克斯通过调试解决了 TCP/IP 协议栈中的性能瓶颈与可靠性问题 [20]。到 1993 年初,考克斯在网络代码方面的工作,成为解决 Linux 内核升级至 1.0 版本各类障碍的关键,让内核在多用户环境下的数传传输更稳定,错误处理能力也得到提升 [21]。考克斯的开发理念是,优先通过实际部署进行实证验证(比如为联网的多用户地下城服务器提供技术支持),而非进行纯理论的重新设计,这一方式让内核的运行时长与数据完整性得到了可验证的提升,而他彼时并未承担内核的整体维护工作 [3]。他与托瓦兹的合作,体现出二人秉持着 "针对性解决问题" 的原则,所有补丁的有效性都需结合实际出现的故障进行验证,而非基于未经测试的理想设想 [22]。

Networking Stack and 2.2 Branch Maintenance

网络协议栈开发与 2.2 版本分支的维护

Cox authored and extensively revised large portions of the Linux kernel's networking stack during the early 1990s, addressing initial bugs in the TCP/IP implementation and enabling reliable support for protocols essential to server-grade operations.[23][3] His contributions included debugging the TCP fast path, implementing window clamping to optimize congestion control, and porting BSD-style IP firewall capabilities into the 1.1 kernel series, which improved packet filtering and overall protocol robustness.[24][25] These enhancements, validated by subsequent kernel adoption in networked environments, corrected inefficiencies in memory management for network buffers and elevated Linux's networking performance to compete with proprietary systems.[22][26] As maintainer of the Linux 2.2 kernel branch starting around its 1999 release, Cox managed a series of stable updates through the early 2000s, prioritizing bug fixes, security patches, and compatibility for production systems.[27] He released versions including 2.2.19 in early 2001, 2.2.23 in November 2002, and the final 2.2.26 in February 2004, which incorporated features like LBA48 IDE support and extended IPVS load balancing alongside core stability improvements.[28][29][30] This maintenance extended the branch's viability for enterprise use, where its conservative evolution---focusing on reliability over experimental features---facilitated widespread deployment in data centers despite the shift to newer kernels.[31] Under Cox's stewardship, the 2.2 branch refined symmetric multiprocessing (SMP) support inherited from prior versions, enabling configurations up to 16 processors with tested scalability on Intel and other architectures, as demonstrated by its sustained role in high-availability servers.[32][33] These refinements, grounded in iterative fixes from community reports, contributed to empirical gains in multi-processor throughput, evidenced by the branch's longevity in legacy production environments until at least 2005.[34][35]

20 世纪 90 年代初,考克斯编写并大幅修订了 Linux 内核网络协议栈的大部分代码,修复了 TCP/IP 协议实现初期存在的漏洞,让内核能稳定支持服务器级运行所需的各类核心协议 [23][3]。他的贡献包括调试 TCP 快速路径、实现窗口限制功能以优化拥塞控制,以及将 BSD 风格的 IP 防火墙功能移植到 1.1 版本系列的内核中,这一改动提升了内核的数据包过滤能力,也增强了协议的整体稳定性 [24][25]。这些功能增强经过了后续网络环境中内核部署的验证,修正了网络缓冲区内存管理中的低效问题,让 Linux 的网络性能得以提升,能与专有系统相抗衡 [22][26]。1999 年 Linux 2.2 版本内核发布后,考克斯开始担任该版本分支的维护者,在 21 世纪初,他为该分支推出了一系列稳定更新,核心聚焦于漏洞修复、安全补丁开发,以及保障生产系统的兼容性 [27]。他先后发布了多个版本,包括 2001 年初的 2.2.19 版本、2002 年 11 月的 2.2.23 版本,以及 2004 年 2 月的最终版本 2.2.26,该版本在提升核心稳定性的同时,还新增了 LBA48 IDE 接口支持、扩展了 IPVS 负载均衡功能等 [28][29][30]。考克斯的维护工作让该版本分支仍能适用于企业场景,其保守的迭代策略 ------ 重稳定性而非实验性功能 ------ 让该分支虽已被新版内核替代,却仍能在数据中心中广泛部署 [31]。在考克斯的维护下,2.2 版本分支对前代版本继承的对称多处理(SMP)支持功能进行了优化,让内核能支持最多 16 个处理器的配置,且该扩展性在英特尔及其他架构上均通过了测试,这一点也能从该版本内核长期应用于高可用服务器中得到印证 [32][33]。这些优化均基于社区反馈进行迭代修复,让多处理器的吞吐量实现了经实践验证的提升,而该版本分支直至 2005 年仍在传统生产环境中使用,也印证了优化的实际效果 [34][35]。

Later Involvement and Innovations

后期参与的开发工作与技术创新

Following the release of the Linux kernel 2.2 branch, which Cox maintained until 2007 despite its official end-of-life in 2003, he continued providing -ac patch sets that integrated fixes and refinements for stability, serving as de facto stable releases for users prioritizing reliability over rapid feature integration.[23] These efforts addressed regressions and performance issues empirically observed in testing, countering the mainline's faster evolution under Linus Torvalds.[7] Cox sustained heavy involvement in kernel subsystems through the 2000s, notably maintaining the TTY layer---the interface for terminal handling---until July 2009, during which he implemented refinements to handle edge cases in serial and console interactions, driven by real-world usage data rather than speculative enhancements.[36] This work emphasized verifiable improvements in reliability, such as buffering optimizations, amid growing complexity from multimedia and virtualization integrations.[3] Tensions emerged with kernel directions favoring unproven features, as evidenced by Cox's January 2013 public critique of Fedora 18, where he described it as "the worst Red Hat distro I've ever seen" due to installer instability and regressions like broken hardware detection, attributing these to hype-driven releases over rigorous validation. Such concerns highlighted a preference for causal analysis of failure modes, avoiding deployments of features lacking empirical stability proofs, which contrasted with distributions' push for cutting-edge adoption.[4]

Linux 2.2 版本分支虽在 2003 年正式停止官方维护,但考克斯仍持续为其提供维护支持至 2007 年。在此之后,他还继续推出 - ac 系列补丁集,整合各类漏洞修复与稳定性优化内容,对于更看重可靠性而非快速功能集成的用户而言,这些补丁集实质上成为了该分支的稳定发行版本 [23]。这些工作针对测试中实际发现的功能回退与性能问题进行修复,与莱纳斯・托瓦兹主导的主线内核快速迭代形成了互补 [7]。整个 21 世纪初,考克斯始终深度参与内核子系统的开发工作,其中最值得一提的是,他一直担任 TTY 层(终端处理的接口层)的维护者至 2009 年 7 月,期间他基于实际使用数据,对串行和控制台交互中的边缘场景处理逻辑进行优化,而非进行纯理论的功能增强 [36]。彼时,内核因集成了多媒体和虚拟化功能而变得愈发复杂,考克斯的这项工作聚焦于实现可验证的可靠性提升,比如对缓冲区机制的优化 [3]。考克斯与内核开发团队在开发方向上产生了分歧,核心是团队倾向于加入未经验证的新功能,2013 年 1 月,考克斯公开批评 Fedora 18 发行版便是这一分歧的体现,他称该发行版是 "我见过最糟糕的红帽发行版",原因是其安装程序不稳定,还出现了硬件检测失效等功能回退问题,他认为这些问题的根源是发行版为追求噱头仓促发布,而非经过严谨的测试验证。这一观点也体现出考克斯的开发理念 ------ 对故障模式进行针对性分析,不部署缺乏实证稳定性的功能,这与部分发行版急于采用前沿功能的策略形成了鲜明对比 [4]。

Departure from Linux Development

退出 Linux 内核开发工作

On January 24, 2013, Alan Cox announced via Google+ that he was stepping away from Linux kernel development and resigning from his role at Intel, explicitly citing the need for family time as the primary reason.[37][38] He acknowledged that "family reasons" often serves as euphemistic corporate language for dissatisfaction with management or projects, but emphasized that his decision was literal, requiring undivided attention to personal matters without the distractions of kernel maintenance or professional obligations.[39] This marked the end of over two decades of direct involvement, during which Cox had been a prolific contributor, particularly in networking and stability fixes.The announcement followed closely after Cox's public criticism of Fedora 18, released in late January 2013, which he described as "the worst Red Hat distro I've ever seen" due to pervasive bugs, incomplete features, and overall instability that rendered it unsuitable for production use.[4] While not directly tied to his exit in his statements, this critique highlighted concerns over quality assurance in upstream distributions, potentially reflecting broader frustrations with evolving priorities in the ecosystem, such as rushed integrations and reduced emphasis on rigorous testing. Some observers interpreted the timing as indicative of deeper discontent with kernel governance or leadership styles, drawing parallels to a 2009 incident where Cox temporarily relinquished TTY maintenance duties amid pointed feedback from Linus Torvalds.[18] However, Cox countered such speculation, insisting the departure was not politically motivated or a response to interpersonal conflicts, and community discussions on platforms like Hacker News noted his long history of constructive engagement despite past tensions.[40] Cox's exit represented the departure of a senior maintainer whose expertise in areas like networking stack refinements and bug triage had been instrumental in kernel reliability; contemporaries highlighted the immediate loss of his triage efforts in tools like Kernel Bugzilla.[40] It prompted debates within the Linux community on maintainer retention, project sustainability, and the balance between innovation and stability, with some praising his candor in calling out distribution shortcomings as a service to users, while others critiqued the timing as potentially disruptive during a period of active development.[37] As of October 2025, Cox has not resumed kernel contributions, shifting focus away from open-source kernel work, though the project has continued to advance under other maintainers without documented long-term setbacks directly attributable to his absence.[38]

2013 年 1 月 24 日,艾伦・考克斯通过谷歌社交平台宣布,他将退出 Linux 内核的开发工作,并从英特尔公司离职,他明确表示,陪伴家人是做出这一决定的主要原因 [37][38]。他坦言,"家庭原因" 在企业语境中往往是对管理层或项目不满的委婉说法,但他强调自己的决定确是出于实际的家庭需求,需要全身心处理个人事务,无法再兼顾内核维护与工作职责 [39]。这一决定也标志着,他结束了长达 20 余年对 Linux 内核开发的直接参与,在这期间,他为内核做出了大量贡献,尤其在网络开发与稳定性修复领域。考克斯的离职声明发布前不久,他刚公开批评了 2013 年 1 月末发布的 Fedora 18 发行版,他称该版本因漏洞遍布、功能残缺、整体稳定性极差,完全不适合生产环境使用,是 "我见过最糟糕的红帽发行版"[4]。尽管考克斯表示,这一批评与他的离职无直接关联,但该言论也反映出他对上游发行版质量保障工作的担忧,这或许也体现出,他对 Linux 生态系统发展优先级的转变存在更深层次的不满,比如功能集成过于仓促、对严谨测试的重视程度降低等。部分观察者认为,考克斯选择此时离职,暗示着他对内核的治理模式或领导风格存在更深的不满,还将这一事件与 2009 年的一次争议关联 ------ 彼时考克斯因受到莱纳斯・托瓦兹的尖锐批评,曾暂时辞去 TTY 层的维护职责 [18]。但考克斯驳斥了这类猜测,坚称自己的离职并非出于政治原因,也不是对人际矛盾的回应,而黑客新闻等平台的社区讨论也指出,尽管过往存在诸多分歧,但考克斯始终以建设性的态度参与内核开发 [40]。考克斯的离职,意味着 Linux 内核失去了一位资深维护者,他在网络协议栈优化、内核漏洞分类处理等领域的专业能力,曾是保障内核稳定性的关键;业内人士也指出,他的离开让内核漏洞追踪平台(Kernel Bugzilla)等工具立刻失去了他的漏洞分类处理支持 [40]。这一事件也在 Linux 社区引发了一系列讨论,议题包括维护者的留存、项目的可持续发展,以及创新与稳定性的平衡,部分社区成员称赞考克斯敢于直言发行版的问题,是为用户着想;也有部分成员认为,在内核开发的活跃阶段,他的离职可能会对项目造成一定的干扰 [37]。截至 2025 年 10 月,考克斯仍未恢复为 Linux 内核贡献代码,其工作重心也已离开开源内核开发领域,不过在其他维护者的主导下,Linux 内核项目仍持续推进,暂无公开记录显示,项目的长期发展因他的离开受到直接阻碍 [38]。

Professional Career

职业生涯

Employment at Red Hat

任职红帽公司

Alan Cox joined Red Hat in 1999 as a kernel engineer, a role in which he focused on engineering tasks to support the company's Linux distributions.[4][2] His work emphasized practical aspects of deployment and reliability for enterprise environments, contributing to Red Hat's efforts in delivering stable, supported open-source solutions. This aligned with Red Hat's business model of monetizing open-source software through subscriptions, certifications, and services tailored for commercial users.[37] During his tenure, which lasted until January 2009, Cox's engineering contributions helped integrate enhancements into Red Hat's product lineup, facilitating broader adoption in business settings.[41] In November 2001, Red Hat highlighted his role in a press release announcing his selection as a candidate for MIT Technology Review's TR100, noting his technical achievements in advancing Red Hat's offerings and the Linux industry at large. By 2008, he held the position of fellow at the company, underscoring his seniority in supporting enterprise-focused Linux engineering.[42]

1999 年,艾伦・考克斯以内核工程师的身份加入红帽公司,主要负责为公司的 Linux 发行版提供技术开发支持 [4][2]。他的工作核心聚焦于企业环境中 Linux 的实际部署与可靠性优化,为红帽打造稳定、可提供技术支持的开源解决方案贡献了力量。这一工作方向也与红帽的商业模式相契合 ------ 红帽通过为商业用户提供订阅服务、技术认证以及定制化服务,实现开源软件的商业化变现 [37]。考克斯在红帽的任职期直至 2009 年 1 月,期间他的技术开发工作推动了多项功能增强融入红帽的产品体系,让红帽的产品能在商业场景中得到更广泛的应用 [41]。2001 年 11 月,红帽发布新闻稿,宣布考克斯入选《麻省理工科技评论》TR100 青年创新者榜单,文中重点提及了他在推动红帽产品升级与整个 Linux 行业发展中取得的技术成就。截至 2008 年,考克斯已担任红帽公司的资深研究员,这一职位也印证了他在企业级 Linux 开发领域的资深地位 [42]。

Work at Intel

任职英特尔公司

Alan Cox joined Intel following his departure from Red Hat in 2009, serving as a system architect focused on Linux kernel development to enhance compatibility and performance on Intel hardware platforms.[3][38] His efforts included reworking the kernel's terminal layer to address locking issues and race conditions, alongside developing stable 2D graphics support for Imagination Technologies-based graphics devices integrated into Intel products, such as certain Atom processors.[3][38] These contributions aimed at improving hardware-software integration for embedded and low-power architectures, though specific benchmark data verifying performance gains were not publicly detailed in contemporaneous reports.[3] Cox's tenure emphasized bug fixes and refinements to kernel subsystems, building on his prior expertise in networking and stable releases to support Intel's push for robust Linux adoption in enterprise and consumer devices.[38] He collaborated with kernel maintainers like Linus Torvalds on these integrations, maintaining a positive working relationship amid Intel's sponsorship of his development time.[38][37] In January 2013, Cox resigned from Intel concurrent with his withdrawal from active Linux kernel involvement, attributing the decision primarily to family priorities rather than professional disputes.[37][38] He explicitly denied conflicts with Intel or kernel leadership, stating, "I am departing quite genuinely for family reasons and not because I've fallen out with Linus or Intel or anyone else," though this exit aligned with his expressed concerns over the kernel's growing complexity and direction in broader project discussions.[37][38]

2009 年从红帽公司离职后,艾伦・考克斯加入英特尔公司,担任系统架构师,核心工作是通过 Linux 内核开发,提升英特尔硬件平台的兼容性与性能 [3][38]。他的工作内容包括重新设计内核的终端层,解决锁机制问题与竞态条件,同时为英特尔部分产品(如部分凌动处理器)中集成的、基于想象力科技的图形设备,开发稳定的 2D 图形支持功能 [3][38]。这些贡献旨在优化嵌入式与低功耗架构的软硬件集成效果,不过同期的公开报道中,并未详细披露能验证性能提升的具体基准测试数据 [3]。考克斯在英特尔任职期间,工作核心是内核子系统的漏洞修复与优化,他凭借在网络开发与稳定版本维护领域的积累,为英特尔推动企业级与消费级设备广泛、稳定地使用 Linux 提供了支持 [38]。他与莱纳斯・托瓦兹等内核维护者合作推进这些软硬件集成工作,英特尔为他的内核开发工作提供时间支持,而他与团队也始终保持着良好的合作关系 [38][37]。2013 年 1 月,考克斯从英特尔离职,同时退出 Linux 内核的一线开发工作,他表示这一决定主要是因将家庭放在首位,而非与公司产生职业分歧 [37][38]。他明确否认与英特尔公司或内核管理团队存在矛盾,并表示:"我此次离开确实是出于家庭原因,并非与莱纳斯、英特尔或其他任何人产生不和。" 不过,在此前的各类项目讨论中,考克斯曾多次表达对 Linux 内核日益复杂的架构与发展方向的担忧,而他的离职也与这一态度相契合 [37][38]。

Post-2013 Activities

2013 年后的工作与活动

Following his resignation from Intel on January 24, 2013, Cox relocated to maintain a low public profile in Swansea, Wales, prioritizing family and independent technical endeavors over large-scale open-source commitments.[37][43] In October 2014, Cox launched Fuzix, a compact operating system kernel inspired by System V Unix, targeted at Z80 processors and other low-resource platforms like 8-bit microcontrollers.[44][45] The project, developed under the EtchedPixels GitHub repository, supports multitasking, file systems, and networking in constrained environments, with ports extending to devices such as the Raspberry Pi Pico by 2021.[46][47] Fuzix emphasizes minimalism to enable Unix-like functionality on hardware with kilobytes of RAM, evolving from earlier efforts like UZI through iterative refinements in process management and device drivers.[48] Development of Fuzix has continued sporadically into the 2020s, incorporating bug fixes, interface enhancements, and community ports, though Cox remains the principal architect.[48][49] No substantive contributions to the Linux kernel from Cox have been documented since 2013, reflecting a deliberate pivot to niche, self-directed projects in retro computing and embedded systems.[50] A 2022 documentary filmed in Swansea portrays Cox as retired from mainstream kernel work, focusing instead on these specialized pursuits amid personal life changes, including his 2020 marriage following the 2015 death of his first wife.[51] His post-2013 output garners mentions in enthusiast forums and historical overviews of Unix derivatives, but lacks the institutional backing or visibility of his earlier Linux era.[52]

2013 年 1 月 24 日从英特尔离职后,考克斯迁居至威尔士的斯旺西,刻意保持低调的公众形象,将生活重心放在家庭与独立技术研究上,不再参与大型开源项目的开发工作 [37][43]。2014 年 10 月,考克斯启动了 Fuzix 操作系统内核的开发项目,该内核是一款受 System V Unix 启发的轻量级内核,主要面向 Z80 处理器以及 8 位微控制器等低资源硬件平台 [44][45]。该项目托管在蚀刻像素(EtchedPixels)的 GitHub 代码仓库中,支持在资源受限的环境下实现多任务、文件系统与网络功能,截至 2021 年,该内核已被移植到树莓派 Pico 等设备上 [46][47]。Fuzix 内核秉持极简设计理念,能在仅有千字节级内存的硬件上实现类 Unix 的功能,它以 UZI 内核等早期项目为基础,通过对进程管理与设备驱动的迭代优化不断发展 [48]。进入 21 世纪 20 年代,Fuzix 内核的开发工作仍在断断续续地推进,包括漏洞修复、界面增强以及社区主导的移植工作,而考克斯始终是该项目的核心架构师 [48][49]。2013 年至今,暂无公开记录显示考克斯为 Linux 内核做出过实质性贡献,这也体现出他有意将工作重心转向复古计算与嵌入式系统领域的小众自主项目 [50]。2022 年,一部在斯旺西拍摄的纪录片记录了考克斯的现状,片中显示他已从主流内核开发工作中 "退休",在经历一系列个人生活变故后(包括 2015 年第一任妻子离世,2020 年再婚),他将精力都投入到这些小众技术研究中 [51]。2013 年后,他的研究成果仅在爱好者论坛与 Unix 衍生系统的历史综述中被提及,不再拥有 Linux 开发时期的机构支持与行业关注度 [52]。

Advocacy for Free Software

倡导自由软件理念

反对《数字千年版权法》与相关法律维权行动

In July 2001, following the arrest of Russian programmer Dmitry Sklyarov on July 16 for allegedly violating the Digital Millennium Copyright Act (DMCA) by developing software that decrypted Adobe eBook protections, Alan Cox resigned from the USENIX Advanced Learning Systems (ALS) committee on July 20.[53][54] Sklyarov's detention, prompted by his presentation at the DEF CON conference, highlighted the DMCA's criminalization of tools enabling circumvention of technological protection measures, even when used for research or interoperability purposes. Cox cited this incident as evidence that the law created risks for non-U.S. developers attending American events, arguing it undermined international collaboration in software development.[55][56]In his resignation statement, Cox explicitly urged non-U.S. citizens to boycott U.S.-based conferences and encouraged U.S. organizers to relocate events abroad to maintain global participation until the "DMCA mess" was resolved.[54][57] He framed the DMCA as an overreach that prioritized intellectual property enforcement over practical software engineering needs, such as reverse engineering for bug fixes, security audits, and compatibility---activities essential to open-source progress but liable to prosecution under the act's anti-circumvention provisions.[53] This position reflected Cox's view that such restrictions empirically impeded innovation by deterring analysis of proprietary code, as evidenced by chilled research in encryption and digital rights management systems.[58]Cox's activism extended to legal testimony, including a 2001 declaration in Felten v. RIAA , where he detailed how DMCA fears inhibited academic and industry work on secure systems, reinforcing his call for repeal to restore freedom in code examination.[53][56] By prioritizing unrestricted access to software internals over geopolitical courtesy, Cox positioned the DMCA as a causal barrier to technological advancement, influencing broader free software critiques of intellectual property laws that criminalize functional replication rather than mere copying.[59]

2001 年 7 月 16 日,俄罗斯程序员德米特里・斯克莱罗夫因开发软件破解奥多比电子书的保护机制,被控违反《数字千年版权法》(DMCA)并遭到逮捕。此事发生后,艾伦・考克斯于 7 月 20 日辞去了美国计算机协会(USENIX)高级学习系统(ALS)委员会的职务 [53][54]。斯克莱罗夫是因在 DEF CON 黑客大会上发表相关技术演讲而被拘留,这一事件也凸显出《数字千年版权法》的一项争议条款 ------ 将开发规避技术保护措施工具的行为定为犯罪,即便该工具仅用于研究或实现软件的互操作性。考克斯认为,这一事件证明该法律让前往美国参加活动的非美国开发者面临风险,严重破坏了软件开发领域的国际合作 [55][56]。在离职声明中,考克斯明确呼吁非美国公民抵制在美国举办的各类技术会议,并建议美国的会议主办方将活动迁至海外,直至 "《数字千年版权法》的乱象" 得到解决,以此保障全球开发者的参与权 [54][57]。他认为,《数字千年版权法》的规定超出了合理范围,将知识产权保护置于实际软件工程需求之上,比如逆向工程技术常用于漏洞修复、安全审计与实现软件互操作性,这些都是开源领域发展的核心工作,但根据该法律的反规避条款,此类行为可能会被起诉 [53]。考克斯的这一观点,反映出他认为这类限制会阻碍开发者对专有代码的分析研究,进而从实际层面抑制技术创新,而加密与数字版权管理系统领域的研究陷入停滞,也印证了这一点 [58]。考克斯的维权行动还延伸至法律作证领域,包括 2001 年在 "费尔滕诉美国唱片业协会" 一案中提交声明,他在声明中详细阐述了对《数字千年版权法》的担忧如何阻碍学术界与产业界在安全系统领域的研究,进一步呼吁废除该法律,恢复代码分析的自由 [53][56]。考克斯将无限制访问软件内部代码的权利置于地缘政治礼仪之上,他认为《数字千年版权法》是技术发展的直接障碍,这一观点也影响了自由软件界对知识产权法的广泛批判 ------ 部分知识产权法将功能性复刻定为犯罪,而非仅禁止单纯的复制行为 [59]。

Resignation from USENIX and Broader Stance

辞去美国计算机协会职务与更广泛的立场主张

In July 2001, Alan Cox resigned from the USENIX Advanced Computing Systems Association (ALS) committee, which organized Linux-related conferences, in direct response to the arrest of Dmitry Sklyarov, a Russian programmer detained by US authorities under the Digital Millennium Copyright Act (DMCA) for presenting research on circumventing Adobe's eBook DRM at a USENIX-affiliated event.[54] In his resignation email dated July 20, 2001, Cox declared that Sklyarov's case illustrated the dangers for non-US software engineers traveling to the United States, where routine security research could lead to prosecution for no underlying crime, particularly affecting developers from regions like Eastern Europe with varying legal interpretations of intellectual property.[54] He explicitly stated it was "not safe for non US software engineers to visit the United States" and called for non-US participants to boycott American-hosted computing conferences while urging organizers like USENIX to relocate events abroad until DMCA provisions criminalizing access circumvention were repealed.[53] Cox's declaration in support of related DMCA challenges, filed with the Electronic Frontier Foundation, elaborated that the law's anti-circumvention rules stifled essential free speech in computer security, including open discussion of vulnerabilities and fixes, which he deemed critical for protecting users, infrastructure, and even law enforcement against exploits.[53] This resignation highlighted broader frictions between international academic collaboration in computing and US legal priorities favoring proprietary digital protections, with Cox positioning his exit as a moral stand against hosting events in a jurisdiction where such research invited arrest, regardless of intent or public benefit.[60] Free software advocates praised the move as a principled defense of research freedoms, aligning with Cox's receipt of the Free Software Foundation's 2003 Award for the Advancement of Free Software. However, the action underscored a purist absolutism that prioritized ideological opposition to legal barriers over continued institutional engagement, potentially isolating contributors from US-based resources amid ongoing debates over balancing copyright enforcement with innovation.Cox's broader philosophy championed programming freedoms through open-source models, arguing that proprietary lock-in---exemplified by DRM-enforced restrictions---verifiably harms interoperability, security auditing, and collective problem-solving by legally barring reverse engineering and code inspection, whereas open collaboration accelerates verifiable progress in areas like kernel stability and vulnerability patching.[53][22] He consistently opposed mechanisms like software patents and DMCA-style laws that entrenched such lock-in, viewing them as disincentives to shared knowledge that free software communities inherently mitigate via transparent, auditable codebases.[61] This stance, while lauded by purists for upholding causal links between openness and rapid empirical advancements, has faced counterarguments that unyielding ideological resistance overlooks economic realities, such as proprietary incentives funding specialized R&D that occasionally spills over into open ecosystems, though Cox maintained such benefits rarely outweigh the systemic barriers to universal access and scrutiny.[62]

2001 年 7 月,艾伦・考克斯辞去了美国计算机协会高级计算系统协会(ALS)委员会的职务,该委员会主要负责组织 Linux 相关的技术会议,而他的辞职是对德米特里・斯克莱罗夫被捕事件的直接回应。这位俄罗斯程序员因在美国计算机协会合作举办的活动中,发表破解奥多比电子书数字版权管理(DRM)技术的研究演讲,被美国当局依据《数字千年版权法》逮捕 [54]。在 2001 年 7 月 20 日的离职邮件中,考克斯表示,斯克莱罗夫事件揭示了非美国软件工程师赴美交流的风险 ------ 在美国,常规的安全研究可能会让开发者在无实质犯罪行为的情况下被起诉,这一情况对东欧等知识产权法律解释存在差异地区的开发者影响尤为显著 [54]。他明确表示,"非美国软件工程师前往美国并不安全",并呼吁非美国参与者抵制在美国举办的计算机领域会议,同时敦促美国计算机协会等主办方将会议迁至海外,直至《数字千年版权法》中将规避访问限制定为犯罪的条款被废除 [53]。考克斯向电子前哨基金会提交了声明,支持针对《数字千年版权法》的相关诉讼,他在声明中详细说明,该法律的反规避条款压制了计算机安全领域的核心言论自由,包括公开讨论软件漏洞与修复方案,而他认为这类讨论对于保护用户、网络基础设施,甚至助力执法部门防范网络攻击至关重要 [53]。考克斯的此次辞职,也凸显出计算机领域的国际学术合作,与美国将专有数字保护置于优先地位的法律导向之间的深层矛盾,他将自己的辞职视为一种道德立场 ------ 反对在一个仅因开展相关研究就可能被捕的司法管辖区举办技术会议,无论研究的初衷或公共价值如何 [60]。自由软件倡导者称赞这一行为是对研究自由的原则性捍卫,而考克斯也在 2003 年获得了自由软件基金会颁发的自由软件进步奖,这一荣誉也与他的此次行动相契合。但也有人认为,考克斯的这一做法体现出一种极端的纯粹主义,将从意识形态层面反对法律壁垒置于持续的机构合作之上,在版权保护与创新平衡的持续争议中,这一做法可能会让开源贡献者失去美国的相关资源支持。考克斯的核心理念是,通过开源模式捍卫编程自由,他认为,专有软件的锁定机制(以数字版权管理的限制为典型)通过法律禁止逆向工程与代码分析,切实损害了软件的互操作性、安全审计工作与集体问题解决能力;而开放协作则能让内核稳定性、漏洞补丁开发等领域的技术进步实现可验证的加速 [53][22]。他始终反对软件专利、《数字千年版权法》这类强化专有软件锁定机制的制度,认为这些制度会抑制知识共享,而自由软件社区通过打造透明、可审计的代码库,能从本质上缓解这一问题 [61]。考克斯的这一立场因坚守 "开放与实际技术快速进步存在直接关联" 而受到纯粹主义者的推崇,但也遭到了反驳 ------ 这种强硬的意识形态对抗忽视了经济现实,比如专有软件企业的激励机制会为专业研发提供资金,而这些研发成果有时也会融入开源生态。不过考克斯认为,这类收益远不足以抵消其对知识的普遍获取与审查造成的系统性阻碍 [62]。

Personal Interests

个人兴趣

Model Railroading Business

铁路模型相关创业

Alan Cox founded and operated Etched Pixels, a specialist firm producing etched metal kits for N-gauge model railways, catering to hobbyists seeking detailed components for locomotives, coaches, and accessories.[4] The company incorporated product lines from earlier manufacturers, such as Ultima models, expanding its offerings to include items like wagon underframes and coach detailing parts. Operations emphasized precision etching techniques, aligning with the exacting standards of scale modeling, though the business remained niche and hobby-oriented without scaling to broader commercial production.[63] By the early 2020s, Etched Pixels underwent a wind-down, with Cox distributing select 3D-printable designs and CAD files under non-commercial licenses via public repositories to preserve community access.[64][65] Discussions among modelers indicated transfers of remaining stock and rights to other suppliers, such as for coach-related accessories, reflecting a deliberate phase-out rather than expansion.[63] No public records detail specific financial outcomes, but the venture's scope suggests limited revenue, primarily supporting personal interest in engineering fabrication over profit-driven enterprise.[4] The endeavor served as an outlet for hands-on engineering, involving similar principles of iterative design and component interoperability as in hardware prototyping, yet lacked documented technological breakthroughs or market disruption in model railroading.[64] As of 2024, no active trading or new kit releases from Etched Pixels have been reported, confirming its cessation as a operational entity.[65]

艾伦・考克斯创立并运营了蚀刻像素(Etched Pixels)公司,这是一家专业生产 N 轨距铁路模型蚀刻金属配件套装的企业,服务于需要高精度机车、车厢及配件的铁路模型爱好者 [4]。该公司整合了终极模型(Ultima models)等早期厂商的产品线,将业务范围拓展至货车底架、车厢装饰配件等品类。公司的生产核心聚焦于高精度蚀刻工艺,契合铁路比例模型的严苛标准,不过该业务始终属于小众的爱好型领域,并未扩大至规模化的商业生产 [63]。21 世纪 20 年代初,蚀刻像素公司开始逐步停止运营,考克斯将部分可 3D 打印的设计方案与计算机辅助设计(CAD)文件,以非商业授权的形式发布在公共代码仓库中,让模型爱好者社区能持续获取这些资源 [64][65]。模型爱好者之间的讨论显示,公司剩余的库存与相关产品的授权已转让给其他供应商(如车厢配件供应商),这一做法也体现出考克斯有意逐步终止该业务,而非继续扩张 [63]。暂无公开记录披露该公司具体的财务状况,但从业务规模来看,其营收有限,考克斯创办该公司主要是为了满足自己在工程制造领域的个人兴趣,而非打造以盈利为导向的企业 [4]。这一创业尝试成为考克斯开展实操工程的一个出口,其中涉及的迭代设计、组件互操作性等原则,与硬件原型开发的理念相通,但该公司并未在铁路模型领域取得有记录的技术突破,也未形成市场颠覆效应 [64]。截至 2024 年,暂无蚀刻像素公司开展正常经营或发布新款配件套装的相关报道,这也证实该公司已停止运营 [65]。

Awards and Recognition

荣誉与认可

Cox received the Free Software Foundation's Award for the Advancement of Free Software in 2003 for his contributions to free software development, including early work on the Linux kernel's networking stack; the award was presented at the FOSDEM conference in Brussels.[59] On October 5, 2005, at the LinuxWorld Conference & Expo in London, Cox was given a lifetime achievement award recognizing his long-term maintenance and development of the Linux kernel, particularly the 2.2 and 2.4 branches.[66] The University of Wales Trinity Saint David conferred an honorary fellowship upon Cox on July 18, 2013, acknowledging his pioneering role in open-source software.[67] Swansea University, Cox's alma mater, awarded him an honorary Doctor of Science degree on July 20, 2016, during a degree congregation, honoring his advancements in computer programming and Linux contributions.[68]

2003 年,考克斯荣获自由软件基金会颁发的自由软件进步奖,以表彰他为自由软件发展做出的贡献,包括在 Linux 内核网络协议栈早期开发中的工作;该奖项在比利时布鲁塞尔的 FOSDEM 开源技术大会上为他颁发 [59]。2005 年 10 月 5 日,在英国伦敦举办的 Linux 世界大会暨博览会上,考克斯被授予终身成就奖,表彰他长期为 Linux 内核的开发与维护所做的努力,尤其是对 2.2 和 2.4 版本分支的维护 [66]。2013 年 7 月 18 日,威尔士三一圣大卫大学授予考克斯荣誉院士称号,认可他在开源软件领域的开创者地位 [67]。2016 年 7 月 20 日,在学位授予仪式上,考克斯的母校斯旺西大学为他颁发了荣誉理学博士学位,以表彰他在计算机编程领域的成就,以及为 Linux 发展做出的贡献 [68]。

References

  1. https://www.linuxjournal.com/article/4037
  2. https://www.computerhope.com/people/alan_cox.htm
  3. https://www.linux.com/news/30-linux-kernel-developers-30-weeks-alan-cox/
  4. https://www.silicon.co.uk/workspace/alan-cox-leaves-intel-linux-105279
  5. https://www2.effi.org/julkaisut-tiedotteet-pressrelease-2003-09-22/
  6. https://www.nndb.com/people/572/000023503/
  7. https://www.linuxjournal.com/article/5045
  8. https://landley.net/history/mirror/games/mud-history.html
  9. https://www.technocamps.com/wp-content/uploads/CS-A2-poster-ENG.pdf
  10. https://collections.swansea.ac.uk/s/swansea-2020/page/computer-science
  11. https://uk.linkedin.com/in/alan-cox-a21361319
  12. https://mud.co.uk/richard/cpdec90k.htm
  13. https://gunkies.org/wiki/Multi-User_Dungeon
  14. https://www.topmudsites.com/article08.shtml
  15. http://www.alteraeon.com/articles/muds_and_mudding.html
  16. https://mud.co.uk/richard/imucg5.htm
  17. https://tldp.org/LDP/khg/HyperNews/get/net/net-intro.html
  18. https://www.infoworld.com/article/2262025/key-linux-contributor-alan-cox-steps-down-2.html
  19. http://history.sucs.org/TheSociety/About
  20. https://people.computing.clemson.edu/\~westall/853/notes/netinit.pdf
  21. https://digital-domain.net/lug/unix-linux-history.html
  22. https://machaddr.substack.com/p/kernel-chronicles-insights-and-innovations
  23. https://news.ycombinator.com/item?id=8548738
  24. https://codebrowser.dev/linux/linux/net/ipv4/tcp.c.html
  25. https://www.oreilly.com/openbook/linag2/book/ch09.html
  26. https://www.researchgate.net/publication/3879076_Analysis_and_evaluation_of_the_TCPIP_protocol_stack_of_LINUX
  27. https://lwn.net/1999/features/ACInterview/
  28. https://www.linuxtoday.com/developer/alan-cox-linux-kernel-2-2-19pre9/
  29. https://linux.slashdot.org/story/02/11/30/1334219/linux-kernel-2223-released
  30. https://developers.slashdot.org/story/04/02/25/2120225/linux-kernel-2226----22-is-not-dead
  31. https://www.kernel.org/pub/linux/kernel/v2.2/ChangeLog-2.2.26
  32. https://www.theregister.com/1999/03/10/linux_community_demurs_over_big/
  33. https://ibiblio.org/pub/linux/docs/howto/SMP-HOWTO
  34. https://www.osnews.com/story/21993/eight-years-of-linux-kernel-vulnerable/
  35. https://siduction.org/2013/01/one-pilot-leaves-ship/
  36. https://lwn.net/Articles/343828/
  37. https://www.theregister.com/2013/01/24/alan_cox_quits_linux_development/
  38. https://www.wired.com/2013/01/alan-cox/
  39. https://linux.slashdot.org/story/13/01/24/1334234/alan-cox-exits-intel-linux-development
  40. https://news.ycombinator.com/item?id=5109472
  41. https://lxer.com/module/newswire/view/114064/
  42. https://www.osadl.org/Alan-Cox.hannover-2008-alan-cox.0.html
  43. https://graphsearch.epfl.ch/en/concept/18951013
  44. https://kids.kiddle.co/Alan_Cox
  45. https://forum.vcfed.org/index.php?/threads/alan-cox-announces-fuzix-updated-version-of-uzi.45560/
  46. https://github.com/EtchedPixels/FUZIX
  47. https://www.raspberrypi.com/news/how-to-get-started-with-fuzix-on-raspberry-pi-pico/
  48. https://www.fuzix.org/
  49. https://news.ycombinator.com/item?id=34981059
  50. https://techrights.org/n/2024/06/24/Torvalds_Number_Two_Quit_Linux_a_Decade_Ago_and_Has_Since_Then_.shtml
  51. https://www.youtube.com/watch?v=z_JHAZLq1tE
  52. https://sinrega.org/2015-01-06-running-fuzix-os-on-z80pack/
  53. https://w2.eff.org/IP/DMCA/Felten_v_RIAA/20010813_cox_decl.html
  54. https://lwn.net/2001/0726/a/alan-quits-als.php3
  55. https://www.newscientist.com/article/dn1063-computer-scientists-boycott-us-over-digital-copyright-law/
  56. https://www.eff.org/wp/unintended-consequences-five-years-under-the-dmca
  57. https://www.theregister.com/2001/07/23/protesters_lay_siege_to_adobe/
  58. https://cacm.acm.org/opinion/the-dmca-needs-fixing/
  59. https://www.gnu.org/award/2003/2003.en.html
  60. https://www.nytimes.com/2001/07/23/business/arrest-raises-stakes-in-battle-over-copyright.html
  61. https://www.zdnet.com/article/torvalds-and-cox-oppose-software-patents-law/
  62. https://www.osnews.com/story/18064/interview-alan-cox/
  63. https://www.rmweb.co.uk/topic/132695-2mm-products-and-queries/page/8/
  64. https://github.com/EtchedPixels/3DPrint-NonCommercial
  65. https://www.2mm.org.uk/small_suppliers/cadfiles/index.php
  66. https://www.zdnet.com/article/linux-pioneer-wins-lifetime-achievement-award/
  67. https://www.openrightsgroup.org/advisory-council/alan-cox/
  68. https://www.swansea.ac.uk/alumni/honorary-awards/honorary-fellows/

Torvalds' Number Two Quits Linux (And Not Because Linus is an A*****e)

托瓦兹的左膀右臂退出 Linux 社区(并非因为莱纳斯是个混蛋)

JAN 24, 2013 7:00 PM

Alan Cox.PHOTO: TARIQUESANI

LINUS TORVALDS INVENTED Linux. And for the past 21 years, he has served as the project's (semi-)benevolent dictator. But he doesn't run the thing by himself. He oversees a thriving community of open source software developers, and for much of those 21 years, a coder named Alan Cox has served as a kind of right-hand man.
莱纳斯·托瓦兹缔造了 Linux 系统。在过去的 21 年里,他一直担任该项目半仁慈的独裁者。但他并非独力执掌这个项目。他管理着一个蓬勃发展的开源软件开发社区,在这 21 年的大部分时间里,一位名叫艾伦·考克斯的程序员一直是他的左膀右臂。

Along with Greg Kroah-Hartman, Cox is only a step below Torvalds in terms of importance to the Linux community --- or at least he was. On Thursday, with a post to Google Plus, Cox announced that he was leaving both the Linux project and Intel, the chip giant that paid him to work on the project.

与格雷格·克罗赫曼一道,在 Linux 社区中,考克斯的重要性仅位列托瓦兹之后------至少此前一直如此。周四,考克斯在谷歌社交平台发布帖子,宣布同时退出 Linux 项目和英特尔公司,这家芯片巨头此前一直聘请他参与该项目的研发工作。

"I'm leaving the Linux world and Intel for a bit for family reasons," he wrote. "I'm aware that 'family reasons' is usually management speak for 'I think the boss is an asshole' but I'd like to assure everyone that while I frequently think Linus is an asshole (and therefore very good as kernel dictator) I am departing quite genuinely for family reasons and not because I've fallen out with Linus or Intel or anyone else. Far from it I've had great fun working there."

他写道:"因家庭原因,我将暂时离开 Linux 领域和英特尔公司。我知道'家庭原因'在管理层的语境中,通常意味着'我觉得老板是个混蛋',但我想向所有人保证,尽管我也常觉得莱纳斯是个混蛋(也正因如此,他是个十分称职的内核独裁者),但我此次离开确实是出于家庭原因,并非与莱纳斯、英特尔或是其他任何人产生了矛盾。恰恰相反,我在这里的工作经历充满乐趣。"

Cox also made it clear that --- contrary to speculation on Slashdot --- he is not quitting Linux because of the recently released Fedora 18 distribution. "In fact I run several distros (Fedora still included)," he wrote on Google+. And he added that he "may be back at some point in the future."

考克斯还明确表示,与科技资讯网站的猜测相反,他退出 Linux 项目并非因为近期发布的 Fedora 18 发行版。他在谷歌社交平台上写道:"事实上我正在使用多个发行版,其中仍包括 Fedora。"他还补充道,自己"未来某一时刻或许会回归"。

We believe him. After all, this isn't the first time he quit the Linux project.

我们相信他的说法。毕竟,这并非他第一次退出 Linux 项目。

In 2003, he took a year long sabbatical from Linux kernel maintenance --- and just job at Red Hat --- to study for his MBA degree. He returned, as promised, and continued working for Red Hat until 2008, when he announced his move to Intel.

2003 年,他从 Linux 内核维护的工作中抽身,休了为期一年的长假,同时辞去了红帽公司的相关工作,前往攻读 MBA 学位。他如约回归,并继续在红帽公司任职,直至 2008 年宣布跳槽至英特尔公司。

But then, in 2009, he gave up is role as maintainer of the TTY subsystem of the Linux Kernel after an argument with Linus over a bug. Despite this very public spat, he continued working on the Linux kernel. After all, he's used to dealing with Torvalds. In 1999 he said to Wired Enterprise writer Robert McMillan, then writing for Linux Magazine, about Torvalds: "Some of the time he drives me up the wall, but most of the time he's right, which is even more infuriating. A large part of Linus's job is to say 'no' to things. And that can be quite a hard job."

但在 2009 年,因一个漏洞问题与莱纳斯发生争执后,他辞去了 Linux 内核 TTY 子系统维护者的职务。尽管这场争执闹得人尽皆知,他仍继续参与 Linux 内核的研发工作。毕竟,他早已习惯与托瓦兹共事。1999 年,他曾对当时为《Linux 杂志》撰稿、如今任职于《连线》商业版的记者罗伯特·麦克米兰谈及托瓦兹:"他有时能把我逼疯,但大多数时候他都是对的,这一点更让人恼火。莱纳斯的工作很大一部分就是对各种提议说'不',而这绝非一份轻松的工作。"

In July 2012 he told Linux.com that his duties included reworking the terminal layer, trying to get 2D based graphics support from various devices shipped by Intel, and, as ever, squashing kernel bugs.

2012 年 7 月,他向 Linux 资讯网透露,自己的工作内容包括重新设计终端层、为英特尔推出的各类设备实现基于 2D 的图形支持,以及一如既往地修复内核漏洞。

It was the bugs that brought Cox into the Linux team in the first place. "Having discovered Linux 'just worked,' I soon discovered it didn't quite work and ended up working on various fixes, then the networking stack," he told Linux.com. "In time I ended up maintaining that and then the stable releases." He went on to build the networking substack, and eventually went on to maintain the production tree of the Linux Kernel until 2002.

正是内核漏洞让考克斯最初加入了 Linux 开发团队。他向 Linux 资讯网表示:"我最初发现 Linux 系统看似能正常运行,却很快发现它存在诸多问题,于是开始着手修复各类漏洞,随后又参与到网络协议栈的开发中。久而久之,我开始负责网络协议栈的维护工作,之后又接手了系统稳定版本的维护。"他后续参与搭建了子网络协议栈,并一直负责 Linux 内核正式版本树的维护工作,直至 2002 年。

He will be missed. At least for a while.

社区会想念他的,至少在一段时间里会。


Torvalds' Number Two Quit Linux a Decade Ago and Has Since Then Earned an Honorary Doctorate

托瓦兹的左膀右臂十年前退出 Linux 社区,此后荣获荣誉博士学位

posted by Roy Schestowitz on Jun 24, 2024

THE night before we moved servers (moving everything to the UK - away from aggressive psychopaths who loathe the Rule of Law) we published a video of Alan Cox, in which he spoke about "Free software". Well, it has been over a decade since he left Linux to focus on other projects (ignore these loaded headlines!) and he also lost his partner around that time.

在我们迁移服务器的前一晚(将所有服务迁移至英国,远离那些蔑视法治、行事激进的偏执之徒),我们发布了一段艾伦·考克斯的视频,视频中他谈及了"自由软件"。如今,距离他退出 Linux 社区转而投身其他项目已过去十多年(请忽略这些带有主观倾向的标题),而他也在那段时间失去了自己的伴侣。

Well, his wife Telsa Gwynne died in 2015 and he married again in 2020. Gwynne wrote a great essay on what it's like to be married to a Linux hacker, e.g. "It's your mother on the phone--do you want a word?" and "Are you coming to your parents' silver wedding anniversary party? If so, the train is leaving in five minutes."

他的妻子泰尔萨·格温于 2015 年离世,他又在 2020 年再婚。格温曾写过一篇精彩的文章,描绘了与 Linux 黑客成婚的生活日常,文中写道:"你妈妈的电话,要不要接?""你要去参加你父母的银婚纪念派对吗?要去的话,火车还有 5 分钟就要开了。"

Her deteriorating health and death seem to have impacted him a lot, based on discussions online (at the time). They had been together for many years and she was likely a key (but hidden) "engine" behind Alan's work on Linux.

从当时的网络讨论来看,格温的病情恶化与离世对他造成了巨大的影响。二人相伴多年,她或许是艾伦投身 Linux 研发工作背后,一位重要却鲜为人知的推动者。

The Swansea University page about his honorary doctorate seems to have gone missing/offline, but here he is aged about 47:

斯旺西大学官网中关于他荣获荣誉博士学位的相关页面现已无法访问,但这张照片中的他约 47 岁:

On the 31st of October 2014 (i.e. almost exactly one decade ago) he started Fuzix OS. Some people in our IRC network discussed it. The official Web site is alive and well, the latest official builds are dated last summer, and the front page says: "The 32bit binaries that were using a bodged Linux binflt format are now using a.out with some small extensions to handle the relocation maps. This should hopefully now become a stable executable format for the future."

2014 年 10 月 31 日(也就是差不多整整十年前),他启动了 Fuzix 操作系统的研发项目。我们的 IRC 网络社群中,曾有不少人探讨过这个项目。该系统的官方网站至今正常运营,最新的官方编译版本更新于去年夏天,官网首页写道:"此前采用简易修改的 Linux binflt 格式的 32 位二进制文件,如今已改用拓展后的 a.out 格式,以支持重定位映射的处理。希望这一格式未来能成为稳定的可执行文件格式。"

There is also an active Mastodon account, "The Penguin of Evil".

他在长毛象社交平台还有一个活跃的账号,名为"邪恶企鹅"。

Alan is very active. He did not vanish, he merely moved.

艾伦依旧十分活跃,他从未销声匿迹,只是换了个领域继续深耕。

Seeing what Linux has become, it may be interesting to follow Fuzix. Despite his looks, Cox is only about 55, so he has plenty left in him. For those of us who like simpler and leaner systems, Fuzix might be a good fit. Cox isn't limited to hardcore kernel stuff, having also worked on GNOME and X.Org. Unlike Torvalds, he's not shy to use the "F" word (freedom).

看着如今的 Linux 系统,关注 Fuzix 操作系统的发展或许会是一件有趣的事。尽管外表看似年长,考克斯如今也只有约 55 岁,依旧精力充沛。对于偏爱简洁、轻量系统的人而言,Fuzix 或许是不错的选择。考克斯的研究领域并不局限于硬核的内核开发,他还曾参与 GNOME 桌面环境和 X.Org 图形服务器的研发工作。与托瓦兹不同,他从不避讳谈及"自由"这个词。


Linux 的二号功臣------Alan Cox

Linux 凭借开源代码的特性,逐步获得行业与开发者的广泛认可。这一世界级操作系统由全球数千名开发者利用业余时间协作开发,其诞生超出了行业最初的预期。Linux 的发展与成功,常被归因为 Linus Torvalds 的设计思路与项目管理方式,而在开源领域中,Alan Cox 对 Linux 开发与管理的推进同样具备重要的实践价值,本文将阐述其成长经历与对 Linux 发展的相关贡献。

1 早年经历与编程启蒙

Alan Cox 于 1968 年 7 月 22 日出生于英国索利赫尔,其自幼对计算机抱有浓厚的兴趣,曾使用 Commodore PET 老式计算机开展编程学习。Cox 完成的首个编程作品,是通过简单计算机动画模拟月球起落的程序,尽管其认为该程序无实际应用价值,却为后续的游戏编程工作奠定了实践基础。

Cox 将高中社会实践阶段完成的程序,定义为自身首个具备实际意义的编程成果。当时学校组织的两周社会实践活动,旨在让学生通过实践认知自身能力边界,进而激发后续的学习动力。多数学生仅通过与大型企业对接完成形式化的实践任务,而 Cox 为学习游戏编程,在假期开始前便主动联系伯明翰地区所有相关领域企业,最终进入 Adventure International 公司参与了为期两周的游戏代码编写工作。

Cox 在实践中展现的编程天赋与工作态度得到了企业的认可,实习结束后被聘任为长期兼职程序员,彼时其刚满 18 岁。高中毕业后,Cox 进入威尔士阿伯里斯特威斯大学计算机系就读,在校期间表现十分活跃,常与同学开展技术问题探讨,同时在学校计算机协会中积累了一定的行业认知与人际资源。

在校期间,Cox 与学校系统管理员 Rob Ash 结下了忘年之交。其曾在课堂中遇到难以解决的技术问题,在向老师与同学请教未得到满意答案后,尝试向 Rob Ash 寻求帮助。尽管 Ash 日常工作繁忙,仍结合自身实践经验为其解答问题,让 Cox 形成了对相关技术的清晰认知。在后续的大学学习中,Cox 始终将 Rob Ash 作为技术请教的对象,而 Ash 也会抽出时间为其进行细致的讲解。Cox 后续回忆表示,其从 Rob Ash 处学习到了操作系统各类重要部件的工作原理,Rob Ash 也是其技术成长过程中的重要榜样。

2 ABERMUD 开发与项目经验积累

大学阶段的 Cox 并未放弃游戏编程的研究,始终为 Adventure International 公司提供兼职技术支持,同时作为核心设计者之一,与 Richard Acott、Jim Finnis 等人合作完成了游戏 ABERMUD 的设计与编码工作。ABERMUD 并非最早的 MUD(Multi-User Dungeon)游戏,却是首个在 Internet 上发布的 MUD 游戏,于 20 世纪 90 年代初在行业内形成了广泛影响。

ABERMUD 的开发过程十分艰辛,最初的开发成果未达到 Cox 的预期,其花费 1 年多时间对原有代码进行修改,但优化效果仍不理想,部分功能模块的运行表现甚至出现下滑。经过反复的技术论证与方案斟酌,Cox 决定舍弃原有设计方案,重新开展 ABERMUD 的整体设计与代码编写工作,最终完成了该游戏的开发与优化。

ABERMUD 的开发让 Cox 形成了对项目开发与管理的深度认知,其在项目总结中表示,Fred Brooks 在《人月神话》一书中提出的"要做好抛弃最初设计的准备",是具备重要实践意义的开发理念。这一项目也让其形成了重要的开发经验:当判定前期工作存在根本性设计错误时,应果断舍弃原有方案,重新开展设计与开发工作。

1988 年,Cox 将 ABERMUD 从原开发语言移植至 C 语言,使其能够在 Unix 系统中运行;1991 年,其先后完成 ABERMUD Ⅳ 与 ABERMUD Ⅴ 的开发,其中 ABERMUD Ⅴ 还被 Horror Soft 公司用于 Elvira 游戏的图形扩展开发,且该版本后续基于 GNU GPL 协议进行了开源发布。

3 技术选择与结缘Linux

ABERMUD 的开发过程,不仅让 Cox 积累了项目管理的实践经验,也使其在技术实现中意识到原有硬件设备的性能局限,成为其接触并使用 Linux 的重要契机。在重新开发 ABERMUD 的过程中,Cox 发现自身的 Amiga 计算机已难以满足开发需求,其曾模仿 Unix 系统的设计风格编写大量优化代码,试图提升设备的运行效率,但 Amiga 计算机的硬件性能仍无法适配开发工作,因此 Cox 决定重新组装一台新的计算机。

1992 年春,Cox 购置了当时主流的 386 处理器与 1 条 4 MB 内存,结合原有硬盘完成了新计算机的组装。新设备搭建完成后,选择适配的操作系统作为 ABERMUD 的开发平台,成为其亟待解决的问题。

Cox 首先考虑了当时已逐步流行的 DOS 与 Windows 3.0 系统,但这两种系统的稳定性无法达到 ABERMUD 的开发要求,难以形成有效的技术支撑;随后其将目光转向稳定性更强的 FreeBSD 系统,花费大量时间完成了 386BSD 版本的下载,却发现该系统的运行需要搭配浮点芯片,而浮点芯片的售价超出了其当时的经济能力,因此该方案未能落地。

在此背景下,Cox 接触到了 Linux 系统,尽管从技术实现的角度来看,当时的 Linux 系统在各方面的表现均与 BSD 系统存在差距,但具备多项适配其开发需求的优势:其一,Linux 系统对硬件设备的配置要求较低,能够适配其组装的新计算机;其二,系统的稳定性已能够满足 ABERMUD 的开发与运行需求;其三,当时的 MCC Linux 及后续推出的 SLS Linux,均具备简便的安装流程;其四,Linux 系统的开源代码特性,与 Cox 的开发理念高度契合。基于上述因素,Cox 为其新计算机安装了 Linux 系统,也由此开启了与 Linux 长达十余年的开发与协作之路。

4 Linux 内核维护与开源管理实践

4.1 早期技术贡献与网络代码维护

Linux 系统的安装让 ABERMUD 的开发工作得以顺利推进,Cox 还基于该系统搭建了威尔士阿伯里斯特威斯大学的 BBS 系统,这也使其对 Linux 系统的技术特性与应用价值形成了更深的认知。在业余时间,Cox 针对 Linux 系统的部分问题编写了补丁程序并发送给 Linus Torvalds,尽管该补丁对应的问题已被其他开发者解决,但并未影响其参与 Linux 开发的热情。

随后 Cox 编写了一款用于进程计数的补丁程序,该补丁被 Linus Torvalds 纳入 Linux 内核的开发体系,经过 10 位开发者的后续修改与优化,始终保留并应用于 Linux 内核的迭代中。在此之后,Cox 将 Linux 系统安装至威尔士阿伯里斯特威斯大学计算机协会的设备中,试图通过系统优化让学校的 BBS 系统实现每日 3 小时以上的稳定运行。

Cox 后续回忆表示,其与学校计算机协会的其他成员,是最早将 Linux 系统应用于大型多协议网络环境的开发者,这也让他们能够更早发现当时 Linux 系统在网络功能方面的各类问题。基于此,Cox 与同学通过自主设计的技术方案,在 Linux 系统中实现了 TCP/IP 协议的落地,同时对系统中发现的错误逐一修正,编写大量新代码弥补原有功能的漏洞。

Cox 将其编写的网络相关补丁整合为 net2debugged 程序包并发送给 Linus Torvalds,该程序包被顺利纳入 Linux 内核开发体系,其也因此给 Linus Torvalds 留下了深刻的印象,并受邀成为 Linux 网络代码的维护者。

4.2 全内核维护的工作内容

1994 年,Cox 在第一届国际 Linux 大会中与 Linus Torvalds 首次会面,双方就 Linux 开发的相关技术与发展方向展开了深入探讨。鉴于 Cox 在 Linux 网络代码维护工作中的良好表现,Linus Torvalds 邀请其负责整个 Linux 内核的维护工作,Cox 接受了该邀请。

Linux 内核的整体维护工作具备较高的复杂度与工作量,Cox 的核心工作内容为接收全球开发者提交的代码,结合自身的技术经验与实际测试结果对代码进行筛选,将具备应用价值的代码提交给 Linus Torvalds,由其最终判定是否纳入内核开发体系。对于未达到应用标准的代码,Cox 会向开发者进行反馈,明确指出代码中存在的设计与实现问题,包括设计思路合理但实现方式存在缺陷、运行结果达标但代码本身存在错误、代码与原有内核体系存在兼容性冲突等类型。

4.3 开源项目的人员管理与经验总结

在 Linux 内核的长期维护过程中,Cox 积累了一套适用于开源项目的管理经验,并将其整理撰写为《大教堂、集市和委员会》一文,该文章在开源领域中形成了广泛的参考价值。其中,针对开源项目参与人员的管理与培养经验,具备鲜明的实践特征。

Linux 开发社区的参与者遍布全球,不同开发者的国籍、文化背景与技术水平存在显著差异,如何推动开发者形成高效的协作模式,是开源项目管理的重要问题,而 Cox 则通过多元化的管理方式实现了参与人员的能力适配与价值发挥。

对于具备丰富开发经验、为 Linux 内核提交大量优质代码的开发者,Cox 会在表达感谢的同时,通过针对性的技术探讨激发其进一步的开发潜力;对于技术水平有限、提交代码未通过筛选的开发者,Cox 会详细说明代码被拒绝的原因,并为其提供具体的优化方向;对于希望参与 Linux 内核开发但技术基础较为薄弱的开发者,Cox 会给予鼓励并指导其入门方向,同时耐心解答其在开发过程中遇到的各类问题。

Cox 认为,为开发者提供详细的问题反馈与技术指导,看似会消耗一定的时间,实则能够提升开源项目的整体开发效率。曾有开发者因提交的代码针对性过强、不具备通用应用价值被 Cox 拒绝,双方就代码的优化方向展开了多次深入的技术讨论,该开发者最终理解了 Linux 内核的开发要求,后续成功为 Linux 内核完成了多个功能模块的代码编写工作。

通过该种培养方式,多位开发者实现了技术水平的快速提升,并为 Linux 内核的开发作出了重要贡献。其中一位葡萄牙开发者,在 Cox 的指导下逐步成长为开源领域的资深开发者,后续负责 Linux 系统中 IPv6 相关功能的开发工作,完成了 75% 的 Linux IPv6 代码编写,目前任职于美国 Cisco 公司并担任高级技术岗位。对于无编程经验但希望参与 Linux 开发社区的志愿者,Cox 会根据其能力特征,安排其参与网络管理、邮件列表维护、技术文档撰写等非编程类工作,这类工作同样是开源项目发展的重要组成部分。

5 职业发展与行业认可

5.1 职业选择与工作环境

与 Linux 开发社区的其他核心开发者一致,Cox 在从事 Linux 内核维护工作的同时,也保持着自身的职业发展。其大学毕业后,先后在 Cable Online 公司、3Com 公司、CymruNet 公司、CERT 公司等企业从事技术相关工作,微软公司也曾向其发出过工作邀请,但其并未接受。

1999 年,Cox 加入 Red Hat 公司从事技术支持工作,该公司为其提供了高度灵活的工作环境,允许其居家办公,这也让其拥有充足的时间开展 Linux 内核的维护工作。在企业工作之余,Cox 每周会投入至少 60 小时的时间用于 Linux 内核的维护,其工作状态也让行业内形成了诸多趣谈,甚至有传言认为其具备超强的精力,几乎无需休息。

Cox 所维护的、尚未正式发布的 Linux 内核版本,被行业内称为 Linux 内核 AC(Alan Cox)版,该版本因具备较高的稳定性与兼容性,被诸多厂商作为技术参考,其还负责了 Linux 2.2、2.4 版本内核的分支维护工作,为内核的稳定迭代提供了重要支撑。

5.2 行业评价与个人影响力

除技术能力与项目管理经验外,Cox 还具备鲜明的个人特质,在 Linux 内核维护工作与 Red Hat 公司的技术支持工作中,其对各类技术问题的解答均能让提问者形成清晰的认知。Cox 曾表示,能够通过技术分享让他人获得帮助,是具备重要价值的事情。

技术层面的实践成果与个人特质的结合,让 Cox 在 Linux 行业内获得了高度的认可。业内开发者普遍认为,Alan Cox 对 Linux 系统的发展作出了杰出的贡献,推动了 Linux 从早期的实验性系统向成熟的商用系统迈进。

计算机作家 Nikolai Bezroukov 在其著作《开源运动先驱》一书中,将 Alan Cox 定义为 Linux 领域中贡献仅次于 Linus Torvalds 的开发者;Linus Torvalds 本人也多次表示,Linux 能够取得如今的发展成果,Alan Cox 的付出具备不可替代的作用,是其在 Linux 开发过程中最需要感谢的人之一。

除 Linux 内核的开发与维护外,Cox 还参与了 GNOME、X.Org 等开源专案的开发工作,2014 年其宣布开发面向 Z80 处理器的 Fuzix OS 小型操作系统,持续为开源领域的技术发展提供实践支撑。2013 年 7 月,威尔士三一圣大卫大学为表彰其在计算机领域的贡献,授予其荣誉学者地位。


via: