當前位置:首頁 » 編程軟體 » 分布式編譯加速

分布式編譯加速

發布時間: 2022-05-28 04:40:39

1. go語言有前景嗎

Go語言專門針對多處理器系統應用程序的編程進行優化,使用GO編譯的程序可以媲美C或者C++代碼的速度,而且更加安全、支持並行進程。不僅可以開發Web,還可以開發底層,知乎就是golang開發的。區塊鏈的首選語言就是Go,以太坊,超級賬本都是基於Go語言。
Go的目標是希望提升現有編程語言對程序庫等依賴性的管理,這些軟體元素會被應用程序反復調用。由於存在並行編程模式,因此這一語言也被設計用來解決多處理器的任務。
Google對Go寄予厚望,其設計是讓軟體充分發揮多核心處理器同步多工的優點,並可解決面向對象程序設計的麻煩,它具有現代的程序語言特色,如垃圾回收,幫助程序設計師處理瑣碎但重要的內存管理問題。Go的速度非常快,幾乎和C或C++程序一樣快,且能夠快速製作程序。
目前,Go語言主要用於伺服器端開發,其定位是用來開發大型軟體的,適合於很多程序員一起開發大型軟體,並且開發周期長,支持雲計算的網路服務。Go語言能夠讓程序員快速開發,並且在軟體不斷的增長過程中,它能讓程序員更容易地進行維護和修改。它融合了傳統編譯型語言的高效性和腳本語言的易用性和富於表達性。
Go語言作為伺服器編程語言,很適合處理日誌、數據打包、虛擬機處理、文件系統、分布式系統、資料庫代理等;網路編程方面,Go語言廣泛應用於Web應用、API應用、下載應用等,除此之外,Go語言還可用於內存資料庫和雲平台領域,目前國外很多雲平台都是採用Go開發的,所以說Go語言的開發前景還是很不錯的!

2. NetworkX和Graphscope哪個運算速度更快

近年來,全球大數據進入加速發展時期,數據量呈現指數級爆發式增長,而這些大量數據中不同個體間交互產生的數據以圖的形式表現,如何高效地處理這些圖數據成為了業界及其關心的問題。很過用普通關系數據無法跑出來的結果,用圖數據進行關聯分析會顯得異常高效。

提到處理圖數據,我們首先想到NetworkX,這是網路計算上常用的python包,可提供靈活的圖構建、分析功能。但是我們使用NetworkX跑大規模圖數據時,不僅經常碰到內存不足的問題,而且分析速度很慢,究其原因,是NetworkX只支持單機運行。通過網上搜索,新發現了一個名為GraphScope的系統不僅號稱兼容NetworkX的API,而且支持分布式部署運行,性能更優。針對GraphScope和NetworkX的處理能力,我們參考圖計算中常用的測試框架LDBC,通過一組實驗來對比下二者的性能。

一、實驗介紹

為了比較兩者的計算效率,先用阿里雲拉起了配置為8核CPU,32GB內存的四台ECS,設計了三組比較實驗,分別是NetworkX單機下的計算性能,GraphScope單機多worker的計算性能以及GraphScope分布式多機多worer的計算性能。

數據上,我們選取了SNAP開源的圖數據集twitter,來自 LDBC數據集的datagen-7_5-fb,datagen-7_7-zf和datagen-8_0-fb作為實驗數據,以下是數據集的基本信息:

· Twitter: 81,307個頂點,1,768,135條邊

· Datagen-7_5-fb: 633,432個頂點,34,185,747條邊,稠密圖

· Datagen-7_7-zf: 13,180,508個頂點,32,791,267條邊,稀疏圖

· Datagen-8_0-fb: 1,706,561個頂點,107,507,376條邊,這個數據集主要測試兩個系統可處理的圖規模能力

實驗設計上我選擇常用的SSSP、BFS、PageRank、WCC演算法,以及較高復雜度的All Pair shortest Path length演算法,以載圖時間,內存佔用和計算時間這三個指標為依據,對兩個系統進行計算性能的比較。

NetworkX是一個單機系統,在實驗中只考慮NetworkX在單機環境下的運行時間;GraphScope支持分布式運行,故進行兩個配置,一個是單機4worker,另外一個配置是4台機器,每台機器4個worker。

二、實驗結果

首先,GraphScope的載圖速度比NetworkX顯著提升。

在前三個圖數據集中,無論是GraphScope的單機多worker模式,還是GraphScope的分布式模式,載圖速度都比NetworkX快:

GraphScope單機模式載圖速度平均比NetworkX快5倍,最高紀錄——在datagen-7_5-fb上比NetworkX快了6倍。

分布式模式下GraphScope的載圖時間比NetworkX平均快了27倍,最高紀錄——在datagen-7_7-zf數據集上比NetworkX快了63倍。

在datagen-8_0-fb數據集上,NetworkX因內存溢出無法載圖,GraphScope單機多worker和GraphScope分布式載圖時間分別為142秒和13.6秒。

表一:載圖時間對比

載圖時間

NetworkX

GraphScope單機

GraphScope分布式

twitter

11.2

3.1

1.8

datagen-7_5-fb

256

45.6

36.6

datagen-7_7-zf

316

71.3

50

datagen-8_0-fb

OOM

142

13.6

其次,GraphScope的內存使用效率比NetworkX顯著提升。

在datagen-8_0-fb數據集上,NetworkX在32G的內存上無法載完圖,而GraphScope僅需要24G的內存即可載入在datagen-8_0-fb數據集。

表二:內存佔用對比

內存佔用

NetworkX

GraphScope

datagen-7_5-fb

14G

6G

datagen-7_7-zf

28G

18G

datagen-8_0-fb

OOM

24G

再次,GraphScope的計算速度比NetworkX顯著提升。

SSSP演算法上,GraphScope單機多worker模式平均要比NetworkX快22倍,最快在datagen-7_7-zf數據集上快了32倍。GraphScope分布式模式下平均要比NetworkX快103倍,最快datagen-7_5-fb數據集上快了182倍。

表三: SSSP計算時間對比(單位:秒)

SSSP

NetworkX

GraphScope單機

GraphScope分布式

twitter

2.45

1.32

0.28

datagen-7_5-fb

37.9

1.21

0.31

datagen-7_7-zf

5.84

0.18

0.03

datagen-8_0-fb

OOM

2.76

0.82

BFS演算法上,GraphScope單機多worker模式平均要比NetworkX快13倍,最快datagen-7_5-fb數據集上快了22倍。GraphScope分布式模式下平均要比NetworkX快16倍,最快在datagen-7_5-fb數據集上快了28倍。

表四: BFS計算時間對比(單位:秒)

BFS

NetworkX

GraphScope單機

GraphScope分布式

twitter

1.53

0.16

0.17

datagen-7_5-fb

44.68

2.52

1.56

datagen-7_7-zf

7.98

0.75

0.72

datagen-8_0-fb

OOM

11.02

5.73

PageRank演算法上,GraphScope單機多worker模式平均要比NetworkX快62倍,最快twitter數據集上快了80倍。GraphScope分布式模式下平均要比NetworkX快65倍,最快在twitter數據集上快了71倍。

另外,PageRank計算過程中,NetworkX在datagen-7_7-zf上內存溢出,沒有完成計算,GraphScope單機多worker模式和分布式模式計算時間分別為25秒和22秒;

表五:PageRank計算時間對比(單位:秒)

PageRank

NetworkX

GraphScope單機

GraphScope分布式

twitter

24.01

0.37

0.33

datagen-7_5-fb

300

6.73

5.17

datagen-7_7-zf

OOM

19.31

7.79

datagen-8_0-fb

OOM

24.96

21.88

WCC演算法上,GraphScope單機多worker模式平均要比NetworkX快44倍,最快在datagen-7_7-zf數據集上快了104倍。GraphScope分布式模式下平均要比NetworkX快76倍,最快datagen-7_5-fb數據集上快了194倍。

表六: WCC計算時間對比(單位:秒)

WCC

NetworkX

GraphScope單機

GraphScope分布式

twitter

0.6392

0.0296

0.0233

datagen-7_5-fb

26.03

0.25

0.13

datagen-7_7-zf

83.19

14.57

12.98

datagen-8_0-fb

OOM

0.34

0.4991

在復雜度極高的All pair shortest path length演算法上,NetworkX在twitter圖上即內存溢出,無法計算。GraphScope在分布式模式下完成了twitter圖的All pair shortest path length計算,耗時76分鍾。

表七: All Pair Shortest Path Length(單位:秒)

APSP

NetworkX

GraphScope單機

GraphScope分布式

twitter

OOM

OOM

4575.87

三、總結

從實驗結果可以看到,在同等條件下,無論在載圖時間、內存佔用和計算時間上,GraphScope都要大大優於NetworkX,性能優化可以達到幾十倍甚至上百倍。

6979阿強
關注

0

0

0

@網路演算法工具 networkX igraph 的性能問題
alston_ethannical的博客
24
@網路演算法工具 networkX igraph 的性能問題 問題的提出 當我用 50萬數據去跑 networkX 開發出來的演算法時,遇到了一個計算性能的問題,這個問題時很慢。 尋找答案 發現 networkX再性能方面比較差。當節點上萬,邊上十萬的時候,新能慢的問題就會顯現出來 為了解決圖演算法問題,該怎麼辦呢 遇到問題,首先定義問題的邊界。也就是 先找到限制問題的條件。然後縮小問題范圍。我要解決的問題是:在解決圖演算法相關的問題時,如何能夠快速計算出結果。但是目前的演算法時用networks實現的。問題的根源是
開源!一文了解阿里一站式圖計算平台GraphScope
阿里雲開發者
2767
簡介:隨著大數據的爆發,圖數據的應用規模不斷增長,現有的圖計算系統仍然存在一定的局限。阿里巴巴擁有全球最大的商品知識圖譜,在豐富的圖場景和真實應用的驅動下,阿里巴巴達摩院智能計算實驗室研發並開源了全球首個一站式超大規模分布式圖計算平台GraphScope,並入選中國科學技術協會「科創中國」平台。本文詳解圖計算的原理和應用及GraphScope的架構設計。一 什麼是圖計算圖數據對一組對象(頂點)及其關系(邊)進行建模,可以直觀、自然地表示現實世界中各種實體對象以及它們之間的關系。在大數據場景下,社交網路、交

一文了解阿里一站式圖計算平台GraphScope_阿里雲雲棲號
10-2
GraphScope 提供了各類常用的分析演算法,包括連通性計算類、社區發現類和 PageRank、中心度等數值計算類的演算法,後續會不斷擴展演算法包,在超大規模圖上提供與 NetworkX 演算法庫兼容的分析能力。此外也提供了豐富的圖學習演算法包,內置支持 Graph...
5大典型模型測試單機訓練速度超對標框架,飛槳如何做到...
10-28
導讀:飛槳(PaddlePaddle)致力於讓深度學習技術的創新與應用更簡單。在單機訓練速度方面,通過高並行、低開銷的非同步執行策略和高效率的核心運算元,優化靜態圖訓練性能,在Paddle Fluid v1.5.0的基準測試中,在7個典型模型上進行了測試(圖像領域...
強化學習經典演算法筆記(六):深度Q值網路 Deep Q Network
hhy_csdn的博客
9093
前期回顧 強化學習經典演算法筆記(零):貝爾曼方程的推導 強化學習經典演算法筆記(一):價值迭代演算法Value Iteration 強化學習經典演算法筆記(二):策略迭代演算法Policy Iteration 強化學習經典演算法筆記(三):蒙特卡羅方法Monte Calo Method 強化學習經典演算法筆記(四):時間差分演算法Temporal Difference(Q-Learning演算法) 強化學習經典算...
GraphX和GraphFrame connectedComponent計算性能對比
高臭臭的博客
3046
測試文件:用Graph rmatGraph 1000000 2000000 去重後 494587個點,1997743個邊 運行環境:三台伺服器,246 GB,core 71. 測試三個運行例子1:Graph connectedComponents 2:GraphFrame connectedComponents 3:GraphFrame connectedComponents setAlgor
...network、偽代碼、演算法理解、代碼實現、tensorboard...
11-3
定義一個q_network函數來構建Q network,輸入游戲狀態Q network並得到對所有動作的Q值。 網路構成給為三個帶有池化的卷積層和一個全連接層。 tf.reset_default_graph()defq_network(X,name_scope):# Initialize layersinitializer=tf....
【讀書筆記】【機器學習實戰】第十一章:訓練深度神經網路
MJ_Lee的博客
612
閱讀書籍為《Hands-On Machine Learning with Scikit-Learn & TensorFlow》王靜源等翻譯的中文譯版《機器學習實戰,基於 Scikit-Learn 和 TensorFlow》,本文中所有圖片均來自於書籍相關部分截圖。 本章介紹了DNN訓練過程中三個常見問題,並依次給出解決方案。 章節的最後還給出當不知道如何DNN訓練時一些屬性可以選的比較好的...
Networkx 計算網路效率
tengqingyong的博客
5860
本人在計算網路效率的時候遇到了一個問題 networkx 提供了最短路徑函數shortest_path及shorest_path_length 我在計算網路效率構造了一個無向圖,但是我在計算點與點之間的最短路徑長度時總是提示我說點不存在圖中, 我在上面使用nx.average_shortest_path_length(UG)的時候可以得到網路平均最短路徑長度;這個說明我的點都...
Pandas/networkx圖分析簡單入門
weixin_34306676的博客
516
對於圖論而言,大家或多或少有些了解,數學專業或計算機相關專業的讀者可能對其更加清楚。圖論中的圖像是由若干給定的點及連接兩點的線所構成的圖形,這樣的圖像通常用來描述某些事物之間的某種特定關系,用點代表事物,用兩點之間的連接線表示二者具有的某種關系,在互聯網與通信行業中應用廣泛。圖論分析(Graph analysis)並不是數據科學領域中的新分...
networkx--四種網路模型
weixin_30764883的博客
380
NetworkX提供了4種常見網路的建模方法,分別是:規則圖,ER隨機圖,WS小世界網路和BA無標度網路。 一. 規則圖 規則圖差不多是最沒有復雜性的一類圖,random_graphs.random_regular_graph(d, n)方法可以生成一個含有n個節點,每個節點有d個鄰居節點的規則圖。 下面一段示例代碼,生成了包含20個節點、每個節點有3個鄰居的規則...
igraph/networkx學習筆記之…
nuoline的專欄
1萬+
原文地址:—— 數據結構">igraph/networkx學習筆記之一 —— 數據結構作者:zhengw789 首先,基本上所有的graph library都有其局限性,不同的數據結構有優點的同時必然有缺點,圖演算法對數據結構的依賴性構成另一個原因。所以如果是想用一個工具包解決所有的問題顯然是一種奢望,很多時候甚至必須要從頭寫自己的代碼。但是閱讀igraph和networkx這樣成型了的函數庫對熟悉
python下的復雜網路編程包networkx的使用(摘抄)
weixin_30631587的博客
2335
原文:http://blog.sciencenet.cn/home.php?mod=space&uid=404069&do=blog&classid=141080&view=me&from=space 復雜網路分析庫NetworkX學習筆記(1):入門 NetworkX是一個用Python語言開發的圖論與復雜網路建模工具,內置了常用的圖與復雜網...
更快更簡單|飛槳PaddlePaddle單機訓練速度優化最佳實踐
PaddlePaddle
1672
導讀:飛槳(PaddlePaddle)致力於讓深度學習技術的創新與應用更簡單。在單機訓練速度方面,通過高並行、低開銷的非同步執行策略和高效率的核心運算元,優化靜態圖訓練性能,...
GraphX與GraphLab、Pregel的對比
yang灬仔
588
分布式批同步BSP Pregel、GraphLab、GraphX都是基於BSP(Bulk Synchronous Parallel)模式,即整體同步並行。一次計算過程由一系列全局超步組成,每一個超步由並發計算、通信和同步三個步驟組成。從垂直上看,一個程序由一系列串列的超步組成。從水平上看,在一個超步中,所有的進程並行執行局部計算。BSP最大的好處是編程簡單,但在某些情況下BSP運算的性能非常差,...
TensorFlow學習記錄:VGGNet卷積神經網路模型
weixin_41137655的博客
308
1.VGGNet模型結構簡介 VGGNet是由牛津大學計算機視覺幾何組(Visual Geomety Group,VGG)和Google Deepmind公司的研究員合作研發的深度卷積神經網路,VGG的成員Karen Simonyan和Andrew Zisserman在2014年撰寫的論文《Very Deep Convolutional Networks for Large-Scale Image...
11月編程語言排行冠軍揭曉,穩
熱門推薦
IT教育任姐姐的博客
4萬+
大家好 今天任姐姐要跟小夥伴們分享 2021年11月最新TIOBE指數 11月編程排行榜 Python繼續榜首 本月的幸運兒只有一個,那就是Python! 繼上個月我們見證了Python奪冠這一歷史性的畫面之後,這個月Python仍舊穩坐榜首,看來Python這股大風還在繼續刮。 隨後分別是 C、java、C++、C#,這些也都是我們的老朋友了。 PHP即將跌出前十 自20多年前TIOBE 指數開始發布以來,PHP 一直常駐在榜單前十,然而最近,該語言已經開始在前十
python能做什麼軟體?Python到底能幹嘛,一文看懂
小分享
6573
Python培訓有哪些內容?很多零基礎學員不知道Python軟體是干什麼用的?Python軟體是Python工程師編寫代碼時所需要的編輯工具,現在比較常用的Python軟體有Visu... 那麼在選擇Python培訓機構時學生尤為關注的就是培訓內容,從現在幾家大的機構可以看出,Python培訓主要學習第一階段Python核心編程(Pyth... 一文讀懂Python內置變數,函數,模塊在這里解釋下什麼是解釋性語言什麼是編譯性語言: 編譯性語言:如c++,c等,寫好的代碼要通過編譯器編譯成操作系統直接可
Django中超級用戶的創建和刪除操作
最新發布
Protinx的博客
91
創建超級用戶 這就很easy了,畢竟這是所有初學者都會的,操作如下: 打開Terminal,輸入: python manage.py createsuperuser 然後按照提示輸入相應的用戶名、郵箱和密碼就可以啦,如下: 創建超級用戶 可以看到上面我的密碼輸入了三次,還有不成功的提示,Django本身對於超級用戶的密碼要求還是很多的,大家定義密碼要注意啊,或者如果只是自己學習的話,也可在『Bypass password validation and create user an.
上海python培訓中心
weixin_63757190的博客
166
前幾天,有個讀者在後台留言,說: 「最近被論文折磨得快崩潰了,我現在是恨不得克隆十個自己,一個呆在科室值班,一個去寫月底要送審的稿子,一個去上百個網站翻數據..... 還有另外七個「我」,這邊六七篇論文還沒搞定。那邊又有新論文要開題了,加上最後一個「本我」,剛剛夠用,我可真是個數學天才! 可現實是只有一個我,只能天天熬夜。 好傢伙,整得我都開始反問自己,是不是只有我的科研生活這么兵荒馬亂?」 其實他不是個例,成千上萬的科研人都要面對無盡的實驗分析、反復修改的論文。 難道就只有被虐的份嗎?
python裝飾器
Live&Learn的博客
1208
學習目標:一口氣把裝飾器描述清楚 弄清楚裝飾器前要理解三個東西: 函數對象、函數嵌套、函數構成閉包。 學習內容: 函數對象好說,python編程語言屬於動態語言,python中一切皆對象,所以函數也是對象。 函數對象用函數名稱表示(僅名稱,沒有括弧,也沒有參數)。 例如,定義了一個求和函數add,那麼此處的add就是個函數對象。 def add(username, a, b): print(f"{a}+{b}={a + b}") return a + b 函數嵌套或者嵌套函數,就是定
©️2021 CSDN 皮膚主題: 游動-白 設計師:白松林 返回首頁
關於我們
招賢納士
廣告服務
開發助手

400-660-0108

[email protected]

在線客服
工作時間 8:30-22:00
公安備案號11010502030143
京ICP備19004658號
京網文〔2020〕1039-165號
經營性網站備案信息
北京互聯網違法和不良信息舉報中心
網路110報警服務
中國互聯網舉報中心
家長監護
Chrome商店下載
©1999-2021北京創新樂知網路技術有限公司
版權與免責聲明
版權申訴
出版物許可證
營業執照

6979阿強
碼齡0年
暫無認證
11
原創
13萬+
周排名
12萬+
總排名
579
訪問

等級
132
積分
1
粉絲
1
獲贊
0
評論
1
收藏

私信
關注

熱門文章
GraphScope、Neo4j與TigerGraph單機環境下性能對比 146
NetworkX與GraphScope的性能對比 88
GraphScope、Gemini與GraphX的性能對比 60
分布式圖計算引擎 46
國足歷屆世界盃對戰圖關系 45
最新評論
圖分析入門
大家一起學編程(python): 感謝博主的分享!

您願意向朋友推薦「博客詳情頁」嗎?

強烈不推薦

不推薦

一般般

推薦

強烈推薦
最新文章
2021-10-11
圖資料庫在社交方向上的應用
國足歷屆世界盃對戰圖關系
2021年11篇

你的瀏覽器目前處於縮放狀態,頁面可能會出現錯位現象,建議100%大小顯示。

舉報

————————————————
版權聲明:本文為CSDN博主「6979阿強」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/tanekf6979/article/details/120067176

3. Xoreax IncrediBuild安裝過程

IncrediBuild是一款分布式編程開發工具,能夠加速C/C++ 的編譯和創建。特別是在大型C/C++項目中,採用IncrediBuild的多線程處理技術,不必改變項目文件的代碼,在編譯過程中自動查找區域網中空閑的CPU,並將源文件發到空閑CPU一起編譯,加快項目90%的編譯速度。

IncrediBuild需要分別在服務端(Coordinator)和客戶端(Agent)進行安裝。

1、服務端(Coordinator)的安裝

運行IncrediBuild安裝程序,選擇Install IncrediBuild,點擊Next下一步,繼續下一步,在安裝組件選擇窗口(Component Selection)鉤選IncrediBuild Coordinator。安裝組件選擇窗口,還可以不選擇服務端參與編譯,把IncrediBuild Agent前的鉤點掉就可以了。


4. 計算機組成原理結構

一、計算機的組成及學習大綱
1. 計算機的組成
計算機的三大件 :CPU、內存、主板
(1)CPU,中央處理器,計算機最核心的配件,負責所有的計算。
(2)內存,你編寫的程序、運行的游戲、打開的瀏覽器都要載入到內存中才能運行,程序讀取的數據、計算的結果也都在內存中,內存的大小決定了你能載入的東西的多少。
(3)主板,存放在內存中數據需要被CPU讀取,CPU計算完成後,還要把數據寫入到內存中,然而CPU不能直接插在內存上,這就需要主板出馬了,主板上很多個插槽,CPU和內存都是插在主板上,主板的晶元組和匯流排解決了CPU和內存之間的通訊問題,晶元組控制數據傳輸的流轉,決定數據從哪裡流向哪裡,匯流排是實際數據傳輸的告訴公里,匯流排速度決定了數據的傳輸速度。
(4)輸入/輸出設備,其實有了以上三大件之後,計算機就可以跑起來了。我們日常使用的話還需要鍵盤、滑鼠、顯示器等輸入/輸出設備,而很多雲伺服器通過SSH遠程登錄就可以訪問,就不需要配顯示器、滑鼠、鍵盤這些東西,節省成本且方便維護。
(5)硬碟,有了硬碟數據才能長久的保存下來,大部分還會給自己的機器配上機箱和風扇,解決灰塵和散熱問題,不過這些也不是必須的,用紙板和電風扇替代也一樣可以用。
(6)顯卡,顯卡里有GPU圖形處理器,主要負責圖形渲染,使用圖形界面操作系統的計算機,顯卡是必不可少的。現在的主板都帶了內置的顯卡,如果想玩游戲、做圖形渲染,一般需要一張單獨的顯卡,插在主板上。
2. 馮·諾依曼體系
現代計算機的硬體基礎架構都是依賴於馮諾依曼提出的馮諾依曼體系結構,現代計算機的核心架構可以抽象為五個基礎組件:運算器、控制器、存儲器、輸入設備和輸出設備。
具體到現代計算機,運算器和控制器組成了現代計算機的CPU,存儲器對應著內存和硬碟,主板控制著CPU、內存、硬碟、輸出/輸出設備之間的通訊。
馮諾依曼體系結構也叫做存儲程序計算機,即可編程、可存儲的計算機。
任何一台計算機的任何一個部件都可以歸到運算器、控制器、存儲器、輸入設備和輸出設備中,而所有的現代計算機也都是基於這個基礎架構來設計開發的。
馮諾依曼體系結構確立了我們現代計算機的硬體基礎架構,學習計算機組成原理,就是學習和拆解馮諾依曼體系。

5. 當前主流的編程語言有那些

目前流行的主流編程語言

學習編程,從何入手
如果您想學習編程,卻又不知從何入手,使用什麼工具,那麼您不妨看看下面的幾種學習方案,可能會給您一些啟示吧!
Basic語言

Basic語言& Visual Basic
優點VB(1)Basic 簡單易學,很容易上手。
(2)Visual Basic 提供了強大的可視化編程能力,可以讓你輕松地做出漂亮的程序。
(3)眾多的控制項讓編程變得象壘積木一樣簡單。
(4)Visual Basic 的全部漢化讓我們這些見了English就頭大的人喜不自禁。
缺點
(1)Visual Basic 不是真正的面向對象的開發文具。
(2)Visual Basic 的數據類型太少,而且不支持指針,這使得它的表達能力很有限。
(3)Visual Basic 不是真正的編譯型語言,它產生的最終代碼不是可執行的,是一種偽代碼。它需要一個動態鏈接庫去解釋執行,這使得Visual Basic 的編譯速度大大變慢。 (Visual Basic 5以及以前的版本產生的代碼是偽代碼,Visual Basic 6 編譯出來的代碼是真正的可執行代碼。)
綜述:方案一適合初涉編程的朋友,它對學習者的要求不高,幾乎每個人都可以在一個比較短的時間里學會vB編程,並用VB 做出自己的作品。對於那些把編程當做游戲的朋友來說,VB 是您最佳的選擇。
Pascal語言

DelphiPascal語言& Delphi
優點
(1)Pascal語言結構嚴謹,可以很好地培養一個人的編程思想。
(2)Delphi是一個真正的面向對象的開發工具,並且是完全的可視化。
(3)Delphi使用了真編譯,可以讓你的代碼編譯成為可執行的文件,而且編譯速度非常快。
(4)Delphi具有強大的資料庫開發能力,可以讓你輕松地開發資料庫。
缺點
Delphi幾乎可以說是完美的,只是Pascal語言的過於嚴謹讓人感覺有點煩。
綜述: 方案二比較適合那些具有一定編程基礎並且學過Pascal語言的朋友。
C/C++語言

C語言 & Visual C++

優點
(1)C語言靈活性好,效率高,可以接觸到軟體開發比較底層的東西。
(2)微軟的MFC庫博大精深,學會它可以讓隨心所欲地進行編程。
(3)VC是微軟製作的產品,與操作系統的結合更加緊密。
缺點
對使用者的要求比較高,既要具備豐富的C語言編程經驗,又要具有一定的WINDOWS編程基礎,它的過於專業使得一般的編程愛好者學習起來會有不小的困難。
綜述: VC是程序員用的東西。如果你是一個永不滿足的人,而且可以在編程上投入很大的精力和時間,那麼學習VC你一定不會後悔的。
C++
C++語言 & C++ Builder

優點
(1)繼承了C語言的全部優點。
(2)完全的可視化。
(3)極強的兼容性,支持OWL、VCL和MFC三大類庫。
(4)編譯速度非常快。
缺點
由於推出的時間太短,關於它的各種資料還不太多。
綜述:我認為C++ Builder 是最好的編程工具。它既保持了C語言編程的優點,又做到了完全的可視化。
JAVA語言

JAVA語言
一. Java的由來

當1995年SUN推出Java語言之後,全世界的目光都被這個神奇的語言所吸引。那麼Java到底有何神奇之處呢?
Java語言其實最是誕生於1991年,起初被稱為OAK語言,是SUN公司為一些消費性電子產品而設計的一個通用環境。他們最初的目的只是為了開發一種獨立於平台的軟體技術,而且在網路出現之前,OAK可以說是默默無聞,甚至差點夭折。但是,網路的出現改變了OAK的命運。
在Java出現以前。Internet上的信息內容都是一些乏味死板的HTML文檔。這對於那些迷戀於WEB瀏覽的人們來說簡直不可容忍。他們迫切希望能在WEN中看到一些互動式的內容,開發人員也極希望能夠在WEB上創建一類無需考慮軟硬體平台就可以執行的應用程序,當然這些程序還要有極大的安全保障。對於用戶的這種要求,傳統的編程語言顯得無能為力,而SUN的工程師敏銳地察覺到了這一點,從1994年起,他們開始將OAK技術應用於WEB上,並且開發出了HotJava的第一個版本。當SUN公司1995年正式以Java這個名字推出的時候,幾乎所有的WEB開發人員都想到:噢,這正是我想要的。於是Java成了一顆耀眼的明星,丑小鴨一下了變成了白天鵝。
二. Java的定義

Java是一種簡單的,面象對象的,分布式的,解釋的,健壯的安全的,結構的中立的,可移植的,性能很優異的多線程的,動態的語言。
Java的開發環境有不同的版本,如sun公司的Java Developers Kit, 簡稱 JDK。後來微軟公司推出了支持Java規范的Microsoft Visual J++ Java開發環境,簡稱 VJ++。
三. Java的特點

1. 平台無關性
平台無關性是指Java能運行於不同的平台。Java引進虛擬機 原理,並運行於虛擬機,實現不同平台的Java介面之間。使 用Java編寫的程序能在世界范圍內共享。Java的數據類型與 機器無關,Java虛擬機(Java Virtual Machine)是建立在 硬體和操作系統之上,實現Java二進制代碼的解釋執行功能, 提供於不同平台的介面的。
2. 安全性
Java的編程類似C++,學習過C++的讀者將很快掌握Java的精 髓。Java舍棄了C++的指針對存儲器地址的直接操作,程序 運行時,內存由操作系統分配,這樣可以避免病毒通過指 針侵入系統。Java對程序提供了安全管理器,防止程序的 非法訪問。
3. 面向對象
Java 吸取了C++面向對象的概念,將數據封裝於類中,利用類 的優點,實現了程序的簡潔性和便於維護性。類的封裝性、 繼承性等有關對象的特性,使程序代碼只需一次編譯,然後 通過上述特性反復利用。程序員只需把主要精力用在類和接 口的設計和應用上。Java 提供了眾多的一般對象的類,通 過繼承即可使用父類的方法。在 Java 中,類的繼承關系是單一的非多重的,一個子類 只有一個父類,子類的父類又有一個父類。Java 提供的 Object 類及其子類的繼承關系如同一棵倒立的樹形,根類 為 Object 類, Object 類功能強大,經常會使用到它及其 它派生的子類。
4. 分布式
Java建立在擴展TCP/IP網路平台上。庫函數提供了用HTTP和FTP協議傳送和接受信息的方法。這使得程序員使用網路上的文件和使用本機文件一樣容易。
5. 鍵壯性
Java致力於檢查程序在編譯和運行時的錯誤。類型檢查幫助檢查出許多開發早期出現的錯誤。Java自己操縱內存減少了內存出錯的可能性。Java還實現了真數組,避免了覆蓋數據的可能。這些功能特徵大大提高了開發Java應用程序的周期。Java提供: Null指針檢測、 數組邊界檢測、 異常出口、 Byte code校驗。
四. Java與C/C++語言區別

Java提供了一個功能強大語言的所有功能,但幾乎沒有一點含混特徵。C++安全性不好,但C和C++被大家接受,所以Java設計成C++形式,讓大家很容易學習。
Java去掉了C++語言的許多功能,讓Java的語言功能很精煉,並增加了一些很有用的功能,如自動收集碎片。
Java去掉了以下幾個C和C++功能:
1.指針運算
2.結構
3.typedefs
4.#define
5.需要釋放內存
這將減少了平常出錯的50%。而且,Java很小,整個解釋器只需215K的RAM。
面象對象:Java實現了C++的基本面象對象技術並有一些增強,(為了語言簡單,刪除了一些功能)。Java處理數據方式和用對象介面處理對象數據方式一樣。
五. Java與Internet

我們知道,早先的 www 僅可以傳送文本和圖片,Java的出現實現了互動的頁面,是一次偉大的革命。
Java並不是為 Internet,WWW而設計的,它也可以用來編寫獨立的應用程序。Java 是一種面向對象語言。Java 語言類似於 C++ 語言,所以已熟練掌握 C++語言的編程人員,再學習 Java 語言就容易得多!Java 程序需要編譯。實際上有兩種 Java 程序:一種 Java 應用程序是一個完整的程序,如 Web 瀏覽器。一種 Java 小應用程序是運行於 Web 瀏覽器中的一個程序.
Java程序和它的瀏覽器HotJava,提供了可讓你的瀏覽器運行程序的方法。你能從你的瀏覽器里直接播放聲音。你還能播放頁面里的動畫。Java還能告訴你的瀏覽器怎樣處理新的類型文件。當我們能在2400 baud線上傳輸視頻圖象時,HotJava將能顯示這些視頻。
當今Internet的一大發展趨勢是電子商務,而Internet的安全問題是必須解決的問題,通常大的部門應設置防火牆,阻止非法侵入。
電子商務是當今的熱門話題,然而傳統的編程語言難以勝任電子商務系統,電子商務要求程序代碼具有基本的要求:安全、可靠、同時要求能 與運行於不同平台的機器的全世界客戶開展業務。Java以其強安全性、平台無關性、硬體結構無關性、語言簡潔同時面向對象,在網路編程語言中占據無可比擬的優勢,成為實現電子商務系統的首選語言。
Java程序被放置在Internet伺服器上,當用戶訪問伺服器時,Java程序被下載到本地的用戶機上,由瀏覽器解釋運行。
JSP(Java Server Pages)

在Sun正式發布JSP(Java Server Pages)之後,這種新的Web應用開發技術很快引起了人們的關注。JSP為創建高度動態的Web應用提供了一個獨特的開發環境。按照 Sun 的說法,JSP能夠適應市場上包括Apache WebServer 、IIS4.0在內的85%的伺服器產品。
JSP與ASP的簡單比較
JSP與Microsoft的ASP技術非常相似。兩者都提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執行程序代碼的能力。在ASP或JSP環境下,HTML代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的HTML頁面只依賴於Web伺服器,而ASP和JSP頁面需要附加的語言引擎分析和執行程序代碼。程序代碼的執行結果被重新嵌入到HTML代碼中,然後一起發送給瀏覽器。ASP和JSP都是面向Web伺服器的技術,客戶端瀏覽器不需要任何附加的軟體支持。
ASP的編程語言是VBScript之類的腳本語言,JSP使用的是Java,這是兩者最明顯的區別。
此外,ASP與JSP還有一個更為本質的區別:兩種語言引擎用完全不同的方式處理頁面中嵌入的程序代碼。在ASP下,VBScript代碼被ASP引擎解釋執行;在JSP下,代碼被編譯成Servlet並由Java虛擬機執行,這種編譯操作僅在對JSP頁面的第一次請求時發生。
運行環境
執行 JSP 代碼需要在伺服器上安裝 JSP 引擎。此處我們使用的是 Sun 的 JavaServer Web Development Kit ( JSWDK )。為便於學習,這個軟體包提供了大量可供修改的示例。安裝 JSWDK 之後,只需執行 startserver 命令即可啟動伺服器。在默認配置下伺服器在埠 8080 監聽,使用 http://localhost:8080 即可打開預設頁面。
在運行 JSP 示例頁面之前,請注意一下安裝 JSWDK 的目錄,特別是" work "子目錄下的內容。執行示例頁面時,可以在這里看到 JSP 頁面如何被轉換成 Java 源文件,然後又被編譯成 class 文件(即 Servlet )。 JSWDK 軟體包中的示例頁面分為兩類,它們或者是 JSP 文件,或者是包含一個表單的 HTML 文件,這些表單均由 JSP 代碼處理。與 ASP 一樣, JSP 中的 Java 代碼均在伺服器端執行。因此,在瀏覽器中使用"查看源文件"菜單是無法看到 JSP 源代碼的,只能看到結果 HTML 代碼。所有示例的源代碼均通過一個單獨的" examples "頁面提供。
Java Servlet是一種開發Web應用的理想構架。 JSP以Servlet技術為基礎,又在許多方面作了改進。JSP頁面看起來象普通HTML頁面,但它允許嵌入執行代碼,在這一點上,它和ASP技術非常相似。利用跨平台運行的JavaBean 組件,JSP為分離處理邏輯與顯示樣式提供了卓越的解決方案。JSP必將成為ASP技術的有力競爭者。
JSP技術的強勢

(1)一次編寫,到處運行。在這一點上Java比PHP更出色,除了系統之外,代碼不用做任何更改。
(2)系統的多平台支持。基本上可以在所有平台上的任意環境中開發,在任意環境中進行系統部署,在任意環境中擴展。相比ASP/PHP的局限性是顯而易見的。
(3)強大的可伸縮性。從只有一個小的Jar文件就可以運行Servlet/JSP,到由多台伺服器進行集群和負載均衡,到多台Application進行事務處理,消息處理,一台伺服器到無數台伺服器,Java顯示了一個巨大的生命力。
(4)多樣化和功能強大的開發工具支持。這一點與ASP很像,Java已經有了許多非常優秀的開發工具,而且許多可以免費得到,並且其中許多已經可以順利的運行於多種平台之下。
JSP技術的弱勢

(1) 與ASP一樣,Java的一些優勢正是它致命的問題所在。正是由於為了跨平台的功能,為了極度的伸縮能力,所以極大的增加了產品的復雜性。
(2) Java的運行速度是用class常駐內存來完成的,所以它在一些情況下所使用的內存比起用戶數量來說確實是「最低性能價格比」了。從另一方面,它還需要硬碟空間來儲存一系列的.java文件和.class文件,以及對應的版本文件。
JSP的技術方法

為了快速方便地進行動態網站的開發,JSP在以下幾個方面做了改進,使其成為快速建立跨平台的動態網站的首選方案。
1.將內容的生成和顯示進行分離
用JSP技術,Web頁面開發人員可以使用HTML或者XML標識來設計和格式化最終頁面,並使用JSP標識或者小腳本來生成頁面上的動態內容(內容是根據請求變化的,例如請求賬戶信息或者特定的一瓶酒的價格等)。生成內容的邏輯被封裝在標識和JavaBeans組件中,並且捆綁在腳本中,所有的腳本在伺服器端運行。由於核心邏輯被封裝在標識和JavaBeans中,所以Web管理人員和頁面設計者,能夠編輯和使用JSP頁面,而不影響內容的生成。
在伺服器端,JSP引擎解釋JSP標識和腳本,生成所請求的內容(例如,通過訪問JavaBeans組件,使用JDBC技術訪問資料庫或者包含文件),並且將結果以HTML(或者XML)頁面的形式發送回瀏覽器。這既有助於作者保護自己的代碼,又能保證任何基於HTML的Web瀏覽器的完全可用性。
2.可重用組件
絕大多數JSP頁面依賴於可重用的、跨平台的組件(JavaBeans或者Enterprise JavaBeans組件)來執行應用程序所要求的復雜的處理。開發人員能夠共享和交換執行普通操作的組件,或者使得這些組件為更多的使用者和客戶團體所使用。基於組件的方法加速了總體開發過程,並且使得各種組織在他們現有的技能和優化結果的開發努力中得到平衡。
3.採用標識
Web頁面開發人員不會都是熟悉腳本語言的編程人員。JSP技術封裝了許多功能,這些功能是在易用的、與JSP相關的XML標識中進行動態內容生成所需要的。標準的JSP標識能夠訪問和實例化JavaBeans組件,設置或者檢索組件屬性,下載Applet,以及執行用其他方法更難於編碼和耗時的功能。
4.適應平台
幾乎所有平台都支持Java,JSP+JavaBeans幾乎可以在所有平台下通行無阻。從一個平台移植到另外一個平台,JSP和JavaBeans甚至不用重新編譯,因為Java位元組碼都是標準的與平台無關的。
5.資料庫連接
Java中連接資料庫的技術是JDBC,Java程序通過JDBC驅動程序與資料庫相連,執行查詢、提取數據等操作。Sun公司還開發了JDBC-ODBC bridge,利用此技術Java程序可以訪問帶有ODBC驅動程序的資料庫,目前大多數資料庫系統都帶有ODBC驅動程序,所以Java程序能訪問諸如Oracle、Sybase、MS SQL Server和MS Access等資料庫。
此外,通過開發標識庫,JSP技術可以進一步擴展。第三方開發人員和其他人員可以為常用功能創建自己的標識庫。這使得Web頁面開發人員能夠使用熟悉的工具和如同標識一樣的執行特定功能的構件來進行工作。
JSP技術很容易整合到多種應用體系結構中,以利用現存的工具和技巧,並且能擴展到支持企業級的分布式應用中。作為採用Java技術家族的一部分,以及Java 2(企業版體系結構)的一個組成部分,JSP技術能夠支持高度復雜的基於Web的應用。 由於JSP頁面的內置腳本語言是基於Java的,而且所有的JSP頁面都被編譯成為Java Servlets,所以JSP頁面具有Java技術的所有好處,包括健壯的存儲管理和安全性。作為Java平台的一部分,JSP擁有Java編程語言「一次編寫,各處運行」的特點。
[編輯本段]JSP的應用模型

利用JSP技術,動態信息由JSP頁面來表現,JSP頁面由安裝在Web伺服器或者使用JSP的應用伺服器上的JSP引擎執行。JSP引擎接受客戶端對JSP頁面的請求,並且生成JSP頁面作為對客戶端的響應。
JSP頁面通常被編譯成為Java Servlets,這是一個標準的Java擴展。頁面開發人員能夠訪問全部的Java應用環境,以利用Java技術的擴展性和可移植性。當JSP頁面第一次被調用時,如果它還不存在,就會被編譯成為一個Java Servlets類,並且存儲在伺服器的內存中。這就使得在接下來的對該頁面的調用中,伺服器會有非常快的響應(這避免了CGI-BIN為每個HTTP請求生成一個新的進程的問題)。
JSP頁面可以包含在多種不同的應用體系結構或者模型中,可以用於由不同協議、組件和格式所組成的聯合體中。基於JSP的動態信息發布技術是一個開放的、可擴展的建立動態Web頁面的標准。不論採用什麼創建工具,開發人員都可以使用JSP頁面來創建可移植的Web應用,在不同的Web應用伺服器上運行。
[編輯本段]SQL語言 & Power Builder

對於一些傳統的數據開發人員來說,Foxpro系列也許讓他們感到更加熟悉。但是對於初學者來說,PowerBuilder也許是最好的資料庫開發工具。各種各樣的控制項,功能強大的PowerBuilder語言都會幫助你開發出自己的資料庫應用程序。
1.SQL語言簡介

SQL全稱是「結構化查詢語言(Structured Query Language)」,最早的是IBM的聖約瑟研究實驗室為其關系資料庫管理系統SYSTEM R開發的一種查詢語言,它的前身是SQUARE語言。SQL語言結構簡潔,功能強大,簡單易學,所以自從IBM公司1981年推出以來,SQL語言,得到了廣泛的應用。如今無論是像Oracle ,Sybase,Informix,SQL server這些大型的資料庫管理系統,還是像Visual Foxporo,PowerBuilder這些微機上常用的資料庫開發系統,都支持SQL語言作為查詢語言。
Structured Query Language包含4個部分:
數據查詢語言DQL-Data Query Language SELECT
數據操縱語言DML-Data Manipulation Language INSERT, UPDATE, DELETE
數據定義語言DDL-Data Definition Language CREATE, ALTER, DROP
數據控制語言DCL-Data Control Language COMMIT WORK, ROLLBACK WORK
SQL的歷史
在70年代初,E.E.Codd首先提出了關系模型。70年代中期,IBM公司在研製 SYSTEM R關系資料庫管理系統中研製了SQL語言,最早的SQL語言(叫SEQUEL2)是在1976 年 11 月的IBM Journal of R&D上公布的。
1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2 和SQL/DS資料庫系統中也實現了SQL。
1986年10月,美國ANSI採用SQL作為關系資料庫管理系統的標准語言(ANSI X3. 135-1986),後為國際標准化組織(ISO)採納為國際標准。
1989年,美國ANSI採納在ANSI X3.135-1989報告中定義的關系資料庫管理系統的SQL標准語言,稱為ANSI SQL 89, 該標准替代ANSI X3.135-1986版本。該標准為下列組織所採納:
● 國際標准化組織(ISO),為ISO 9075-1989報告「Database Language SQL With Integrity Enhancement」
● 美國聯邦政府,發布在The Federal Information Processing Standard Publication(FIPS PUB)127
目前,所有主要的關系資料庫管理系統支持某些形式的SQL語言, 大部分資料庫打算遵守ANSI SQL89標准。
SQL的優點
SQL廣泛地被採用正說明了它的優點。它使全部用戶,包括應用程序員、DBA管理員和終端用戶受益匪淺。
(1) 非過程化語言
SQL是一個非過程化的語言,因為它一次處理一個記錄,對數據提供自動導航。SQL允許用戶在高層的數據結構上工作,而不對單個記錄進行操作,可操作記錄集。所有SQL 語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結果作為另一條SQL語句的輸入。 SQL不要求用戶指定對數據的存放方法。 這種特性使用戶更易集中精力於要得到的結果。所有SQL語句使用查詢優化器,它是RDBMS的一部分,由它決定對指定數據存取的最快速度的手段。查詢優化器知道存在什麼索引,哪兒使用合適,而用戶從不需要知道表是否有索引,表有什麼類型的索引。
(2) 統一的語言
SQL可用於所有用戶的DB活動模型,包括系統管理員、資料庫管理員、 應用程序員、決策支持系統人員及許多其它類型的終端用戶。基本的SQL 命令只需很少時間就能學會,最高級的命令在幾天內便可掌握。 SQL為許多任務提供了命令,包括:
● 查詢數據
● 在表中插入、修改和刪除記錄
● 建立、修改和刪除數據對象
● 控制對數據和數據對象的存取
● 保證資料庫一致性和完整性
以前的資料庫管理系統為上述各類操作提供單獨的語言,而SQL 將全部任務統一在一種語言中。
(3) 是所有關系資料庫的公共語言
由於所有主要的關系資料庫管理系統都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS轉到另一個。所有用SQL編寫的程序都是可以移植的。
2.PowerBuilder簡介

PowerBuilder的產生
PowerBuilder是美國著名的資料庫應用開發工具生產廠商PowerSoft推出的成功產品,其第一版於1991年6月正式投入市場。它是完全按照客戶/伺服器體系結構研製設計的,採用面向對象技術,圖形化的應用開發環境,是資料庫的前端開發工具。
PowerBuilder的特點
它支持應用系統同時訪問多種資料庫,其中既包括Oracle,Sybase之類的大型資料庫,又包括FOXPRO之類支持ODBC介面的小型資料庫,PowerBuilder是完全可視化的資料庫開發工具,它提供了大量的控制項,大大加快了項目的開發速度,也使開發者更容易掌握資料庫的開發。
它使用的編程語言叫做工PowerScripr,它也是一種高級的,結構化的編程語言。PowerScript提供了一套完整的嵌入式SQL語句,開發人員可以像使用其它語句一樣自由地使用SQL語言,這樣就大大增強了程序操縱和訪問資料庫的能力。可以說PowerBuilder既適合初學者快速學習資料庫的開發,又可以讓有經驗的開發人員開發出功能強大的資料庫,是一種適用面非常廣的開發工具。
PowerBuilder是一個用來進行客戶/伺服器開發的完全的可視化開發環境。使用PowerBuilder,你可以用一種可視的直觀的方式來創建應用程序的用戶界面和資料庫介面。這是一個總的概念,實際上是開發人員使用PowerBuilder去開發應用程序,由於所開發的各種應用程序充分利用了圖形用戶介面(GUI)的優點,所以PowerBuilder被認為是一個圖形工具。
在客戶/伺服器結構的應用中,PowerBuilder具有描述多個資料庫連接與檢索的能力。特別是PowerBuilder能從大多數流行的RDBMS中存取數據,且不管數據存放在什麼地方;另外,各種應用程序又可以獨立於RDBMS,因為PowerBuilder可以使用資料庫的標准操作語言SQL(結構化查詢語言)進行。
使用PowerBuilder,可以很容易地開發出功能強大的圖形界面的訪問伺服器資料庫的應用程序,PowerBuilder提供了建立符合工業標準的應用程序(例如訂單登記、會計及製造系統)所需的所有工具。
PowerBuilder應用程序由窗口組成,這些窗口包含用戶與之交互的控制項。開發人員可以使用所有標准空間(如按鈕、復選框、下拉式列表框或編輯框)以及PowerBuilder提供的特殊的使應用程序更易於開發和使用的控制項。
通常人們把PowerBuilder看成是一種開發工具,實際上它比其他工具強得多,是一種強有力的開發環境。開發人員不僅能用它來開發用戶容易使用的各種應用程序還可以通過PowerBuilder修改資料庫,利用400多個內部定義函數,可以開發能和其他應用程序進行的各種應用程序。
PowerBuilder正在成為客戶/伺服器應用開發的標准。相對於其他任何客戶/伺服器開發環境,PowerBuilder使開發人員的工作更快、成本更低、質量更高、功能更強。
PowerBuilder為應用開發提供了全面綜合性的支持,可以分別概括為如下幾點:
事件驅動的應用程序
功能強大的編程語言與函數
面向對象的編程
跨平台開發
開放的資料庫連結系統
PowerBuilder開發環境
PowerBuilder開發環境由一系列集成的圖形畫板(Painter)組成,應用開發人員通過簡單的滑鼠操作即可設計、建立、交互檢驗和測試客戶/伺服器應用程序。

6. 計算機專用詞彙

計算機四級考試詞彙之一:

access 訪問、存取、通路、進入
adjacency list method 鄰接表表示法
adjacency matrix method 鄰接矩陣表示法
algorithm 演算法
array 數組
ATM(asynchronous transfer mode) 非同步傳輸模式
b.. real programs kernels 實程序 核心程序
b.. toy benchmark synthetic benchmark 簡單基準程序 復合基準程序
bandwidth 帶寬
benchmark 基準測試程序
best - fit algorithm 最佳適應演算法
BFS(breadth first search) 廣度優先搜索法
binary 二進制
binary relation 二元關系
binary tree 二叉樹
bit series 比特序列
black - box white - box 黑盒 白盒
block miss 塊失效
blocked 阻塞(等待狀態也稱阻塞或封鎖狀態)
boundary 界線 分界
bridge 網橋
bubble sort 冒泡排序
candidate key 候選鍵(輔鍵)
capacity 容量
cartesian proct 笛卡爾積
CASE(com.. aided sof.. engineering) 計算機輔助軟體工程
CCP(communication control processor) 通信控制處理機
cell 信元
characteristic 特徵 特性
circuit switching 線路交換
circular wait 循環等待
CISC(complex instruction set computer) 復雜指令集計算機
class 類
Client/Server 客戶機/伺服器
clock cycle/clock rate 時鍾周期/時鍾頻率
coaxial cable 同軸電纜
cohesion/coupling 內聚/耦合
coincidental logical proceral functional 偶然內聚 邏輯內聚 過程內聚 功能內聚
communication 通信
complement number 補碼
constrain 約束
contain 包含
correspond(corresponding) 相符合(相應的一致的)
CPETT 計算機性能評價工具與技術
CPI 每條指令需要的周期數
CSMA/CD 帶沖突檢測的載波監聽多路訪問
cursor 游標
cyclic rendancy check 循環冗餘檢驗
database: integrity consistency re story 完整性 一致性 可恢復性
database: security efficiency 資料庫設計的目標:安全性 效率
deadlock: mutual exclusion 死鎖條件:互斥
deadlock: circular wait no preemption 死鎖條件:循環等待 無優先權
decimal 十進位的
decision 決定 判斷
decomposition 雙重的 混合的
definition 定義
definition phase 定義階段
design phase 設計階段
DFS(depth first search) 深度優先搜索法
diagram 圖表
Difference Manchester 差分曼徹斯特
directed graph/undirected graph 有向圖/無向圖
distributed system 分布式系統
divide union intersection difference 除 並 交 差
document 文件 文檔
DQDB(distributed queue al bus) 分布隊列雙匯流排
al 二元的 雙的
dynamic design process 動態定義過程
element 元素 要素
elevator(scan) algorithm 電梯演算法(掃描演算法)
encapsulation inheritance 封裝(壓縮)繼承(遺傳)
entity 實體
entity integrity rule 實體完整性規則
equation 方程式 等式
Ethernet 乙太網
exchange sort 交換排序
exclusive locks 排它鎖(X鎖)
external(internal) fragmentation 外(內)碎片
fault page fault 中斷 過錯 頁中斷
FDDI(fiber distributed data interface) 光纖分布式數據介面
FDM(frequency division multiplexing) 頻分多路復用
fiber optic cable 光纜
FIFO replacement policy 先進先出替換演算法
figure 數字 圖形
first normal form 第一範式
floppy 活動碟片(軟盤)
foreign key domain tuple 外來鍵 值域 元組
formula 公式 表達式
frame page frame 幀 結構 頁結構
frequency 頻率
FTP 文件傳送服務
function 函數
functionally dependant 函數依賴
gateway 網間連接器
general - purpose registers 通用寄存器
generate 產生
grade 等級 標准
graph(graphic) 圖
Groper 將用戶的請求自動轉換成FTP
hash table/hash function/ collision 哈希表/哈希函數(散列函數)/碰撞
HDLC 面向比特型數據鏈路層協議
hit rate 命中率
host 主計算機
host language statement 主語言語句
hypertext 超級文本
index 索引
insertion sort 插入排序
instruction format 指令格式
instruction set 指令集
interface 介面 分界面 連接體
interrupt 中斷
IPC 工業過程式控制制
ISAM VSAM 索引順序存取方法 虛擬存儲存取方法
join/natural join/semi join 連接/自然連接/半連接
kernel executive supervisor user 核心 執行 管理 用戶
kernels 核心程序
key comparison 鍵(碼)值比較
LAN(local area network) 區域網
load 負載 載入
logical functional 邏輯內聚 功能內聚
longitudinal 水平的
maintenance phase 維護(保養)階段
MAN(metropolitan area network) 城域網
Manchester 曼徹斯特
map 地圖 映射圖
matrix 矩陣 點陣
memory reference 存儲器參量
message switching 報文交換
MFLOP(million floating point operate per second) 每秒百萬次浮點運算
MIPS(millions of instruction per second) 沒秒百萬條指令
mole 單位 基準
monitor(model benchmark physical) mothod 監視 (模型 基準 物理)法
multilevel data flow chart 多層數據流圖
multiple - term formula 多項式
multiplexing 多路復用技術
multiplication 乘法
mutual exclusion 互相 排斥
non - key attributes 非碼屬性
Nyquist 奈奎斯特
object oriented 對象 趨向的 使適應的
object oriented analysis 面向對象的分析
object oriented databases 面向對象資料庫
object oriented design 面向對象的設計
object oriented implementation 面向對象的實現
occurrence 事件
one - dimensional array 一維數組
OODB(object oriented data base) 面向對象資料庫
OOM(object oriented method) 面向對象的方法
oom: information object message class 信息 對象 消息 類
oom: instance method message passing 實例 方法消息傳遞
open system 開放系統
operand 操作數
overflow 溢出
overlapping register windows 重疊寄存器窗口
packet switching 報文分組交換
page fault 頁面失效
page replacement algorithm 頁替換演算法
paged segments 段頁式管理
PCB(process control block) 進程式控制制塊
peer entities 對等實體
period 時期 周期
phase 階段 局面 狀態
physical data link network layer 物理層 數據鏈路層 網路層
pipeline 管道
platter/track/cluster 面/磁軌/簇
predicate 謂語
preemption 有優先權的
prefix(Polish form) 前綴(波蘭表達式)
preorder/inorder/postorder 前序/中序/後序
presentation application layer 表示層 應用層
primary key attributes 主碼屬性
principle 原則 方法
proceral coincidental 過程內聚 偶然內聚
process 過程 加工 處理
program debugging 程序排錯
projection selection join 投影 選擇 連接
protocol 協議
prototype 原型 樣板
prototyping method(model) 原型化周期(模型)
pseudo - code 偽碼(程序設計語言PDL)
punctuation 標點
queue 隊列
ready/blocked/running 就緒/阻塞(等待)/運行
real page number 實頁數
real programs 實程序
redirected 重定向
rendancy 冗餘
reference integrity rule 引用完整性規則
register(registry) 寄存器 登記 注冊 掛號
relation 關系
relay 中繼
repeater 中繼器
replacement 替換
request indication response confirm 請求 指示 響應 確認
resource 資源
response 回答 響應
RISC(reced instruction set computer) 精簡指令集計算機
robustness 健壯性
router 路由器
scheme 計劃 圖表
sector head cylinder 扇區 磁頭 柱面
selection sort 選擇排序
semaphores 信號
sequence 序列 順序
Shanon 香農
share locks 共享鎖(S鎖)
short path critical path 最短路徑 關鍵路徑
signal 信號
signal - to - noise ratio 信噪比 B/N
similar 相似的
SISD SIMD MISD MIMD *指令流 *數據流
SMDS 交換多兆位數據服務
software development phase 軟體開發階段
software engineering 軟體工程
software portability 軟體可移植性
software requirements specification 軟體需求說明書
sort 種類 方式 分類 排序
spanning tree 跨越樹(生成樹)
speep 加速比
SSTF(shortest - seek - time - first) 最短尋道時間優先(磁碟調度演算法)
stack strategy non - stack strategy 堆棧型 非堆棧型
starvation 飢餓 匱乏
store proceres 存儲過程
subset 子集 子設備
superclass subclass abstract class 超類 子類 抽象類
synthetic benchmark 復合基準程序
system testing 系統測試
Systolic 脈動陣列
table 表 表格 桌子
TDM(time division multiplexing) 時分多路復用
terminal 終端
testing phase 測試階段
theta select/project/theta join θ選擇/投影/θ連接
time complexity 時間復雜度
timestamping 時標技術
Token Bus 令牌匯流排
Token Ring 令牌環
toy benchmark 簡單基準程序
transaction 事務 記錄
transmit 傳送
transport layer session layer 傳輸層 會話層
traversal method 遍歷方法
triggers/store proceres 觸發器/存儲過程(ORACLE系統)
unit system acceptance testing 單元測試 系統測試 確認測試
update 更新
value (數)值
variable 變數
vertice edge 頂點(節點)邊
virtual memory system 虛擬存儲系統
WAN(wide area network) 廣域網
waterfall model 瀑布模型
white noises 白雜訊
write - back( - back) 寫回法
write - through(store - through) 寫直達法

計算機四級考試詞彙之二:

access arm 磁頭臂,存取臂
access time 存取時間
adder 加法器
address 地址
alphanumeric 字母數字的
analog computer 模擬計算機
analyst 分析員
area 區域
array 數組,陣列
assembler 匯編程序
automation 自動化
band 區
batch processing 成批處理
binary code 二進制碼
binary digit 二進制位,二進制數字
bit 比特,二進制的一位
branch 分支,支線
brush 電刷
buffer storage 緩沖存儲器
calculator 計算器
call instruction 呼叫指令
card punch 卡片穿孔機
card reader 卡片閱讀機,讀卡機
cell 單元
channel 通道,信道
character 字元
check digit 校驗數位
circuit 電路,線路
to clear 清除,清零
clock 時鍾
code 代碼
to code 編碼
coder 編碼員,編碼器
command 指令,命令
compiler 編譯程序
computer language 計算機語言
console 控制台
control unit 控制部件,控制器
core storage, core store 磁心存儲器
counter 計數器
cybernetics 控制論
cycle 循環
data 數據
data processing 數據處理
debugging 調試
decision 制定
digit 數字,數位,位
digital computer 數字計算機
disc, disk 磁碟
display unit 顯示裝置
drum 磁鼓
to edit 編輯
electronics 電子學
emitter 發射器
to encode 編碼
to erase 擦除,清洗,抹除
feed 饋送,供給
to feed 饋送,供給
feedback 反饋
field 欄位,信息組,域
file 文件
floppy disk 軟磁碟
floppy disk drive 軟磁碟機
flow chart 流程圖
frame 幀
hardware 硬體
identifier 標識符
index 索引
information 信息
inline processing 內處理
input 輸入
inquiry 詢問
instruction 指令
integrated circuit 集成電路
to interpret 解釋
item 項目,項
jump 轉移
key 鍵,關鍵碼
keyboard 鍵盤
latency time 等待時間
library 庫,程序庫
linkage 連接
to load 裝入,寄存,寫入,載入
location 存儲單元
logger 登記器,記錄器
loop 循環
machine language 機器語言
magnetic storage 磁存儲器
magnetic tape 磁帶
matrix 矩陣
memory 存儲器
message 信息,報文
microcomputer 微型計算機
mole 組件,模塊
monitor 監視器,監督程序,管程
nanosecond 毫微秒
network 網路,網
numeric, numerical 數字的,數值的
octet 八位位組,八位位元組
operator 操作員
optical character reader 光符閱讀機
optical scanner 光掃描器
output 輸出
overflow 溢出,上溢
panel 平板
parameter 參數,參量
perforator 穿孔機
peripheral equipment 外圍設備,外部設備
personal computer 個人計算機
printed circuit 印製電路
printer 列印機
printout 列印輸出
to process 處理
processing unit 處理部件
program 程序
to program 程序編制
programmer 程序設計員
programming 程序設計,程序編制
pulse 脈沖
punch 穿孔
to punch 穿孔
punched card, punch card 穿孔卡片
punched tape, punch tape 穿孔紙帶
punch hole 孔,穿孔
random access 隨機存取
to read 讀
reader 閱讀程序
reading 閱讀
real time 實時
record, register 記錄
rendancy 冗餘
routine 例行程序
selector 選擇器,選擇符
sentinel 標記
sequence 序列,順序
sequential 順序的
serial 串列的.連續的
shift 移位,移數
signal 信號
simulation 模擬
simulator 模擬器,模擬程序
software 軟體,軟設備
sort 分類,排序
sorter 分類人員,分類機,分類程序,排序程序
storage 存儲器
to store 存儲
subroutine, subprogram 子程序
switch 開關
symbol 符號
symbolic language 符號語言
system 系統
tabulator 製表機
teleprinter 電傳打字機
terminal 終端
terminal unit 終端設備
timer 時鍾,精密計時器
time sharing 分時
timing 定時
track 磁軌
transcer 感測器,翻譯機
translator 翻譯程序,翻譯器
to update 更新
Winchester disk drive 溫徹斯特磁碟機,硬碟機
working storage 工作存儲器

7. PHP中4個加速,緩存擴展的區別和選用建議

1、eAccelerator
eAccelerator是一個自由開放源碼PHP加速器,優化和動態內容緩存,提高了PHP腳本的緩存性能,使得PHP腳本在編譯的狀態下,對伺服器的開銷幾乎完全消除。 它還有對腳本起優化作用,以加快其執行效率。使PHP程序代碼執效率能提高1-10倍。從文字上可以理解為:eAccelerator是PHP加速器擴展。
2、memcached
Memcached 是一個高性能的分布式內存對象緩存系統,用於動態Web應用以減輕資料庫負載。它通過在內存中緩存數據和對象來減少讀取資料庫的次數,從而提供動態、資料庫驅動網站的速度。從文字上可以理解為:內存緩存擴展,並且針對於集群伺服器使用較多,主要用於分布式緩存,算是資料庫緩存。
3、Alternative PHP Cache(APC緩存)
Alternative PHP Cache (APC緩存)是一種對PHP有效的開放源高速緩沖儲存器工具,他能夠緩存Opcode(目標文件)的PHP中間碼。 APC的緩存分兩部分:系統緩存和用戶數據緩存. 系統緩存 是自動使用的,是指APC把PHP文件源碼的編譯結果緩存起來,然後在再次調用時先對比時間標記。如果未過期,則使用緩存代碼運行。默認緩存 3600s(一小時).但是這樣仍會浪費大量CPU時間.因此可以在php.ini中設置system緩存為永不過期(apc.ttl=0).不過如果這樣設置,改運PHP代碼後需要restart一下您的web伺服器(比如apache…).目前對APC的性能測試一般指的是這一層cache;從文字上理到:Alternative PHP Cache(APC緩存)也算是一種內存緩存擴展,算是資料庫緩存擴展。
4、Xcache
是一個開源的opcode緩存器/優化器, 他能夠提高伺服器上的PHP性能,他通過把編譯PHP後的數據緩沖到共享內存從而避免重復的編譯過程, 能夠直接使用緩沖區已編譯的代碼從而提高速度. 通常能夠提高您的頁面生成速率2到5倍, 降低伺服器負載。 其實它與eAccelerator一樣是PHP加速器擴展。
以上就是他們的作用與區別,簡單一點就是:eAccelerator,xcache是PHP緩存擴展,memcached、APC緩存是資料庫緩存擴展,一般兩者只有要安裝其中一個即可,不要貪多。另外,實際測試中發現當Cache數量超過一定閥值的時候,APC的性能不如Memcache。所以在擴展的選擇上,本人一般會選擇xcache+memcached這個組合。

8. incredibuild為什麼只有一個cpu在編譯

IncrediBuild是一款分布式編程開發工具,能夠加速C/C++ 的編譯和創建。特別是在大型C/C++項目中,採用IncrediBuild的多線程處理技術,不必改變項目文件的代碼,在編譯過程中自動查找區域網中空閑的CPU,並將源文件發到空閑CPU一起編譯,加快項目90%的編譯速度。
IncrediBuild需要分別在服務端(Coordinator)和客戶端(Agent)進行安裝。
1、服務端(Coordinator)的安裝
運行IncrediBuild安裝程序,選擇Install IncrediBuild,點擊Next下一步,繼續下一步,在安裝組件選擇窗口(Component Selection)鉤選IncrediBuild Coordinator。安裝組件選擇窗口,還可以不選擇服務端參與編譯,把IncrediBuild Agent前的鉤點掉就可以了。

繼續下一步,選擇安裝路徑和使用的一些埠號。參與編譯的CPU數等。然後IncrediBuild的服務端就安裝好了。
2、客戶端(Agent)的安裝
在其它的電腦上,運行IncrediBuild的安裝程序,運行到安裝組件選擇(Component Selection),只鉤選IncrediBuild Agnet並下一步。

選擇安裝路徑,並下一步,填寫服務端的IP地址和埠號。

點擊下一步,會與伺服器進行驗證。然後設置一下編譯通訊的埠等,然後選擇參與編譯的CPU數,最後點擊安裝。
以上伺服器與客戶端都安裝完成。在CoordinatorMonitor中可以看到各成員的狀態。

打開VS在菜單欄上多出了一項IncrediBuild的選項。這樣就可以在「IncrediBuild」菜單下進行聯合編譯了。

編譯界面如下圖:

9. 詳細說明分布式OS與網路OS的區別

分布式軟體系統(Distributed Software Systems)是支持分布式處理的軟體系統,是在由通信網路互聯的多處理機體系結構上執行任務的系統。它包括分布式操作系統、分布式程序設計語言及其編譯(解釋)系統、分布式文件系統和分布式資料庫系統等。

分布式操作系統負責管理分布式處理系統資源和控制分布式程序運行。它和集中式操作系統的區別在於資源管理、進程通信和系統結構等方面。

分布式程序設計語言用於編寫運行於分布式計算機系統上的分布式程序。一個分布式程序由若干個可以獨立執行的程序模塊組成,它們分布於一個分布式處理系統的多台計算機上被同時執行。它與集中式的程序設計語言相比有三個特點:分布性、通信性和穩健性。

分布式文件系統具有執行遠程文件存取的能力,並以透明方式對分布在網路上的文件進行管理和存取。

分布式資料庫系統由分布於多個計算機結點上的若干個資料庫系統組成,它提供有效的存取手段來操縱這些結點上的子資料庫。分布式資料庫在使用上可視為一個完整的資料庫,而實際上它是分布在地理分散的各個結點上。當然,分布在各個結點上的子資料庫在邏輯上是相關的。

---------------

分布式資料庫系統是由若干個站集合而成。這些站又稱為節點,它們在通訊網路中聯接在一起,每個節點都是一個獨立的資料庫系統,它們都擁有各自的資料庫、中央處理機、終端,以及各自的局部資料庫管理系統。因此分布式資料庫系統可以看作是一系列集中式資料庫系統的聯合。它們在邏輯上屬於同一系統,但在物理結構上是分布式的。

分布式資料庫系統已經成為信息處理學科的重要領域,正在迅速發展之中,原因基於以下幾點:

1、它可以解決組織機構分散而數據需要相互聯系的問題。比如銀行系統,總行與各分行處於不同的城市或城市中的各個地區,在業務上它們需要處理各自的數據,也需要彼此之間的交換和處理,這就需要分布式的系統。

2、如果一個組織機構需要增加新的相對自主的組織單位來擴充機構,則分布式資料庫系統可以在對當前機構影響最小的情況下進行擴充。

3、均衡負載的需要。數據的分解採用使局部應用達到最大,這使得各處理機之間的相互干擾降到最低。負載在各處理機之間分擔,可以避免臨界瓶頸。

4、當現有機構中已存在幾個資料庫系統,而且實現全局應用的必要性增加時,就可以由這些資料庫自下而上構成分布式資料庫系統。

5、相等規模的分布式資料庫系統在出現故障的幾率上不會比集中式資料庫系統低,但由於其故障的影響僅限於局部數據應用,因此就整個系統來講它的可靠性是比較高的。

特點

1、在分布式資料庫系統里不強調集中控制概念,它具有一個以全局資料庫管理員為基礎的分層控制結構,但是每個局部資料庫管理員都具有高度的自主權。

2、在分布式資料庫系統中數據獨立性概念也同樣重要,然而增加了一個新的概念,就是分布式透明性。所謂分布式透明性就是在編寫程序時好象數據沒有被分布一樣,因此把數據進行轉移不會影響程序的正確性。但程序的執行速度會有所降低。

3、集中式資料庫系統不同,數據冗餘在分布式系統中被看作是所需要的特性,其原因在於:首先,如果在需要的節點復制數據,則可以提高局部的應用性。其次,當某節點發生故障時,可以操作其它節點上的復制數據,因此這可以增加系統的有效性。當然,在分布式系統中對最佳冗餘度的評價是很復雜的。

分布式系統的類型,大致可以歸為三類:

1、分布式數據,但只有一個總? 據庫,沒有局部資料庫。

2、分層式處理,每一層都有自己的資料庫。

3、充分分散的分布式網路,沒有中央控制部分,各節點之間的聯接方式又可以有多種,如鬆散的聯接,緊密的聯接,動態的聯接,廣播通知式聯接等。

---------------------

什麼是分布式智能?
NI LabVIEW 8的分布式智能結合了相關的技術和工具,解決了分布式系統開發會碰到的一些挑戰。更重要的是,NI LabVIEW 8的分布式智能提供的解決方案不僅令這些挑戰迎刃而解,且易於實施。LabVIEW 8的分布式智能具體包括:

可對分布式系統中的所有結點編程——包括主機和終端。尤為可貴的是,您可以利用LabVIEW圖形化編程方式,對大量不同類型的對象進行編程,如桌面處理器、實時系統、FPGA、PDA、嵌入式微處理器和DSP。
導航所有系統結點的查看系統——LabVIEW Project Explorer。您可使用Project Explorer查看、編輯、運行和調試運行於任何對象上的結點。
經簡化的數據共享編程界面——共享變數。使用共享變數,您可輕松地在系統間(甚至實時系統間)傳輸數據且不影響性能。無通信循環,無RT FIFO,無需低層次TCP函數。您可以利用簡單的對話完成共享變數的配置,從而將數據在各系統間傳輸或將數據連接到不同的數據源。您還可添加記錄、警報、事件等數據服務――一切僅需簡單的對話即可完成。
實現了遠程設備及系統內部或設備及系統之間的同步操作——定時和同步始終是定義高性能測量和控制系統的關鍵問題。利用基於NI技術的系統,探索設備內部並編寫其內部運行機制,從而取得比傳統儀器或PLC方式下更為靈活的解決方案。

--------------------

在分布式計算機操作系統支持下,互連的計算機可以互相協調工作,共同完成一項任務。

也可以這么解釋:
一種計算機硬體的配置方式和相應的功能配置方式。它是一種多處理器的計算機系統,各處理器通過互連網路構成統一的系統。系統採用分布式計算結構,即把原來系統內中央處理器處理的任務分散給相應的處理器,實現不同功能的各個處理器相互協調,共享系統的外設與軟體。這樣就加快了系統的處理速度,簡化了主機的邏輯結構vv

也不知道你說的是哪個系統,都給你拿出來看看吧

目前區域網中主要存在以下幾類網路操作系統:
1. Windows類
對於這類操作系統相信用過電腦的人都不會陌生,這是全球最大的軟體開發商--Microsoft(微軟)公司開發的。微軟公司的Windows系統不僅在個人操作系統中佔有絕對優勢,它在網路操作系統中也是具有非常強勁的力量。這類操作系統配置在整個區域網配置中是最常見的,但由於它對伺服器的硬體要求較高,且穩定性能不是很高,所以微軟的網路操作系統一般只是用在中低檔伺服器中,高端伺服器通常採用UNIX、LINUX或Solairs等非Windows操作系統。在區域網中,微軟的網路操作系統主要有:Windows NT 4.0 Serve、Windows 2000 Server/Advance Server,以及最新的Windows 2003 Server/ Advance Server等,工作站系統可以採用任一Windows或非Windows操作系統,包括個人操作系統,如Windows 9x/ME/XP等。
在整個Windows網路操作系統中最為成功的還是要算了Windows NT4.0這一套系統,它幾乎成為中、小型企業區域網的標准操作系統,一則是它繼承了Windows家族統一的界面,使用戶學習、使用起來更加容易。再則它的功能也的確比較強大,基本上能滿足所有中、小型企業的各項網路求。雖然相比Windows 2000/2003 Server系統來說在功能上要遜色許多,但它對伺服器的硬體配置要求要低許多,可以更大程度上滿足許多中、小企業的PC伺服器配置需求。

2. NetWare類
NetWare操作系統雖然遠不如早幾年那麼風光,在區域網中早已失去了當年雄霸一方的氣勢,但是NetWare操作系統仍以對網路硬體的要求較低(工作站只要是286機就可以了)而受到一些設備比較落後的中、小型企業,特別是學校的青睞。人們一時還忘不了它在無盤工作站組建方面的優勢,還忘不了它那毫無過份需求的大度。且因為它兼容DOS命令,其應用環境與DOS相似,經過長時間的發展,具有相當豐富的應用軟體支持,技術完善、可靠。目前常用的版本有3.11、3.12和4.10 、V4.11,V5.0等中英文版本,NetWare伺服器對無盤站和游戲的支持較好,常用於教學網和游戲廳。目前這種操作系統有市場佔有率呈下降趨勢,這部分的市場主要被Windows NT/2000和Linux系統瓜分了。

3. Unix系統
目前常用的UNIX系統版本主要有:Unix SUR4.0、HP-UX 11.0,SUN的Solaris8.0等。支持網路文件系統服務,提供數據等應用,功能強大,由AT&T和SCO公司推出。這種網路操作系統穩定和安全性能非常好,但由於它多數是以命令方式來進行操作的,不容易掌握,特別是初級用戶。正因如此,小型區域網基本不使用Unix作為網路操作系統,UNIX一般用於大型的網站或大型的企、事業區域網中。UNIX網路操作系統歷史悠久,其良好的網路管理功能已為廣大網路 用戶所接受,擁有豐富的應用軟體的支持。目前UNIX網路操作系統的版本 有:AT&T和SCO的UNIXSVR3.2、SVR4.0和SVR4.2等。UNIX本是針對小型機 主機環境開發的操作系統,是一種集中式分時多用戶體系結構。因其體系 結構不夠合理,UNIX的市場佔有率呈下降趨勢。

4. Linux
這是一種新型的網路操作系統,它的最大的特點就是源代碼開放,可以免費得到許多應用程序。目前也有中文版本的Linux,如REDHAT(紅帽子),紅旗Linux等。在國內得到了用戶充分的肯定,主要體現在它的安全性和穩定性方面,它與Unix有許多類似之處。但目前這類操作系統目前使仍主要應用於中、高檔伺服器中。

總的來說,對特定計算環境的支持使得每一個操作系統都有適合於自己的工作場合,這就是系統對特定計算環境的支持。例如,Windows 2000 Professional適用於桌面計算機,Linux目前較適用於小型的網路,而Windows 2000 Server和UNIX則適用於大型伺服器應用程序。因此,對於不同的網路應用,需要我們有目的有選擇合適地網路操作系統。

10. 分布式系統範式是什麼如何系統學習分布式計算

復旦大學計算機專業全國排第6左右,所以要靠它的研究生是有難度的 計算機專業方向及其代碼 081201計算機系統結構 01計算機網路與分布式系統 02嵌入式系統及應用 03分布式系統的監測與性能分析 04並行處理 081202計算機軟體與理論 01資料庫與知識庫 02軟體工程 03Web數據處理 04計算機支持的協同工作 05計算機生物信息處理 06數據挖掘與數據倉庫 07電子商務 08網路協議與分布式軟體 09密碼與信息安全 10演算法與程序理論 11人工智慧與認知科學 12信息安全與信息編碼 13量子信息與計算 14服務計算 081203計算機應用技術 01大規模中文文本處理 02多媒體信息處理與檢索 03計算機圖形圖像處理 04網路與信息工程 05計算機控制與智能系統 06模式識別與人工智慧 07信息安全、網路安全 08寬頻網路應用技術 初試科目: ①101政治理論②201英語③301數學一④879數據結構與操作系統 復試的筆試要考很多科目. 1. 離散數學 2. 計算機原理 3. 概率論與數理統計 4. 軟體工程 5. 計算機體系結構 6. 資料庫引論 7. 編譯 8. 數據通信與計算機網路 9. 演算法設計與分析 10. 計算機圖形學 08年起,初試計算機專業課實行全國統考。 復試這10門都要考的, 08年復旦計算機復試筆試回憶題 面試很怪異今年,牛人什麼時候都不怕。普通平民還是以專業知識為出發點吧,下面給出8門課的復習思路。 1.離散。離散我的復習思路是代數系統,正規子群的證明,圖論,歐拉和哈密頓圖,範式 ,推導。這都是大概的章節名稱,要求掌握的,結果考了正規子群,命中。 2.原理。定址,數的計算,補碼,反碼,移碼,原碼,還有就是浮點數的乘法。在這些課 的復習中肯定會有加速比的概念,看一遍就非常明白了。我沒學過原理,就復習了這些, 這是在賭博,結果算是命中了。 3.概率。不解釋,考研怎麼復習這個就怎麼復習。 4.軟工。大方向著手,譬如瀑布模型,重點在測試,白盒,黑盒,還有耦合和內聚,今年 考耦合,明年考內聚。Yes!命中。 5.體系結構。我只看了cpi的計算方法,還有mips的計算方法,流水線的東西,以及流水線 的三個相關。別的東西都是操作系統上的,考好了初試這個就沒問題。命中一半。不算命 中。 6.資料庫。Sql語言,關系演算,模式內模式外模式,2個映像,2個獨立性,還有就是無損 連接,這個最好網路一下,網上有關於怎麼證明是無損連接的。命中一半。 7.網路。香農奈奎斯特公式,還有就是數通方面的計算利用率的,不只是停等,滑動窗口 的利用率也要會算,7層協議,TCP IP了解,掌握IP地址的概念,還有就是區域網的組建, 這個都是本科學過的東西,很多專業都學過,相信大家都不會陌生,總之,命中。 8.演算法。NP方面的各種問題。我就看這么多。動態規劃一點沒看,因此未命中。 總結下來大概就50分命中的,對於我這個10門科有7門沒有學過的人來說,相當相當牛了

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:647
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:939
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:634
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:823
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:734
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1069
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:302
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:163
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:855
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:765