一娄蔼、軟件概述
1.軟件定義:
軟件是計算機的重要組成部分结窘。軟件是指能指揮計算機工作的程序與程序運行時所需要的數(shù)據(jù)很洋,以及與這些程序和數(shù)據(jù)相關的文檔說明。軟件是用戶與機器的接口隧枫。
2.軟件與硬件
(1)硬件
硬件是看得見摸得到的實體喉磁,如CPU、存儲器悠垛、顯示器线定、鍵盤等。
(2)軟件
軟件是相對硬件而言的确买,是看不見摸不著無形的東西斤讥。計算機的硬件只能按照程序員給予它的指令按部就班地運行。
軟件和硬件是一個完整的計算機系統(tǒng)中互相依存的兩大部分湾趾,其關系主要體現(xiàn)在以下幾個方面:
(1)硬件和軟件互相依存芭商。硬件是軟件賴以工作的基礎,軟件的正常工作是硬件發(fā)揮作用的唯一途徑搀缠。計算機系統(tǒng)必須要配備完善的軟件系統(tǒng)才能正常工作铛楣。
(2)硬件和軟件無嚴格界線。隨著計算機技術的發(fā)展艺普,在許多情況下簸州,計算機的某些功能既可以由硬件實現(xiàn),也可以由軟件來實現(xiàn)歧譬。
(3)硬件和軟件協(xié)同發(fā)展岸浑。硬件的高速發(fā)展為軟件的發(fā)展提供了支持,軟件依托硬件的高速運算能力和大容量的存儲而發(fā)揮作用瑰步。
3.軟件兼容性
軟件兼容問題是指軟件與硬件矢洲、操作系統(tǒng)或其他軟件之間的沖突問題。造成不兼容的原因很多缩焦,主要有以下幾個方面读虏。
(1)操作系統(tǒng)不兼容
不同的操作系統(tǒng)幾乎不兼容。針對Windows系統(tǒng)開發(fā)的軟件袁滥,在Linux系統(tǒng)上可能無法運行盖桥。
(2)硬件不兼容
有的軟件對機器的內存要求較高,當機器實際內存達不到要求時题翻,軟件或者運行慢或者根本就不能運行葱轩,如3D MAX。
有的軟件需要有高質量的顯卡才能生成高質量的圖形,而實際使用的機器可能不滿足要求靴拱,如Adobe Premiere 垃喊。
(3)軟件之間不兼容
不同軟件同時安裝時可能會發(fā)生沖突。如微軟的Studio.NET 2002和Office 2003袜炕,如果同時安裝在一臺機器上本谜,軟件不能正常使用。
二偎窘、系統(tǒng)軟件
系統(tǒng)軟件是用來管理乌助、監(jiān)控和維護計算機的軟件,它是為整個計算機系統(tǒng)所配置的陌知、必不可少的軟件他托,其他程序都在它的支持下編寫和運行。
1.操作系統(tǒng)
(1)基本介紹
a.操作系統(tǒng)是最基本仆葡、最重要的系統(tǒng)軟件赏参,由一組控制計算機系統(tǒng)并對計算機系統(tǒng)進行管理的程序組成,是用戶與計算機硬件系統(tǒng)的接口沿盅,并為用戶和應用軟件提供了訪問與控制計算機硬件的橋梁把篓。
b.每臺計算機都至少需要一種操作系統(tǒng),沒有操作系統(tǒng)腰涧,計算機就無法啟動韧掩。只有安裝操作系統(tǒng)后,計算機才能執(zhí)行讀窖铡、寫或計算操作疗锐。
c.計算機的基本輸入/輸出系統(tǒng)(BIOS),用于啟動操作系統(tǒng)费彼,裝載操作系統(tǒng)的過程稱為自舉或引導滑臊。
d.計算機系統(tǒng)完成引導后,只有一部分操作系統(tǒng)駐留在計算機內存中敌买。常駐內存的這部分叫內部命令,其他的外部命令阶界,只在使用時才被裝載到內存虹钮。?
(2)操作系統(tǒng)的五大管理功能
a.作業(yè)管理:包括任務、界面管理膘融、人機交互芙粱、圖形界面、語音控制和虛擬現(xiàn)實等氧映;
b.文件管理:又稱為信息管理春畔;
c.存儲管理:實質是對存儲“空間”的管理,主要指對主存的管理;
d.設備管理:實質是對硬件設備的管理律姨,其中包括對輸入輸出設備的分配振峻、啟動、完成和回收择份;
e.進程管理:實質上是對處理機執(zhí)行“時間”的管理扣孟,即如何將CPU真正合理地分配給每個任務。
(3)操作系統(tǒng)的分類
a.根據(jù)使用環(huán)境和對作業(yè)處理方式荣赶,分為批處理系統(tǒng)(MVX凤价、DOS/VSE),分時系統(tǒng)(Windows拔创、UNIX利诺、XENIX、Mac OS)剩燥,實時系統(tǒng)(iEMX慢逾、VRTX、RTOS躏吊、RT Linux)氛改。
b.根據(jù)所支持的用戶數(shù)目,分為單用戶系統(tǒng)(MSDOS比伏、OS/2)胜卤,多用戶系統(tǒng)(UNIX、MVS赁项、Windows)葛躏。
c.根據(jù)硬件結構,分為網絡系統(tǒng)(Netware悠菜、Windows NT舰攒、OS/2 warp)、分布式系統(tǒng)(Amoeba)悔醋、多媒體系統(tǒng)(Amiga)摩窃。
d.按照操作系統(tǒng)所提供的功能進行分類,分為批處理操作系統(tǒng)芬骄、分時操作系統(tǒng)猾愿、實時操作系統(tǒng)、單用戶操作系統(tǒng)账阻、網絡操作系統(tǒng)和分布式(多處理器)操作系統(tǒng)等蒂秘。
2.幾種常見的計算機操作系統(tǒng)
(1)DOS
磁盤操作系統(tǒng),1981年微軟推出的最早的操作系統(tǒng)淘太。它不需要十分強勁的硬件系統(tǒng)來支持姻僧,當Windows出問題時规丽,還得需要在DOS環(huán)境下才能得到解決。它是單用戶單任務操作系統(tǒng)撇贺。
(2)Windows
從微軟1985年推出Windows 1.0以來赌莺,Windows系統(tǒng)不斷更新。從最初運行在DOS下的Windows 3.x显熏,到風靡全球的Windows 9x雄嚣、Windows 2000、Windows XP喘蟆,Windows 7缓升,Windows成為新一代的操作系統(tǒng)大亨。
(3)Linux
Linux是多用戶多任務操作系統(tǒng)蕴轨。它是由芬蘭赫爾辛基大學的學生Linus B. Torvolds在1991年首次編寫實現(xiàn)的港谊。其標志性圖標是一個可愛的小企鵝。由于其源代碼的免費開放橙弱,使其在很多高級應用中占有很大市場歧寺。被業(yè)界視為打破微軟Windows壟斷的希望。
(4)UNIX
UNIX操作系統(tǒng)棘脐,是一個強大的多用戶斜筐、多任務操作系統(tǒng),支持多種處理器架構蛀缝,按照操作系統(tǒng)的分類顷链,屬于分時操作系統(tǒng),于1969年在AT&T的貝爾實驗室開發(fā)屈梁。
三嗤练、應用軟件
應用軟件是為解決各類實際問題而設計的軟件,是最終用戶所需要的軟件在讶,計算機軟件中應用軟件多于系統(tǒng)軟件煞抬。
1.通用應用軟件
文字處理軟件、電子表格軟件和數(shù)據(jù)庫管理軟件都屬于通用應用軟件构哺,主要為完成一些基本任務而設計的革答,又稱為基礎應用軟件。
2.專用應用軟件
專用應用軟件是專門為少數(shù)用戶設計的曙强、目標單一的應用軟件残拐,如用于某實驗儀器的數(shù)據(jù)采集與數(shù)據(jù)處理的專用軟件、某機床設備的自動控制軟件旗扑、為專門學習某門課程而設計的輔助教學軟件等蹦骑。
專用應用軟件用于特殊領域或行業(yè)慈省,一般用戶幾乎接觸不到臀防。
3.中間件
中間件是一種獨立的系統(tǒng)軟件或服務程序眠菇,分布式應用軟件借助這種軟件在不同的技術之間共享資源,中間件位于客戶機/服務器的操作系統(tǒng)之上袱衷,管理計算機資源和網絡通信捎废。
中間件是目前比較熱門的軟件,從技術上講致燥,它介于系統(tǒng)軟件和應用軟件之間登疗。
四、軟件工程
1.軟件危機
許多軟件項目不能滿足客戶的要求
許多軟件項目超出預算和時間安排
(1)軟件危機的表現(xiàn)
a.對軟件開發(fā)成本和進度的估計常常很不正確b.用戶對“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經常發(fā)生
c.軟件產品的質量往往靠不住
d.軟件常常是不可維護的
e.軟件通常沒有適當?shù)奈臋n資料
f.軟件成本在計算機系統(tǒng)總成本中所占的比例逐年上升
g.軟件開發(fā)生產率提高的速度遠遠跟不上計算機應用迅速普及深入的趨勢
(2)軟件危機的原因
a.軟件是邏輯產品嫌蚤,開發(fā)進度辐益、成本難以估計b.缺乏或不完整、不一致的文檔給維護帶來困難
c.用戶對軟件需求的描述往往不夠精確脱吱,有遺漏智政,有二義
d.軟件開發(fā)人員對需求的理解與用戶的本來愿望有差異
e.大型軟件項目需多人協(xié)同完成,缺乏管理經驗
f.開發(fā)人員不能有效地箱蝠、獨立自主地處理大型軟件的全部關系
g.缺乏有力的方法學和工具的支持
h.軟件項目的特殊性和人類智力的局限性
(3)克服軟件危機的途徑
a.消除錯誤的概念和做法
b.推廣使用成功的開發(fā)技術和方法
c.使用軟件工具和軟件工程支持環(huán)境
d.加強軟件管理
2.軟件工程
(1)軟件工程的定義
“以工程化的方式組織軟件的開發(fā)”续捂。從而使軟件生產規(guī)范化,提高了開發(fā)質量宦搬,降低了成本牙瓢,控制開發(fā)進度。
(2)軟件工程包含的內容
a.軟件開發(fā)技術间校。包括軟件開發(fā)方法學矾克、軟件工具、軟件工程環(huán)境撇簿。
b.軟件工程管理聂渊。包括軟件管理、軟件工程經濟學四瘫。
(3)軟件開發(fā)過程
軟件有一個從孕育汉嗽、誕生、成長找蜜、成熟到衰亡的生存過程饼暑,這個過程即為軟件的生命周期
a.問題定義——要解決的問題是什么
b.可行性研究——對上一個階段所確定的問題是否有行得通的解決辦法
c.需求分析——為了解決這個問題,目標系統(tǒng)需要做什么
d.總體設計——概括地說洗做,應該如何實現(xiàn)目標系統(tǒng)
e.詳細設計——如何具體地實現(xiàn)這個系統(tǒng)
f.程序開發(fā)
g.軟件測試
h.軟件維護
3.軟件行業(yè)職業(yè)簡介
軟件行業(yè)職業(yè)按需求可以分為以下幾類弓叛。
a.項目管理類:項目經理、質量保證工程師诚纸。
b.開發(fā)類:需求分析師撰筷、開發(fā)工程師、人機系統(tǒng)開發(fā)工程師畦徘、系統(tǒng)分析師毕籽、系統(tǒng)架構師抬闯。
c.測試類:測試工程師、產品測試經理关筒。
d.系統(tǒng)類:網絡工程師溶握、基礎設施工程師
e.安全類:網絡安全管理員、安全開發(fā)工程師蒸播。
f.維護類:數(shù)據(jù)庫管理員睡榆、系統(tǒng)管理員。
g.銷售類:售前工程師袍榆、售后技術工程師胀屿、系統(tǒng)集成工程師。