尝试系统学习一下操作系统底层的东西

客户端开发大多时候我是做应用层开发的,底层接触的不多,相关的知识都是平时遇到问题的时候才去看一下,非常碎片化,不成体系,其实我一直以来好像都是这样,很多技术方向上的东西我都只是会修改,对整体又不是非常了解,上一个我非常了解的系统是塞班,可惜等我快要炉火纯青的时候它挂掉了,后来年龄上来了学东西没有年轻时候那么快了,基本上就没有全身心投入去学习一些东西,每次都是需要用的时候才去着手,就会出现一种情况,看起来对一些技术方面很了解,细致追下去盲点很多,不过补一下很快就能抢救回来,可能是年龄上来了,不自觉的往大巧不工,重剑无锋方向上发展。

其实底层我十几年前也学过一段时间,那时候买了一块友善之臂的mini2440,准备学习ARM开发的,在上面跑过Android 1.5/Linux+Qt/RTThread,后来做应用开发去了,这东西就一直吃灰了,当然这只是一部分原因,更直接的原因是我的专业课学得真不咋滴,模电和信号与系统这些应该说学得稀烂,只有数电还勉强可以,毕业设计做了一个塞班系统下的文件压缩软件混过去了,答辩那天演示了一下,几个老师竟然很满意,还问了我很多问题,给的分也挺高的,其实我的软件就是基于哈夫曼编码小改进了一下,二叉树查表,毫无技术含量,可能是之前进来的同学表现实在不够好,把我衬托出来了,不过当时我一直有“创造”一种压缩率更高算法的想法,还思考过很长时间,现在看来是心里真没点数,就我那高数的水平,通过考试都难,还想整点花活,我也是服了。那个时候我感觉如果往驱动方向走还有点盼头,往电路方向和可能出不了头,后来找到了塞班开发的工作,基本上就稳定下来了。

时间过得真快,现在Android版本都飙到13了,跟以前的版本就完全不是一码事,早些年我学了会儿uboot代码,在诺基亚N900上玩的不亦乐乎,现在一看Android的启动过程,复杂多了,之前虽然也编译过安卓系统,在4.x以前的版本,更多时候只是刷刷机,修改一下系统,进行root,都是停留在系统层面,直到我弄了几台黑莓的工程机,才逐渐对底层的东西有初步的了解,我就想平时有时间就系统学习一下,先从Linux系统和驱动开始,同时补充一下数电、模电相关的知识,再搞点电子产品玩玩,小孩子玩玩具一样的学习更适合。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

 桂ICP备15001694号-3