| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 2717 人关注过本帖
标题:初学按键码 急需资料
取消只看楼主 加入收藏
xuesuyu
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-9-10
收藏
得分:0 
在这里提一下我现在开发的操作系统,它是一个实时嵌入式系统,目前支持以下特性:
  
  a.支持时间片轮转调度和基于优先级调度,最多64个优先级;
  b.抢占式实时内核;
  c.为了便于移植,主体用标准C实现;
  d.汇编代码非常少,不到100行;
  e.支持任务管理,各任务有独立的堆栈;
  f.进程同步和通信目前完成了Semaphore,Message Queue正在调试;
  g.实现了定时系统调用;
  h.可以在windows上仿真调试
  我还打算下一步实现优先级反转保护,Event Flag,Data Pipe,内存管理(以前实现过)
  、驱动接口等。
  在这之后我还会努力完善它,比如加入文件系统,协议栈、调试接口等。希望朋友们提出
  自己的意见和建议,在此不胜感激!
  后记:
  就像有的朋友说的,我的经历或许会给一些朋友产生误导,在这里我必须说明一下。
  我来上海以前学习过于拼命,常常晚上只睡3个多小时,我身高1米71,那时只有108斤(我
  现在130多),家人也说我这样拼命活不过60岁,但是当时的我太固执,我对他们说只要能
  实现理想活50岁我就够了。那时的拼命使我的身体受到了影响,有一次早上突然腰肌剧痛
  难忍,痛的我倒在床上站不起来。虽然我现在已经比较注意,但有时候还会隐隐作痛。后
  来在女朋友说服了我,来上海以后我不再如此。我经常引用父亲的一句话“身体是革命的
  本钱”。
  而且我也发现拼命不是办法,我可以熬一两个通宵,最多的一次我连续工作了三天三夜,
  但是我半个月都没有恢复过来,这样是不是得不偿失?学习工作应该是一个长期的过程,
  像马拉松而不是百米冲刺。我现在非常注意调整学习和工作的强度,我要保证每天尽量有
  相对充沛的精力,一些年轻的朋友觉得自己也应该拼命努力,这让我多少有些担心,如果
  我的故事能让你在学习工作上多一点兴趣,我会感到很开心,但如果误导了某些朋友,让
  你做一些不值得的付出,我会感到很内疚。
  技术没有贵贱只分,我以前换行业是因为自己的兴趣所致,而不是对哪个行业有什么
  偏见。我希望我的经历不要给朋友一个错误的导向,觉得我始终向更高的技术发展。其实
  各行各业做到顶尖都是很困难的。话又说回来虽然技术没有贵贱,但是门槛是有高低的,
  无论如何,做IC的门槛要比做网页的高,这一点无可否认。国家各种人才都是需要的,但
  是作为个人奋发向上的想法还是应该有的,努力在自己喜欢的行业上做的更好,而不应该
  停留在比较肤浅的层次上。
  我是一个自己觉得比较有自知之明的人,或许我最大的优点就是知道自己有很多缺点
  :)。我的故事中很多的曲折和错误都是由我的缺点造成的,希望大家用审慎的眼光看待
  我的经历,不要被我的“花言巧语”所迷惑。我学习有些随心所欲,这给我带来了无尽的
  麻烦,也大大阻碍的我的发展。记得我小时候成绩比较出色,但是后来学习严重偏科,导
  致我中学成绩一再滑坡,也没有考上什么好的学校,小时候的一个朋友,当时的成绩和我
  相仿,但是没有我这个缺点,她上了清华,后来在去了美国深造,在一个著名导师手下研
  究理论科学,这未尝不是一条更好的出路。另外我的学习方法也是在不断改善中的,过去
  的学习过于讲究数量和时间,那样学习既苦而已效率不高,现在我非常注意学习的效率和
  技巧,这样才是学习的捷径(当然不是指投机取巧),比如说学一相对陌生的技术,如果
  有条件,不妨问一问有经验的人,不需要问很多,往往他不经意的几句话会给你非常大的
  帮助,甚至超过你看一个星期的书。带着这样的思想再去学习你会节省很多时间,这样何
  乐不为呢?这些年中我学了不少的东西,由于开始非常盲目,所以学的东西杂乱无章,现
  在回想起来让我啼笑皆非,我把大量的时间浪费在一些没有必要深入了解的知识上,毕竟一
  个人的精力是有限度的。很多朋友很我一样都背过五笔字形,的确它是个不错的输入法,但是对一个研发人员它绝对不值得你去背,你的时间应该花在有价值的地方。我这样的事情还做过很多,我背过CCED、WPS的命令和快捷键,在dBase基本退出
  历史舞台后我还花了很多时间去学习它的使用。所以我的学习在前期缺乏规划,没有明确
  的短期目的、中期目标,只有一个虚无飘渺的长期的理想。这就像做设计一样,好的设计
  是从需求抽象到代码有很多过程,而不能得到了需求就立刻开始开始编码。
  当然这么些年的学习和工作多多少少有些收获,下面我说说我的一些学习的心得,这
  些方法未必正确,我也在不断探索和改进中。我的学习和工作有相对明确的目标,我不会
  一时心动而去学习某一技术,在下决定之前我会考虑很多,包括长期的发展,个人路线的
  规划,需要付出的代价、可能遇到的困难及解决的办法等等,在决定后还会制定更加明确
  的计划,包括短期、中期和长期的,身边可以利用到的资源(包括好的书籍、资料、软硬
  件环境,也包括有经验的朋友或者师长),以及每一个阶段是怎么过渡到高一阶段的计划
  ,往往在一个学习阶段一旦上路后会走的相对顺利,但是跨阶段通常比较麻烦,比如从学
  习基础知识转到实践。另外我买书也有自己的方法,现在世面上高质量的书远不如低质量
  书多,对于一个陌生的技术,往往在第一次买书会选择错误,即使买到一本好书但是它的
  方向也未必适合你,所以我通常会先在网上查找一些该技术的介绍,有了一点点概念后再
  去买一本比较薄、相对便宜并且内容相对泛泛而谈的书,这是国内作者最善于写的书:)
  ,再把它浏览一遍后我就会基本明白这门技术的要点,后面买书和制定计划就会明确的多
  。否则一开始就想找本好书往往比较困难,而且买回来后努力学习,有时候学了一半才发现
  是本低质量的书或者是相对过时技术,让人非常懊恼。另外让有经验?
  人帮你介绍,通常也是一个不错的选择。
  有些朋友想学通信、嵌入式开发,但总觉得自己没有软硬件环境,我就按我的了解给
  
  大家介绍一下怎么建立这样的环境,当然我了解的只是我学习和工作的方向。通信我做的
  是数据网方面的工作,包括TCP/IP、二三层交换、对接入网、H.323和软交换也有一点认识
  。这些软硬件环境都是可以在PC上构建的。你甚至可以在一个没有网卡的PC上建立一个包
  含多个路由器、接入服务器、VoIP网关、网守、主机等的仿真网络环境,而且与实际的网
  络相当接近,当然这需要你有清晰的网络概念和一定的网络知识,我一直在努力开发一套
  软件将这个过程简化,目前试验已经做完,我可能会将它融入我的操作系统外围扩展软件
  中。这样的方法我无法用简单的语句讲的很清楚,我可以说一下大概的思想,就是在PC上
  实现仿真网卡,(知道Windows怎么在没有网卡的机器实现虚拟网卡技术的朋友都应该会明
  白),然后每一个仿真网卡对应一个虚拟设备,如路由器或者主机。你也可以借助第三方
  工具完成部分工作,如VmWare等。我现在就是利用一个仿真网卡做自己的开发的。
  至于嵌入式开发环境更加容易实现,PC就是一个非常大的硬件平台,现有的嵌入式操
  作系统通常都支持X86,你可以在上面做开发,通过软盘Boot或者使用虚拟机装载,我用V
  xWorks做了试验,在一台PC上跑Windows和VxWorks两个系统。另外Windows上的兼容DOS的
  16位仿真X86环境也为很多操作系统提供了绝佳的试验环境,我的操作系统在Windows上就
  是这样实现的。Linux在嵌入式中应用也比较广泛,它在网上有大量的资料,而且也相对比
  较容易实践。同时很多完善的嵌入式开发环境支持软件仿真,如Tornado、WinCE等。

2006-09-23 13:36
快速回复:初学按键码 急需资料
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023154 second(s), 10 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved