-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 技術(shù) > 專(zhuān)題列表 > 正文
計(jì)算機(jī)軟件體系結(jié)構(gòu)(計(jì)算機(jī)軟件體系結(jié)構(gòu)圖)
大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于計(jì)算機(jī)軟件體系結(jié)構(gòu)的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
開(kāi)始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫(xiě)出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶(hù)端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶(hù)遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、什么是系統(tǒng)架構(gòu)
問(wèn)題一:“系統(tǒng)架構(gòu)”是什么意思?都有哪些架構(gòu)? JDE屬于分布式架構(gòu),人和系統(tǒng)恕我孤陋寡聞,沒(méi)聽(tīng)過(guò)阿
問(wèn)題二:軟件架構(gòu)和系統(tǒng)架構(gòu)到底是什?生活中有哪些東西可以比喻? 軟件架構(gòu)是指軟件整體的組織結(jié)構(gòu),是在較高層次上的分析設(shè)計(jì),體現(xiàn)了軟件系統(tǒng)總體的規(guī)化、決策、控制等。
系統(tǒng)架構(gòu)包括軟件、硬件、網(wǎng)絡(luò)等多方面的組織結(jié)構(gòu)。架構(gòu)是分析設(shè)計(jì)的高層階段,不會(huì)涉及到技術(shù)實(shí)現(xiàn)的細(xì)節(jié),是藍(lán)圖,是規(guī)化,是決策。
現(xiàn)實(shí)生活中可比喻為高樓大廈的設(shè)計(jì)圖紙。
問(wèn)題三:什么是架構(gòu) 架構(gòu)一般指軟件架構(gòu)
(software architecture)是一系列相關(guān)的抽象模式,用于指導(dǎo)大型軟件系統(tǒng)各個(gè)方面的設(shè)計(jì)。 軟件架構(gòu)是一個(gè)系統(tǒng)的草圖。軟件架構(gòu)描述的對(duì)象是直接構(gòu)成系統(tǒng)的抽象組件。各個(gè)組件之間的連接則明確和相對(duì)細(xì)致地描述組件之間的通訊。在實(shí)現(xiàn)階段,這些抽象組件被細(xì)化為實(shí)際的組件,比如具體某個(gè)類(lèi)或者對(duì)象。在面向?qū)ο箢I(lǐng)域中,組件之間的連接通常用接口(計(jì)算機(jī)科學(xué))來(lái)實(shí)現(xiàn)。 軟件體系結(jié)構(gòu)是構(gòu)建計(jì)算機(jī)軟件實(shí)踐的基礎(chǔ)。與建筑師設(shè)定建筑項(xiàng)目的設(shè)計(jì)原則和目標(biāo),作為繪圖員畫(huà)圖的基礎(chǔ)一樣,一個(gè)軟件架構(gòu)師或者系統(tǒng)架構(gòu)師陳述軟件構(gòu)架以作為滿(mǎn)足不同客戶(hù)需求的實(shí)際系統(tǒng)設(shè)計(jì)方案的基礎(chǔ)。
軟件構(gòu)架是一個(gè)容易理解的概念,多數(shù)工程師(尤其是經(jīng)驗(yàn)不多的工程師)會(huì)從直覺(jué)上來(lái)認(rèn)識(shí)它,但要給出精確的定義很困難。特別是,很難明確地區(qū)分設(shè)計(jì)和構(gòu)架:構(gòu)架屬于設(shè)計(jì)的一方面,它集中于某些具體的特征。
在“軟件構(gòu)架簡(jiǎn)介”中,David Garlan 和 Mary Shaw 認(rèn)為軟件構(gòu)架是有關(guān)如下問(wèn)題的設(shè)計(jì)層次:“在計(jì)算的算法和數(shù)據(jù)結(jié)構(gòu)之外,設(shè)計(jì)并確定系統(tǒng)整體結(jié)構(gòu)成為了新的問(wèn)題。結(jié)構(gòu)問(wèn)題包括總體組織結(jié)構(gòu)和全局控制結(jié)構(gòu);通信、同步和數(shù)據(jù)訪問(wèn)的協(xié)議;設(shè)計(jì)元素的功能分配;物理分布;設(shè)計(jì)元素的組成;定標(biāo)與性能;備選設(shè)計(jì)的選擇?!薄綠S93】
但構(gòu)架不僅是結(jié)構(gòu);IEEE Working Group on Architecture 把其定義為“系統(tǒng)在其環(huán)境中的最高層概念”【IEEE98】。構(gòu)架還包括“符合”系統(tǒng)完整性、經(jīng)濟(jì)約束條件、審美需求和樣式。它并不僅注重對(duì)內(nèi)部的考慮,而且還在系統(tǒng)的用戶(hù)環(huán)境和開(kāi)發(fā)環(huán)境中對(duì)系統(tǒng)進(jìn)行整體考慮,即同時(shí)注重對(duì)外部的考慮。
在 Rational Unified Process 中,軟件系統(tǒng)的構(gòu)架(在某一給定點(diǎn))是指系統(tǒng)重要構(gòu)件的組織或結(jié)構(gòu),這些重要構(gòu)件通過(guò)接口與不斷減小的構(gòu)件與接口所組成的構(gòu)件進(jìn)行交互。
從和目的、主題、材料和結(jié)構(gòu)的聯(lián)系上來(lái)說(shuō),軟件架構(gòu)可以和建筑物的架構(gòu)相比擬。一個(gè)軟件架構(gòu)師需要有廣泛的軟件理論知識(shí)和相應(yīng)的經(jīng)驗(yàn)來(lái)實(shí)施和管理軟件產(chǎn)品的高級(jí)設(shè)計(jì)。軟件架構(gòu)師定義和設(shè)計(jì)軟件的模塊化,模塊之間的交互,用戶(hù)界面風(fēng)格,對(duì)外接口方法,創(chuàng)新的設(shè)計(jì)特性,以及高層事物的對(duì)象操作、邏輯和流程。
一般而言,軟件系統(tǒng)的架構(gòu)(Architecture)有兩個(gè)要素:
・它是一個(gè)軟件系統(tǒng)從整體到部分的最高層次的劃分。
一個(gè)系統(tǒng)通常是由元件組成的,而這些元件如何形成、相互之間如何發(fā)生作用,則是關(guān)于這個(gè)系統(tǒng)本身結(jié)構(gòu)的重要信息。
詳細(xì)地說(shuō),就是要包括架構(gòu)元件(Architecture ponent)、聯(lián)結(jié)器(Connector)、任務(wù)流(Task-flow)。所謂架構(gòu)元素,也就是組成系統(tǒng)的核心磚瓦,而聯(lián)結(jié)器則描述這些元件之間通訊的路徑、通訊的機(jī)制、通訊的預(yù)期結(jié)果,任務(wù)流則描述系統(tǒng)如何使用這些元件和聯(lián)結(jié)器完成某一項(xiàng)需求。
・建造一個(gè)系統(tǒng)所作出的最高層次的、以后難以更改的,商業(yè)的和技術(shù)的決定。
在建造一個(gè)系統(tǒng)之前會(huì)有很多的重要決定需要事先作出,而一旦系統(tǒng)開(kāi)始進(jìn)行詳細(xì)設(shè)計(jì)甚至建造,這些決定就很難更改甚至無(wú)法更改。顯然,這樣的決定必定是有關(guān)系統(tǒng)設(shè)計(jì)成敗的最重要決定,必須經(jīng)過(guò)非常慎重的研究和考察。
詳情參考
......>>
問(wèn)題四:什么是系統(tǒng)工程師、系統(tǒng)架構(gòu)工程師? 系統(tǒng)工程師資格就是具備較高專(zhuān)業(yè)技術(shù)水平,能夠分析商業(yè)需求,并使用各種系統(tǒng)平臺(tái)和服務(wù)器軟件來(lái)設(shè)計(jì)并實(shí)現(xiàn)商務(wù)解決方案的基礎(chǔ)架構(gòu)。
系統(tǒng)架構(gòu)師是大型項(xiàng)目的技術(shù)領(lǐng)導(dǎo)者,總體負(fù)責(zé)系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì)和指導(dǎo)。
問(wèn)題五:什么是分布式系統(tǒng)架構(gòu) baike.baidu/view/9914海9 百度百科
問(wèn)題六:架構(gòu),系統(tǒng)架構(gòu),技術(shù)架構(gòu),應(yīng)用架構(gòu)都是什么關(guān)系 架構(gòu)
是有關(guān)軟件整體結(jié)構(gòu)與組件的抽象描述,用于指導(dǎo)大型軟件系統(tǒng)各個(gè)方面的設(shè)計(jì)。
系統(tǒng)架構(gòu)
是對(duì)已確定的需求的技術(shù)實(shí)現(xiàn)構(gòu)架、作好規(guī)劃,運(yùn)用成套、完整的工具,在規(guī)劃的步驟下去完成任務(wù)。
技術(shù)架構(gòu)
通過(guò)合理的完善的評(píng)估途徑對(duì)組織、網(wǎng)絡(luò)、程序的組成框架、模型進(jìn)行評(píng)價(jià)和分析,并對(duì)其進(jìn)行完善。
應(yīng)用架構(gòu)
以架構(gòu)圖的方式描述系統(tǒng)的組成和框架,一般從系統(tǒng)功能和系統(tǒng)技術(shù)層次兩個(gè)架構(gòu)視角進(jìn)行設(shè)計(jì)。
問(wèn)題七:請(qǐng)問(wèn)系統(tǒng)架構(gòu)設(shè)計(jì)師的職責(zé)是什么 系統(tǒng)架構(gòu)師的職責(zé)主要有如下4條:
1、確認(rèn)需求
在項(xiàng)目開(kāi)發(fā)過(guò)程中,架構(gòu)師是在需求規(guī)格說(shuō)明書(shū)完成后介入的,需求規(guī)格說(shuō)明書(shū)必須得到架構(gòu)師的認(rèn)可。架構(gòu)師需要和分析人員反復(fù)交流,以保證自己完整并準(zhǔn)確地理解用戶(hù)需求。
2、系統(tǒng)分解
依據(jù)用戶(hù)需求,架構(gòu)師將系統(tǒng)整體分解為更小的子系統(tǒng)和組件,從而形成不同的邏輯層或服務(wù)。隨后,架構(gòu)師會(huì)確定各層的接口,層與層相互之間的關(guān)系。架構(gòu)師不僅要對(duì)整個(gè)系統(tǒng)分層,進(jìn)行“縱向”分解,還要對(duì)同一邏輯層分塊,進(jìn)行“橫向”分解。
軟件架構(gòu)師的功力基本體現(xiàn)于此,這是一項(xiàng)相對(duì)復(fù)雜的工作。
3、技術(shù)選型
架構(gòu)師通過(guò)對(duì)系統(tǒng)的一系列的分解,最終形成了軟件的整體架構(gòu)。技術(shù)選擇主要取決于軟件架構(gòu)。
Web Server運(yùn)行在Windows上還是Linux上?數(shù)據(jù)庫(kù)采用MSSql、Oracle還是Mysql?需要不需要采用MVC或者Spring等輕量級(jí)的框架?前端采用富客戶(hù)端還是瘦客戶(hù)端方式?類(lèi)似的工作,都需要在這個(gè)階段提出,并進(jìn)行評(píng)估。
架構(gòu)師對(duì)產(chǎn)品和技術(shù)的選型僅僅限于評(píng)估,沒(méi)有決定權(quán),最終的決定權(quán)歸項(xiàng)目經(jīng)理。架構(gòu)師提出的技術(shù)方案為項(xiàng)目經(jīng)理提供了重要的參考信息,項(xiàng)目經(jīng)理會(huì)從項(xiàng)目預(yù)算、人力資源、時(shí)間進(jìn)度等實(shí)際情況進(jìn)行權(quán)衡,最終進(jìn)行確認(rèn)。
4、制定技術(shù)規(guī)格說(shuō)明
架構(gòu)師在項(xiàng)目開(kāi)發(fā)過(guò)程中,是技術(shù)權(quán)威。他需要協(xié)調(diào)所有的開(kāi)發(fā)人員,與開(kāi)發(fā)人員一直保持溝通,始終保證開(kāi)發(fā)者依照它的架構(gòu)意圖去實(shí)現(xiàn)各項(xiàng)功能。
架構(gòu)師不僅要保持與開(kāi)發(fā)者的溝通,也需要與項(xiàng)目經(jīng)理、需求分析員,甚至與最終用戶(hù)保持溝通。所以,對(duì)于架構(gòu)師來(lái)講,不僅有技術(shù)方面的要求,還有人際交流方面的要求。
問(wèn)題八:系統(tǒng)架構(gòu)師是干什么的??? 屬于項(xiàng)目的高級(jí)分析、規(guī)劃、管理人員
系統(tǒng)架構(gòu)師(System Architecture)系統(tǒng)架構(gòu)師是負(fù)責(zé)設(shè)計(jì)系統(tǒng)整體架構(gòu),從需求到設(shè)計(jì)的每個(gè)細(xì)節(jié)都要考慮到,把握整個(gè)項(xiàng)目,使設(shè)計(jì)的項(xiàng)目盡量效率高,開(kāi)發(fā)容易,維護(hù)方便,升級(jí)簡(jiǎn)單等等。
全文見(jiàn)百科
baike.baidu/view/905154?fr=ala0_1_1
問(wèn)題九:系統(tǒng)架構(gòu)師的角 *** 別 系統(tǒng)構(gòu)架師與產(chǎn)品經(jīng)理的關(guān)系及區(qū)別產(chǎn)品經(jīng)理通常是指負(fù)責(zé)產(chǎn)品設(shè)計(jì)的“專(zhuān)人”。一個(gè)優(yōu)秀的理想的產(chǎn)品經(jīng)理,應(yīng)同時(shí)具備較高的商業(yè)素質(zhì)和較強(qiáng)的技術(shù)背景。產(chǎn)品經(jīng)理要有深厚的領(lǐng)域經(jīng)驗(yàn),也就是說(shuō),對(duì)該軟件系統(tǒng)要應(yīng)用到的業(yè)務(wù)領(lǐng)域非常之熟悉。比如,開(kāi)發(fā)房地產(chǎn)銷(xiāo)售軟件的產(chǎn)品經(jīng)理,應(yīng)該對(duì)房地產(chǎn)公司的標(biāo)準(zhǔn)銷(xiāo)售流程了如指掌,甚至比大多數(shù)銷(xiāo)售人員還要清楚。如果開(kāi)發(fā)的是通用產(chǎn)品,他/她還具備對(duì)市場(chǎng)、潛在客戶(hù)需求的深刻洞察力。 那么,系統(tǒng)架構(gòu)師與產(chǎn)品經(jīng)理有什么不同呢? 我們不應(yīng)該把二者混為一談,這是不少論述和實(shí)踐常犯的錯(cuò)誤。我看來(lái),如果把開(kāi)發(fā)軟件比作攝制電影,產(chǎn)品經(jīng)理之于系統(tǒng)架構(gòu)師,就正像編劇之于導(dǎo)演。產(chǎn)品經(jīng)理雖然要有一定技術(shù)背景,但仍應(yīng)屬于“商業(yè)人士(business people)”,而系統(tǒng)架構(gòu)師則肯定是一個(gè)技術(shù)專(zhuān)家。二者看待問(wèn)題的立場(chǎng)、角度和出發(fā)點(diǎn)完全不同。系統(tǒng)構(gòu)架師與項(xiàng)目經(jīng)理的關(guān)系及區(qū)別 軟件項(xiàng)目經(jīng)理是指對(duì)項(xiàng)目控制/管理,關(guān)注項(xiàng)目本身的進(jìn)度、質(zhì)量,分配、調(diào)動(dòng)、協(xié)調(diào)、管理好人、財(cái)、物等資源的負(fù)責(zé)人。對(duì)于軟件項(xiàng)目經(jīng)理來(lái)講,包括項(xiàng)目計(jì)劃、進(jìn)度跟蹤/監(jiān)控、質(zhì)量保證、配置/發(fā)布/版本/變更管理、人員績(jī)效評(píng)估等方面。優(yōu)秀的項(xiàng)目經(jīng)理需要的素質(zhì),并不僅在于會(huì)使用幾種軟件或是了解若干抽象的方法論原則,更重要的在于從大量項(xiàng)目實(shí)踐中獲得的寶貴經(jīng)驗(yàn),以及交流、協(xié)調(diào)、激勵(lì)的能力,甚至還應(yīng)具備某種個(gè)性魅力或領(lǐng)袖氣質(zhì)(Chari *** a)。 由此可見(jiàn),項(xiàng)目經(jīng)理和系統(tǒng)架構(gòu)師在職責(zé)上有很大差異?;焱@兩個(gè)角色,往往也會(huì)導(dǎo)致低效、無(wú)序的開(kāi)發(fā)。特別是,從性格因素上講,單純的技術(shù)人員傾向于忽視“人”的因素,而這正是管理活動(dòng)的一個(gè)主要方面。另外,就像戰(zhàn)爭(zhēng)中的空軍掩護(hù)(Air Cover)一樣,專(zhuān)職的項(xiàng)目經(jīng)理能夠應(yīng)付開(kāi)發(fā)過(guò)程中大量的偶發(fā)事件和雜務(wù),對(duì)于一個(gè)規(guī)模稍大的項(xiàng)目,這些雜務(wù)本身就能占用一個(gè)全職工作者的幾乎全部時(shí)間。在一個(gè)項(xiàng)目中,推動(dòng)項(xiàng)目發(fā)展的是系統(tǒng)構(gòu)架師,而不是項(xiàng)目經(jīng)理。項(xiàng)目經(jīng)理的職責(zé)只是配合系統(tǒng)構(gòu)架師,提供各個(gè)方面的支持。主要職責(zé)是與內(nèi)外部溝通和管理資源(包括人)。系統(tǒng)構(gòu)架師提出系統(tǒng)的總體構(gòu)架,給出開(kāi)發(fā)指導(dǎo)。一個(gè)項(xiàng)目中,項(xiàng)目經(jīng)理的角色什么?如果他即使管理人員又是設(shè)計(jì)人員,則必須比別人強(qiáng),能夠有讓別人服的東西。如果他只是項(xiàng)目管理人員,系統(tǒng)構(gòu)架師有專(zhuān)門(mén)人員,就可以不用精通或者說(shuō)了解 it 各個(gè)方面的知識(shí),如果了解更好。另外,如果在一個(gè)項(xiàng)目沒(méi)有人在技術(shù)構(gòu)架上和開(kāi)發(fā)指導(dǎo)上負(fù)全部責(zé)任,而是每個(gè)人都負(fù)責(zé)一快的架構(gòu)、分析、設(shè)計(jì)、代碼和實(shí)施等,最后肯定會(huì)失去管理。系統(tǒng)構(gòu)架師與系統(tǒng)分析員的關(guān)系及區(qū)別系統(tǒng)分析員(System *** yst)是指對(duì)系統(tǒng)開(kāi)發(fā)中進(jìn)行分析、設(shè)計(jì)和領(lǐng)導(dǎo)實(shí)施的人。一般意思上講,系統(tǒng)分析員的水平將影響系統(tǒng)開(kāi)發(fā)的質(zhì)量,甚至成敗。但在一個(gè)完善的系統(tǒng)開(kāi)發(fā)隊(duì)伍中,還需要有業(yè)務(wù)專(zhuān)家,技術(shù)專(zhuān)家和其他輔助人員。所以,系統(tǒng)分析員只是其中的角色之一。但我國(guó)許多的 IT 公司,一般只有系統(tǒng)分析員而沒(méi)有技術(shù)專(zhuān)家。系統(tǒng)分析員固然是對(duì)特定系統(tǒng)進(jìn)行分析、設(shè)計(jì)。所以他的任務(wù)、目標(biāo)是明確的。他只是去執(zhí)行任務(wù),完成系統(tǒng)的最終設(shè)計(jì)。系統(tǒng)架構(gòu)師應(yīng)該和系統(tǒng)分析員分開(kāi),但架構(gòu)師必須具備系統(tǒng)分析員的所有能力,同時(shí)還應(yīng)該具備設(shè)計(jì)員所沒(méi)有的很多能力。 系統(tǒng)架構(gòu)師是指導(dǎo)、檢督系統(tǒng)分析員的工作,要求系統(tǒng)分析員按什么標(biāo)準(zhǔn),什么工具,什么模式,什么技術(shù)去設(shè)計(jì)系統(tǒng)的。同時(shí),系統(tǒng)架構(gòu)師應(yīng)該對(duì)系統(tǒng)分析員所提出的問(wèn)題,碰到的難題及時(shí)地提出解決的方法。并檢查、評(píng)審系統(tǒng)分析員的工作。
二、計(jì)算機(jī)軟件系統(tǒng)的組成部分是哪些
所謂軟件是指為方便使用計(jì)算機(jī)和提高使用效率而組織的程序以及用于開(kāi)發(fā)、使用和維護(hù)的有關(guān)文檔。軟件系統(tǒng)可分為系統(tǒng)軟件和應(yīng)用軟件兩大類(lèi)。
1系統(tǒng)軟件
系統(tǒng)軟件由一組控制計(jì)算機(jī)系統(tǒng)并管理其資源的程序組成,其主要功能包括:?jiǎn)?dòng)計(jì)算機(jī),存儲(chǔ)、加載和執(zhí)行應(yīng)用程序,對(duì)文件進(jìn)行排序、檢索,將程序語(yǔ)言翻譯成機(jī)器語(yǔ)言等。實(shí)際上,系統(tǒng)軟件可以看作用戶(hù)與計(jì)算機(jī)的接口,它為應(yīng)用軟件和用戶(hù)提供了控制、訪問(wèn)硬件的手段,這些功能主要由操作系統(tǒng)完成。此外,編譯系統(tǒng)和各種工具軟件也屬此類(lèi),它們從另一方面輔助用戶(hù)使用計(jì)算機(jī)。下面分別介紹它們的功能。
1)操作系統(tǒng)(Operating System, OS)
操作系統(tǒng)是管理、控制和監(jiān)督計(jì)算機(jī)軟、硬件資源協(xié)調(diào)運(yùn)行的程序系統(tǒng),由一系列具有不同控制和管理功能的程序組成,它是直接運(yùn)行在計(jì)算機(jī)硬件上的、最基本的系統(tǒng)軟件,是系統(tǒng)軟件的核心。操作系統(tǒng)是計(jì)算機(jī)發(fā)展中的產(chǎn)物,它的主要目的有兩個(gè):一是方便用戶(hù)使用計(jì)算機(jī),是用戶(hù)和計(jì)算機(jī)的接口。比如用戶(hù)鍵入一條簡(jiǎn)單的命令就能自動(dòng)完成復(fù)雜的功能,這就是操作系統(tǒng)幫助的結(jié)果;二是統(tǒng)一管理計(jì)算機(jī)系統(tǒng)的全部資源,合理組織計(jì)算機(jī)工作流程,以便充分、合理地發(fā)揮計(jì)算機(jī)的效率。操作系統(tǒng)通常應(yīng)包括下列五大功能模塊:
(1)處理器管理。當(dāng)多個(gè)程序同時(shí)運(yùn)行時(shí),解決處理器(CPU)時(shí)間的分配問(wèn)題。
(2)作業(yè)管理。完成某個(gè)獨(dú)立任務(wù)的程序及其所需的數(shù)據(jù)組成一個(gè)作業(yè)。作業(yè)管理的任務(wù)主要是為用戶(hù)提供一個(gè)使用計(jì)算機(jī)的界面使其方便地運(yùn)行自己的作業(yè),并對(duì)所有進(jìn)入系統(tǒng)的作業(yè)進(jìn)行調(diào)度和控制,盡可能高效地利用整個(gè)系統(tǒng)的資源。
(3)存儲(chǔ)器管理。為各個(gè)程序及其使用的數(shù)據(jù)分配存儲(chǔ)空間,并保證它們互不干擾。
(4)設(shè)備管理。根據(jù)用戶(hù)提出使用設(shè)備的請(qǐng)求進(jìn)行設(shè)備分配,同時(shí)還能隨時(shí)接收設(shè)備的請(qǐng)求(稱(chēng)為中斷),如要求輸入信息。
(5)文件管理。主要負(fù)責(zé)文件的存儲(chǔ)、檢索、共享和保護(hù),為用戶(hù)提供文件操作的方便。
操作系統(tǒng)的種類(lèi)繁多,依其功能和特性分為批處理操作系統(tǒng)、分時(shí)操作系統(tǒng)和實(shí)時(shí)操作系統(tǒng)等;依同時(shí)管理用戶(hù)數(shù)的多少分為單用戶(hù)操作系統(tǒng)和多用戶(hù)操作系統(tǒng);適合管理計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境的網(wǎng)絡(luò)操作系統(tǒng)。按其發(fā)展前后過(guò)程,通常分成以下六類(lèi):
(1)單用戶(hù)操作系統(tǒng)(Single User Operating System)
單用戶(hù)操作系統(tǒng)的主要特征是計(jì)算機(jī)系統(tǒng)內(nèi)一次只能支持運(yùn)行一個(gè)用戶(hù)程序。這類(lèi)系統(tǒng)的最大缺點(diǎn)是計(jì)算機(jī)系統(tǒng)的資源不能充分利用。微型機(jī)的DOS、Windows操作系統(tǒng)屬于這一類(lèi)。
(2)批處理操作系統(tǒng)(Batch Processing Operating System)
批處理操作系統(tǒng)是20世紀(jì)70年代運(yùn)行于大、中型計(jì)算機(jī)上的操作系統(tǒng)。當(dāng)時(shí)由于單用戶(hù)單任務(wù)操作系統(tǒng)的CPU使用效率低,I/O設(shè)備資源未充分利用,因而產(chǎn)生了多道批處理系統(tǒng),它主要運(yùn)行在大中型機(jī)上。多道是指多個(gè)程序或多個(gè)作業(yè)(Multi-Programs or Multi Jobs)同時(shí)存在和運(yùn)行,故也稱(chēng)為多任務(wù)操作系統(tǒng)。IBM的DOS/VSE就是這類(lèi)系統(tǒng)。
(3)分時(shí)操作系統(tǒng)(Time-Sharing Operating System)
分時(shí)系統(tǒng)是一種具有如下特征的操作系統(tǒng):在一臺(tái)計(jì)算機(jī)周?chē)鷴焐先舾膳_(tái)近程或遠(yuǎn)程終端,每個(gè)用戶(hù)可以在各自的終端上以交互的方式控制作業(yè)運(yùn)行。
在分時(shí)系統(tǒng)管理下,雖然各用戶(hù)使用的是同一臺(tái)計(jì)算機(jī),但卻能給用戶(hù)一種“獨(dú)占計(jì)算機(jī)”的感覺(jué)。實(shí)際上是分時(shí)操作系統(tǒng)將CPU時(shí)間資源劃分成極小的時(shí)間片(毫秒量級(jí)),輪流分給每個(gè)終端用戶(hù)使用,當(dāng)一個(gè)用戶(hù)的時(shí)間片用完后,CPU就轉(zhuǎn)給另一個(gè)用戶(hù),前一個(gè)用戶(hù)只能等待下一次輪到。由于人的思考、反應(yīng)和鍵入的速度通常比cpu的速度慢得多,所以只要同時(shí)上機(jī)的用戶(hù)不超過(guò)一定數(shù)量,人們不會(huì)有延遲的感覺(jué),好像每個(gè)用戶(hù)都獨(dú)占著計(jì)算機(jī)。分時(shí)系統(tǒng)的優(yōu)點(diǎn)是:第一,經(jīng)濟(jì)實(shí)惠,可充分利用計(jì)算機(jī)資源;第二,由于采用交互會(huì)話方式控制作業(yè),用戶(hù)可以坐在終端前邊思考、邊調(diào)整、邊修改,從而大大縮短了解題周期;第三,分時(shí)系統(tǒng)的多個(gè)用戶(hù)間可以通過(guò)文件系統(tǒng)彼此交流數(shù)據(jù)和共享各種文件,在各自的終端上協(xié)同完成共同的任務(wù)。分時(shí)操作系統(tǒng)是多用戶(hù)多任務(wù)操作系統(tǒng),UNIX是國(guó)際上最流行的分時(shí)操作系統(tǒng)。此外,UNIX具有網(wǎng)絡(luò)通信與網(wǎng)絡(luò)服務(wù)的功能,也是廣泛使用的網(wǎng)絡(luò)操作系統(tǒng)。
(4)實(shí)時(shí)操作系統(tǒng)(Real-Time Operating System)
在某些應(yīng)用領(lǐng)域,要求計(jì)算機(jī)對(duì)數(shù)據(jù)能進(jìn)行迅速處理。例如,在自動(dòng)駕駛儀控制下飛行的飛機(jī)、導(dǎo)彈的自動(dòng)控制系統(tǒng)中,計(jì)算機(jī)必須對(duì)測(cè)量系統(tǒng)測(cè)得的數(shù)據(jù)及時(shí)、快速地進(jìn)行處理和反應(yīng),以便達(dá)到控制的目的,否則就會(huì)失去戰(zhàn)機(jī)。這種有響應(yīng)時(shí)間要求的快速處理過(guò)程叫做實(shí)時(shí)處理過(guò)程,當(dāng)然,響應(yīng)的時(shí)間要求可長(zhǎng)可短,可以是秒、毫秒或微秒級(jí)的。對(duì)于這類(lèi)實(shí)時(shí)處理過(guò)程,批處理系統(tǒng)或分時(shí)系統(tǒng)均無(wú)能為力了,因此產(chǎn)生了另一類(lèi)操作系統(tǒng)——實(shí)時(shí)操作系統(tǒng)。配置實(shí)時(shí)操作系統(tǒng)的計(jì)算機(jī)系統(tǒng)稱(chēng)為實(shí)時(shí)系統(tǒng)。實(shí)時(shí)系統(tǒng)按其使用方式可分成兩類(lèi):一類(lèi)是廣泛用于鋼鐵、煉油、化工生產(chǎn)過(guò)程控制,武器制導(dǎo)等各個(gè)領(lǐng)域中的實(shí)時(shí)控制系統(tǒng);另一類(lèi)是廣泛用于自動(dòng)訂票系統(tǒng)、情報(bào)檢索系統(tǒng)、銀行業(yè)務(wù)系統(tǒng)、超級(jí)市場(chǎng)銷(xiāo)售系統(tǒng)中的實(shí)時(shí)數(shù)據(jù)處理系統(tǒng)。
(5)網(wǎng)絡(luò)操作系統(tǒng)(Network Operating System)
計(jì)算機(jī)網(wǎng)絡(luò)是通過(guò)通信線路將地理上分散且獨(dú)立的計(jì)算機(jī)聯(lián)結(jié)起來(lái)的一種網(wǎng)絡(luò),有了計(jì)算機(jī)網(wǎng)絡(luò)之后,用戶(hù)可以突破地理?xiàng)l件的限制,方便地使用遠(yuǎn)處的計(jì)算機(jī)資源。提供網(wǎng)絡(luò)通信和網(wǎng)絡(luò)資源共享功能的操作系統(tǒng)稱(chēng)為網(wǎng)絡(luò)操作系統(tǒng)。
(6)微機(jī)操作系統(tǒng)
微機(jī)操作系統(tǒng)隨著微機(jī)硬件技術(shù)的發(fā)展而發(fā)展,從簡(jiǎn)單到復(fù)雜。Microsoft公司開(kāi)發(fā)的DOS是一單用戶(hù)單任務(wù)系統(tǒng),而Windows操作系統(tǒng)則是一單用戶(hù)多任務(wù)系統(tǒng),經(jīng)過(guò)十幾年的發(fā)展,已從Windows 3.1發(fā)展到目前的Windows NT、Windows 2000和Windows XP,它是當(dāng)前微機(jī)中廣泛使用的操作系統(tǒng)之一。Linux是一個(gè)原碼公開(kāi)的操作系統(tǒng),目前已被越來(lái)越多的用戶(hù)所采用,是Windows操作系統(tǒng)強(qiáng)有力的競(jìng)爭(zhēng)對(duì)手。
2)語(yǔ)言處理系統(tǒng)(翻譯程序)
如前所述,機(jī)器語(yǔ)言是計(jì)算機(jī)唯一能直接識(shí)別和執(zhí)行的程序語(yǔ)言。如果要在計(jì)算機(jī)上運(yùn)行高級(jí)語(yǔ)言程序就必須配備程序語(yǔ)言翻譯程序(下簡(jiǎn)稱(chēng)翻譯程序)。翻譯程序本身是一組程序,不同的高級(jí)語(yǔ)言都有相應(yīng)的翻譯程序。
對(duì)于高級(jí)語(yǔ)言來(lái)說(shuō),翻譯的方法有兩種:
一種稱(chēng)為“解釋”。早期的BASIC源程序的執(zhí)行都采用這種方式。它調(diào)用機(jī)器配備的BASIC“解釋程序”,在運(yùn)行BASIC源程序時(shí),逐條把BASIC的源程序語(yǔ)句進(jìn)行解釋和執(zhí)行,它不保留目標(biāo)程序代碼,即不產(chǎn)生可執(zhí)行文件。這種方式速度較慢,每次運(yùn)行都要經(jīng)過(guò)“解釋”,邊解釋邊執(zhí)行。
另一種稱(chēng)為“編譯”,它調(diào)用相應(yīng)語(yǔ)言的編譯程序,把源程序變成目標(biāo)程序(以.OBJ為擴(kuò)展名),然后再用連接程序,把目標(biāo)程序與庫(kù)文件相連接形成可執(zhí)行文件。盡管編譯的過(guò)程復(fù)雜一些,但它形成的可執(zhí)行文件(以.exe為擴(kuò)展名)可以反復(fù)執(zhí)行,速度較快。運(yùn)行程序時(shí)只要鍵入可執(zhí)行程序的文件名,再按Enter鍵即可。
對(duì)源程序進(jìn)行解釋和編譯任務(wù)的程序,分別叫做編譯程序和解釋程序。如FORTRAN、COBOL、PASCAL和C等高級(jí)語(yǔ)言,使用時(shí)需有相應(yīng)的編譯程序;BASIC、LISP等高級(jí)語(yǔ)言,使用時(shí)需用相應(yīng)的解釋程序。
3)服務(wù)程序
服務(wù)程序能夠提供一些常用的服務(wù)性功能,它們?yōu)橛脩?hù)開(kāi)發(fā)程序和使用計(jì)算機(jī)提供了方便,像微機(jī)上經(jīng)常使用的診斷程序、調(diào)試程序、編輯程序均屬此類(lèi)。
4)數(shù)據(jù)庫(kù)管理系統(tǒng)
在信息社會(huì)里,社會(huì)和生產(chǎn)活動(dòng)產(chǎn)生的信息很多,使人工管理難以應(yīng)付,人們希望借助計(jì)算機(jī)對(duì)信息進(jìn)行搜集、存儲(chǔ)、處理和使用。數(shù)據(jù)庫(kù)系統(tǒng)(Data Base System, DBS)就是在這種需求背景下產(chǎn)生和發(fā)展的。
數(shù)據(jù)庫(kù)是指按照一定聯(lián)系存儲(chǔ)的數(shù)據(jù)集合,可為多種應(yīng)用共享。數(shù)據(jù)庫(kù)管理系統(tǒng)(Data Base Management System, DBMS)則是能夠?qū)?shù)據(jù)庫(kù)進(jìn)行加工、管理的系統(tǒng)軟件。其主要功能是建立、消除、維護(hù)數(shù)據(jù)庫(kù)及對(duì)庫(kù)中數(shù)據(jù)進(jìn)行各種操作。數(shù)據(jù)庫(kù)系統(tǒng)主要由數(shù)據(jù)庫(kù)(DB)、數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)以及相應(yīng)的應(yīng)用程序組成。數(shù)據(jù)庫(kù)系統(tǒng)不但能夠存放大量的數(shù)據(jù),更重要的是能迅速、自動(dòng)地對(duì)數(shù)據(jù)進(jìn)行檢索、修改、統(tǒng)計(jì)、排序、合并等操作,以得到所需的信息。這一點(diǎn)是傳統(tǒng)的文件柜無(wú)法做到的。
數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)技術(shù)中發(fā)展最快、應(yīng)用最廣的一個(gè)分支??梢哉f(shuō),在今后的計(jì)算機(jī)應(yīng)用開(kāi)發(fā)中大都離不開(kāi)數(shù)據(jù)庫(kù)。因此,了解數(shù)據(jù)庫(kù)技術(shù)尤其是微機(jī)環(huán)境下的數(shù)據(jù)庫(kù)應(yīng)用是非常必要的。
2應(yīng)用軟件
為解決各類(lèi)實(shí)際問(wèn)題而設(shè)計(jì)的程序系統(tǒng)稱(chēng)為應(yīng)用軟件。從其服務(wù)對(duì)象的角度,又可分為通用軟件和專(zhuān)用軟件兩類(lèi)。
1)通用軟件
這類(lèi)軟件通常是為解決某一類(lèi)問(wèn)題而設(shè)計(jì)的,而這類(lèi)問(wèn)題是很多人都要遇到和解決的。例如:文字處理、表格處理、電子演示等。
2)專(zhuān)用軟件
在市場(chǎng)上可以買(mǎi)到通用軟件,但有些具有特殊功能和需求的軟件是無(wú)法買(mǎi)到的。比如某個(gè)用戶(hù)希望有一個(gè)程序能自動(dòng)控制車(chē)床,同時(shí)也能將各種事務(wù)性工作集成起來(lái)統(tǒng)一管理。因?yàn)樗鼘?duì)于一般用戶(hù)是太特殊了,所以只能組織人力開(kāi)發(fā)。當(dāng)然開(kāi)發(fā)出來(lái)的這種軟件也只能專(zhuān)用于這種情況。
三、計(jì)算機(jī)體系的層次性結(jié)構(gòu)
計(jì)算機(jī)系統(tǒng)層次結(jié)構(gòu),指的是計(jì)算機(jī)系統(tǒng)由硬件和軟件兩大部分所構(gòu)成,計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)有以下五級(jí):
1、微程序設(shè)計(jì)級(jí) ---- 第1級(jí) 2、傳統(tǒng)機(jī)器級(jí) ---- 第2級(jí)
3、操作系統(tǒng)級(jí) --- 第3級(jí) 4、匯編語(yǔ)言級(jí) --- 第4級(jí)
5、高級(jí)語(yǔ)言級(jí) --- 第5級(jí)
層次之間的關(guān)系
1)各層次之間的關(guān)系十分密切,高層是低層功能的擴(kuò)展,低層是高層實(shí)現(xiàn)的基礎(chǔ)。
2)站在不同的層次觀察計(jì)算機(jī)系統(tǒng),到關(guān)于計(jì)算機(jī)不同的概念。上圖第二列分別對(duì)應(yīng)地給出了從高級(jí)語(yǔ)言、匯編語(yǔ)言、機(jī)器語(yǔ)言和微程序設(shè)計(jì)級(jí)所看到的計(jì)算機(jī)的不同編程工具。
四、軟件體系結(jié)構(gòu)的定義
雖然軟件體系結(jié)構(gòu)已經(jīng)在軟件工程領(lǐng)域中有著廣泛的應(yīng)用,但迄今為止還沒(méi)有一個(gè)被大家所公認(rèn)的定義。許多專(zhuān)家學(xué)者從不同角度和不同側(cè)面對(duì)軟件體系結(jié)構(gòu)進(jìn)行了刻畫(huà),較為典型的定義有:
(2)Mary Shaw和David Garlan認(rèn)為軟件體系結(jié)構(gòu)是軟件設(shè)計(jì)過(guò)程中的一個(gè)層次,這一層次超越計(jì)算過(guò)程中的算法設(shè)計(jì)和數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)。體系結(jié)構(gòu)問(wèn)題包括總體組織和全局控制、通訊協(xié)議、同步、數(shù)據(jù)存取,給設(shè)計(jì)元素分配特定功能,設(shè)計(jì)元素的組織,規(guī)模和性能,在各設(shè)計(jì)方案間進(jìn)行選擇等。軟件體系結(jié)構(gòu)處理算法與數(shù)據(jù)結(jié)構(gòu)之上關(guān)于整體系統(tǒng)結(jié)構(gòu)設(shè)計(jì)和描述方面的一些問(wèn)題,如全局組織和全局控制結(jié)構(gòu)、關(guān)于通訊、同步與數(shù)據(jù)存取的協(xié)議,設(shè)計(jì)構(gòu)件功能定義,物理分布與合成,設(shè)計(jì)方案的選擇、評(píng)估與實(shí)現(xiàn)等
(3)Kruchten指出,軟件體系結(jié)構(gòu)有四個(gè)角度,它們從不同方面對(duì)系統(tǒng)進(jìn)行描述:概念角度描述系統(tǒng)的主要構(gòu)件及它們之間的關(guān)系;模塊角度包含功能分解與層次結(jié)構(gòu);運(yùn)行角度描述了一個(gè)系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu);代碼角度描述了各種代碼和庫(kù)函數(shù)在開(kāi)發(fā)環(huán)境中的組織。
(4)Hayes Roth則認(rèn)為軟件體系結(jié)構(gòu)是一個(gè)抽象的系統(tǒng)規(guī)范,主要包括用其行為來(lái)描述的功能構(gòu)件和構(gòu)件之間的相互連接、接口和關(guān)系。
(5)David Garlan和Dewne Perry于1995年在IEEE軟件工程學(xué)報(bào)上又采用如下的定義:軟件體系結(jié)構(gòu)是一個(gè)程序/系統(tǒng)各構(gòu)件的結(jié)構(gòu)、它們之間的相互關(guān)系以及進(jìn)行設(shè)計(jì)的原則和隨時(shí)間進(jìn)化的指導(dǎo)方針。
(6)Barry Boehm和他的學(xué)生提出,一個(gè)軟件體系結(jié)構(gòu)包括一個(gè)軟件和系統(tǒng)構(gòu)件,互聯(lián)及約束的集合;一個(gè)系統(tǒng)需求說(shuō)明的集合;一個(gè)基本原理用以說(shuō)明這一構(gòu)件,互聯(lián)和約束能夠滿(mǎn)足系統(tǒng)需求。
(7)1997年,Bass,Ctements和Kazman在《使用軟件體系結(jié)構(gòu)》一書(shū)中給出如下的定義:一個(gè)程序或計(jì)算機(jī)系統(tǒng)的軟件體系結(jié)構(gòu)包括一個(gè)或一組軟件構(gòu)件、軟件構(gòu)件的外部的可見(jiàn)特性及其相互關(guān)系。其中,軟件外部的可見(jiàn)特性是指軟件構(gòu)件提供的服務(wù)、性能、特性、錯(cuò)誤處理、共享資源使用等。
以上就是關(guān)于計(jì)算機(jī)軟件體系結(jié)構(gòu)相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢(xún),客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
如何用計(jì)算器進(jìn)行指數(shù)運(yùn)算(如何用計(jì)算器進(jìn)行指數(shù)運(yùn)算視頻)
杭州2022年稅后工資計(jì)算器(杭州市稅后工資計(jì)算)
下列哪些是云計(jì)算的服務(wù)模式(下列哪些是云計(jì)算的服務(wù)模式a技術(shù)服務(wù)b基礎(chǔ)設(shè)施及服務(wù))
杭州十四中學(xué)為什么爭(zhēng)議大(杭州十四中前身)