Ⅰ 程序员到底会不会修电脑
这么问问题,看来脑子需要升级一下才行。
首先,修电脑分为几个级层:
初级:处理一般软件安装问题,以及系统安装等安装,包括处理硬盘分区等问题;
中级:(包括初级内容)解决电脑硬件的板块级维修,包括硬盘分区表备份修复、软件级数据恢复等;
高级(1):进行电路芯片级维修、硬盘(拆盘)仪器级数据恢复等维修;
高级(2):维修显示器,电源等(为什么分两部分,因为通常修主板的不一定会修显示器,会修显示器的不一定会修主板)
怎么样才算是叫会修电脑呢???这都是个问题。
暂且就以具备以上任何一层级能力都算作会修电脑吧,
那么有一些程序猿自然是会修电脑的。有一些程序猿则可能不会修。
程序猿是一群人,而人不是工厂生产出来的,各有各的爱好,各有各的际遇,有些可能会修电脑,有些可能会一点修车,有些可能还会弹一点钢琴,有些可能还会画点画,有些则可能会喝点酒抽点烟,有的可能除了写程序别的什么都不会,有的可能连程序都写不好。
所以,
所以程序猿会不会修电脑这种问题,,,,就好比是问司机会不会唱歌?医生会不会开车?画家会不会识谱?音乐家会不会涂鸦?厨师会不会做面包?面包师会不会蒸馒头?瞎子会不会算命?美甲师会不会化妆?化妆师会不会按摩?,,,,,,,
这种问题问出来,不觉得可笑吗?
多思考吧,你脑子大概已经快锈到渣都没有了!!!
我知道这个回答会让你很不爽,但都是金玉良言,希望好好想一下。正所谓忠言逆耳,好话都不会听起来很好舒服的,听起来的舒服的都是于人无益的。就这样吧。
Ⅱ 程序员使用的电脑配置要求
程序员多久换一次电脑?
3年。1、程序员使用电脑一般三年就需要换了,因为程序员对电脑的配置运行需求很大。2、虽然电脑可以通过升级内存、显卡来达到软件运行要求,但核心CPU和主板制约了硬件无限升级,
互联网行业的电脑更新迭代都比较快,家庭笔记本也许可以使用5年甚至10年,但是对于程序员而言,电脑一两年就得换一次,这也和他们下班不关电脑有关
公司里程序员需要什么样的电脑配置?
在我的面试简历有一条对公司的要求:提供高性能的电脑
程序员的电脑需要怎么样的配置?当然是越高越好,比如说银河计算机,比如说天河系列计算机。这些计算机二手也卖很贵好不好!
作为程序员,计算机行业的软件工程师。有一台高性能的电脑是很有必要的,提高开发效率,工作也开心啦!
那程序员到底需要什么样的配置呢?这里我们先对程序员进行分类:
程序员分类
其实这个分法不太严格,举个例子,比如说做android的,还有做android系统的呢!做系统的话编译需要服务器了。但是,这应该是市场上比较常见的程序员!
UI的同学使用苹果的Macpro,然后前端的同学说这个色调不准,前端的同学也申请了Mac电脑。做后台的一看,妈的前端的都用Mac了,我不用不是很亏!于是后端的也用Mac了。
做iOS的用Mac或者垃圾桶也不出奇,android的也在用了。就这样,大家一起用起了一万多的电脑了,配置也不咋滴,哈哈!
除了苹果的生态开发比较封闭以外,同学们,windows才是生产力呀!
android程序员
小时候我们使用的是Eclipse,多省内存呀。现在用的是AndroidStudio,内存马上就上来了。
做android开发:
Android程序员
CPU
(i5能用)i7-7代以上
内存
(8G能用)16G以上
硬盘
256固态+2T机械
其实组装下来,也不是很贵的。我最近组装了一台i9-9900k+32G内存+1T固态一万块左右。用了水冷,散热可以。这个配置编译系统也够的。
javaWeb程序员
JavaWeb以前也用Eclipse比较多,现在大家使用idea了,跟AS是同一脉的。跑起来也对内存有一定的要求,以前的4G内存就不够用了。
近年来,流行的微服务,微服务是内存大户来的。当然啦,一般来说,公司有服务器给你测试,如果你是个人开发者的话,配置就要比较高一点了。
JavaWeb程序员
CPU
i7-7代以上
内存
16~32G
硬盘
256固态+2T机械
做iOS的跟平台有关系,总不能用个黑苹果吧!
做人工智能的,可能要大量的运算。
如果说:只是编辑,写代码而已,测试/编译有服务器的话,配置i5以上的都够用。
配置当然越高越好,看看你公司是否舍得,对吧!
我只知道这两个啦,其他的话不再提出来,大家留言吧!分享一下你的电脑配置。
算法程序员需要什么配置的电脑?
程序员的电脑需要的配置:
1.适合的系统:Windows系的用Windows,Linux系的用Linux或者Mac。总之要和自己的需求一致,别给自己找到麻烦。
2.舒服的交互硬件。4k屏用不用的到不好说但是一个27寸以上的显示器人人都喜欢。双显很有用,三显不好说。因为我们总要开各种资料/网页,IDE,命令行编辑器什么的,小显示器你就慢慢恶心吧。机械键盘或者hhkb请上一个。
3.内存要大,CPU要快,硬盘要SSD。开一堆网页,开IDE都是很占资源的。编译的速度影响工作效率与心情。
4.通畅的网络环境。
5.其他配置根据不同的需求而定。比如跑GPU的,图形开发的显卡要给力一些。经常出差的还要配个轻便续航强的笔记本。
Ⅲ 请问:主板上的COM的功能是什么
com 国际顶级域名
com也是一个国际顶级域名。 com是company的缩写,是最常用的顶级域名,表示商业网站。
[编辑本段]COM组件
什么是COM组件
COM是Component Object Model (组件对象模型)的缩写。
用户需要什么样的软件产品?这是一个多选题,但高效,健壮是肯定会被选种的。作为一名软件开发人员如何做才能满足用户的需要呢?必须要保证升级应用时不破坏与以前版本的向后兼容性。必须做到扩展系统服务时不依赖特定的操作系统。面向对象的程序设计显然是一次革命性的改变。采用面向对象的设计方法我们可以很容易的把要解决的问题事物抽象成各种类,并将内部动作封装隐藏起来,只提供一些接口。但这并没有完全解决我们的问题。昨天我在《程序员》杂志上看到,现在是后OO时代,那OO以后是什么呢?应该是面向组件吧。
雷神刚刚读完《COM技术内幕》一书,整理了一个FAQ,供大家在学习此书时参考。
这是第一部分,包含前3章的内容。
FAQ1:什么是COM组件?〖第一章〗
FAQ2:组件不是……?〖第一章〗
FAQ3:什么是接口?〖第二章〗
FAQ4:接口的作用是什么?〖第二章〗
FAQ5:什么是IUnKnown? 〖第三章〗
FAQ6:QueryInterface函数的作用是什么?〖第三章〗
FAQ7:QueryInterface函数的实现规则是什么?〖第三章〗
FAQ8:QueryInterface的样子?〖第三章〗
FAQ9:QueryInterface函数的参数IID是什么?〖第三章〗
FAQ10:何时需要建立一个新的COM组件版本?〖第三章〗
Question:
什么是COM组件?
Answer:
COM组件是以WIN32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行代码组成。
COM组件是遵循COM规范编写的
COM组件是一些小的二进制可执行文件
COM组件可以给应用程序、操作系统以及其他组件提供服务
自定义的COM组件可以在运行时刻同其他组件连接起来构成某个应用程序
COM组件可以动态的插入或卸出应用
COM组件必须是动态链接的
COM组件必须隐藏(封装)其内部实现细节
COM组件必须将其实现的语言隐藏
COM组件必须以二进制的形式发布
COM组件必须可以在不妨碍已有用户的情况下被升级
COM组件可以透明的在网络上被重新分配位置
COM组件按照一种标准的方式来宣布它们的存在
Question:
组件不是……?
Answer:
COM组件不是一种计算机语言
COM组件不是DLL,只是利用DLL来给组件提供动态链接的能力
COM组件不是一个API函数集。
COM组件不是类
Question:
什么是接口?
Answer:
接口就是提供两个不同对象间的一种连接。
计算机程序是通过一组函数而进行连接的,这组函数就是定义了程序中不同部分的接口。
DLL的接口就是它所输出的那些函数。
C++类的接口就是该类的成员函数集。
COM中的接口是一组由组件实现的提供给客户使用的函数。
在COM中接口是一个包含函数指针数组的内存结构,数组元素是一个由组件实现的函数地址。
Question:
接口的作用是什么?
Answer:
有了组件如何将它们连接起来构成某个应用程序,需要用接口。
在COM中接口就是一切,对客户说组件就是接口集,客户只能通过接口和组件打交道。
说明接口可以保护系统免受外界变化的影响。这是封装的体现。
接口实现了使用户使用同样的方式来处理不同的组件。这是多态的体现。
Question:
接口的如何实现?
Answer:
COM接口在C++中是用纯抽象基类实现。
一个COM组件可以支多个接口。
一个C++类可以使用多重继承来实现一个支持多个接口的组件。
组件可以支持任意数目的接口。
接口应该具有不变性。在组件升级时应该不修改原来的接口,而是添加新的接口。
要精心设计实现接口,以使之能够支持各种不同的实现。
Question:
什么是IUnKnown?
Answer:
IUnKnown是一个接口。
所有COM接口都继承IUnKnown。
IUnKnown的定义在WIN32 SDK中的UNKNWN头文件中。
///IUnKnown的定义
interface IUnKnown
{
virtual HRESULT __stdcall QueryInterface(const IID& iid,void **ppv)=0;
virtual ULONG __stdcall AddRef()=0;
virtual ULONG __stdcall Release()=0;
}
Question:
QueryInterface函数的作用是什么?
Answer:
QueryInterface是IUnKnown的成员函数,客户可以通过此函数来查询组件是否支持某个特定的接口。
QueryInterface函数返回一个指向组件支持的接口的指针。
如果QueryInterface函数没有找到组件支持的接口则返回指针是NULL。
QueryInterface函数可以使用if…then…else语句、数组、散列表、树来实现。
QueryInterface函数不能使用case语句,因为QueryInterface函数返回的是一个HRESULT结构而不是一个数。
QueryInterface也是一种无封处理组件版本的机制。这种机制使得组件的新旧不同的版本可以互操作。
Question:
QueryInterface函数的实现规则是什么?
Answer:
QueryInterface返回的IUnKnown指针总是相同。
若客户获得了某个接口,那么它总能获得此接口。
客户可以再次获得已经拥有的接口。
客户可以返回到起始接口。
若能够在某个接口获得某个特定接口,那么从任意接口都将可以获得此接口。
Question:
QueryInterface函数的参数IID是什么?
Answer:
它是一个结构,接口标识符结构。
IID标识了客户所需的接口。
每一个接口都有一个唯一的接口标识符。所以某个与IID相对应的接口绝对不会发生变化。
接口IID决定了COM组件的版本。
不同的接口具有不同的ID,包括不同版本的接口。
Question:
何时需要建立一个新的COM组件版本?
Answer:
当为已有接口指定新的ID时应该是下面的条件至少有一个成立。
接口中函数的数目发生改变时。
接口中函数的顺序发生改变。
接口中某个函数的参数发生改变
接口中某个函数的参数的顺序发生改变
接口中某个函数的参数的类型发生改变
接口中函数的返回值发生改变
接口中函数的返回值类型发生改变
接口中函数的参数的含义发生改变
接口中函数的含义发生改变
简单地说,COM是一种跨应用和语言共享二进制代码的方法。与C++不同,它提倡源代码重用。ATL便是一个很好的例证。源码级重用虽然好,但只能用于C++。它还带来了名字冲突的可能性,更不用说不断拷贝重用代码而导致工程膨胀和臃肿。
Windows使用DLLs在二进制级共享代码。这也是Windows程序运行的关键——重用kernel32.dll, user32.dll等。但DLLs是针对C接口而写的,它们只能被C或理解C调用规范的语言使用。由编程语言来负责实现共享代码,而不是由DLLs本身。这样的话DLLs的使用受到限制。
MFC引入了另外一种MFC扩展DLLs二进制共享机制。但它的使用仍受限制——只能在MFC程序中使用。
COM通过定义二进制标准解决了这些问题,即COM明确指出二进制模块(DLLs和EXEs)必须被编译成与指定的结构匹配。这个标准也确切规定了在内存中如何组织COM对象。COM定义的二进制标准还必须独立于任何编程语言(如C++中的命名修饰)。一旦满足了这些条件,就可以轻松地从任何编程语言中存取这些模块。由编译器负责所产生的二进制代码与标准兼容。这样使后来的人就能更容易地使用这些二进制代码。
在内存中,COM对象的这种标准形式在C++虚函数中偶尔用到,所以这就是为什么许多COM代码使用C++的原因。但是记住,编写模块所用的语言是无关的,因为结果二进制代码为所有语言可用。
此外,COM不是Win32特有的。从理论上讲,它可以被移植到Unix或其它操作系统。但是我好像还从来没有在Windows以外的地方听说过COM。
[编辑本段]英语中的com
1、表示共同或相同,意为“共同,互相,一起”;
除此之外,还有col,cor,co,syn,sym,syl,syr;另sup表共同,互 相;homo表相同,同;as表相同,类似;iso表等,同。
2、表示加强或引申意义;
同类前缀还有:be,a,ac,af,en,em,col,cor.
com-和con-前缀有表示“共同,一起”的意思。如connect, combine,combat等。
据我在英英字典里查com的意思,它给出的解释是:当其形式为.com的时候,表示的是与商业有关的意思.
据我后来在网上查到的词根表里的解释,com意为共同,与co和con同义.
Ⅳ 绋嫔簭锻樻棩甯搁渶瑕佺殑鐢佃剳閰岖疆链夊摢浜
绋嫔簭锻桦叕璁ゆ渶濂界玛璁版湰锛
绋嫔簭锻树滑鍏璁ょ殑鐢佃剳鏄鑻规灉镄勭玛璁版湰銆傚洜涓虹敤𨱒ョ紪绋嬬殑绗旇版湰鐢佃剳涓瀹氲佹弧瓒宠冻澶熺殑閰岖疆镓嶈岋纴镐ц兘瑕佺ǔ瀹氲繍琛岃佹瘆杈冩祦鐣咃纴镓浠ラ兘阃夋嫨鑻规灉镄
绋嫔簭锻树竴鑸鐢ㄤ粈涔堥厤缃镄勭数鑴戝ソ锛
浠ヤ笂閰岖疆鍙浠ョ殑锛屼絾鏄寤鸿浣犳妸鍐呭瓨鍗囧埌16G锛屽唴瀛橀戠巼闇瑕佺﹀悎涓绘澘镄勬墠琛岋纴绋嫔簭澶氩紑涓昏佽缮鏄鍗犵敤杩涚▼鍜屽唴瀛樼殑銆
3000棰勭畻杩涘崱钖э纴涓囧厓涓绘満鎶卞洖瀹讹绂鍝埚搱鍝埚搱锛屾垜𨱍崇煡阆扑綘瑕侀厤鍗旷嫭涓涓涓绘満杩樻槸鍖呭惈鏄剧ず鍣ㄧ殑锛岃缮鏄璇村彧瑕佺玛璁版湰锛熺敤𨱒ョ紪绋嬬殑链哄瓙链韬灏变笉闇瑕佸お楂樼锛岄厤缃澶楂樼殑涔熷彧鏄娴璐广
鍙板纺鍖呭惈鏄剧ず鍣锛屾樉绀哄櫒瀹为檯21瀵稿緢澶熶简锛屼绨𨱒剧殑灏卞ソ锛
涓绘満镄勭殑璇濅富瑕佽缮鏄疌PU鍜屽唴瀛桡纴CPU鍙浠ラ塱77700锛屽唴瀛16GB镄勪富链猴纴浣犵殑椤圭洰涓嶆槸寰埚ぇ镄勮瘽涓鑸涓涓256G镄勫浐镐佺‖鐩桦氨濂斤纴闇瑕佸ぇ瀛桦偍镄勭洿鎺ュ姞涓7200杞镄勬満姊扮‖鐩桦氨濂姐
绋嫔簭锻樼敤鍏鍙哥数鑴戣缮鏄镊宸辩数鑴戯纻
绋嫔簭锻樼敤鍏鍙哥数鑴戙
锲犱负鍦ㄦ湁浜涜屼笟閲岄溃娑夊强鍒扮殑鏄闇瑕佷缭瀵嗙殑锛屼唬镰佽祫鏂欐槸涓嶈兘澶栨硠镄勶纴姣斿傞摱琛屼箣绫荤殑閲戣瀺链烘瀯鏄链変弗镙肩殑淇濆瘑鍗忚镄勶纴灏辨槸鍦ㄥ叕鍙稿姙鍏閮芥槸涓嶈兘澶熶笂缃戠殑鏄涓涓灏侀棴镄勭幆澧冿纴镓浠ュ繀椤昏佷娇鐢ㄥ叕鍙告彁渚涚殑鐢佃剳锛屼絾鏄链夌殑涔熷厑璁镐娇鐢ㄨ嚜宸辩殑鐢佃剳銆
绋嫔簭锻樼数鑴戦厤缃瑕佹眰2021锛
瑕佺湅浣犳槸锅氭櫘阃氲繍缁淬佽蒋浠跺紑鍙戯纴杩樻槸锅氶珮绾х殑绠楁硶銆丄I寮鍙戙
濡傛灉鏄鏅阃氱殑杩愮淮锛岀敤鍒癓inux绯荤粺锛屾垨杞浠跺紑鍙戯纴姣斿侫ndroid寮鍙戝拰iOS寮鍙戠瓑锛岀敤鍒癑ava銆丳HP锛屾垨钥呮槸宓屽叆寮忓紑鍙戯纴鐢ㄥ埌C++绛夈傝繖浜涚敤阃旂殑寮鍙戠幆澧冿纴瀵圭数鑴戦厤缃瑕佹眰涓嶆槸寰堥珮锛孞ava镄勬煇浜涚紪杈戝櫒瑕佹眰绋嶅井楂树簺锛岄渶瑕佸ぇ鍐呭瓨锛屼笉杩囷纴涓鑸涔颁釜4鍗冦5鍗冨厓镄勮交钖勬湰涔熻冻澶熶娇鐢ㄤ简銆
濡傛灉鏄锅氶珮绾х殑绠楁硶镰旂┒銆丄I寮鍙戯纴娣卞害瀛︿範锛屾垨铏氭嫙鐜板疄銆乂R寮鍙戠瓑绛夌敤阃旓纴闾d箞瀵圭数鑴戠殑GPU閰岖疆瑕佹眰灏辨瘆杈冮珮浜嗭纴蹇呴’阃夋嫨娓告垙链锛屾渶灏戝甫4G鎴6G浠ヤ笂镫鏄炬墠琛岋纴涓鑸涔颁釜5鍗冦佹垨6鍗冨厓浠ヤ笂镄勬父鎴忔湰锛屽彲浠ユ弧瓒宠繖浜涗腑绛夋暟鎹瑙勬ā涓嬶纴涓婅堪寮鍙戠殑闇姹伞
缂栫▼鐢佃剳閰岖疆瑕佹眰楂桦悧锛
閰岖疆瑕佹眰涓嶉珮锛2000鍏冧互鍐呴厤缃镄勫彴寮忕数鑴戝熀链灏辫屻
缂栫▼鏄缂栧畾绋嫔簭镄勪腑鏂囩亩绉帮纴灏辨槸璁╄$畻链轰唬镰佽В鍐虫煇涓闂棰桡纴瀵规煇涓璁$畻浣撶郴瑙勫畾涓瀹氱殑杩愮畻鏂瑰纺锛屼娇璁$畻浣撶郴鎸夌収璇ヨ$畻鏂瑰纺杩愯岋纴骞舵渶缁埚缑鍒扮浉搴旂粨鏋灭殑杩囩▼銆
鍦ㄨ$畻链哄簲鐢ㄧ殑鍒濇湡锛岀▼搴忓憳浣跨敤链哄櫒镄勬寚浠ょ郴缁熸潵缂栧啓璁$畻链哄簲鐢ㄧ▼搴忥纴杩欑岖▼搴忕О涓烘満鍣ㄨ瑷绋嫔簭銆备娇鐢ㄦ満鍣ㄨ瑷缂栧啓镄勭▼搴忥纴鐢变簬姣忔浔鎸囦护閮藉瑰簲璁$畻链轰竴涓鐗瑰畾镄勫熀链锷ㄤ綔锛屾墍浠ョ▼搴忓崰鐢ㄥ唴瀛桦皯銆佹墽琛屾晥鐜囬珮銆
Ⅳ 请教,我经常看到“BIOS”这个词,是什么意思啊
bios
BIOS(basic input output system:基本输入输出系统)
BIOS是英文"Basic Input Output System"的缩略语,直译过来后中文名称就是"基本输入输出系统"。它的全称应该是ROM-BIOS,意思是只读存储器基本输入输出系统。其实,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机上电自检程序和系统启动自举程序。
其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。BIOS设置程序是储存在BIOS芯片中的,只有在开机时才可以进行设置。CMOS主要用于存储BIOS设置程序所设置的参数与数据,而BIOS设置程序主要对技巧的基本输入输出系统进行管理和设置,使系统运行在最好状态下,使用BIOS设置程序还可以排除系统故障或者诊断系统问题。
有人认为既然BIOS是"程序",那它就应该是属于软件,感觉就像自己常用的Word或Excel。但也很多人不这么认为,因为它与一般的软件还是有一些区别,而且它与硬件的联系也是相当地紧密。形象地说,BIOS应该是连接软件程序与硬件设备的一座"桥梁",负责解决硬件的即时要求。一块主板性能优越与否,很大程度上就取决于BIOS程序的管理功能是否合理、先进。主板上的BIOS芯片或许是主板上唯一贴有标签的芯片,一般它是一块32针的双列直插式的集成电路,上面印有"BIOS"字样。586以前的BIOS多为可重写EPROM芯片,上面的标签起着保护BIOS内容的作用(紫外线照射会使EPROM内容丢失),不能随便撕下。586以后的ROM BIOS多采用EEPROM(电可擦写只读ROM),通过跳线开关和系统配带的驱动程序盘,可以对EEPROM进行重写,方便地实现BIOS升级。
计算机用户在使用计算机的过程中,都会接触到BIOS,它在计算机系统中起着非常重要的作用。一块主板性能优越与否,很大程度上取决于主板上的BIOS管理功能是否先进。
BIOS芯片是主板上一块长方型或正方型芯片,BIOS中主要存放:
自诊断程序:通过读取CMOS RAM中的内容识别硬件配置,并对其进行自检和初始化;
CMOS设置程序:引导过程中,用特殊热键启动,进行设置后,存入CMOS RAM中;
系统自举装载程序:在自检成功后将磁盘相对0道0扇区上的引导程序装入内存,让其运行以装入DOS系统;
主要I/O设备的驱动程序和中断服务;
由于BIOS直接和系统硬件资源打交道,因此总是针对某一类型的硬件系统,而各种硬件系统又各有不同,所以存在各种不同种类的BIOS,随着硬件技术的发展,同一种BIOS也先后出现了不同的版本,新版本的BIOS比起老版本来说,功能更强。
BIOS的功能
在我们计算机上使用的BIOS程序根据制造厂商的不同分为:AWARD BIOS程序、AMI BIOS程序、PHOENIX BIOS程序以及其它的免跳线BIOS程序和品牌机特有的BIOS程序,如IBM等等。
目前主板BIOS有三大类型,即AWARD,AMI和PHOENIX三种。不过,PHOENIX已经合并了AWARD,二者的技术也互有融合。因此在台式机主板方面,其虽然标有AWARD-PHOENIX,其实际还是AWARD的BIOS的. Phoenix BIOS 多用于高档的586原装品牌机和笔记本电脑上,其画面简洁, 便于操作。从功能上看,BIOS分为三个部分:
自检及初始化程序;
硬件中断处理;
程序服务请求;
(一)自检及初始化
这部分负责启动电脑,具体有三个部分,第一个部分是用于电脑刚接通电源时对硬件部分的检测,也叫做加电自检(Power On Self Test,简称POST),功能是检查电脑是否良好,通常完整的POST自检将包括对CPU,640K基本内存,1M以上的扩展内存,ROM,主板,CMOS存储器,串并口,显示卡,软硬盘子系统及键盘进行测试,一旦在自检中发现问题,系统将给出提示信息或鸣笛警告。自检中如发现有错误,将按两种情况处理:对于严重故障(致命性故障)则停机,此时由于各种初始化操作还没完成,不能给出任何提示或信号;对于非严重故障则给出提示或声音报警信号,等待用户处理。
第二个部分是初始化,包括创建中断向量、设置寄存器、对一些外部设备进行初始化和检测等,其中很重要的一部分是BIOS设置,主要是对硬件设置的一些参数,当电脑启动时会读取这些参数,并和实际硬件设置进行比较,如果不符合,会影响系统的启动。
最后一个部分是引导程序,功能是引导DOS或其他操作系统。BIOS先从软盘或硬盘的开始扇区读取引导记录,如果没有找到,则会在显示器上显示没有引导设备,如果找到引导记录会把电脑的控制权转给引导记录,由引导记录把操作系统装入电脑,在电脑启动成功后,BIOS的这部分任务就完成了。
(二)程序服务处理和硬件中断处理
这两部分是两个独立的内容,但在使用上密切相关。
程序服务处理程序主要是为应用程序和操作系统服务,这些服务主要与输入输出设备有关,例如读磁盘、文件输出到打印机等。为了完成这些操作,BIOS必须直接与计算机的I/O设备打交道,它通过端口发出命令,向各种外部设备传送数据以及从它们那儿接收数据,使程序能够脱离具体的硬件操作,而硬件中断处理则分别处理PC机硬件的需求,因此这两部分分别为软件和硬件服务,组合到一起,使计算机系统正常运行。
BIOS的服务功能是通过调用中断服务程序来实现的,这些服务分为很多组,每组有一个专门的中断。例如视频服务,中断号为10H;屏幕打印,中断号为05H;磁盘及串行口服务,中断14H等。每一组又根据具体功能细分为不同的服务号。应用程序需要使用哪些外设、进行什么操作只需要在程序中用相应的指令说明即可,无需直接控制。
CMOS是互补金属氧化物半导体的缩写。其本意是指制造大规模集成电路芯片用的一种技术或用这种技术制造出来的芯片。在这里通常是指电脑主板上的一块可读写的RAM芯片。它存储了电脑系统的实时钟信息和硬件配置信息等。系统在加电引导机器时,要读取CMOS信息,用来初始化机器各个部件的状态。它靠系统电源和后备电池来供电,系统掉电后其信息不会丢失。
CMOS与BIOS的区别
由于CMOS与BIOS都跟电脑系统设置密切相关,所以才有CMOS设置和BIOS设置的说法。也正因此,初学者常将二者混淆。CMOS RAM是系统参数存放的地方,而BIOS中系统设置程序是完成参数设置的手段。因此,准确的说法应是通过BIOS设置程序对CMOS参数进行设置。而我们平常所说的CMOS设置和BIOS设置是其简化说法,也就在一定程度上造成了两个概念的混淆。
升级BIOS的作用
现在的BIOS芯片都采用了Flash ROM,都能通过特定的写入程序实现BIOS的升级,升级BIOS主要有两大目的:
免费获得新功能
升级BIOS最直接的好处就是不用花钱就能获得许多新功能,比如能支持新频率和新类型的CPU,例如以前的某些老主板通过升级BIOS支持图拉丁核心Pentium III和Celeron,现在的某些主板通过升级BIOS能支持最新的Prescott核心Pentium 4E CPU;突破容量限制,能直接使用大容量硬盘;获得新的启动方式;开启以前被屏蔽的功能,例如英特尔的超线程技术,VIA的内存交错技术等;识别其它新硬件等。
解决旧版BIOS中的BUG
BIOS既然也是程序,就必然存在着BUG,而且现在硬件技术发展日新月异,随着市场竞争的加剧,主板厂商推出产品的周期也越来越短,在BIOS编写上必然也有不尽如意的地方,而这些BUG常会导致莫名其妙的故障,例如无故重启,经常死机,系统效能低下,设备冲突,硬件设备无故“丢失”等等。在用户反馈以及厂商自己发现以后,负责任的厂商都会及时推出新版的BIOS以修正这些已知的BUG,从而解决那些莫名其妙的故障。
由于BIOS升级具有一定的危险性,各主板厂商针对自己的产品和用户的实际需求,也开发了许多BIOS特色技术。例如BIOS刷新方面的有着名的技嘉的@BIOS Writer,支持技嘉主板在线自动查找新版BIOS并自动下载和刷新BIOS,免除了用户人工查找新版BIOS的麻烦,也避免了用户误刷不同型号主板BIOS的危险,而且技嘉@BIOS还支持许多非技嘉主板在windows下备份和刷新BIOS;其它相类似的BIOS特色技术还有华硕的Live Update,升技的Abit Flash Menu,QDI的Update Easy,微星的Live Update 3等等,微星的Live Update 3除了主板BIOS,对微星出品的显卡BIOS以及光存储设备的Firmware也能自动在线刷新,是一款功能非常强大的微星产品专用工具。此外,英特尔原装主板的Express BIOS Update技术也支持在windows下刷新BIOS,而且此技术是BIOS文件与刷新程序合一的可执行程序,非常适合初学者使用。在预防BIOS被破坏以及刷新失败方面有技嘉的双BIOS技术,QDI的金刚锁技术,英特尔原装主板的Recovery BIOS技术等等。
除了厂商的新版BIOS之外,其实我们自己也能对BIOS作一定程度上的修改而获得某些新功能,例如更改能源之星LOGO,更改全屏开机画面,获得某些品牌主板的特定功能(例如为非捷波主板添加捷波恢复精灵模块),添加显卡BIOS模块拯救BIOS损坏的显卡,打开被主板厂商屏蔽了的芯片组功能,甚至支持新的CPU类型,直接支持大容量的硬盘而不用DM之类的软件等等。不过这些都需要对BIOS非常熟悉而且有一定的动手能力和经验以后才能去做。
BIOS的主要作用详解
1.自检及初始化:开机后BIOS最先被启动,然后它会对电脑的硬件设备进行完全彻底的检验和测试。如果发现问题,分两种情况处理:严重故障停机,不给出任何提示或信号;非严重故障则给出屏幕提示或声音报警信号,等待用户处理。如果未发现问题,则将硬件设置为备用状态,然后启动操作系统,把对电脑的控制权交给用户。
2.程序服务:BIOS直接与计算机的I/O(Input/Output,即输入/输出)设备打交道,通过特定的数据端口发出命令,传送或接收各种外部设备的数据,实现软件程序对硬件的直接操作。
3.设定中断:开机时,BIOS会告诉CPU各硬件设备的中断号,当用户发出使用某个设备的指令后,CPU就根据中断号使用相应的硬件完成工作,再根据中断号跳回原来的工作。
深入了解 BIOS
一、BIOS中断例程 即BIOS中断服务程序。它是微机系统软、硬件之间的一个可编程接口,用于程序软件功能与微机硬件实现的衍接。 DOS/Windows操作系统对软、硬盘、光驱与键盘、显示器等外围设备的管理即建立在系统BIOS的基础上。程序员也可以通过 对INT 5、INT 13等中断的访问直接调用BIOS中断例程。
二、BIOS系统设置程序 微机部件配置情况是放在一块可读写的CMOS RAM芯片中的,它保存着系统CPU、软硬盘驱动器、显示器、键盘等部件的信息。 关机后,系统通过一块后备电池向CMOS供电以保持其中的信息。如果CMOS中关于微机的配置信息不正确,会导致系统性能降 低、零部件不能识别,并由此引发一系统的软硬件故障。在BIOS ROM芯片中装有一个程序称为“系统设置程序”,就是用来 设置CMOS RAM中的参数的。这个程序一般在开机时按下一个或一组键即可进入,它提供了良好的界面供用户使用。这个设置 CMOS参数的过程,习惯上也称为“BIOS设置”。新购的微机或新增了部件的系统,都需进行BIOS设置。
三、POST上电自检 微机接通电源后,系统将有一个对内部各个设备进行检查的过程,这是由一个通常称之为POST(Power On Self Test,上电自 检)的程序来完成的。这也是BIOS的一个功能。完整的POST自检将包括CPU、640K基本内存、1M以上的扩展内存、ROM、主板、 CMOS存贮器、串并口、显示卡、软硬盘子系统及键盘测试。自检中若发现问题,系统将给出提示信息或鸣笛警告。
四、BIOS系统启动自举程序 在完成POST自检后,ROM BIOS将按照系统CMOS设置中的启动顺序搜寻软硬盘驱动器及CDROM、网络服务器等有效的启动驱动器 ,读入操作系统引导记录,然后将系统控制权交给引导记录,由引导记录完成系统的启动。
BIOS的功用
BIOS ROM芯片不但可以在主板上看到,而且BIOS管理功能如何在很大程度上决定了主板性能是否优越。BIOS管理功能主要包括:
1. BIOS中断服务程序
BIOS中断服务程序实质上是微机系统中软件与硬件之间的一个可编程接口,主要用来在程序软件与微机硬件之间实现衔接。例如,DOS和Windows操作系统中对软盘、硬盘、光驱、键盘、显示器等外围设备的管理,都是直接建立在BIOS系统中断服务程序的基础上,而且操作人员也可以通过访问INT 5、INT 13等中断点而直接调用BIOS中断服务程序。
2.BIOS系统设置程序
微机部件配置记录是放在一块可读写的 CMOS RAM 芯片中的,主要保存着系统基本情况、CPU特性、软硬盘驱动器、显示器、键盘等部件的信息。在 BIOS ROM芯片中装有"系统设置程序",主要用来设置CMOS RAM中的各项参数。这个程序在开机时按下某个特定键即可进入设置状态,并提供了良好的界面供操作人员使用。事实上,这个设置CMOS参数的过程,习惯上也称为" BIOS设置"。一旦CMOS RAM芯片中关于微机的配置信息不正确时,轻者会使得系统整体运行性能降低、软硬盘驱动器等部件不能识别,严重时就会由此引发一系统的软硬件故障。
3. POST上电自检
微机按通电源后,系统首先由POST(Power On Self Test,上电自检)程序来对内部各个设备进行检查。通常完整的POST自检将包括对 CPU、640K基本内存、 1M以上的扩展内存、ROM、主板、CMOS存贮器、串并口、显示卡、软硬盘子系统及键盘进行测试,一旦在自检中发现问题,系统将给出提示信息或鸣笛警告。
4. BIOS系统启动自举程序
系统在完成 POST自检后, ROM BIOS 就首先按照系统 CMOS设置中保存的启动顺序搜寻软硬盘驱动器及CD-ROM、网络服务器等有效地启动驱动器,读入操作系统引导记录,然后将系统控制权交给引导记录,并由引导记录来完成系统的顺利启动。