今晚还在活动室熬着夜,想想已经大三了,下学期就要开始准备考研了,不能再像大一大二那样折腾了。进了大三开始了专业课的学习,微机原理,网络通信,操作系统之类的,发现学的时候不能深究,不然自己会很痛苦。比方说自己最近主要是边学着专业课,边看着linux0.11的源码,很多地方深究起来就要去查资料,不像书上的操作系统那样抽象,而是具体的一步一步的实现,在我看来就是一种深究的过程。比方说操作系统书上说的用户空间,内核空间,内核态,用户态,只是一个抽象的描述,如果你逼着自己了解,会发现能懂,可是似乎什么也没学到。而如果看了具体实现的代码会发现所谓的用户空间内核空间只是通过页目录页表等方式实现,而用户态到内核态的切换则是利用权限较低的trap_gate,也就是system_gate来实现的。再就是所谓的并发控制,信号量什么的,完全是抽象话的描述,首先是难懂,其次是懂了也和没懂一样。
扯了这么多,其实这篇文章不是讨论这些技术细节。回归正题,我其实想表达的是,感觉专业课的学习如果想学好,是需要付出很大的背后积累,而这种积累让我感觉比较累。而自己又是好奇心特别重的人,比如说书上说信号量操作,只是说通过硬件操作实现原子化,我就很好奇到底是怎么做的,然后去查Linux内核的具体实现,去打电话问熟悉的老师,直到把自己说服了,才愿意接受,可是感觉到比较累。而当我上通信与网络时,老师说每一帧开头以01111110定界的时候我就开始好奇,一开始的时候时钟怎么同步,然后到处问。。。。当我学到vlan的时候,我就好奇既然有网络层可以划分子网,那为什么还需要vlan,然后为此去研究过交换机的配置。如果自己只是大一大二,那肯定会觉得没什么,可是现在大三了,下学期就得去考研,总感觉这样不太对。
算了,发一下牢骚,去看书了,也懒得检查错别字了!