47、参考答案:对答案,是再次学习的一个机会

你好,我是编辑宇新。 春节将至,先给你拜个早年:愿你2022年工期变长,需求变少,技术水平更加硬核。 距离我们专栏更新结束已经过去了不少时间,给坚持学习的你点个赞。学习操作系统是一个长期投资,需要持之以恒,才能见效。无论你是二刷、三刷的朋友,还是刚买...

操作系统实战45讲

46、AArch64体系:ARM最新编程架构模型剖析

你好,我是LMOS。 在今天,Andriod+ARM已经成了移动领域的霸主,这与当年的Windows+Intel何其相似。之前我们已经在Intel的x86 CPU上实现了Cosmos,今天我会给你讲讲ARM的AArch64体系结构,带你扩展一下视野。...

操作系统实战45讲

45、ARM新宠:苹果的M1芯片因何而快

你好,我是 LMOS。 前面两节课,我们一起学习了虚拟机和容器的原理,这些知识属于向上延展。而这节课我们要向下深挖,看看操作系统下面的硬件层面,重点研究一下CPU的原理和它的加速套路。 有了这些知识的加持,我还会给你说说,为什么去年底发布的苹果M1芯...

操作系统实战45讲

44、容器:如何理解容器的实现机制

你好,我是LMOS。 上节课我带你通过KVM技术打开了计算机虚拟化技术的大门,KVM技术是基于内核的虚拟机,同样的KVM和传统的虚拟化技术一样,需要虚拟出一台完整的计算机,对于某些场景来说成本会比较高,其实还有比KVM更轻量化的虚拟化技术,也就是今天...

操作系统实战45讲

43、虚拟机内核:KVM是什么

你好,我是LMOS。 上节课,我们理解了Linux里要如何实现系统API。可是随着云计算、大数据和分布式技术的演进,我们需要在一台服务器上虚拟化出更多虚拟机,还要让这些虚拟机能够弹性伸缩,实现跨主机的迁移。 而虚拟化技术正是这些能力的基石。这一节课,...

操作系统实战45讲

42、瞧一瞧Linux:如何实现系统API

你好,我是LMOS。 上节课,我们通过实现一个获取时间的系统服务,学习了Cosmos里如何建立一个系统服务接口。Cosmos为应用程序提供服务的过程大致是这样的:应用程序先设置服务参数,然后通过int指令进入内核,由Cosmos内核运行相应的服务函数...

操作系统实战45讲

41、服务接口:如何搭建沟通桥梁

你好,我是LMOS。 一路走来,咱们的Cosmos系统已经有内存管理,进程、文件、I/O了,这些重要的组件已经建立了,也就是说它们可以向应用程序提供服务了。 但就好像你去各政府部门办理业务证件一样,首先是前台工作人员接待你,对你的业务需求进...

操作系统实战45讲

40、瞧一瞧Linux:详解socket的接口实现

你好,我是LMOS。 上节课,我们一起了解了套接字的工作机制和数据结构,但套接字有哪些基本接口实现呢?相信学完这节课,你就能够解决这个问题了。 今天我会和你探讨套接字从创建、协议接口注册与初始化过程,还会为你深入分析套接字系统,是怎样调用各个功能函数...

操作系统实战45讲

39、瞧一瞧Linux:详解socket实现与网络编程接口

你好,我是LMOS。 前面我们了解了网络的宏观架构,建立了网络模块知识的大局观,也进行了实际的组网实践。现在我们来瞧一瞧Linux的网络程序,不过想要入门Linux的网络编程,套接字也是一个绕不开的重要知识点,正是有了套接字,Linux系统才拥有了网...

操作系统实战45讲

38、从单排到团战:详解操作系统的宏观网络架构

你好,我是 LMOS。 上节课我们学习了单机状态下网络数据在内核中流转的全过程,并且带你一起梳理了网络栈移植的关键步骤。 这节课我会带你看看,现实世界中网络请求是如何穿过重重网络设备,实现大规模组网的。同时,我还会给你讲解网络架构的过去、现在,并展望...

操作系统实战45讲