Linux内 核
Linux
开发 | |
---|---|
编程语言 | C |
类Unix | |
0.01(1991 | |
许可证 | GPL(僅) |
www | |
仓库 |
Linuxcomp.os.minix
从技术上说,Linux
Linux
历史
编辑1991comp.os.minix
我 在 做个(自由 的 )操作 系 统(就是个兴趣 爱好,我 不 会 搞得像 GNU那 么大那 么专业),打算 让它工作 在 386 AT平台 上 。它从四月就开始酝酿了,马上就快好 了 。我 想 要 那 些喜欢或不 喜 欢minix的 人的 意 见,因 为我的 系 统和它有点 类似(同 样的文 件 系 统的物理 布 局 ——由 于实际原因 ——还有些其他 的 东西)。
我 现在已 经移植 了 bash(1.08)和 gcc(1.40), 而且看 起 来 奏效 了 。这意味 着 我 会 在 几个月内 得 到 一些实用的东西。「……」是 的 ——它没有 任 何 minix代 码,并且它有一 个多线程的 fs。它不 可 移植 (使用 386任 务切换等),而且它可能 永 远不会 支持 除 AT硬 盘之外的 其他东西,因 为我只 有 这些:-(。「……」它基
本上 是 用 C语言写 的 ,但 是 大 多数 人 可能 不 会 把 我 写 的 东西叫 做C语言。它使用 我 能 找到的 386的 每 个可以想象 的 特性 ,因 为它也是一个教我关于386的 功 能 的 项目。我 前面 提 到 过,它使用 内 存 管理 单元来 进行分 页(还没实现到对硬盘的功 能 )和 分段 。这个分段 功 能 使 得 它真正 的 依 赖于386(每 个任务都有 64Mb的 代 码和数 据 段 ——4Gb中 最多 64个任务。如果有人 需要 超 过每个任务64Mb的 限 制 ,那 将 是 个麻烦事)。「……」我 的 一 些C语言文 件 (特 别是mm.c)几乎用 了 和 C一 样多的 汇编。「……」不 像 minix,我 也碰巧 喜 欢中断 ,所以 中断 将 在 不 试图隐藏背 后 的 原因 的 情 形 下 被 处理。
1991
1992alt.os.linux
comp.os.linux
。[18]
X Window
1994
- 1999
年 1月 25日 - 发布Linux内 核 2.2.0(1,800,847行 代 码)
- 1999
年 12月18日 - 针对2.2.13的 IBM大型 机 补丁发布,允 许 Linux内 核 用 于企业级机 器
- 2001
年 1月 4日 - 发布 Linux内 核 2.4.0(3,377,902行 代 码)
- 2003
年 12月17日 - 发布 Linux内 核 2.6.0(5,929,913行 代 码)
从2004
2011
2013
塔 能 鮑 姆-林 納 斯辯論
编辑
Linux
架 构
编辑
Linux
设备驱动
systemd,runit,logind,networkd,PulseAudio |
X11,Wayland,SurfaceFlinger(Android) |
其他库: GTK+, Qt, EFL, SDL, SFML, FLTK, GNUstep |
图形: Mesa,AMD Catalyst | |||
C标准库 | open(),exec(),sbrk(),socket(),fopen(),calloc(),... ( glibc | |||||
Linux |
stat, splice, dup, read, open, ioctl, write, mmap, close, exit Linux | |||||
进程调度 |
IPC |
网络 | ||||
其他构件:ALSA,DRI,evdev,LVM,device mapper,Linux Network Scheduler,Netfilter Linux | ||||||
編 程 語 言
编辑
Linux
编译器 兼 容 性
编辑
GCC
接 口
编辑
内 核 至 用 户空间API
编辑
内 核 至 用 户空间API
编辑
内 核 内 API
编辑
- Video4Linux –
用 于视频捕捉硬件 。 高 级Linux声音 体系 (ALSA) –用 于声 卡。- New API –
用 于网络接 口 控 制 器 。 直接 渲染管理 器 –用 于图形加速器 。- KMS驱动
器 –用 于视频显示控 制 器 。 - mac80211 –
用 于无线网络接 口 控 制 器 [44]。
内 核 内 ABI
编辑
Linux
技 术特性
编辑
抢占式 调度系 统
编辑
LinuxTASK_RUNNING
LinuxSCHED_OTHER
,而内SCHED_FIFO
(实时SCHED_RR
(实时轮流
PREEMPT_RT
,
还有SCHED_DEADLINE
可 移植 性
编辑
内 核 错误和 oops
编辑
安全
编辑
计算
如2012
2021
开發
编辑开发者 社 区
编辑
截止2007
Linux
开发过程与 模 式
编辑
一个想要对 Linux
Linus Torvalds拥有对Linux
同 Linux 发行版 的 关系
编辑
主 线Linux
编辑
重 新 开发的 估价
编辑
按照传统
截至2011
版本 命名
编辑
Linux
法律 層 面
编辑
许可证
编辑GPL第 三 版
编辑
Linux
2006
韌體爭議
编辑
載 入 式 核心 模 組 許可 證
编辑
另
有 時候 一些驅動程式原先並非為Linux設計 ,而是為 其他作業 系統 而作(意 即 並 非 為 Linux作 的 衍生創作 ),這是個 灰色 地帶 ……這「的確 」是 個 灰色 地帶 ,而我個人 相 信 一些模組可視為非Linux衍生創作 ,是 針 對 Linux設計 ,也因此不會 遵守 Linux訂 下 的 行為 準則 。[93]
SCO爭議
编辑
参 见
编辑
参考 文献
编辑
- ^
林 纳斯·托 瓦 兹. Linux 6.11-rc7. 2024年 9月 8日 [2024年 9月 8日 ]. - ^
林 纳斯·托 瓦 兹. Linux 6.11. 2024年 9月 15日 [2024年 9月 15日 ]. - ^ InfoWorld. Linux creator Torvalds still no fan of GPLv3. [2008-10-11]. (
原始 内容 存 档于2013-06-23). - ^ 4.0 4.1 4.2 COPYING. [2021-02-07]. (
原始 内容 存 档于2012-12-21). - ^ Stallman, Richard. Linux, GNU, and freedom. Free Software Foundation. 2002 [2007-02-21]. (
原始 内容 存 档于2013-06-23). - ^ linux/kernel/git/stable/linux-stable.git/blob - firmware/WHENCE. git.kernel.org. 2002-10-16 [2012-08-21]. (
原始 内容 存 档于2013-01-13). - ^ README - kernel/git/torvalds/linux.git - Linux kernel source tree. git.kernel.org. [2018-02-18]. (
原始 内容 存 档于2020-08-10) (英 语). - ^ TOP500 Supercomputer Sites. www.top500.org. [2018-02-18]. (
原始 内容 存 档于2012-11-19) (英 语). - ^ What would you like to see most in minix?. Linus Benedict Torvalds. 1991-08-26 [2010-12-21]. (
原始 内容 存 档于2019-10-18). - ^ Free as in Freedom: Chapter 9. www.oreilly.com. [2018-02-18]. (
原始 内容 存 档于2020-12-10). - ^ The Linux Foundation Releases Linux Development Report. 2016-07-19 [2018-02-18]. (
原始 内容 存 档于2016-07-19). - ^ Greg Kroah-Hartman. Linux Kernel Development: How Fast it is Going, Who is Doing It, What They are Doing, and Who is Sponsoring It (PDF). [2018-02-19]. (
原始 内容 存 档于2019-09-12). - ^ git.kernel.org - linux/kernel/git/stable/linux-stable.git/blob - firm…. archive.is. 2013-01-13 [2018-02-18]. (
原始 内容 存 档于2013-01-13). - ^ Torvalds, Linus Benedict. What would you like to see most in minix?. Newsgroup: comp.os.minix. 1991-08-26 [2018-02-18]. Usenet: 1991Aug25.205708.9541@klaava.Helsinki.FI. (
原始 内容 存 档于2013-05-09). - ^ Torvalds, Linus Benedict. Free minix-like kernel sources for 386-AT. Newsgroup: comp.os.minix. 1991-10-05 [2018-03-28]. Usenet: 1991Oct5.054106.4647@klaava.Helsinki.FI. (
原始 内容 存 档于2013-04-25). - ^ 16.0 16.1 Torvalds, Linus. Release Notes for Linux v0.12. The Linux Kernel Archives. [2007-02-21]. (
原始 内容 存 档于2007-08-19). - ^ Summers, David W. Troubles with Partitions. Newsgroup: alt.os.linux. 1992-01-19 [2007-01-07]. Usenet: 1992Jan19.085628.18752@cseg01.uark.edu. (
原始 内容 存 档于2013-06-02). - ^ Clegg, Alan B. It's here!. Newsgroup: comp.os.linux. 1992-03-31 [2007-01-07]. Usenet: 1992Mar31.131811.19832@rock.concert.net. (
原始 内容 存 档于2013-06-02). - ^ Torvalds, Linus. Linux 3.0 release. Linux kernel mailing list. 2011-07-21 [2013-05-16]. (
原始 内容 存 档于2019-10-18). - ^ Leemhuis, Thorsten. Linux Kernel Data. The H. Heinz Heise. 2011-05-19 [2011-07-22]. (
原始 内容 存 档于2020-08-08). - ^ Hachman, Mark. Linux 3.0 Released; Linus Torvalds Explains Why You Shouldn't Care. PC Magazine. Ziff Davis. 2011-07-22 [2014-11-11]. (
原始 内容 存 档于2019-02-17). - ^ Leemhuis, Thorsten. What's new in Linux 3.10. The H. Heinz Heise. 2013-07-01 [2013-07-15]. (
原始 内容 存 档于2014-02-20). - ^ Linux Kernel At 19.5 Million Lines Of Code, Continues Rising. Phoronix. 2014-06-23 [2015-06-23]. (
原始 内容 存 档于2020-11-23). - ^ A. S. Tanenbaum. LINUX is obsolete. Newsgroup: comp.os.minix. 1992-01-29 [2006-11-27]. 12595@star.cs.vu.nl. (
原始 内容 存 档于2013-05-26). - ^ Torvalds, Linus. Hybrid kernel, not NT. 2006-05-09 [2007-01-06]. (
原始 内容 存 档于2007-01-02). - ^ Tanenbaum, Andy. Tanenbaum-Torvalds Debate: Part II. 2006-05-12 [2007-01-06]. (
原始 内容 存 档于2015-08-05). - ^ FAQ: Preemption. kernelnewbies.org. 2009-08-22 [2015-05-07]. (
原始 内容 存 档于2020-08-07). - ^ 28.0 28.1 Jonathan Corbet. Driver porting: the preemptible kernel. LWN.net. 2003-02-24 [2015-05-07]. (
原始 内容 存 档于2020-08-10). - ^ Jake Edge. Character devices in user space. LWN.net. 2008-11-25 [2015-05-07]. (
原始 内容 存 档于2021-01-26). - ^ Jonathan Corbet. UIO: user-space drivers. LWN.net. 2007-05-02 [2015-05-07]. (
原始 内容 存 档于2020-11-11). - ^ Kroah-Hartman, Greg. The Linux Kernel Driver Interface. [2018-12-19]. (
原始 内容 存 档于2013-11-04). - ^ 32.0 32.1 Nguyen, Binh. Linux Filesystem Hierarchy: Chapter 1. Linux Filesystem Hierarchy. The Linux Documentation Project. 2004-07-30 [2012-11-28]. (
原始 内容 存 档于2020-12-02). - ^ Ingo A. Kubbilun. Linux kernel patch for Intel Compiler. Pyrillion.org. 2004-06-02 [2010-11-12]. (
原始 内容 存 档于2011-07-22). - ^ High Performance Linux Kernel Project—LinuxDNA. Linux.slashdot.org. [2010-10-30]. (
原始 内容 存 档于2019-10-18). - ^ LinuxDNA Supercharges Linux with the Intel C/C++ Compiler. Linux Journal. [2010-10-30]. (
原始 内容 存 档于2020-11-09). - ^ Lelbach, Bryce. Clang builds a working Linux Kernel (Boots to RL5 with SMP, networking and X, self hosts). cfe-dev (邮件
列 表 ). 2010-10-25 [2018-12-19]. (原始 内容 存 档于2015-09-07). - ^ Larabel, Michael. Linux 3.15 Can Almost Be Compiled Under LLVM's Clang. Phoronix. 2014-04-12 [2014-06-10]. (
原始 内容 存 档于2020-08-13). - ^ Larabel, Michael. Patch By Patch, LLVM Clang Gets Better At Building The Linux Kernel. Phoronix. [2014-11-20]. (
原始 内容 存 档于2020-08-13). - ^ Edge, Jake. LFCS: The LLVMLinux project. LWN.net. 2013-05-07 [2015-03-03]. (
原始 内容 存 档于2020-08-10). - ^ Möller, Jan-Simon. LLVMLinux: The Linux Kernel with Dragon Wings (PDF). LLVM Project. 2014-02-02 [2015-03-03]. (
原始 内容 存 档 (PDF)于2020-08-03). - ^ ControlGroupInterface. freedesktop.org. [2018-12-22]. (
原始 内容 存 档于2020-11-30). - ^ libevdev. freedesktop.org. [2018-12-22]. (
原始 内容 存 档于2020-09-30). - ^ Greg Kroah-Hartman. The Linux Kernel Driver Interface. [2015-04-10]. (
原始 内容 存 档于2013-11-04). - ^ About mac80211. Linux Kernel Organization, Inc. [2014-06-08]. (
原始 内容 存 档于2021-02-01). - ^ Report on ABI changes in the Linux kernel. Andrey Ponomarenko's ABI laboratory. 2016-03-17 [2018-12-19]. (
原始 内容 存 档于2016-03-12). - ^ Werner Fischer; Georg Schönberger. Linux Storage Stack Diagram. Thomas-Krenn AG. 2015-06-01 [2015-06-08]. (
原始 内容 存 档于2019-06-29). - ^ Bovet, Daniel P.; Cesati, Marco. Chapter 10: Process Scheduling. Understanding the Linux Kernel. O'Reilly. October 2000 [2011-10-15]. ISBN 0-596-00002-2. (
原始 内容 存 档于2014-09-21). - ^ Santhanam, Anand. Towards Linux 2.6, A look into the workings of the next new kernel. IBM Global Services. 2003-09-23 [2011-10-15]. (
原始 内容 存 档于2013-09-27). - ^ 49.0 49.1 Bar, Moshe. The Linux Scheduler. Linux Journal. Belltown Media, Inc. 2000-04-01 [2012-04-14]. (
原始 内容 存 档于2021-02-02). - ^ Molnár, Ingo. [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]. LKML (邮件
列 表 ). 2007-04-13 [2012-04-14]. (原始 内容 存 档于2020-11-03). - ^ IEEE Standard for Information Technology – Portable Operating System Interface, POSIX.1b, Real-time extensions (IEEE Std 1003.1b-1993). [2018-12-08]. (
原始 内容 存 档于2010-11-16). - ^ McKenney, Paul. A realtime preemption overview. LWN.net. 2005-08-10 [2012-02-05]. (
原始 内容 存 档于2020-08-10). - ^ OSADL Project: Realtime Linux. OSADL. [2012-02-05]. (
原始 内容 存 档于2021-02-04). - ^ Bergmann, Arnd. BKL: That's all, folks. Linux Kernel Organization, Inc. 2011-03-05 [2012-02-20]. (
原始 内容 存 档于2012-07-20). - ^ Larabel, Michael. The Linux 3.14 Kernel Already Has Many Exciting Features. Phoronix. 2014-01-24 [2014-02-03]. (
原始 内容 存 档于2020-08-13). - ^ Linux kernel 3.14, Section 1.1. Deadline scheduling class for better real-time scheduling. kernelnewbies.org. 2014-03-30 [2014-04-02]. (
原始 内容 存 档于2021-01-15). - ^ TOP500 Statistics. Top500. [2012-04-26]. (
原始 内容 存 档于2012-11-02). - ^ Greg Kroah-Hartman. Android and the Linux kernel community. 2010-02-02 [2010-02-03]. (
原始 内容 存 档于2019-04-27).This means that any drivers written for Android hardware platforms, can not get merged into the main kernel tree because they have dependencies on code that only lives in Google's kernel tree, causing it to fail to build in the kernel.org tree. Because of this, Google has now prevented a large chunk of hardware drivers and platform code from ever getting merged into the main kernel tree. Effectively creating a kernel branch that a number of different vendors are now relying on.
- ^ Linux developer explains Android kernel code removal. ZDNet. 2010-02-02 [2010-02-03]. (
原始 内容 存 档于2010-02-06). - ^ Maemo platform described as being based on Linux kernel. Maemo community. 2010-04-09 [2010-04-09]. (
原始 内容 存 档于2020-09-27). - ^ K.K. Mookhey, Nilesh Burghate and ISACA. Linux-- Security, Audit and Control Features. ISACA. 2005: 14 [2012-11-15]. ISBN 1-893209-78-4. (
原始 内容 存 档于2020-08-04). - ^ Brian Hatch. Hacking exposed Linux: Linux security secrets & solutions. McGraw Hill Professional. 2008: 524 [2012-11-15]. ISBN 0-07-226257-5. (
原始 内容 存 档于2020-08-04). - ^ Trent Jaeger. Operating system security. Morgan & Claypool Publishers. 2008: 122 [2012-11-15]. ISBN 1-59829-212-9. (
原始 内容 存 档于2021-01-26). - ^ Jeremy Andrews. Security Bugs and Full Disclosure. 2008-07-16 [2010-12-31]. (
原始 内容 存 档于2012-07-10). - ^ Brad Spengler. Linux's unofficial security-through-coverup policy. Full-Disclosure (邮件
列 表 ). 2008-07-16 [2010-12-31]. (原始 内容 存 档于2020-08-07). - ^ The Intel SYSRET privilege escalation –. Blog.xen.org. 2012-06-13 [2012-07-26]. (
原始 内容 存 档于2012-06-16). - ^
陳 曉 莉.把 漏 洞 導入 Linux核心 來 作 實驗 ,Linux大 佬封殺 明 尼 蘇 達 大學 所有 貢獻 . ithome. 2021-04-22 [2021-04-22]. (原始 内容 存 档于2021-04-27). - ^ 68.0 68.1 Marti, Don. Are top Linux developers losing the will to code?. ComputerworldUK. [2016-10-24]. (
原始 内容 存 档于2019-06-12) (英国 英 语). - ^ How the development process works. [2018-02-04]. (
原始 内容 存 档于2017-12-09). - ^ Sharwood, Simon. Linux kernel dev who asked Linus Torvalds to stop verbal abuse quits over verbal abuse. The Register. 2015-10-06 [2018-02-19]. (
原始 内容 存 档于2020-03-29). - ^ Corbet, Jonathan. Bash the kernel maintainers. LWN.net. 2017-11-06 [2018-02-04]. (
原始 内容 存 档于2021-01-26). - ^ Code of Conflict. [2018-02-04].[
永久 失效 連結 ] - ^ Edge, Jake. Too many lords, not enough stewards. LWN.net. 2018-01-31 [2018-02-04]. (
原始 内容 存 档于2020-11-09). - ^ Billimoria, Kaiwan N. Linux Kernel Programming A Comprehensive Guide to Kernel Internals, Writing Kernel Modules, and Kernel Synchronization.. Birmingham: Packt Publishing, Limited. 2021: 55. ISBN 978-1-78995-592-7. OCLC 1240585605.
- ^ Vaduva, Alexandru. Linux : embedded development : leverage the power of Linux to develop captivating and powerful embedded Linux projects : a course in three modules. Alex Gonzalez, Chris Simmonds. Birmingham, UK. 2016: 663. ISBN 978-1-78712-445-5. OCLC 960471438.
- ^ Karim Yaghmour. Building embedded Linux systems 2nd. Sebastopol [Calif.]: O'Reilly Media. 2008: 387. ISBN 978-0-596-52968-0. OCLC 273049576.
- ^ Yaghmour, Karim. Embedded Android. Sebastopol, CA: O'Reilly Media. 2011: 44. ISBN 978-1-4493-2798-9. OCLC 812180000.
- ^ SoC (System on a Chip). OpenWrt Wiki. 2014-11-06 [2021-03-15]. (
原始 内容 存 档于2022-08-23) (英 语). - ^ David A. Wheeler. Linux Kernel 2.6: It's Worth More!. [2012-11-15]. (
原始 内容 存 档于2011-08-21). - ^ Economic impact of FLOSS on innovation and competitiveness of the EU ICT sector (页面
存 档备份,存 于互联网档案 馆), Table 3 on page 50. - ^ Wheeler, David. The Linux Kernel: It’s Worth More!. [2012-09-17]. (
原始 内容 存 档于2011-08-21). - ^ Linux Kernel Archives - Volume 1 Archive.is
的 存 檔,存 档日期 2005-05-11(Riley Williams) - ^ 83.0 83.1 Yamagata, Hiroo. The Pragmatist of Free Software. HotWired. 1997-08-03 [2007-02-21]. (
原始 内容 存 档于2007-02-10). - ^ Corbet, Jonathan. GPLv3 and the kernel. LWN.net. 2006-01-31 [2007-02-21]. (
原始 内容 存 档于2020-08-10). - ^ Torvalds, Linus. Linux-2.4.0-test8. LKML (邮件
列 表 ). 2000-09-08 [2007-02-21]. (原始 内容 存 档于2020-05-15). - ^ gnu.org. www.gnu.org. [2017-10-18]. (
原始 内容 存 档于2021-02-02) (英 语). - ^ Cox, Alan. Re: GPL V3 and Linux. LKML (邮件
列 表 ). 2006-01-20 [2007-02-21]. (原始 内容 存 档于2021-01-26). - ^ Shankland, Stephen. Top Linux programmers pan GPL 3. News.com. CNET. 2006-09-25 [2007-02-21].[
失效 連結 ] - ^ 89.0 89.1 James E.J. Bottomley, Mauro Carvalho Chehab, Thomas Gleixner, Christoph Hellwig, Dave Jones, Greg Kroah-Hartman, Tony Luck, Andrew Morton, Trond Myklebust, David Woodhouse. Kernel developers' position on GPLv3: The Dangers and Problems with GPLv3. LWN.net. 2006-09-15 [2015-03-11]. (
原始 内容 存 档于2021-01-18).The current version (Discussion Draft 2) of GPLv3 on first reading fails the necessity test of section 1 on the grounds that there's no substantial and identified problem with GPLv2 that it is trying to solve. However, a deeper reading reveals several other problems with the current FSF draft: 5.1 DRM Clauses [...] 5.2 Additional Restrictions Clause [...] 5.3 Patents Provisions [...] since the FSF is proposing to shift all of its projects to GPLv3 and apply pressure to every other GPL licensed project to move, we foresee the release of GPLv3 portends the Balkanisation of the entire Open Source Universe upon which we rely.
- ^ Petreley, Nicholas. A fight against evil or a fight for attention?. linuxjournal.com. 2006-09-27 [2015-03-11]. (
原始 内容 存 档于2018-03-02).Second, the war between Linus Torvalds and other Kernel developers and the Free Software Foundation over GPLv3 is continuing, with Torvalds saying he's fed up with the FSF.
- ^ Linus Torvalds says GPL v3 violates everything that GPLv2 stood for (页面
存 档备份,存 于互联网档案 馆) Debconf 2014, Portland, Oregon (accessed 11 March 2015) - ^
存 档副本 . [2006-11-25]. (原始 内容 存 档于2013-06-23). - ^
存 档副本 . [2006-11-25]. (原始 内容 存 档于2006-09-27).
外部 連結
编辑
- (
英文 )Linux内 核 官 方 下 载中心 (页面存 档备份,存 于互联网档案 馆) - (
英文 )日 渐膨胀的Linux邮件列 表 内容 摘要 - (
英文 )林 納 斯與塔 能 包 姆爭論 微 核心 的 筆 仗 - (
英文 )Greg Kroah Hartman on the Linux Kernel at youtube (页面存 档备份,存 于互联网档案 馆) - (
中 文 )如何 查看Linux内 核 版本 信 息 (页面存 档备份,存 于互联网档案 馆)