18-Linux 操作系统 (initramfs; 最小 Linux 世界) [南京大学2024操作系统]

作者: 绿导师原谅你了分类: 计算机技术 发布时间: 2024-04-30 20:17:14 浏览:18093 次

18-Linux 操作系统 (initramfs; 最小 Linux 世界) [南京大学2024操作系统]

匿名用户lv6:
这次课程中间真的删减了好多片段[灵魂出窍][灵魂出窍]

【回复】回复 @匿名用户lv6 :与其说不适合公开,倒不如说,“不适合借助别人冲着学习操作系统课程的平台让别人来听自己生活工作中的牢骚”,我相信老师只是有感而发,但客观上就是借助了这个巨大平台,让很多仅仅只是冲着学习全网较好的操作系统课程的人被迫听了与这一目的无关的内容
【回复】回复 @WekFer :不影响,都是类似一些感慨吧,个人经历不一样,不看其实没有任何影响
【回复】回复 @Floriageyer :可能是一些不适合公开的东西[吃瓜]
pioneerlfn:
initramfs并不是必须的,蒋老师没有讲它存在的原因以及它适用的场景。

【回复】我用gentoo的时候能不用module就不用,完全用不到initramfs,编译出一个内核就可以用了,甚至可以把grub都省了
【回复】回复 @rsgAh :之前用Void Linux的时候整过,把驱动全部编译到内核里,用efistub启动
【回复】回复 @rsgAh :grub本来就很冗余,随便一个发行版比如debian,使用efibootmgr加一个efi启动项(设置initrd参数)就能直接从bios启动
虚壹十一:
从大二现在快大四了,每周目都来这节讲linux历史的课听听鸡汤,提醒一下平时写代码是为了什么[Cat2_SpaceNyan!]

侦相233:
一棵树摇动另一棵树,一朵云推动另一朵云,一个灵魂召唤另一个灵魂

我的朋友京不特2:
有没有人觉得虚拟化这几集讲得有点混乱啊,感觉内容的组织和顺序不太好,学生没有一个全局观.

【回复】思路还是很清晰的,第14讲起手就是如何加载第一个进程,然后从应用层的组件开始,一层层往操作系统里穿,直到本讲的内核初始化。 但是,因为授课内容侧重【讲】实现,每层的实现又大不一样,再加上很多同学对Linux的了解非常少(比如,systemd和httpd都不是众所周知的),所以光听课确实会像在被牵着鼻子到处逛,每一讲都好像到了一个新地方( 解决办法,大概就是补充阅读ostep(补理论)+ 动手【做】lab(理解jyy想要我们理解的是啥)+(让AI)读文档手册(知道jyy是怎么知道的),但这可要花上比听课多得多的时间和精力。 还是等明年再看一遍吧[秦国小卖部_融化]
高频交易池:
查了一下:实际上,WSL (Windows Subsystem for Linux) 的行为和实现有两个版本:WSL1和WSL2,它们在如何处理Linux操作系统方面有很大的不同。 ### WSL1 在**WSL1**中,蒋老师的描述是准确的。WSL1不运行一个真正的Linux内核,而是通过一个兼容层来实现Linux系统调用的翻译,这个兼容层将Linux系统调用转换为Windows NT内核调用。所以,WSL1更像是一个高级的模拟环境,它模拟Linux环境并允许你在Windows中直接运行Linux二进制执行文件,但实际上背后是通过Windows内核来完成工作的。 ### WSL2 而**WSL2**则采用了完全不同的方法。WSL2使用了一个真正的Linux内核,它运行在一个轻量级的虚拟机(VM)中。这意味着在WSL2中,你使用的是真正的Linux内核,而不是一个简单的模拟或兼容层。这提供了更高的性能,特别是在文件系统操作和Linux特有的功能上,同时也支持更多的Linux软件和工具。 ### 关键区别 - **兼容性**:WSL2由于使用了真实的Linux内核,因此在兼容性方面表现更好,能够运行更多的Linux软件,包括Docker等需要特定内核支持的应用。 - **性能**:WSL2在文件系统性能上有显著提升,尤其是对于更复杂的文件系统操作。 - **资源隔离**:WSL2通过虚拟机来运行Linux内核,这提供了更好的资源隔离和安全性。 因此,如果你使用的是WSL2,那么你实际上是在使用一个真实的Linux内核。而如果是WSL1,那么的确,它更像是在模拟Linux环境。这两种模式都为Windows用户提供了在不离开Windows环境的情况下运行Linux应用程序的能力。

【回复】WSL1因为微软认为后续维护的成本太高所以停止维护了。因为如果以后linux加入了新的系统调用并且这个调用难以通过现有的windows系统调用实现,让微软为了一个子系统去更新windows的系统调用是显然不可能的
咕噜咕噜沌沌沌:
手贱 在host 上尝试了下 switch_root 然后系统炸了[捂眼]

1IsEmpty:
酣畅淋漓!!!我是真滴菜,不说了,练功去了。

long_dragon:
[支持][支持][支持][支持][支持],终于让我搞懂了linux两阶段启动过程了

PrayerRay:
边听老师讲课边去翻linux的源码和内核资料,一点点去啃,就很通透了。

Kyrie656:
jyyyyds!!![打call][打call][打call][呲牙][呲牙][呲牙]

厘及:
所以呢??? 早干嘛的? 现在要干嘛?

C语言 操作系统 汇编 编程 南京大学 C/C++ Linux

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

更多相关阅读