當前位置:首頁 » 雲伺服器 » 圖靈是什麼類型的伺服器

圖靈是什麼類型的伺服器

發布時間: 2022-07-25 13:53:37

A. 計算機思維又稱構造思維以什麼和構造為特徵

計算思維又叫構造思維,以設計和構造為特徵,以計算機學科為代表的。它是運用計算機科學的基礎概念去求解問題、設計系統和理解人類行為。其本質是抽象和自動化,通過約簡、嵌入、轉化和模擬等方法,把一個看來困難的問題重新闡釋成一個我們知道怎樣解決的問題,如同「讀、寫、算」能力一樣,計算思維也是我們每個人都必須具備的思維能力。

計算思維是一種遞歸思維。它是並行處理。它是把代碼譯成數據又把數據譯成代碼。對於別名或賦予人與物多個名字的做法,它既知道其益處又了解其害處。對於間接定址和程序調用的方法,它既知道其威力又了解其代價。它評價一個程序時,不僅僅根據其准確性和效率,還有美學的考量,而對於系統的設計,還考慮簡潔和優雅。

B. 急!!!!急!!!!!!!!!急!!!!!計算機體系結構這門課所解決的問題以及解決的方法在線等

計算機體系結構(ComputerArchitecture)是程序員所看到的計算機的屬性,即概念性結構與功能特性。按照計算機系統的多級層次結構,不同級程序員所看到的計算機具有不同的屬性。一般來說,低級機器的屬性對於高層機器程序員基本是透明的,通常所說的計算機體系結構主要指機器語言級機器的系統結構。經典的關於「計算機體系結構(computerarchitecture)」的定義是1964年C.M.Amdahl在介紹IBM360系統時提出的,其具體描述為「計算機體系結構是程序員所看到的計算機的屬性,即概念性結構與功能特性」

基本概念
計算機體系結構就是指適當地組織在一起的一系列系統元素的集合,這些系統元素互相配合、相互協作,通過對信息的處理而完成預先定義的目標。通常包含的系統元素有:計算機軟體、計算機硬體、人員、資料庫、文檔和過程。其中,軟體是程序、數據結構和相關文檔的集合,用於實現所需要的邏輯方法、過程或控制;硬體是提供計算能力的電子設備和提供外部世界功能的電子機械設備(例如感測器、馬達、水泵等);人員是硬體和軟體的用戶和操作者;資料庫是通過軟體訪問的大型的、有組織的信息集合;文檔是描述系統使用方法的手冊、表格、圖形及其他描述性信息;過程是一系列步驟,它們定義了每個系統元素的特定使用方法或系統駐留的過程性語境。 計算機體系結構
8種屬性
1•機內數據表示:硬體能直接辨識和操作的數據類型和格式 計算機體系結構
2•定址方式:最小可定址單位、定址方式的種類、地址運算 3•寄存器組織:操作寄存器、變址寄存器、控制寄存器及專用寄存器的定義、數量和使用規則 4•指令系統:機器指令的操作類型、格式、指令間排序和控制機構 5•存儲系統:最小編址單位、編址方式、主存容量、最大可編址空間 6•中斷機構:中斷類型、中斷級別,以及中斷響應方式等 7•輸入輸出結構:輸入輸出的連接方式、處理機/存儲器與輸入輸出設備間的數據交換方式、數據交換過程的控制 8•信息保護:信息保護方式、硬體信息保護機制。
編輯本段發展歷程
計算機系統已經經歷了四個不同的發展階段。 計算機體系結構
第一階段
60年代中期以前,是計算機系統發展的早期時代。在這個時期通用硬體已經相當普遍,軟體卻是為每個具體應用而專門編寫的,大多數人認為軟體開發是無需預先計劃的事情。這時的軟體實際上就是規模較小的程序,程序的編寫者和使用者往往是同一個(或同一組)人。由於規模小,程序編寫起來相當容易,也沒有什麼系統化的方法,對軟體開發工作更沒有進行任何管理。這種個體化的軟體環境,使得軟體設計往往只是在人們頭腦中隱含進行的一個模糊過程,除了程序清單之外,根本沒有其他文檔資料保存下來。
第二階段
從60年代中期到70年代中期,是計算機系統發展的第二代。在這10年中計算機技術有了很大進步。多道程序、多用戶系統引入了人機交互的新概念,開創了計算機應用的新境界,使硬體和軟體的配合上了一個新的層次。實時系統能夠從多個信息源收集、分析和轉換數據,從而使得進程式控制制能以毫秒而不是分鍾來進行。在線存儲技術的進步導致了第一代資料庫管理系統的出現。計算機系統發展的第二代的一個重要特徵是出現了「軟體作坊」,廣泛使用產品軟體。但是,「軟體作坊」基本上仍然沿用早期形成的個體化軟體開發方法。隨著計算機應用的日益普及,軟體數量急劇膨脹。在程序運行時發現的錯誤必須設法改正;用戶有了新的需求時必須相應地修改程序;硬體或操作系統更新時,通常需要修改程序以適應新的環境。上述種種軟體維護工作,以令人吃驚的比例耗費資源。更嚴重的是,許多程序的個體化特性使得它們最終成為不可維護的。「軟體危機」就這樣開始出現了。1968年北大西洋公約組織的計算機科學家在聯邦德國召開國際會議,討論軟體危機課題,在這次會議上正式提出並使用了「軟體工程」這個名詞,一門新興的工程學科就此誕生了。
第三階段
計算機系統發展的第三代從20世紀70年代中期開始,並且跨越了整整10年。在這10年中計算機技術又有了很大進步。分布式系統極大地增加亍計算機系統的復雜性,區域網、廣域網、寬頻數字通信以及對「即時」數據訪問需求的增加,都對軟體開發者提出了更高的要求。但是,在這個時期軟體仍然主要在工業界和學術界應用,個人應用還很少。這個時期的主要特點是出現了微處理器,而且微處理器獲得了廣泛應用。以微處理器為核心的「智能」產品隨處可見,當然,最重要的智能產品是個人計算機。在不到10年的時間里,個人計算機已經成為大眾化的商品。 在計算機系統發展的第四代已經不再看重單台計算機和程序,人們感受到的是硬體和軟體的綜合效果。由復雜操作系統控制的強大的桌面機及區域網和廣域網,與先進的應用軟體相配合,已經成為當前的主流。計算機體系結構已迅速地從集中的主機環境轉變成分布的客戶機/伺服器(或瀏覽器/伺服器)環境。世界范圍的信息網為人們進行廣泛交流和資源的充分共享提供了條件。軟體產業在世界經濟中已經佔有舉足輕重的地位。隨著時代的前進,新的技術也不斷地涌現出來。面向對象技術已經在許多領域迅速地取代了傳統的軟體開發方法。
總結
軟體開發的「第四代技術」改變了軟體界開發計算機程序的方式。專家系統和人工智慧軟體終於從實驗室中走出來進入了實際應用,解決了大量實際問題。應用模糊邏輯的人工神經網路軟體,展現了模式識別與擬人信息處理的美好前景。虛擬現實技術與多媒體系統,使得與用戶的通信可以採用和以前完全不同的方法。遺傳演算法使我們有可能開發出駐留在大型並行生物計算機上的軟體。
編輯本段基本原理
計算機體系結構解決的是計算機系統在總體上、功能上需要解決的問題,它和計算機組成、計算機實現是不同的概念。一種體系結構可能有多種組成,一種組成也可能有多種物理實現。 計算機體系結構
計算機系統結構的邏輯實現,包括機器內部數據流和控制流的組成以及邏輯設計等。其目標是合理地把各種部件、設備組成計算機,以實現特定的系統結構,同時滿足所希望達到的性能價格比。一般而言,計算機組成研究的范圍包括:確定數據通路的寬度、確定各種操作對功能部件的共享程度、確定專用的功能部件、確定功能部件的並行度、設計緩沖和排隊策略、設計控制機構和確定採用何種可靠技術等。計算機組成的物理實現。包括處理機、主存等部件的物理結構,器件的集成度和速度,器件、模塊、插件、底板的劃分與連接,專用器件的設計,信號傳輸技術,電源、冷卻及裝配等技術以及相關的製造工藝和技術。
編輯本段分類
Flynn分類法
1966年,Michael.J.Flynn提出根據指令流、數據流的多倍性(multiplicity)特徵對計算機系統進行分類,定義如下。 •指令流:機器執行的指令序列 計算機體系結構
•數據流:由指令流調用的數據序列,包括輸入數據和中間結果 •多倍性:在系統性能瓶頸部件上同時處於同一執行階段的指令或數據的最大可能個數。 Flynn根據不同的指令流-數據流組織方式把計算機系統分為4類。 1•單指令流單數據流(,SISD) SISD其實就是傳統的順序執行的單處理器計算機,其指令部件每次只對一條指令進行解碼,並只對一個操作部件分配數據。 2•單指令流多數據流(,SIMD) SIMD以並行處理機為代表,結構如圖,並行處理機包括多個重復的處理單元PU1~PUn,由單一指令部件控制,按照同一指令流的要求為它們分配各自所需的不同的數據。 3•多指令流單數據流(,MISD) MISD的結構,它具有n個處理單元,按n條不同指令的要求對同一數據流及其中間結果進行不同的處理。一個處理單元的輸出又作為另一個處理單元的輸入。 4•多指令流多數據流(,MIMD) MIMD的結構,它是指能實現作業、任務、指令等各級全面並行的多機系統,多處理機就屬於MIMD。(2)
馮式分類法
1972年馮澤雲提出用最大並行度來對計算機體系結構進行分類。所謂最大並行度Pm是指計算機系統在單位時間內能夠處理的最大的二進制位數。設每一個時鍾周期△ti內能處理的二進制位數為Pi,則T個時鍾周期內平均並行度為Pa=(∑Pi)/T(其中i為1,2,…,T)。平均並行度取決於系統的運行程度,與應用程序無關,所以,系統在周期T內的平均利用率為μ=Pa/Pm=(∑Pi)/(T*Pm)。用最大並行度對計算機體系結構進行的分類。用平面直角坐標系中的一點表示一個計算機系統,橫坐標表示字寬(N位),即在一個字中同時處理的二進制位數;縱坐標表示位片寬度(M位),即在一個位片中能同時處理的字數,則最大並行度Pm=N*M。 由此得出四種不同的計算機結構: ①字串列、位串列(簡稱WSBS)。其中N=1,M=1。 ②字並行、位串列(簡稱WPBS)。其中N=1,M>1。 ③字串列、位並行(簡稱WSBP)。其中N>1,M=1。 ④字並行、位並行(簡稱WPBP)。其中N>1,M>1。
編輯本段技術革新
計算機體系結構以圖靈機理論為基礎,屬於馮•諾依曼體系結構。本質上,圖靈機理論和馮•諾依曼體系結構是一維串列的,而多核處理器則屬於分布式離散的並行結構,需要解決二者的不匹配問題。 首先,串列的圖靈機模型和物理上分布實現的多核處理器的匹配問題。圖靈機模型意味著串列的編程模型。串列程序很難利用物理上分布實現的多個處理器核獲得性能加速.與此同時,並行編程模型並沒有獲得很好的推廣,僅僅局限在科學計算等有限的領域.研究者應該尋求合適的機制來實現串列的圖靈機模型和物理上分布實現的多核處理器的匹配問題或縮小二者之間的差距,解決「並行程序編程困難,串列程序加速小」的問題。 計算機體系結構
在支持多線程並行應用方面,未來多核處理器應該從如下兩個方向加以考慮。第一是引入新的能夠更好的能夠表示並行性的編程模型。由於新的編程模型支持編程者明確表示程序的並行性,因此可以極大的提升性能。比如Cell處理器提供不同的編程模型用於支持不同的應用。其難點在於如何有效推廣該編程模型以及如何解決兼容性的問題。第二類方向是提供更好的硬體支持以減少並行編程的復雜性。並行程序往往需要利用鎖機制實現對臨界資源的同步、互斥操作,編程者必須慎重確定加鎖的位置,因為保守的加鎖策略限制了程序的性能,而精確的加鎖策略大大增加了編程的復雜度。一些研究在此方面做了有效的探索。比如,SpeculativeLockElision機制允許在沒有沖突的情況下忽略程序執行的鎖操作,因而在降低編程復雜度的同時兼顧了並行程序執行的性能。這樣的機制使得編程者集中精力考慮程序的正確性問題,而無須過多地考慮程序的執行性能。更激進的,(TCC)機制以多個訪存操作(Transaction)為單位考慮數據一致性問題,進一步簡化了並行編程的復雜度。 主流的商業多核處理器主要針對並行應用,如何利用多核加速串列程序仍然是一個值得關注的問題。其關鍵技術在於利用軟體或硬體自動地從串新程序中派生出能夠在多核處理器上並行執行的代碼或線程。多核加速串列程序主要有三種方法,包括並行編譯器、推測多線程以及基於線程的預取機制等。在傳統並行編譯中,編譯器需要花費很大的精力來保證擬劃分線程之間不存在數據依賴關系。編譯時存在大量模糊依賴,尤其是在允許使用指針(如C程序)的情況下,編譯器不得不採用保守策略來保證程序執行的正確性。這大大限制了串列程序可以挖掘的並發程度,也決定了並行編譯器只能在狹窄范圍使用。為解決這些問題,人們提出推測多線程以及基於線程的預取機制等。然而,從這種概念提出到現在為止,這個方向的研究大部分局限於學術界,僅有個別商業化處理器應用了這種技術,並且僅僅局限於特殊的應用領域。我們認為動態優化技術和推測多線程(包括基於線程的預取機制)的結合是未來的可能發展趨勢。 馮•諾依曼體系結構的一維地址空間和多核處理器的多維訪存層次的匹配問題。本質上,馮•諾依曼體系結構採用了一維地址空間。由於不均勻的數據訪問延遲和同一數據在多個處理器核上的不同拷貝導致了數據一致性問題。該領域的研究分為兩大類:一類研究主要是引入新的訪存層次。新的訪存層次可能採用一維分布式實現方式。典型的例子是增加分布式統一編址的寄存器網路。全局統一編址的特性避免了數據一致性地考慮。同時,相比於傳統的大容量cache訪問,寄存器又能提供更快的訪問速度。TRIPS和RAW都有實現了類似得寄存器網路。令另外,新的訪存層次也可以是私有的形式。比如每個處理器和都有自己私有的訪存空間。其好處是更好的劃分了數據存儲空間,已洗局部私有數據沒有必要考慮數據一致性問題。比如Cell處理器為每個SPE核設置了私有的數據緩沖區。另一類研究主要涉及研製新的cache一致性協議。其重要趨勢是放鬆正確性和性能的關系。比如推測Cache協議在數據一致性未得到確認之前就推測執行相關指令,從而減少了長遲訪存操作對流水線的影響。此外,TokenCoherence和TCC也採用了類似的思想。程序的多樣性和單一的體系結構的匹配問題。未來的應用展現出多樣性的特點。一方面,處理器的評估不僅僅局限於性能,也包括可靠性,安全性等其他指標。另一方面,即便考慮僅僅追求性能的提高,不同的應用程序也蘊含了不同層次的並行性。應用的多樣性驅使未來的處理器具有可配置、靈活的體系結構。TRIPS在這方面作了富有成效的探索,比如其處理器核和片上存儲系統均有可配置的能力,從而使得TRIPS能夠同時挖掘指令級並行性、數據級並行性及指令級並行性。 多核和Cell等新型處理結構的出現不僅是處理器架構歷史上具有里程碑式的事件,對傳統以來的計算模式和計算機體系架構也是一種顛覆 2005年,一系列具有深遠影響的計算機體系結構被曝光,有可能為未來十年的計算機體系結構奠定根本性的基礎,至少為處理器乃至整個計算機體系結構做出了象徵性指引。隨著計算密度的提高,處理器和計算機性能的衡量標准和方式在發生變化,從應用的角度講,講究移動和偏向性能兩者已經找到了最令人滿意的結合點,並且有可能引爆手持設備的急劇膨脹。盡管現在手持設備也相對普及,在計算能力、可擴展性以及能耗上,完全起步到一台手持設備應該具備的作用;另一方面,講究性能的伺服器端和桌面端,開始考慮減少電力消耗趕上節約型社會的大潮流。 Cell本身適應這種變化,同樣也是它自己創造了這種變化。因而從它開始就強調了不一樣的設計風格,除了能夠很好地進行多倍擴展外,處理器內部的SPU(SynergisticProcessorUnit協同處理單元)具有很好的擴展性,因而可以同時面對通用和專用的處理,實現處理資源的靈活重構。也就意味著,通過適當的軟體控制,Cell能應付多種類型的處理任務,同時還能夠精簡設計的復雜。

C. 機器要通過圖靈測試需要哪些技術

機器要通過圖靈測試,所需的主要技術有:
1、人工智慧技術,
2、圖像識別技術。
人工智慧的始祖阿蘭·圖靈提出了一種稱作圖靈試驗的方法。此原則說:被測試的有一個人,另一個是聲稱自己有人類智力的機器。測試時,測試人與被測試人是分開的,測試人只有通過一些裝置(如鍵盤)向被測試人問一些問題,這些問題隨便是什麼問題都可以。問過一些問題後,如果測試人能夠正確地分出誰是人誰是機器,那機器就沒有通過圖靈測試,如果測試人沒有分出誰是機器誰是人,那這個機器就是有人類智能的。

D. 計算機科學的「兩本聖經」是什麼

第一本:《演算法導論》原書名——《Introction to Algorithms》,

第二本:高德納(Donald E.Knuth)的《計算機程序設計藝術》(《The Art Of Computer Programming》)

計算機科學是一門包含各種各樣與計算和信息處理相關主題的系統學科,從抽象的演算法分析、形式化語法等等,到更具體的主題如編程語言、程序設計、軟體和硬體等。計算機科學分為理論計算機科學和實驗計算機科學兩個部分。

(4)圖靈是什麼類型的伺服器擴展閱讀:

研究課題

①、計算機程序能做什麼和不能做什麼(可計算性);

②、如何使程序更高效的執行特定任務(演算法和復雜性理論);

③、程序如何存取不同類型的數據(數據結構和資料庫);

④、程序如何顯得更具有智能(人工智慧);

⑤、人類如何與程序溝通(人機互動和人機界面)。

相關獎項

計算機科學領域的最高榮譽是ACM設立的圖靈獎,被譽為是計算機科學的諾貝爾獎。它的獲得者都是本領域最為出色的科學家和先驅。華人中首獲圖靈獎的是姚期智先生.他於2000年以其對計算理論做出的諸多「根本性的、意義重大的」貢獻而獲得這一崇高榮譽。

專業介紹

培養目標

本專業培養德、智、體全面發展,具有計算機應用技術的基礎理論知識,具備計算機及相關設備的維護與維修、行業應用軟體、平面圖像處理、廣告設計製作、動畫製作、計算機網路及網站建設與管理、資料庫管理與維護等應用能力和操作能力的高等技術應用性人才。

計算機應用基礎、計算機組裝與維護、計算機區域網絡的建設與管理、網路工程、操作系統、伺服器、資料庫的開發與應用、網站建設與網頁設計、C/C++語言、Visual Basic語言、平面設計、3D圖形設計、多媒體設計、專業英語。

就業方向

畢業生主要面向交通系統各單位、交通信息化與電子政務建設與應用部門、各類計算機專業化公司、廣告設計製作公司、汽車營銷技術服務等從事IT行業工作。

參考資料:網路-計算機科學

E. 怎樣讓圖靈機器人永久在線,如何掛伺服器

酷Q可以在網上下載插件結尾都是以.cqp.dll的文件,然後先打開機器人所在文件夾,在進入到plugin文件夾裡面。把插件結尾都是以.cqp.dll的文件,復制進來。再打開酷Q,點擊插件就可以看到了

F. 資料庫這類軟體 是干什麼的

下面的資料是在網路找的,樓主有空可以看看。
我是做it的,跟你說說我的感受吧,僅供參考。
資料庫是為了數據的存儲和操作方便才使用的。如果不用也可以,有的時候,
把數據記錄在文件上(如txt)也是可以的,但大量數據操作起來比較麻煩。
現在資料庫類型多,大型小型都有,所以能用的話,還是比較方便的。

定義1
當人們從不同的角度來描述這一概念時就有不同的定義(當然是描述性的)。例如,稱資料庫是一個「記錄保存系統」(該定義強調了資料庫是若干記錄的集合)。又如稱資料庫是「人們為解決特定的任務,以一定的組織方式存儲在一起的相關的數據的集合」(該定義側重於數據的組織)。更有甚者稱資料庫是「一個數據倉庫」。當然,這種說法雖然形象,但並不嚴謹。
嚴格地說,資料庫是「按照數據結構來組織、存儲和管理數據的倉庫」。在經濟管理的日常工作中,常常需要把某些相關的數據放進這樣「倉庫」,並根據管理的需要進行相應的處理。例如,企業或事業單位的人事部門常常要把本單位職工的基本情況(職工號、姓名、年齡、性別、籍貫、工資、簡歷等)存放在表中,這張表就可以看成是一個資料庫。有了這個"數據倉庫"我們就可以根據需要隨時查詢某職工的基本情況,也可以查詢工資在某個范圍內的職工人數等等。這些工作如果都能在計算機上自動進行,那我們的人事管理就可以達到極高的水平。此外,在財務管理、倉庫管理、生產管理中也需要建立眾多的這種"資料庫",使其可以利用計算機實現財務、倉庫、生產的自動化管理。
J.Martin給資料庫下了一個比較完整的定義:資料庫是存儲在一起的相關數據的集合,這些數據是結構化的,無有害的或不必要的冗餘,並為多種應用服務;數據的存儲獨立於使用它的程序;對資料庫插入新數據,修改和檢索原有數據均能按一種公用的和可控制的方式進行。當某個系統中存在結構上完全分開的若干個資料庫時,則該系統包含一個「資料庫集合」。
定義2
資料庫是依照某種數據模型組織起來並存放二級存儲器中的數據集合。這種數據集合具有如下特點:盡可能不重復,以最優方式為某個特定組織的多種應用服務,其數據結構獨立於使用它的應用程序,對數據的增、刪、改和檢索由統一軟體進行管理和控制。從發展的歷史看,資料庫是數據管理的高級階段,它是由文件管理系統發展起來的。
[編輯本段]資料庫的基本結構
資料庫的基本結構分三個層次,反映了觀察資料庫的三種不同角度。
(1)物理數據層。
它是資料庫的最內層,是物理存貯設備上實際存儲的數據的集合。這些數據是原始數據,是用戶加工的對象,由內部模式描述的指令操作處理的位串、字元和字組成。
(2)概念數據層。
它是資料庫的中間一層,是資料庫的整體邏輯表示。指出了每個數據的邏輯定義及數據間的邏輯聯系,是存貯記錄的集合。它所涉及的是資料庫所有對象的邏輯關系,而不是它們的物理情況,是資料庫管理員概念下的資料庫。
(3)邏輯數據層。
它是用戶所看到和使用的資料庫,表示了一個或一些特定用戶使用的數據集合,即邏輯記錄的集合。
資料庫不同層次之間的聯系是通過映射進行轉換的。
[編輯本段]資料庫的主要特點
(1)實現數據共享。
數據共享包含所有用戶可同時存取資料庫中的數據,也包括用戶可以用各種方式通過介面使用資料庫,並提供數據共享。
(2)減少數據的冗餘度。
同文件系統相比,由於資料庫實現了數據共享,從而避免了用戶各自建立應用文件。減少了大量重復數據,減少了數據冗餘,維護了數據的一致性。
(3)數據的獨立性。
數據的獨立性包括資料庫中資料庫的邏輯結構和應用程序相互獨立,也包括數據物理結構的變化不影響數據的邏輯結構。
(4)數據實現集中控制。
文件管理方式中,數據處於一種分散的狀態,不同的用戶或同一用戶在不同處理中其文件之間毫無關系。利用資料庫可對數據進行集中控制和管理,並通過數據模型表示各種數據的組織以及數據間的聯系。
(5)數據一致性和可維護性,以確保數據的安全性和可靠性。
主要包括:①安全性控制:以防止數據丟失、錯誤更新和越權使用;②完整性控制:保證數據的正確性、有效性和相容性;③並發控制:使在同一時間周期內,允許對數據實現多路存取,又能防止用戶之間的不正常交互作用;④故障的發現和恢復:由資料庫管理系統提供一套方法,可及時發現故障和修復故障,從而防止數據被破壞
[編輯本段]資料庫發展階段
資料庫發展階段大致劃分為如下幾個階段:
人工管理階段;
文件系統階段;
資料庫系統階段;
高級資料庫階段。
[編輯本段]資料庫結構與資料庫種類
資料庫通常分為層次式資料庫、網路式資料庫和關系式資料庫三種。而不同的資料庫是按不同的數據結構來聯系和組織的。
1.數據結構模型
(1)數據結構
所謂數據結構是指數據的組織形式或數據之間的聯系。如果用D表示數據,用R表示數據對象之間存在的關系集合,則將DS=(D,R)稱為數據結構。例如,設有一個電話號碼簿,它記錄了n個人的名字和相應的電話號碼。為了方便地查找某人的電話號碼,將人名和號碼按字典順序排列,並在名字的後面跟隨著對應的電話號碼。這樣,若要查找某人的電話號碼(假定他的名字的第一個字母是Y),那麼只須查找以Y開頭的那些名字就可以了。該例中,數據的集合D就是人名和電話號碼,它們之間的聯系R就是按字典順序的排列,其相應的數據結構就是DS=(D,R),即一個數組。(2)數據結構種類
數據結構又分為數據的邏輯結構和數據的物理結構。數據的邏輯結構是從邏輯的角度(即數據間的聯系和組織方式)來觀察數據,分析數據,與數據的存儲位置無關。數據的物理結構是指數據在計算機中存放的結構,即數據的邏輯結構在計算機中的實現形式,所以物理結構也被稱為存儲結構。這里只研究數據的邏輯結構,並將反映和實現數據聯系的方法稱為數據模型。
目前,比較流行的數據模型有三種,即按圖論理論建立的層次結構模型和網狀結構模型以及按關系理論建立的關系結構模型。
2.層次、網狀和關系資料庫系統
(1)層次結構模型
層次結構模型實質上是一種有根結點的定向有序樹(在數學中"樹"被定義為一個無回的連通圖)。例如圖20.6.4是一個高等學校的組織結構圖。這個組織結構圖像一棵樹,校部就是樹根(稱為根結點),各系、專業、教師、學生等為枝點(稱為結點),樹根與枝點之間的聯系稱為邊,樹根與邊之比為1:N,即樹根只有一個,樹枝有N個。
按照層次模型建立的資料庫系統稱為層次模型資料庫系統。IMS(Information Manage-mentSystem)是其典型代表。
(2)網狀結構模型
按照網狀數據結構建立的資料庫系統稱為網狀資料庫系統,其典型代表是DBTG(Data Base Task Group)。用數學方法可將網狀數據結構轉化為層次數據結構。
(3)關系結構模型
關系式數據結構把一些復雜的數據結構歸結為簡單的二元關系(即二維表格形式)。例如某單位的職工關系就是一個二元關系。
由關系數據結構組成的資料庫系統被稱為關系資料庫系統。
在關系資料庫中,對數據的操作幾乎全部建立在一個或多個關系表格上,通過對這些關系表格的分類、合並、連接或選取等運算來實現數據的管理。dBASEII就是這類資料庫管理系統的典型代表。對於一個實際的應用問題(如人事管理問題),有時需要多個關系才能實現。用dBASEII建立起來的一個關系稱為一個資料庫(或稱資料庫文件),而把對應多個關系建立起來的多個資料庫稱為資料庫系統。dBASEII的另一個重要功能是通過建立命令文件來實現對資料庫的使用和管理,對於一個資料庫系統相應的命令序列文件,稱為該資料庫的應用系統。因此,可以概括地說,一個關系稱為一個資料庫,若干個資料庫可以構成一個資料庫系統。資料庫系統可以派生出各種不同類型的輔助文件和建立它的應用系統。
[編輯本段]常用資料庫
1. IBM 的DB2
作為關系資料庫領域的開拓者和領航人,IBM在1997年完成了System R系統的原型,1980年開始提供集成的資料庫伺服器—— System/38,隨後是sql/DSforVSE和VM,其初始版本與SystemR研究原型密切相關。DB2 forMVSV1 在1983年推出。該版本的目標是提供這一新方案所承諾的簡單性,數據不相關性和用戶生產率。1988年DB2 for MVS 提供了強大的在線事務處理(OLTP)支持,1989 年和1993 年分別以遠程工作單元和分布式工作單元實現了分布式資料庫支持。最近推出的DB2 Universal Database 6.1則是通用資料庫的典範,是第一個具備網上功能的多媒體關系資料庫管理系統,支持包括linux在內的一系列平台。
2. Oracle
Oracle 前身叫SDL,由Larry Ellison 和另兩個編程人員在1977創辦,他們開發了自己的拳頭產品,在市場上大量銷售,1979 年,Oracle公司引入了第一個商用SQL 關系資料庫管理系統。Oracle公司是最早開發關系資料庫的廠商之一,其產品支持最廣泛的操作系統平台。目前Oracle關系資料庫產品的市場佔有率名列前茅。
3. Informix
Informix在1980年成立,目的是為Unix等開放操作系統提供專業的關系型資料庫產品。公司的名稱Informix便是取自Information 和Unix的結合。Informix第一個真正支持SQL語言的關系資料庫產品是Informix SE(StandardEngine)。InformixSE是在當時的微機Unix環境下主要的資料庫產品。它也是第一個被移植到Linux上的商業資料庫產品。
4. Sybase
Sybase公司成立於1984年,公司名稱「Sybase」取自「system」和「database」 相結合的含義。Sybase公司的創始人之一Bob Epstein 是Ingres 大學版(與System/R同時期的關系資料庫模型產品)的主要設計人員。公司的第一個關系資料庫產品是1987年5月推出的Sybase SQLServer1.0。Sybase首先提出Client/Server 資料庫體系結構的思想,並率先在Sybase SQLServer 中實現。
5. SQL Server
1987 年,微軟和IBM合作開發完成OS/2,IBM 在其銷售的OS/2 ExtendedEdition 系統中綁定了OS/2Database Manager,而微軟產品線中尚缺少資料庫產品。為此,微軟將目光投向Sybase,同Sybase 簽訂了合作協議,使用Sybase的技術開發基於OS/2平台的關系型資料庫。1989年,微軟發布了SQL Server 1.0 版。
6. PostgreSQL
PostgreSQL 是一種特性非常齊全的自由軟體的對象——關系性資料庫管理系統(ORDBMS),它的很多特性是當今許多商業資料庫的前身。PostgreSQL最早開始於BSD的Ingres項目。PostgreSQL 的特性覆蓋了SQL-2/SQL-92和SQL-3。首先,它包括了可以說是目前世界上最豐富的數據類型的支持;其次,目前PostgreSQL 是唯一支持事務、子查詢、多版本並行控制系統、數據完整性檢查等特性的唯一的一種自由軟體的資料庫管理系統.
7.mySQL
mySQL是一個小型關系型資料庫管理系統,開發者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。目前MySQL被廣泛地應用在Internet上的中小型網站中。由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網站為了降低網站總體擁有成本而選擇了MySQL作為網站資料庫。MySQL的官方網站的網址是: www.mysql.com
[編輯本段]資料庫發展史
資料庫技術從誕生到現在,在不到半個世紀的時間里,形成了堅實的理論基礎、成熟的商業產品和廣泛的應用領域,吸引越來越多的研究者加入。資料庫的誕生和發展給計算機信息管理帶來了一場巨大的革命。三十多年來,國內外已經開發建設了成千上萬個資料庫,它已成為企業、部門乃至個人日常工作、生產和生活的基礎設施。同時,隨著應用的擴展與深入,資料庫的數量和規模越來越大,資料庫的研究領域也已經大大地拓廣和深化了。30年間資料庫領域獲得了三次計算機圖靈(C.W. Bachman,E.F.Codd, J.Gray),更加充分地說明了資料庫是一個充滿活力和創新精神的領域。就讓我們沿著歷史的軌跡,追溯一下資料庫的發展歷程。
一、資料庫發展簡史
1. 數據管理的誕生
資料庫的歷史可以追溯到五十年前,那時的數據管理非常簡單。通過大量的分類、比較和表格繪制的機器運行數百萬穿孔卡片來進行數據的處理,其運行結果在紙上列印出來或者製成新的穿孔卡片。而數據管理就是對所有這些穿孔卡片進行物理的儲存和處理。然而,1 9 5 1 年雷明頓蘭德公司(Remington Rand Inc.)的一種叫做Univac I 的計算機推出了一種一秒鍾可以輸入數百條記錄的磁帶驅動器,從而引發了數據管理的革命。1956 年IBM生產出第一個磁碟驅動器—— the Model 305 RAMAC。此驅動器有50 個碟片,每個碟片直徑是2 英尺,可以儲存5MB的數據。使用磁碟最大的好處是可以隨機地存取數據,而穿孔卡片和磁帶只能順序存取數據。
1951: Univac系統使用磁帶和穿孔卡片作為數據存儲。
資料庫系統的萌芽出現於60 年代。當時計算機開始廣泛地應用於數據管理,對數據的共享提出了越來越高的要求。傳統的文件系統已經不能滿足人們的需要。能夠統一管理和共享數據的資料庫管理系統(DBMS)應運而生。數據模型是資料庫系統的核心和基礎,各種DBMS 軟體都是基於某種數據模型的。所以通常也按照數據模型的特點將傳統資料庫系統分成網狀資料庫、層次資料庫和關系資料庫三類。
最早出現的是網狀 DBMS,是美國通用電氣公司Bachman等人在1961年開發成功的IDS(Integrated DataStore)。1961年通用電氣公司(General ElectricCo.)的Charles Bachman 成功地開發出世界上第一個網狀DBMS也是第一個資料庫管理系統—— 集成數據存儲(Integrated DataStore IDS),奠定了網狀資料庫的基礎,並在當時得到了廣泛的發行和應用。IDS 具有數據模式和日誌的特徵。但它只能在GE主機上運行,並且資料庫只有一個文件,資料庫所有的表必須通過手工編碼來生成。之後,通用電氣公司一個客戶——BF Goodrich Chemical 公司最終不得不重寫了整個系統。並將重寫後的系統命名為集成數據管理系統(IDMS)。
網狀資料庫模型對於層次和非層次結構的事物都能比較自然的模擬,在關系資料庫出現之前網狀DBMS要比層次DBMS用得普遍。在資料庫發展史上,網狀資料庫佔有重要地位。
層次型DBMS是緊隨網路型資料庫而出現的。最著名最典型的層次資料庫系統是IBM 公司在1968 年開發的IMS
(Information Management System),一種適合其主機的層次資料庫。這是IBM公司研製的最早的大型資料庫系統程序產品。從60 年代末產生起,如今已經發展到IMSV6,提供群集、N路數據共享、消息隊列共享等先進特性的支持。這個具有3 0 年歷史的資料庫產品在如今的WWW應用連接、商務智能應用中扮演著新的角色。
1973 年Cullinane 公司(也就是後來的Cullinet軟體公司),開始出售Goodrich 公司的IDMS 改進版本,並且逐漸成為當時世界上最大的軟體公司。
2. 關系資料庫的由來
網狀資料庫和層次資料庫已經很好地解決了數據的集中和共享問題,但是在數據獨立性和抽象級別上仍有很大欠缺。用戶在對這兩種資料庫進行存取時,仍然需要明確數據的存儲結構,指出存取路徑。而後來出現的關系資料庫較好地解決了這些問題。
1970年,IBM的研究員E.F.Codd博士在刊物《Communication of the ACM》上發表了一篇名為「A Relational Model of Data for Large Shared Data Banks」的論文,提出了關系模型的概念,奠定了關系模型的理論基礎。盡管之前在1968年Childs已經提出了面向集合的模型,然而這篇論文被普遍認為是資料庫系統歷史上具有劃時代意義的里程碑。Codd的心願是為資料庫建立一個優美的數據模型。後來Codd又陸續發表多篇文章,論述了範式理論和衡量關系系統的12條標准,用數學理論奠定了關系資料庫的基礎。關系模型有嚴格的數學基礎,抽象級別比較高,而且簡單清晰,便於理解和使用。但是當時也有人認為關系模型是理想化的數據模型,用來實現 DBMS是不現實的,尤其擔心關系資料庫的性能難以接受,更有人視其為當時正在進行中的網狀資料庫規范化工作的嚴重威脅。為了促進對問題的理解,1974 年ACM牽頭組織了一次研討會,會上開展了一場分別以Codd和Bachman為首的支持和反對關系資料庫兩派之間的辯論。這次著名的辯論推動了關系資料庫的發展,使其最終成為現代資料庫產品的主流。
1969: Edgar F。「Ted」 Codd發明了關系資料庫
1970年關系模型建立之後,IBM公司在San Jose實驗室增加了更多的研究人員研究這個項目,這個項目就是著名的System R。其目標是論證一個全功能關系DBMS的可行性。該項目結束於1979年,完成了第一個實現SQL的 DBMS。然而IBM對IMS的承諾阻止了System R的投產,一直到1980年System R才作為一個產品正式推向市場。IBM產品化步伐緩慢的三個原因:IBM重視信譽,重視質量,盡量減少故障;IBM是個大公司,官僚體系龐大;IBM內部已經有層次資料庫產品,相關人員不積極,甚至反對。
然而同時,1973年加州大學伯克利分校的Michael Stonebraker和Eugene Wong利用System R已發布的信息開始開發自己的關系資料庫系統Ingres。他們開發的Ingres項目最後由Oracle公司、Ingres公司以及矽谷的其他廠商所商品化。後來,System R和Ingres系統雙雙獲得ACM的1988年「軟體系統獎」。
1976年霍尼韋爾公司(Honeywell)開發了第一個商用關系資料庫系統——Multics Relational Data Store。關系型資料庫系統以關系代數為堅實的理論基礎,經過幾十年的發展和實際應用,技術越來越成熟和完善。其代表產品有Oracle、IBM公司的 DB2、微軟公司的MS SQL Server以及Informix、ADABASD等等。
3. 結構化查詢語言 (SQL)
1974 年,IBM的Ray Boyce和Don Chamberlin將Codd關系資料庫的12條准則的數學定義以簡單的關鍵字語法表現出來,里程碑式地提出了SQL(Structured Query Language)語言。SQL語言的功能包括查詢、操縱、定義和控制,是一個綜合的、通用的關系資料庫語言,同時又是一種高度非過程化的語言,只要求用戶指出做什麼而不需要指出怎麼做。SQL集成實現了資料庫生命周期中的全部操作。SQL提供了與關系資料庫進行交互的方法,它可以與標準的編程語言一起工作。自產生之日起,SQL語言便成了檢驗關系資料庫的試金石,而SQL語言標準的每一次變更都指導著關系資料庫產品的發展方向。然而,直到二十世紀七十年代中期,關系理論才通過SQL在商業資料庫Oracle和DB2中使用。
1986年,ANSI把SQL作為關系資料庫語言的美國標准,同年公布了標准SQL文本。目前SQL標准有3個版本。基本SQL定義是ANSIX3135-89,「Database Language - SQL with Integrity Enhancement」[ANS89],一般叫做SQL-89。SQL-89定義了模式定義、數據操作和事務處理。
SQL- 89和隨後的ANSIX3168-1989,「Database Language-Embedded SQL」構成了第一代SQL標准。ANSIX3135-1992[ANS92]描述了一種增強功能的SQL,現在叫做SQL-92標准。SQL-92包括模式操作,動態創建和SQL語句動態執行、網路環境支持等增強特性。在完成SQL-92標准後,ANSI和ISO即開始合作開發SQL3標准。SQL3的主要特點在於抽象數據類型的支持,為新一代對象關系資料庫提供了標准。

1969:Edgar F. Codd發明了關系資料庫
1976 年IBM E.F.Codd發表了一篇里程碑的論文「R系統:資料庫關系理論」,介紹了關系資料庫理論和查詢語言SQL。Oracle的創始人Ellison非常仔細地閱讀了這篇文章,被其內容震驚,這是第一次有人用全面一致的方案管理數據信息。作者E.F.Codd十年前就發表了關系資料庫理論,並在IBM 研究機構開發原型,這個項目就是R系統,存取數據表的語言就是SQL。Ellison看完後,敏銳意識到在這個研究基礎上可以開發商用軟體系統。而當時大多數人認為關系資料庫不會有商業價值。Ellison認為這是他們的機會:他們決定開發通用商用資料庫系統Oracle,這個名字來源於他們曾給中央情報局做過的項目名。幾個月後,他們就開發了Oracle 1.0 。但這只不過是個玩具,除了完成簡單關系查詢不能做任何事情,他們花相當長的時間才使Oracle變得可用,維持公司運轉主要靠承接一些資料庫管理項目和做顧問咨詢工作。而IBM卻沒有計劃開發,為什麼藍色巨人放棄了這個價值上百億的產品,原因有很多:IBM的研究人員大多是學術出身,他們最感興趣的是理論,而非推向市場的產品,從學術上看,研究成果應公開,發表論文和演講能使他們成名,為什麼不呢?還有一個很主要的原因就是IBM 當時有一個銷售得還不錯的層次資料庫產品IMS。直到1985年I B M 才發布了關系資料庫D B 2 ,Ellision那時已經成了千萬富翁。Ellison曾將IBM 選擇Microsoft 的MS-DOS作為IBM-PC機的操作系統比為:「世界企業經營歷史上最嚴重的錯誤,價值超過了上千億美元。」IBM 發表R系統論文,而且沒有很快推出關系資料庫產品的錯誤可能僅僅次之。Oracle 的市值在1996年就達到了280億美元。
目前SQL標准有3個版本。基本SQL定義是ANSIX3135-89,「DatabaseLan guage —— SQL with IntegrityEnhancement」[ANS89],一般叫做SQL-89。SQL-89 定義了模式定義、數據操作和事務處理。S Q L - 8 9 和隨後的ANSIX3168-1989,「Database Language——Embedded SQL」構成了第一代SQL標准。ANSIX3135-1992[ANS92]描述了一種增強功能的SQL,現在叫做SQL-92標准。SQL-92 包括模式操作,動態創建和SQL語句動態執行、網路環境支持等增強特性。在完成SQL-92標准後,ANSI和ISO即開始合作開發SQL3標准。 SQL3的主要特點在於抽象數據類型的支持,為新一代對象關系資料庫提供了標准。
4. 面向對象資料庫
隨著信息技術和市場的發展,人們發現關系型資料庫系統雖然技術很成熟,但其局限性也是顯而易見的:它能很好地處理所謂的「表格型數據」,卻對技術界出現的越來越多的復雜類型的數據無能為力。九十年代以後,技術界一直在研究和尋求新型資料庫系統。但在什麼是新型資料庫系統的發展方向的問題上,產業界一度是相當困惑的。受當時技術風潮的影響,在相當一段時間內,人們把大量的精力花在研究「面向對象的資料庫系統(object oriented database)」或簡稱「OO資料庫系統」。值得一提的是,美國Stonebraker教授提出的面向對象的關系型資料庫理論曾一度受到產業界的青睞。而Stonebraker本人也在當時被Informix花大價錢聘為技術總負責人。
然而,數年的發展表明,面向對象的關系型資料庫系統產品的市場發展的情況並不理想。理論上的完美性並沒有帶來市場的熱烈反應。其不成功的主要原因在於,這種資料庫產品的主要設計思想是企圖用新型資料庫系統來取代現有的資料庫系統。這對許多已經運用資料庫系統多年並積累了大量工作數據的客戶,尤其是大客戶來說,是無法承受新舊數據間的轉換而帶來的巨大工作量及巨額開支的。另外,面向對象的關系型資料庫系統使查詢語言變得極其復雜,從而使得無論是資料庫的開發商家還是應用客戶都視其復雜的應用技術為畏途。
5. 數據管理的變革
二十世紀六十年代後期出現了一種新型資料庫軟體:決定支持系統(DSS),其目的是讓管理者在決策過程中更有效地利用數據信息。於是在1970年, 第一個聯機分析處理工具——Express誕生了。其他決策支持系統緊隨其後,許多是由公司的IT部門開發出來的。
1985年,第一個商務智能系統(business intelligence)由Metaphor計算機系統有限公司為Procter & Gamble公司開發出來,主要是用來連接銷售信息和零售的掃描儀數據。同年, Pilot 軟體公司開始出售第一個商用客戶/伺服器執行信息系統——Command Center。同樣在這年,加州大學伯克利分校Ingres項目演變成Postgres,其目標是開發出一個面向對象的資料庫。此後一年, Graphael公司開發了第一個商用的對象資料庫系統—Gbase。
1988年,IBM公司的研究者Barry Devlin和Paul Murphy發明了一個新的術語—信息倉庫,之後,IT的廠商開始構建實驗性的數據倉庫。1991年,W.H. "Bill" Inmon出版了一本「如何構建數據倉庫」的書,使得數據倉庫真正開始應用。
1991: W.H.「Bill」 Inmon發表了」構建數據倉庫」
二十世紀九十年代,隨著基於PC的客戶/伺服器計算模式和企業軟體包的廣泛採用,數據管理的變革基本完成。數據管理不再僅僅是存儲和管理數據,而轉變成用戶所需要的各種數據管理的方式。Internet的異軍突起以及XML語言的出現,給資料庫系統的發展開辟了一片新的天地。
[編輯本段]資料庫未來發展趨勢
隨著信息管理內容的不斷擴展,出現了豐富多樣的數據模型(層次模型,網狀模型,關系模型,面向對象模型,半結構化模型等),新技術也層出不窮(數據流,Web數據管理,數據挖掘等)。目前每隔幾年,國際上一些資深的資料庫專家就會聚集一堂,探討資料庫研究現狀,存在的問題和未來需要關注的新技術焦點。過去已有的幾個類似報告包括:1989 年Future Directions inDBMS Research-The Laguna BeachParticipants ,1990 年DatabaseSystems : Achievements and Opportunities ,1995 年的Database 1991:W.H. Inmon 發表了《構建數據倉庫》

G. 計算機的體系結構,組成和實現各自處理哪些方面的問題

計算機體系結構(ComputerArchitecture)是程序員所看到的計算機的屬性,即概念性結構與功能特性。按照計算機系統的多級層次結構,不同級程序員所看到的計算機具有不同的屬性。一般來說,低級機器的屬性對於高層機器程序員基本是透明的,通常所說的計算機體系結構主要指機器語言級機器的系統結構。經典的關於「計算機體系結構(computerarchitecture)」的定義是1964年C.M.Amdahl在介紹IBM360系統時提出的,其具體描述為「計算機體系結構是程序員所看到的計算機的屬性,即概念性結構與功能特性」 。

計算機體系結構
2基本概念編輯
計算機體系結構就是指適當地組織在一起的一系列系統元素的集合,這些系統元素互相配合、相互協作,通過對信息的處理而完成預先定義的目標。通常包含的系統元素有:計算機軟體、計算機硬體、人員、資料庫、文檔和過程。其中,軟體是程序、資料庫和相關文檔的集合,用於實現所需要的邏輯方法、過程或控制;硬體是提供計算能力的電子設備和提供外部世界功能的電子機械設備(例如感測器、馬達、水泵等);人員是硬體和軟體的用戶和操作者;資料庫是通過軟體訪問的大型的、有組織的信息集合;文檔是描述系統使用方法的手冊、表格、圖形及其他描述性信息;過程是一系列步驟,它們定義了每個系統元素的特定使用方法或系統駐留的過程性語境。

計算機體系結構
38種屬性編輯
1·機內數據表示:硬體能直接辨識和操作的數據類型和格式

計算機體系結構
2·定址方式:最小可定址單位、定址方式的種類、地址運算
3·寄存器組織:操作寄存器、變址寄存器、控制寄存器及專用寄存器的定義、數量和使用規則
4·指令系統:機器指令的操作類型、格式、指令間排序和控制機構
5·存儲系統:最小編址單位、編址方式、主存容量、最大可編址空間
6·中斷機構:中斷類型、中斷級別,以及中斷響應方式等
7·輸入輸出結構:輸入輸出的連接方式、處理機/存儲器與輸入輸出設備間的數據交換方式、數據交換過程的控制
8·信息保護:信息保護方式、硬體信息保護機制。
4發展歷程編輯
計算機系統已經經歷了四個不同的發展階段。

計算機體系結構
第一階段
60年代中期以前,是計算機系統發展的早期時代。在這個時期通用硬體已經相當普遍,軟體卻是為每個具體應用而專門編寫的,大多數人認為軟體開發是無需預先計劃的事情。這時的軟體實際上就是規模較小的程序,程序的編寫者和使用者往往是同一個(或同一組)人。由於規模小,程序編寫起來相當容易,也沒有什麼系統化的方法,對軟體開發工作更沒有進行任何管理。這種個體化的軟體環境,使得軟體設計往往只是在人們頭腦中隱含進行的一個模糊過程,除了程序清單之外,根本沒有其他文檔資料保存下來。
第二階段
從60年代中期到70年代中期,是計算機系統發展的第二代。在這10年中計算機技術有了很大進步。多道程序、多用戶系統引入了人機交互的新概念,開創了計算機應用的新境界,使硬體和軟體的配合上了一個新的層次。實時系統能夠從多個信息源收集、分析和轉換數據,從而使得進程式控制制能以毫秒而不是分鍾來進行。在線存儲技術的進步導致了第一代資料庫管理系統的出現。計算機系統發展的第二代的一個重要特徵是出現了「軟體作坊」,廣泛使用產品軟體。但是,「軟體作坊」基本上仍然沿用早期形成的個體化軟體開發方法。隨著計算機應用的日益普及,軟體數量急劇膨脹。在程序運行時發現的錯誤必須設法改正;用戶有了新的需求時必須相應地修改程序;硬體或操作系統更新時,通常需要修改程序以適應新的環境。上述種種軟體維護工作,以令人吃驚的比例耗費資源。更嚴重的是,許多程序的個體化特性使得它們最終成為不可維護的。「軟體危機」就這樣開始出現了。1968年北大西洋公約組織的計算機科學家在聯邦德國召開國際會議,討論軟體危機課題,在這次會議上正式提出並使用了「軟體工程」這個名詞,一門新興的工程學科就此誕生了。
第三階段
計算機系統發展的第三代從20世紀70年代中期開始,並且跨越了整整10年。在這10年中計算機技術又有了很大進步。分布式系統極大地增加亍計算機系統的復雜性,區域網、廣域網、寬頻數字通信以及對「即時」數據訪問需求的增加,都對軟體開發者提出了更高的要求。但是,在這個時期軟體仍然主要在工業界和學術界應用,個人應用還很少。這個時期的主要特點是出現了微處理器,而且微處理器獲得了廣泛應用。以微處理器為核心的「智能」產品隨處可見,當然,最重要的智能產品是個人計算機。在不到10年的時間里,個人計算機已經成為大眾化的商品。
在計算機系統發展的第四代已經不再看重單台計算機和程序,人們感受到的是硬體和軟體的綜合效果。由復雜操作系統控制的強大的桌面機及區域網和廣域網,與先進的應用軟體相配合,已經成為當前的主流。計算機體系結構已迅速地從集中的主機環境轉變成分布的客戶機/伺服器(或瀏覽器/伺服器)環境。世界范圍的信息網為人們進行廣泛交流和資源的充分共享提供了條件。軟體產業在世界經濟中已經佔有舉足輕重的地位。隨著時代的前進,新的技術也不斷地涌現出來。面向對象技術已經在許多領域迅速地取代了傳統的軟體開發方法。
總結
軟體開發的「第四代技術」改變了軟體界開發計算機程序的方式。專家系統和人工智慧軟體終於從實驗室中走出來進入了實際應用,解決了大量實際問題。應用模糊邏輯的人工神經網路軟體,展現了模式識別與擬人信息處理的美好前景。虛擬現實技術與多媒體系統,使得與用戶的通信可以採用和以前完全不同的方法。遺傳演算法使我們有可能開發出駐留在大型並行生物計算機上的軟體。
5基本原理編輯
計算機體系結構解決的是計算機系統在總體上、功能上需要解決的問題,它和計算機組成、計算機實現是不同的概念。一種體系結構可能有多種組成,一種組成也可能有多種物理實現。

計算機系統結構的邏輯實現,包括機器內部數據流和控制流的組成以及邏輯設計等。其目標是合理地把各種部件、設備組成計算機,以實現特定的系統結構,同時滿足所希望達到的性能價格比。一般而言,計算機組成研究的范圍包括:確定數據通路的寬度、確定各種操作對功能部件的共享程度、確定專用的功能部件、確定功能部件的並行度、設計緩沖和排隊策略、設計控制機構和確定採用何種可靠技術等。計算機組成的物理實現。包括處理機、主存等部件的物理結構,器件的集成度和速度,器件、模塊、插件、底板的劃分與連接,專用器件的設計,信號傳輸技術,電源、冷卻及裝配等技術以及相關的製造工藝和技術。
6分類編輯
Flynn分類法
1966年,Michael.J.Flynn提出根據指令流、數據流的多倍性(multiplicity)特徵對計算機系統進行分類,定義如下。
·指令流:機器執行的指令序列

計算機體系結構
·數據流:由指令流調用的數據序列,包括輸入數據和中間結果
·多倍性:在系統性能瓶頸部件上同時處於同一執行階段的指令或數據的最大可能個數。
Flynn根據不同的指令流-數據流組織方式把計算機系統分為4類。
1·單指令流單數據流(,SISD)
SISD其實就是傳統的順序執行的單處理器計算機,其指令部件每次只對一條指令進行解碼,並只對一個操作部件分配數據。
2·單指令流多數據流(,SIMD)
SIMD以並行處理機為代表,結構如圖,並行處理機包括多個重復的處理單元PU1~PUn,由單一指令部件控制,按照同一指令流的要求為它們分配各自所需的不同的數據。
3·多指令流單數據流(,MISD)
MISD的結構,它具有n個處理單元,按n條不同指令的要求對同一數據流及其中間結果進行不同的處理。一個處理單元的輸出又作為另一個處理單元的輸入。
4·多指令流多數據流(,MIMD)
MIMD的結構,它是指能實現作業、任務、指令等各級全面並行的多機系統,多處理機就屬於MIMD。(2)
馮式分類法
1972年馮澤雲提出用最大並行度來對計算機體系結構進行分類。所謂最大並行度Pm是指計算機系統在單位時間內能夠處理的最大的二進制位數。設每一個時鍾周期△ti內能處理的二進制位數為Pi,則T個時鍾周期內平均並行度為Pa=(∑Pi)/T(其中i為1,2,…,T)。平均並行度取決於系統的運行程度,與應用程序無關,所以,系統在周期T內的平均利用率為μ=Pa/Pm=(∑Pi)/(T*Pm)。用最大並行度對計算機體系結構進行的分類。用平面直角坐標系中的一點表示一個計算機系統,橫坐標表示字寬(N位),即在一個字中同時處理的二進制位數;縱坐標表示位片寬度(M位),即在一個位片中能同時處理的字數,則最大並行度Pm=N*M。
由此得出四種不同的計算機結構:
①字串列、位串列(簡稱WSBS)。其中N=1,M=1。
②字並行、位串列(簡稱WPBS)。其中N=1,M>1。
③字串列、位並行(簡稱WSBP)。其中N>1,M=1。
④字並行、位並行(簡稱WPBP)。其中N>1,M>1。
7技術革新編輯
計算機體系結構以圖靈機理論為基礎,屬於馮·諾依曼體系結構。本質上,圖靈機理論和馮·諾依曼體系結構是一維串列的,而多核處理器則屬於分布式離散的並行結構,需要解決二者的不匹配問題。
首先,串列的圖靈機模型和物理上分布實現的多核處理器的匹配問題。圖靈機模型意味著串列的編程模型。串列程序很難利用物理上分布實現的多個處理器核獲得性能加速.與此同時,並行編程模型並沒有獲得很好的推廣,僅僅局限在科學計算等有限的領域.研究者應該尋求合適的機制來實現串列的圖靈機模型和物理上分布實現的多核處理器的匹配問題或縮小二者之間的差距,解決「並行程序編程困難,串列程序加速小」的問題。

計算機體系結構
在支持多線程並行應用方面,未來多核處理器應該從如下兩個方向加以考慮。第一是引入新的能夠更好的能夠表示並行性的編程模型。由於新的編程模型支持編程者明確表示程序的並行性,因此可以極大的提升性能。比如Cell處理器提供不同的編程模型用於支持不同的應用。其難點在於如何有效推廣該編程模型以及如何解決兼容性的問題。第二類方向是提供更好的硬體支持以減少並行編程的復雜性。並行程序往往需要利用鎖機制實現對臨界資源的同步、互斥操作,編程者必須慎重確定加鎖的位置,因為保守的加鎖策略限制了程序的性能,而精確的加鎖策略大大增加了編程的復雜度。一些研究在此方面做了有效的探索。比如,SpeculativeLockElision機制允許在沒有沖突的情況下忽略程序執行的鎖操作,因而在降低編程復雜度的同時兼顧了並行程序執行的性能。這樣的機制使得編程者集中精力考慮程序的正確性問題,而無須過多地考慮程序的執行性能。更激進的,(TCC)機制以多個訪存操作(Transaction)為單位考慮數據一致性問題,進一步簡化了並行編程的復雜度。
主流的商業多核處理器主要針對並行應用,如何利用多核加速串列程序仍然是一個值得關注的問題。其關鍵技術在於利用軟體或硬體自動地從串新程序中派生出能夠在多核處理器上並行執行的代碼或線程。多核加速串列程序主要有三種方法,包括並行編譯器、推測多線程以及基於線程的預取機制等。在傳統並行編譯中,編譯器需要花費很大的精力來保證擬劃分線程之間不存在數據依賴關系。編譯時存在大量模糊依賴,尤其是在允許使用指針(如C程序)的情況下,編譯器不得不採用保守策略來保證程序執行的正確性。這大大限制了串列程序可以挖掘的並發程度,也決定了並行編譯器只能在狹窄范圍使用。為解決這些問題,人們提出推測多線程以及基於線程的預取機制等。然而,從這種概念提出到現在為止,這個方向的研究大部分局限於學術界,僅有個別商業化處理器應用了這種技術,並且僅僅局限於特殊的應用領域。我們認為動態優化技術和推測多線程(包括基於線程的預取機制)的結合是未來的可能發展趨勢。
馮·諾依曼體系結構的一維地址空間和多核處理器的多維訪存層次的匹配問題。本質上,馮·諾依曼體系結構採用了一維地址空間。由於不均勻的數據訪問延遲和同一數據在多個處理器核上的不同拷貝導致了數據一致性問題。該領域的研究分為兩大類:一類研究主要是引入新的訪存層次。新的訪存層次可能採用一維分布式實現方式。典型的例子是增加分布式統一編址的寄存器網路。全局統一編址的特性避免了數據一致性地考慮。同時,相比於傳統的大容量cache訪問,寄存器又能提供更快的訪問速度。TRIPS和RAW都有實現了類似得寄存器網路。另外,新的訪存層次也可以是私有的形式。比如每個處理器和都有自己私有的訪存空間。其好處是更好的劃分了數據存儲空間,已洗局部私有數據沒有必要考慮數據一致性問題。比如Cell處理器為每個SPE核設置了私有的數據緩沖區。另一類研究主要涉及研製新的cache一致性協議。其重要趨勢是放鬆正確性和性能的關系。比如推測Cache協議在數據一致性未得到確認之前就推測執行相關指令,從而減少了長遲訪存操作對流水線的影響。此外,TokenCoherence和TCC也採用了類似的思想。程序的多樣性和單一的體系結構的匹配問題。未來的應用展現出多樣性的特點。一方面,處理器的評估不僅僅局限於性能,也包括可靠性,安全性等其他指標。另一方面,即便考慮僅僅追求性能的提高,不同的應用程序也蘊含了不同層次的並行性。應用的多樣性驅使未來的處理器具有可配置、靈活的體系結構。TRIPS在這方面作了富有成效的探索,比如其處理器核和片上存儲系統均有可配置的能力,從而使得TRIPS能夠同時挖掘指令級並行性、數據級並行性及指令級並行性。
多核和Cell等新型處理結構的出現不僅是處理器架構歷史上具有里程碑式的事件,對傳統以來的計算模式和計算機體系架構也是一種顛覆
2005年,一系列具有深遠影響的計算機體系結構被曝光,有可能為未來十年的計算機體系結構奠定根本性的基礎,至少為處理器乃至整個計算機體系結構做出了象徵性指引。隨著計算密度的提高,處理器和計算機性能的衡量標准和方式在發生變化,從應用的角度講,講究移動和偏向性能兩者已經找到了最令人滿意的結合點,並且有可能引爆手持設備的急劇膨脹。盡管現在手持設備也相對普及,在計算能力、可擴展性以及能耗上,完全起到了一台手持設備應該具備的作用;另一方面,講究性能的伺服器端和桌面端,開始考慮減少電力消耗趕上節約型社會的大潮流。
Cell本身適應這種變化,同樣也是它自己創造了這種變化。因而從它開始就強調了不一樣的設計風格,除了能夠很好地進行多倍擴展外,處理器內部的SPU(SynergisticProcessorUnit協同處理單元)具有很好的擴展性,因而可以同時面對通用和專用的處理,實現處理資源的靈活重構。也就意味著,通過適當的軟體控制,Cell能應付多種類型的處理任務,同時還能夠精簡設計的復雜。

H. 怎麼將圖靈機器人部署在linux伺服器

具體代碼如下:<?php
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLO搜索PT_URL, '');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
?>
?PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。
它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標准通用標記語言下的一個應用)文檔中去執行,
執行效率比完全生成HTML標記的CGI要高許多;
PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。

熱點內容
python如何拋出異常 發布:2025-01-25 03:40:27 瀏覽:984
更新成本演算法 發布:2025-01-25 03:38:09 瀏覽:115
我的世界在伺服器裡面用toolbox 發布:2025-01-25 03:38:09 瀏覽:566
學編程不想學了 發布:2025-01-25 03:36:51 瀏覽:379
如何壓縮0 發布:2025-01-25 03:36:49 瀏覽:794
伺服器主板和家用電腦主板的區別 發布:2025-01-25 03:36:47 瀏覽:893
查詢資料庫連接數 發布:2025-01-25 03:36:41 瀏覽:976
安卓鎖屏切換在哪裡 發布:2025-01-25 03:30:56 瀏覽:220
aspx代碼加密 發布:2025-01-25 03:28:09 瀏覽:925
安卓手機如何打開mdx 發布:2025-01-25 03:20:31 瀏覽:604