返回信息流AMD专家上周四又来访我院,探讨刚成立的同济大学-AMD技术中心如何开展实质性工作,AMD将提供实验系统并派专家为我院开设BIOS开发专门课程,并尽快带起我院自己的BIOS教师,形成在嵌入式领域的新方向。
本人曾滥竽充数当过n年汇编教师,对底层软件包括BIOS尤其感兴趣,这里与同学交流一下,预热一下,希望今后我们能出现一批对搞BIOS有兴趣的同学。
BIOS即计算机的基本输入输出系统(Basic Input/Output System),是计算机最底层的软件,向下控制硬件,向上支持操作系统。BIOS人才是各类主板和板卡设计厂商必须的,但全国高校几乎没有培养BIOS设计的,成为AMD等公司在校园招聘中最难寻觅的人才类型之一,这是AMD决定与我院共同培养BIOS人才的起因。今年8月成立的AMD上海研发中心是AMD在北美以外的最大研发中心,AMD在中国的五大OEM和ODM厂商均位于上海或周边(我们占尽上海的地利优势),对主板设计厂商提供支持是AMD上海研发中心的重要任务之一。 我们与IBM、Microsoft(嵌入式)、Apple、Autodesk、Google成立各类学生俱乐部,做得是相当不错的,每个合作的公司都很满意,在培养学生方面取得了实实在在的项目成果。上周四,我们带领AMD公司参观这些实验室或学生项目时,深深吸引了AMD公司,AMD非常希望我们也通过同济大学AMD学生俱乐部的形式,培养对BIOS开发有强烈兴趣和实际经验的学生,正所谓一花引来百花香!
[小常识] 什么是BIOS?
我们软件学院的本科生应都学过汇编语言这个必修课,应该都知道PC机的BIOS,BIOS是固化在ROM中的软件(也叫固件:Firmware),是设计主板的厂家编写的最低级软件。PC机的硬件控制都是通过BIOS进行的,BIOS是介于硬件与操作系统之间的软件。PC启动时,首先执行的是主板上的BIOS程序,初启化计算机硬件和设置BIOS中断向量,BIOS中还固化有最基本的中断服务程序。主板BIOS执行的时候还会去CALL显示BIOS及其它板卡上的BIOS,以初始化所有板卡和设置中断程序。所有的BIOS都执行完后,才开始到磁盘上找操作系统并启动OS。操作系统中断的所有功能最后都是要通过BIOS中断程序来完成的。所以BIOS中断是控制硬件的最底层软件。
嵌入式系统中的BSP程序通常被认为是嵌入式开发难度最大也是最基础的工作。实际上,嵌入式系统中BSP(Board Support Package 板级支持包),就相当于PC主板上的BIOS。
其实,我们学院在BSP方面已有相当实力,何老师写过ARM平台上支持WINCE的BSP,王老师写过ARM平台上支持VXWORKS的BSP。我们将成立的AMD俱乐部可能将由这两位老师来负责指导。
[学习BIOS要有什么样的基础?]
必须接受过较正规的IT专业基础教育,有包括汇编语言和计算机原理在内的最基本的计算机基础功底,如软件工程、计算机、电子通信、电气自动化类学生。现有的搞BIOS的技术人员很大一部分是搞硬件的转过来的。但我认为,BIOS这东西对我院软件工程专业的同学搞起来几乎也不会有任何困难,我们学院的本科课程是较重专业基础的,我们的专业基础必修课程几乎和其它学校的计算机专业完全相同。搞BIOS纯是个经验活,我们专业本科生的专业基础课程,包括硬件专业基础已足够对付BIOS这东西了,若遇到一些新技术可临时学,完全不存在问题,只有你喜欢,肯定能做得很好。
学习BIOS最重要的是汇编语言、计算机组成原理(数字逻辑也算在其中)、计算机系统结构(特别是现代微机体系结构),当然操作系统、驱动程序设计对学习BIOS也是必不可少的相关知识,此外应了解如USB、串行、并行、网络通信控制等。BIOS这么底层的软件肯定都是用汇编语言写的,不可能用高级语言写。当然,现在的PC上的BIOS程序用的都是保护模式的汇编语言(32位),不是我们以前学的实模式8086汇编。学习保护模式的汇编,首先要对32位以上CPU的工作模式、寄存器使用、中断控制、I/O、内存管理等都要有深度掌握,将深入掌握计算机工作的奥妙。开发BIOS与学历高低没有任何关系,AMD说,开发BIOS软件本科和博士都可以做,最重要的就是工作经验。
[什么样的企业需要BIOS人才?]
(1)PC主板设计厂商:如AMD、INTEL、宏基、华硕、AMI、AWARD、HP、DELL、联想等
(2)笔记本设计厂商,如HP、DELL、TOSHIBA、SONY、联想等。
(3)显卡设计厂商:如ATI、NVIDIA、VIA等
(4)各类板卡设计厂商:如网卡、各种接口卡等,比方我们学院700多台PC中都装有海光硬盘保护卡,那是典型的写在板卡中的BIOS程序,计算机启动进,主板上的BIOS会调用硬盘保护卡上的BIOS,所以启动时在显示BIOS执行完后,我们马上会看到硬盘保护卡BIOS的执行(如选择第几个分区)。
(4) 一些基于X86处理器的嵌入式设备商,如X86的机顶盒、终端(国内银行终端基本都是实达公司设计的)
[从事BIOS开发这一行业的优缺点]
优点:
一是几乎无人竞争!大家看看您所熟悉的IT人士有几个写BIOS的,就知道了;
二是搞BIOS能真正深入掌握计算机工作原理;
三是搞BIOS这种东西也是IT领域较为难得的靠经验吃饭,不用整天追逐软件新技术领域,这一点和主机技术有点异曲同工之妙(越老越值钱)。当然,搞BIOS要对硬件新技术,操作系统新版本要进行跟踪,但这毕竟是变化缓慢的。BIOS和MAINFRAME这两样吃老本的难得IT领域都被我们逮住了,让我们的学生都能掌握一些绝技,成为最紧俏的人才,这是我们的目标之一。
四是搞BIOS不会像搞纯企业应用软件那样整天随着各个客户的需求转,毕竟只有新的主板出来了,才需要修改BIOS,这个频度是较低的。
缺点:
一是对IT软硬件功底要求较高,适合具有正规IT专业基础的同学;
二是搞BIOS是很枯燥的工作,整天要和汇编打交道,调试将是非常细致和麻烦的,很多时候要为明明写得对的硬件控制程序,硬件却不听使唤,就像写驱动程序有时遇到的那种苦恼。适合耐得住寂寞,喜欢对问题追根溯源,喜欢穷究BUG,对计算机工作原理有强烈兴趣的同学。
三是BIOS人才需求相对恒定,但需求量并不非常大(但却找不到人,与当前的大型机人才需求很类似)。大家看看
http://www.monster.com
http://www.computerjobs.com
http://www.hotjobs.com
等美国找IT工作的主要网站上看看,在国外还是有一定需求的。目前一些公司需要求的BIOS人才一般都是花大价钱从其它公司中搞BIOS的挖过来。如果有BIOS功底,今后搞驱动程序、嵌入式、OS等都将较为方便。
[怎样学习BIOS?]
AMD专家说,美国总部那面正在准备BIOS的培训资料(今后我院可考虑与AMD合写这方面的教材)。BIOS最重要的是实验,自已做去,其实也不用上什么专门的BIOS课程,给你一个实验环境和项目任务,你去做就是了,我们的口号Learning by doing最适合BIOS学习了。AMD说,调试BIOS的过程与嵌入式开发类似,将你写的BIOS下载到目标主板上的FLASH中,看能否将目标主板跑起来,实现指定目标。可以想象,在这个调试过程中会遇到无数苦恼的事情,比如目标板为什么启动不起来?为什么不能实现我希望完成的目标?
[感叹]
就像上周AMD专家来访时所说的,如果我们学院再开设BIOS课程,那么我们学院就全了,从最底层的BIOS软件,一直到最高层的大型主机应用软件,所有类型的软件人才都在我们的培养范围内,真是不错的主意!
搞了15年的IT教育,越来越为软件学院办学有灵活办学模式,为软件学院的无限生命力而感叹!想当年,曾有那么多质疑软件学院,我们在唾沫声中长大。看如今这么多跨国公司主动找上门来合作培养紧缺人才,最近又是参加IBM全国用户大会,又是参加IBM大型主机高校合作项目周年庆典和主机竞赛活动,我们学院的办学模式受到IBM专家那个赞扬啊,我都不好意思了。上周AMD专家来时又赞了我们一番,说教育就应该根据企业需求培养最紧缺的人才。这样的例子太多了,这些大公司都愿意找我们来合作培养人才,还用什么说的。软件学院的办学思路,灵活高效的处事做风,与这些大公司的想法不谋而合,我们走的是完全正确的路,特别是我们学院坚持走与跨国公司合作培养跨国公司所需要的高端人才路线,我们当初没有随大流,没有自贬软件学院的身价,我们坚决不培养软件外包人才,特别是坚决不培养对日对台那种低层次外包软件人才,当初这一点是完全正确的,也是符合上海地区跨国公司聚集这一人才需求特点的。我们11月28日在北京开软件学院验收总结会上做主题发言时,明确表示,我们从未想过培养外包人才,因为我们在上海,我们的目标就是应培养跨国公司最急需的紧缺人才,紧密结合地方需求特点是软件学院的办学方向之一。
短短几年,我们在学生培养方面已直起腰板了,我们最狠的就是学生就业。我们去年有两位02本科生创造了我校近年来的应届生年薪新记录,今年03级本科生竟然有3位得到微软亚洲研究院实习的机会,吓了我一跳。我最近刚刚得知,我们最早的2+2班转专业本科班中当初推免的全部8位保送硕士生即将于明年3月毕业,除何老师到我院工作,1-2位到国外读书,1位做主机去了外,今年竟然有3位已拿到微软的正式员工offer了,其中一位被北京的微软研究院录用,两位被北京的微软工程院录用,完全应验了我当初的预想,那就是,如果我们软件学院自己的本科生以后读了研究生,那将来一定会是很厉害的。因为我们本科生的动手能力是超强的,很多通常在研究生才会去摸索的技术钻研深度在我们本科阶段已早已练就了,并且我们的学生对新技术非常清楚,思维活跃,研究生阶段有更多空余时间钻研自己感兴趣的东西,起点就超前了一步。事实一步步在验证我们当初制定的办学方向完全正确。
这是一条镜像帖。来源:北邮人论坛 / sse / #3736同步于 2007/6/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SSE机器人发帖
[转帖]怎样学习BIOS
koshi
2007/6/23镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。