当前位置: 首页 > 科技观察

关于Linux内核你不知道的30件事

时间:2023-03-14 00:53:24 科技观察

Linux内核今年30岁了。Linux内核今年30岁了。三十年来开创性的开源软件让用户可以运行自由软件,让他们从他们运行的应用程序中学习,并让他们与朋友分享他们学到的东西。一些人认为,如果没有Linux内核,我们今天所享有的开源文化和自由软件的成果可能不会在适当的时候出现。如果没有Linux作为催化剂,苹果、微软和谷歌的开源是不可能实现的。Linux作为一种现象对开源文化、软件开发和用户体验的影响怎么强调都不为过,但这一切都始于一个单一的Linux内核。Linux内核是启动计算机、识别并确保计算机内外所有连接组件之间通信的软件。对于大多数用户从未想过,更不用说理解的代码,Linux内核提供了很多东西。这是关于Linux内核三十年生命中每一年的一件事。顺序无关紧要。Linux是第一个具有USB3.0驱动程序的操作系统。SarahSharp于2009年6月7日宣布推出她的USB3.0设备驱动程序,她的代码包含在内核版本2.6.31中。当某些事件发生时,内核会将自己标记为“受污染”,这在以后的故障排除中可能会有用。运行“受污染”的内核不是问题。但如果出现问题,首先要做的是在未受污染的内核上重现问题。您可以指定一个主机名或域名作为ip=内核命令行选项的一部分,Linux将保留它而不是用DHCP或BOOTP提供的覆盖它。例如,ip=::::myhostname::dhcp设置主机名myhostname。在文本启动期间,您可以选择以黑白、16色或224色显示其中一种Tux徽标。在娱乐行业,DRM是一种用于防止访问媒体的技术。然而,在Linux内核中,DRM指的是DirectRenderingManager,它指的是与显卡接口的GPU的库(libdrm)和驱动程序。能够在不重新启动的情况下修补Linux内核。如果您自己编译内核,您可以将文本控制台配置为大于80列。Linux内核提供对FAT、exFAT和NTFS(读取和写入)的内置支持。Wacom数位板和许多类似设备的驱动程序都内置在内核中。大多数内核专家使用gitsend-email来提交补丁。内核使用一个名为Sphinx的文档化工具链,它是用Python编写的。Hamlib提供了一个带有标准化API的共享库,用于从您的Linux计算机控制业余无线电设备。我们鼓励硬件制造商帮助开发Linux内核以确保兼容性。这使得直接使用硬件成为可能,而无需从制造商处下载驱动程序。直接属于内核的驱动程序也会自动受益于新版本内核的性能和安全改进。内核中包含许多RaspberryPi模块(PiHats)的驱动程序。netcat乐队发布了一张只能作为Linux内核模块播放的专辑。受netcat发布的启发,开发了一个模块,可以将您的内核变成音乐播放器。Linux内核的功能支持许多CPU架构:ARM、ARM64、IA-64、m68k、MIPS、NiosII、PA-RISC、OpenRISC、PowerPC、s390、Sparc、x86、Xtensa等等。2001年,Linux内核成为第一个以长模式运行的x86-64CPU架构。Linux3.4版引入了x32ABI,允许开发人员编译代码以在64位模式下运行,同时仅使用32位指针和数据段。内核支持许多不同的文件系统,包括Ext2、Ext3、Ext4、JFS、XFS、GFS2、GCFS2、BtrFS、NILFS2、NFS、OverlayFS、UDF等等。虚拟文件系统VirtualFileSystem(VFS)是Linux内核中的一个软件层,为用户运行的应用程序提供文件系统接口。它也是内核的抽象层,因此不同的文件系统实现可以共存。Linux内核包含一个用于物理盲文输出设备的驱动程序。在内核版本2.6.29中,启动时的Tux徽标被替换为“Tuz”,以提高人们对当时影响澳大利亚塔斯马尼亚恶魔种群的侵袭性癌症的认识。知道。控制组(cgroups)是容器(Docker、Podman、Kubernetes等的底层技术)存在的原因。释放CIFS以包含在内核中需要采取大量法律行动,而今天,CIFS模块已内置到内核中以启用SMB支持。这允许Linux挂载Microsoft远程共享和基于云的文件共享。对于计算机来说,生成一个真正的随机数是出了名的困难(事实上,到目前为止是不可能的)。hw_random框架可以利用CPU或主板上的特殊硬件功能来尝试改进随机数生成。操作系统抖动是应用程序遇到的一种干扰,由后台进程的调度方式与系统处理异步事件(如中断)的方式之间的冲突引起。诸如此类的问题在内核文档中有详细讨论,可以帮助开发Linux的程序员编写更智能的代码。makemenuconfig命令允许您在编译之前使用GUI配置内核。Kconfig语言定义内核配置选项。对于基本的Linux服务器,可以实现看门狗系统来监控服务器的健康状况。在健康检查间隔期间,看门狗守护进程将数据写入特殊的看门狗内核设备以防止系统重置。如果看门狗未能成功记录,系统将被重置。有许多看门狗硬件实现对于远程关键任务计算机(例如那些被送往火星的计算机)至关重要。火星上有Linux内核的副本,尽管它是在地球上开发的。