Linux_学习笔记_0

这是我的第一篇博客,也不知道该写些什么。自己现在大一,就把过去一年为了想学习linux操作系统的学习历程按时间顺序理一遍吧,打算给以后的学弟学妹看,嘿嘿。


0.我学习linux一是因为兴趣,另外便是自己梦想实现一个OS(程序员三大浪漫之一,(*^__^*) )。


1.首先,刚进大学的时候,因为好奇想知道计算机到底是怎么一回事,所以选择了CS。(那个时候觉得计算机很神奇,比如我们只要点一下鼠标,然后屏幕上就有变化了,能出声音,还能看动画,真的觉得很奇妙)


2.然后呢,当然是最最重要的一门基础课啦------C程序设计,哈哈,真正想学习linux的,一定要把这门课学好,毕竟linux使用C开发的嘛!还记得教我们C语言的老师跟我们说:你们想进实验室的最后期末考试必须考到95以上,少一分也没的商量,然后期末一大波98,99的,我刚刚95,哈哈~~虽然最后由于一些特殊原因,没有进实验室,还是比较遗憾吧。(我记得那个时候我们课余时间的利用主要有两个方面,一个是acm,一个就是进实验室了,不过acm门槛有点高,所以很大一部分是希望进实验室的)。


3.接下来呢,我自学了《模拟电子技术》和《数字电路》,然后对于硬件设备是怎么一回事有了一个大概的理解,最起码要有以下这样的理解(反正我是这样理解的,哈哈),即可以把CPU或者一些硬件设备看成一个函数,底层程序员给定一组输入(其实是利用汇编指令),然后设备会根据输入给定相应的输出,恩,就这样,我就是这么理解滴。然后在寒假里还自学了C++,为什么学这个呢?主要是学它的面向对象编程的思想,虽然C语言本身没有支持面向对象编程的语法,但是linux编程的时候,还是借用面向对象编程的思想的。不过我这个时候学习C++完全不知道以后可能在学linux的时候用上,主要因为大一第二学期有C++这门课,所以自己就先自学掉了,哈哈!大一的第一学期就这么结束了。


4.接下来是第二学期了,不知道是出于什么原因,好像是为了学习嵌入式,我自学了汇编,然后回过头来再看C语言,真的是太妙了!(如果能去读一下嵌入式开发的C代码,比如我读的是一个在stm-32上跑流水灯的一个代码,读完之后,你会发现,哦,原来C语言代码还能这么写,对于C语言一定会有更深一步的理解!!!)。当然,学汇编还有另外一个非常重要的好处,就是对硬件设备有了更近一步的理解,比如像端口,中断,I/O读写等等。我觉得这个过程是少不了的,毕竟一个OS是从一个完全的硬件设备上搭建起来的,如果连基本的硬件概念都不掌握,还怎么继续学习下去呢。


5.接下来呢,我好像在看一些《计算机组成》,《计算机网络》这方面的书,为什么学呢?我觉得学习先要从全局着手,比如《计算机组成》,虽然以自己大一并且自学的情况下,并不能掌握全部,但是对于计算机最起码有了一个全局的认识,CPU,控制器,内存,总线等等,至于为什么学《计算机网络》呢?主要是个人兴趣,那个时候对网络很好奇,为什么两台计算机之间能够通信?于是就把计算机网络的书看完了,也并不能全部掌握,只能说有了一个大概的了解,然后巴拉巴拉大一第二学期就这么结束啦。


6.接下来就是暑假了,7月份自学了一个星期的安卓,发现完全没有兴趣,就不再学了,然后就去玩了,等回来的时候,已经是7月底了,就是写下这篇东西的前半个月,那个时候觉得自己应该已经可以开始学习OS&Linux了,于是自学OS的一些基本概念,起初是跟着网上的视频走,发现自己跟不上,也有点等不及了,所以就索性自己看书,一共看了两本关于OS的书,总算是建立了一些OS的基本概念。通过之前的视频学习,了解到自己还欠缺保护模式下的一些知识,比如A20使能,保护模式下的分段分页机制等等,于是去图书馆又找了一本讲述关于保护模式的书,把它学完后,已是两天前了。然后就满心欢喜的跟着另外一本讲述linux0.11源代码的书看下去,看到main.c的时候,发现完全看不下去了,自信心大为受挫,今天宅在寝室一天,什么都没干。但是晚上继续阅读代码的时候,发现能够继续阅读下去了。可能有时候遇到问题先放一放,回过头再来看就没那么无从下手了吧。明天继续加油看下去,欧耶!


7.当然,可能会有人说我描述的那些内容以后大二大三都有专门的课程,有必要现在学吗?我觉得这个问题应该这么理解,大学里的学习在修完相应的学分后,剩下的学习时间完全由自己掌控,只不过这部分的学习时间所学习的知识跟以后重叠了,不过这没什么,就当预习了嘛。不过如果想玩嵌入式的CS同学,按着以上的步骤下来,大二的时候就可以开始学习嵌入式了,现在回想大一第一学期选修的《嵌入式--新生研讨课》,虽然我个人认为在知识上的获得几乎为0(毕竟刚刚接触CS,什么都不懂的。不过如果大学之前有玩过单片机的,就另当别论了),但是对于嵌入式以及底层编程已经有了一个启蒙的心,我想这比学习多少知识来的更加有效果。


8.好了,这就是我一年的学习经历了(记录的都是我觉得学习linux比较重要的阶段),我马上就要上大二成为学长了,勉励一下自己,加油!!














你可能感兴趣的:(学习笔记)