首页 > 其他分享 >操作系统实战45讲00058

操作系统实战45讲00058

时间:2022-12-30 11:46:12浏览次数:73  
标签:操作系统 45 基础 基础知识 学习 00058 课程 计算机

你好,我是LMOS。

2021年,我在极客时间上开设了我的第一门课程《操作系统实战45讲》,和你分享了我多年来研究操作系统的一些成就和经验。

我本以为在业务为王、各种新技术层出不穷的今天,很少有人会关注操作系统这种底层且异常复杂的技术。但出乎意料,这门课程一上线引起很多朋友的关注,曾经一度稳居极客时间课程榜单之首。期间我也收获了不少朋友的赞许,感谢你们的认可。

同时,结合我的观察和收到的留言、提问,我发现了几类常见的问题。

第一类就是心浮气躁,这是最常见的。我觉得学习任何东西都要首先静下心来,一步一个脚印,一个问题一个问题地攻克,层层推进。遇到困难可以歇一歇,但不可以就此中断和放弃。

计算机产品的设计方法,无非是层层抽象,层次越高,暴露给用户的功能越简单,层次越低,隐藏的细节越复杂。而操作系统是计算机最底层的软件,又经过半个多世纪的发展,其复杂程度可想而知,包含的知识体量也大的惊人。

你不可能一下子就学会这些,必然是要长期坚持,一步步推进才可以,不能因为遇到一点点困难就放弃。

第二类是过于纠结名词概念。概念是什么?概念是把所感知的事物的共同本质特点抽象出来,加以概括,是人脑对客观事物本质的反映。这种反映常常用一些名词来标示和记载,是思维活动的结果和产物。

而计算机里我们看到的很多概念名称,很多时候都是某项功能实现后,设计者取了个名词,来指代这个功能。而在我的课程中讲的就是操作系统底层实现,是事物的本质,是具体实现操作系统的过程,而非操作系统概念(这些在很多的理论书籍都能轻易获得)。

这种讲解可能不同于你之前接触到的知识,但有助于打破原先的抽象,把关注点从表层概念转移到技术的设计与功能实现上,这样才能见到操作系统的本质。

第三类则是基础不足。操作系统算是计算机领域里非常综合的学科,涉及的知识点非常宽泛,主要包括硬件体系、编译原理、开发语言、数据结构、通用算法、图形系统、网络通信等,里面每一项都可以成为一个独立学科。很多同学由于刚刚入门,或者所在岗位没有接触过所有这些基础知识点,所以学习起来感觉有点吃力。

这些问题让我回想起了自己当年的学习经历。我在操作系统领域摸索研究了十多年头,先后开发了LMOS(基于x86_64的多进程支持SMP的操作系统)和LMOSEM(基于ARM32支持软实时的嵌入式操作系统),还写过嵌入式操作系统的相关书籍。这些经历告诉我,应该使用什么方法和拥有什么基础,才能写出操作系统。

在我的学习探索过程中,你们遇到的这些问题、这些困难,我也未能躲过,我也停下过,但只是歇一歇,从未放弃。遇到不懂的就去学习,遇到问题就去解决问题,一步一步积累,慢慢精进。

这么多年,很多朋友询问我,为什么执著于操作系统?我每次都笑着回答,因为我喜欢。

从本质上说,操作系统是巨大的软件工程,代码量都是几千万行级别,学习起来极为困难,学校也不乏照本宣科去读读理论的情况,从来不会系统地去编写一个操作系统。就算是成熟的操作系统公司,也只会招能力极强的高手,再内部培训,这导致太多感兴趣的人无从下手。

从我自己的学习经历来看,工程师们学好操作系统等基础知识,是一个长期受益的选择,对我们的技术成长相当重要。

为了帮助你系统和深入地理解并实践操作系统,我为你准备了一门新课《计算机基础实战课》。整个课程是一套完整系统基础知识,包含大量的计算机基础内容。

如果第一季你没有学明白,正在发愁自己怎么补充前置知识,想掌握基础,那么第二季正好可以作为基础知识的补充,里面大部分知识点都是操作系统初学者需要了解的。

如果你第一季学得还不错,说明你有浓厚的兴趣和深厚计算机基础知识,但是Cosmos是个全新的产物 ,不具备工作实用性,虽然其中的技术让人受益无穷。第二季作为一门基础课程,它的广度更大,是一门综合性基础课程,它也是第一季内容的一个补充,方便你把自己的知识版图扩展开来,并把其中的内容应用于平常工作之中。

就拿我自己来说,我既做过前端、后端的工作,也做过内核的开发。能来回穿梭于底层与高层之间,不至于手忙脚乱,最大的依仗就是深厚的计算机基础。即便你还没决定好未来的技术发展路线,计算机核心的基础知识对工程师来说,也是必学的前置内容。

基础不牢,地动山摇。基础筑牢,海阔天高。让我们一起精进技术,突破自己!

现在课程已经上线了,点这里了解课程内容。

标签:操作系统,45,基础,基础知识,学习,00058,课程,计算机
From: https://www.cnblogs.com/gongxianjin/p/17014504.html

相关文章

  • 操作系统实战45讲00057
    你好,我是编辑宇新。春节将至,先给你拜个早年:愿你2022年工期变长,需求变少,技术水平更加硬核。距离我们专栏更新结束已经过去了不少时间,给坚持学习的你点个赞。学习操作系统......
  • 操作系统实战45讲00032
    你好,我是LMOS。在上一课中,我们实现了建立设备的接口,这相当于制定了部门的相关法规,只要遵守这些法规就能建立一个部门。当然,建立了一个部门,是为了干活的,吃空饷可不行。其......
  • 操作系统实战45讲00034
    你好,我是LMOS。你有没有想过,蜜蜂把劳动成果变成蜜糖存放在蜂巢中,人类把劳动成果量化成财富存放在银行,但一个进程的劳动成果放在哪里呢?看到这里,你可能有疑问,进程有劳动成......
  • 操作系统实战45讲00035
    你好,我是LMOS。上一节课中,我们已经设计好了文件系统数据结构,相当于建好了仓库的基本结构。今天,我将和你一起探索仓库的划分,即什么地方存放仓库的管理信息,什么地方存放进......
  • 操作系统实战45讲00036
    你好,我是LMOS。我们在上一节课中,已经建立了仓库,并对仓库进行了划分,就是文件系统的格式化。有了仓库就需要往里面存取东西,对于我们的仓库来说,就是存取应用程序的文件。所......
  • 操作系统实战45讲00037
    你好,我是LMOS。在前面的课程中,我们已经实现了Cosmos下的文件系统rfs,相信你已经感受到了一个文件系统是如何管理文件的。今天我们一起来瞧一瞧Linux是如何管理文件,也验证一......
  • 操作系统实战45讲00038
    你好,我是LMOS。从这节课起,我们就要开始学习网络篇的内容了。网络是一个极其宏大的知识结构,我会通过五节课带你了解计算机网络的关键内容。具体我们是这样安排的。作为网......
  • 操作系统实战45讲00039
    你好,我是LMOS。上节课我们对一次请求到响应的过程积累了一些宏观认识,相信你已经对整个网络架构有了一个整体蓝图。这节课,让我们来仔细研究一下网络数据是如何在内核中流......
  • 操作系统实战45讲00040
    你好,我是LMOS。上节课我们学习了单机状态下网络数据在内核中流转的全过程,并且带你一起梳理了网络栈移植的关键步骤。这节课我会带你看看,现实世界中网络请求是如何穿过重......
  • 操作系统实战45讲00023
    你好,我是LMOS。今天,我们继续研究操作系统如何实现虚拟内存。在上节课,我们已经建立了虚拟内存的初始流程,这节课我们来实现虚拟内存的核心功能:写出分配、释放虚拟地址空间的......