導航:首頁 > 源碼編譯 > 編譯工作站

編譯工作站

發布時間:2022-02-01 00:44:32

A. Red Hat下怎麼安裝gcc編譯

選工作站模式會自動安裝gcc編譯器。

B. 單位預購CAD/CAE/CAM高端工作站配置工作站。望高手給出詳細配置方案!

一.中小規模CAE前後處理求解的工作站配置

求解規模:100萬~1000萬自由度(300萬節點以內)

工作站配置要求:

CPUCorei7920/940/965/975

內存6~12GBDDR3800

顯卡QuadroFX580/QuadroFX1700

硬碟SATA300G以上7200轉或1萬轉,可選RAID0、5

操作系統WindowsXP64位SP2中文版

XASUN四核靜音級圖形工作站

型號XASUNMi713012-T2AA

配置明細

主要配置 4核Corei73.06/12GB/Qadro600/1TBSATA

工作站硬體性能指標

CPU 運算速度每秒490億次

GPU 幾何三角形處理:2.1億/秒,96個流處理器

磁碟陣列 IO讀寫帶寬100MB/S,IOPS200次/秒

網路埠 1Gbps

硬體配置明細

配件 品牌和型號 數量

CPU 四核Corei7950 1

3.06G/8MB/6.4GTs/超線程/Turbo

晶元組 intelX58Chips 1

內存 2GDDR31333 6

顯卡 NvidiaQuadro6001GB 1

系統盤 1TBSATA企業級7200轉 2

光碟機 DVD刻錄機 1

網卡 千兆以太埠 1

工作站平台 XASUNAGEN2SG02P7V,700WEPS

噪音控制系統 靜音級(全速計算在45分貝以內)

升級能力

顯卡 支持NvidiaQuadro全系列專業圖卡

內存槽 6個,單根內存最大12GB,最大容量12GB

硬碟位 2個,單塊最大SATA:2TB

PCI擴展 1*PCIEx8,1*PCIEx4,1*PCI

操作系統

支持WindowsServer2003、2008

支持WindowsXP、Vista、7

應用軟體

基於windows環境下高性能計算應用軟體全系列

報價 ¥12,900元

二.CAE中大規模前後處理的工作站配置

求解規模:大約2000萬自由度(600萬節點以內)

工作站配置要求:

CPU雙路12核XeonX5650X5660X5670

內存24GBDDR3-1333EccReg

顯卡QuadroFX1800/QuadroFX3800

硬碟SAS300G15000轉,可選RAID0、5

SATA32MB500G7200轉,可選RAID0、10

操作系統WindowsXP64位SP2中文版

XASUN12核靜音級工作站

型號XASUNT522724-T2AB

配置明細

主要配置

12核Xeon2.66/24GB/Qadro2000/450GSAS+1TB*2SATA

工作站硬體性能指標

CPU 運算速度每秒1277億次

GPU 幾何三角形處理:4.1億/秒192流處理器

磁碟陳列 RAID5下,IO讀寫帶寬200MB/S,IOPS200次/秒

網路埠 通過匯聚功能,實現20Gbps

硬體配置明細

配件 品牌和型號 數量

CPU 六核XeonX5650 2

2.66G/12MB/6.4GTs/超線程/Turbo

晶元組 intelS5520Chips

內存 4GDDR31333RegECC 6

顯卡 NvidiaQuadro20001GB 1

系統盤 450G6GbpsSAS 1

超級硬碟系統 1TBSATA企業級 2

RAID0

光碟機 DVD刻錄機 1

網卡 千兆以太埠 2

工作站平台 XASUNSD6C105PAS,1000WEPS

噪音控制系統 靜音級(全速計算45分貝以內)

硬體升級能力

顯卡 支持NvidiaQuadro全系列專業圖卡

內存槽 12個,單根內存最大16GB,最大容量192GB

硬碟位 4個,單塊最大SAS:1TB、SATA:2TB

PCI擴展 1*PCIEx8,2*PCIEx4,3*PCI-X

操作系統

支持WindowsServer2003、2008

支持WindowsXP、Vista、7

支持Redhat、Suselinux全系列

應用軟體

基於windows、linux環境下軟體全系列

報價 ¥39,999元

三.CAE超大規模前後處理的工作站配置

求解規模:4000~1億自由度(1000萬節點以內)

工作站配置要求:

CPU雙路12核XeonX5680

內存48G~96GDDR3-1333EccReg

顯卡QuadroFX4800/QuadroFX5800

硬碟SAS450G15000轉,可選RAID0、5、10

陣列卡硬SAS高速陣列卡

操作系統WindowsXP64位SP2中文版

XASUN頂級12核超靜音圖形工作站

型號XASUNEX523396-A64RD

配置明細

主要配置 12核Xeon3.33/96GB/Qadro5000/高速陣列

工作站硬體性能指標

CPU 運算速度每秒1598億次

GPU 幾何三角形處理:9.5億/秒,352流處理器

磁碟陣列 RAID5下,IO讀寫帶寬300MB/S,IOPS400次/秒

網路埠 通過匯聚功能,實現2Gbps

硬體配置明細

配件 品牌和型號 數量

CPU 六核XeonX5680 2

3.33G/12MB/6.4GTs/超線程/Turbo

晶元組 intelS5520Chips

內存 8GDDR31333RegECC 12

顯卡 NvidiaQuadro50002.5GB 1

系統盤 450G6GbpsSAS 1

超級硬碟系統 450G6GbpsSAS 5

8口SAS2-RAID 1

光碟機 DVD刻錄機 1

網卡 千兆以太埠 2

工作站平台 XASUNSA6C107PBV,1200WEPS

噪音控制系統 靜音級(全速計算45分貝以內)

硬體升級能力

顯卡 支持NvidiaQuadro全系列專業圖卡

內存槽 12個,單根內存最大16GB,最大容量192GB

硬碟位 8個熱插拔,單塊最大SAS:1TB、SATA:2TB

PCI擴展 1*PCIEx8,2*PCIEx4,3*PCI-X

操作系統

支持WindowsServer2003、2008

支持WindowsXP、Vista、7

支持Redhat、SuseLinux全系列

應用軟體

基於windows、linux環境下應用軟體全系列

報價 ¥115,000元

四.CAE超大規模前後處理---桌面靜音集群配置

求解規模:1億自由度以上

方案1:

類別 配置 數量 單位

集群硬體

主計算節點 19"標准,4U機架式 1 台

◇2顆6核XeonX56502.66GHz,12ML3,QPI6.4GTs

◇48GBDDR3-1333RECC

◇系統盤1塊450G6GbpsSAS硬碟

◇陣列盤2塊450G6GbpsSAS硬碟

◇雙1000M乙太網介面

◇1000WEPS電源

從計算節點 19"標准,4U機架式 3 台

◇2顆6核XeonX56502.66GHz,12ML3,QPI6.4GTs

◇24GBDDR3-1333RECC

◇系統盤1塊300G6GpsSAS硬碟

◇雙1000M乙太網介面

◇1000WEPS電源

管理節點 19"標准,4U機架式 1 台

◇2顆四核XeonE56202.4GHz,12ML3,QPI5.86GTs

◇24GBDDR3-1333RECC

◇系統盤1塊450G6GpsSAS硬碟

◇數據盤2塊1000GSATA企業級

◇雙1000M乙太網介面

◇1000WEPS電源

交換機 16口千兆交換 1 台

KVM系統 8口KVM切換器 1 套

機櫃 19"標准,含網路布線系統、散熱系統、供電系統、導軌、托架,22U 1 套

穩壓源 凈化穩壓電源5KVA 1 台

操作系統與軟體部分

操作系統 WinHPCServer2008或Linux 5 套

並行環境 OpenMPI(支持Infiniband和乙太網MPI環境); 1 套

編譯器 INTEL/PGI編譯器支持C和Fortran; 1 套

資料庫 MPICH/Lam-MPI(支持千兆乙太網的MPI環境); 1 套

應用軟體 可選

總計 ¥198,000.00

備注 集群浮點運算速度:3400億次/秒

方案2

類別 配置 數量 單位

集群硬體

主計算節點 19"標准,4U機架式 1 台

◇2顆6核XeonX56803.33GHz,12ML3,QPI6.4GTs

◇48GBDDR3-1333RECC

◇系統盤1塊450G6GbpsSAS硬碟

◇陣列盤4塊450G6GbpsSAS硬碟

◇陣列卡1塊支持6GpsSAS硬碟,4內+4外介面

◇雙1000M乙太網介面

◇20GbpsINFINIBAND網卡

◇1000WEPS電源

從計算節點 19"標准,4U機架式 3 台

◇2顆6核XeonX56803.33GHz,12ML3,QPI6.4GTs

◇48GBDDR3-1333RECC

◇系統盤1塊300G6GpsSAS硬碟

◇雙1000M乙太網介面

◇20GbINFINIBAND網卡

◇1000WEPS電源

管理節點 19"標准,4U機架式 1 台

◇2顆四核XeonE55202.26GHz,8ML3,QPI5.86GTs

◇24GBDDR3-1333RECC

◇系統盤1塊300G6GpsSAS硬碟

◇數據盤2塊1000GSATA企業級

◇雙1000M乙太網介面

◇20GbINFINIBAND網卡

◇1000WEPS電源

交換機 8-port4XDDRw/20Gb/s 1 台

MellanoxMCC4L30-003,3米長CX4介面銅纜

16口千兆交換 1 台

KVM系統 16口KVM切換器 1 套

機櫃 19"標准,含網路布線系統、散熱系統、供電系統、導軌、托架,22U 1 套

穩壓源 凈化穩壓電源5KVA 1 台

操作系統與軟體

操作系統 WinHPCServer2008或Linux 5 套

並行環境 OpenMPI(支持Infiniband和乙太網MPI環境); 1 套

編譯器 INTEL/PGI編譯器支持C和Fortran; 1 套

資料庫 MPICH/Lam-MPI(支持千兆乙太網的MPI環境); 1 套

應用軟體 可選

總計 ¥338,000.00

備注 集群浮點運算速度:4096億次/秒

XASUN靜音集群系統特點

硬體配備更高端,單節點速度最強

全球第一款採用12核Xeon5680高端處理器的集群

較之傳統集群普遍使用L5520,浮點計算速度提升142%和147%%以上

48核Xeon3.33G全部參加計算,浮點處理速度:639.36Gflops,即6394億次/秒

全球第一家採用SASII介面硬碟,大幅提升IO讀寫帶寬

較之傳統SAS3Gbps硬碟讀寫帶寬提升80%以上

SASII硬碟直接讀寫帶寬200MB/S,叫上一代SAS提升80%以上

獨有的超靜音技術和迷你架構,高性能真正進入辦公環境

無論是白天還是黑夜,高速計算集群,與非常安靜環境,完美融合在一起

面向辦公環境,費用更低,維護更少

無需專門計算中心,無需專業的維護人員

使用簡單,操作方便,開機就可計算

集群速度優異,成本更低廉

惠及更多辦公環境計算需求

C. 如何解決linux下編譯環境,運行環境不同的問題

基於Linux操作系統的應用開發環境一般是由目標系統硬體(開發板)和宿主PC機所構成。目標硬體開發板用於運行操作系統和系統應用軟體,而目標板所用到的操作系統的內核編譯、應用程序的開發和調試則需要通過宿主PC機來完成(所以稱為交叉編譯)。雙方之間一般通過串口,並口或乙太網介面建立連接關系。
但在此我建議構建如下的交叉編譯環境,適合個人或研發小組使用:單獨拿出一台PC機(PII以上即可,就用以前淘汰的舊機器就可以),在該PC上安裝桌面的Linux操作系統(如Red Hat Linux 8.0及以上),可以採用默認的安裝選項(注意要包含FTP服務),這台PC作為Linux伺服器,除管理員以外,一般不直接讓其他人去操作。
將該Linux伺服器接入區域網,並新建一些合法用戶,以便其他的PC機(在此我們將其稱為工作站)的合法用戶能訪問到Linux伺服器。而其他的PC機(工作站)仍然使用Windows操作系統,原來幹啥繼續幹啥。
需要的軟體工具包括:
1、FTP客戶端程序(如Cuteftp,可到網上下載)。
2、Telnet工具(如SecureCRT,可到網上下載)。
3、移植到某一特定ARM平台的Linux操作系統內核源碼(一般由銷售商整理提供)。
4、GNU編譯工具,可由相關網站下載,或由銷售商整理提供。
在工作站安裝:
在某工作站PC上安裝FTP客戶端程序和Telnet工具,安裝完畢後應該可以在該工作站PC和Linux伺服器之間進行文件的傳輸,並在工作站PC可以通過Telnet登陸到Linux伺服器(可能需要將Linux伺服器的防火牆服務關閉才能完成)。
在Linux伺服器安裝:
將工作站PC上的Linux操作系統內核源碼壓縮包和GNU編譯工具通過FTP傳送到Linux伺服器的某個目錄(如合法的用戶目錄),然後在該目錄下解壓,並將GNU編譯工具安裝到默認的工作目錄即可,以上工作通過在工作站PC使用Telnet工具完成,而不需要在Linux伺服器上進行。
Linux操作系統內核的編譯:
Linux操作系統內核的編譯一般有一個比較固定的步驟,會根據MakeFile文件的不同而略有差異,可參考相關文檔,編譯的工作在工作站PC使用Telnet工具完成。

D. 工作站的功能

由計算機和相應的外部設備以及成套的應用軟體包所組成的信息處理系統。它能夠完成用戶交給的特定任務,是推動計算機普及應用的有效方式。工作站應具備強大的數據處理能力,有直觀的便於人機交換信息的用戶介面,可以與計算機網路相連,在更大的范圍內互通信息,共享資源。工作站在編程、計算、文件書寫、存檔、通信等各方面給專業工作者以綜合的幫助。常見的工作站有計算機輔助設計 (CAD)工作站(或稱工程工作站),辦公自動化(OA)工作站,圖像處理工作站等。不同任務的工作站有不同的硬體和軟體配置。
例如,一個小型CAD工作站的典型硬體配置為:普通計算機,帶有功能鍵的CRT終端,光筆,平面繪圖儀,數字化儀,列印機等。軟體配置為:操作系統,編譯程序,相應的資料庫和資料庫管理系統,二維和三維的繪圖軟體,以及成套的計算、分析軟體包。它可以完成用戶提交的各種機械的、電氣的設計任務。
OA工作站的主要硬體配置為:普通計算機,辦公用終端設備(如電傳打字機、互動式終端、傳真機、激光列印機、智能復印機等),通信設施(如局部區域網)、程式控制交換機、公用數據網、綜合業務數字網等)。軟體配置為:操作系統,編譯程序,各種服務程序,通信軟體,資料庫管理系統,電子郵件,文字處理軟體,表格處理軟體,各種編輯軟體以及專門業務活動的軟體包,如人事管理、財務管理、行政事務管理等軟體,並配備相應的資料庫。OA工作站的任務是完成各種辦公信息的處理。
圖像處理工作站的主要硬體配置為:頂級計算機,一般還包括超強性能的顯卡(由於CUDA並行編程的發展所致);圖像數字化設備(包括電子的、光學的或機電的掃描設備,數字化儀),圖像輸出設備,互動式圖像終端。軟體配置除了一般的系統軟體外還要有成套的圖像處理軟體包。它可以完成用戶提出的各種圖像處理任務。越來越多的計算機廠家在生產和銷售各種工作站。

E. 什麼樣的工作站配置適合Android系統級編譯

ips 每秒鍾虛擬的指令數.該值為Bochs在您的機器能夠虛擬的IPS的值.你可以使用—enable -show-ips選項編譯bochs來找到您的工作站的性能.該IPS將會被存儲到日誌文件或者顯示在狀態欄中(如果支持GUI). IPS用於校準Bochs模擬過程中的許多與時間有關的事件.比如,改變IPS會影響到VGA更新的頻率,當按住一個鍵時自動重復的時間,BogoMips以及其他benchmarks的結果.下表列出了各種機器常規的IPS設定. 我下載的bochsrc.txt默認是ips=6000000 你准備要運行什麼系統。

F. 編譯安卓源碼,需要工作站級別的電腦嗎比如至強e5平台12核24線程或雙路24核48線程。

編譯又不是渲染,又不吃配置。這么高端的電腦有毛用。

G. 主要用於分子模擬計算,該怎麼選購工作站

技術過硬可以買部件自己裝,自己裝唯一的好處就是省錢,但是像保修這些就不好整了。雖然各部件都是有保修的,但是要搞清楚哪個部件損壞還是挺麻煩的。懂的話自己裝也無妨,要是我買會傾向於自己折騰。既然您提問了,應該是不大了解這方面。如此,直接買整機吧。
如果買整機,在預算多的情況下,可以買大品牌,大牌子的優勢就是售後方便。大品牌機子一般會比我們自己組裝的貴2~3倍吧。其實,大品牌的機器也是組裝起來的,只是多了些測試環節。
如果預算緊張的話,要考慮性價比的話,可以去網路搜或者上某寶買些其他牌子吧,這更劃算,只是記得要選正規的,這個自己判斷。無論是大牌子還是小牌子,機器內部的部件都是一樣的、沒有任何差別,畢竟能製造機器內部部件,如處理器、顯卡這些,全球也就幾家。所以,只要確保機器內部部件是全新的就沒問題了。
具體一些的話就是,做計算的,大家多用的Intel的處理器吧,我們老師兩台都是Intel的。AMD的沒怎麼了解過。詳細參數,如處理器架構、核心數、頻率,還有內存、硬碟等相關參數,網上一搜一大把,反正就是規格越高性能越好,同時價格也高。但是,需要記住的是,電子產品幾乎都如此,就是處於中端的產品一般性價比是較高的。反正就是自己詳細斟酌。
還有,就跑分子動力學來說,其實最重要的是要有顯卡(計算卡)加速。跑分子動力學,一塊不錯的顯卡(計算卡)的計算速度可以是十多核心CPU的幾十倍。比如在Amber18下,使用Tesla V100 加速卡,對於20000萬原子左右的體系,在NVE下能做到每天900納秒的水平。但是,一張專業的計算卡通常要好幾萬,市面上有些牌子會用消費級顯卡來加速分子模擬,而其速度也能達到十多核心CPU的十倍以上,所以這是可以考慮的。大多分子模擬軟體都支持GPU加速,比如Amber,Gromacs等,只是需要額外編譯軟體的GPU加速版本。如果計算任務多是分子模擬的話,CPU方面可以不用下太多成本,十多核心差不多,預算多也可以往上加。如果涉及的量化計算比較多就要考慮提高CPU的配置了。還有,就是我們老師最新那台就是網上買的,具體什麼牌子就不說了,除了整機還帶計算環境的安裝,感覺還可以,也是刷新了我的認知,沒想到還有專門提供這方面服務的。

H. 如何組建一個無盤工作站,具體步驟

無盤工作站構架指南2(5-10)

5、486運行Win2000?無盤工作站

你想用486機運行Win2000嗎?你想不買終端卡組建無盤Win2000網路嗎?好了,請跟我來吧。根據本人長期的組網實踐經驗,總結出一套完整的無盤Win2000方案,給大家分享!

首先說說大致工作原理:

主要先通過Win2000遠程無盤引導Win32工作站,再利用Win2000終端服務和終端連網軟體從無盤win32中登陸到終端伺服器上。

請看以下具體步驟:

一、硬體配置:

1.伺服器:建議CPU PIII500 以上、256M內存,硬碟15G以上(經濟允許的話最好用SCSI)因為伺服器是整個網路核心的核心,所以配置一定要好。

2.工作站:低配置的486,586即可。筆者這里是奔騰75,8M內存,無硬碟。

二、安裝步驟:

1.首先把伺服器裝好Win2000 Server,並配置好所有硬體。

2.為window2000安裝終端服務。

打開控制面版---添加/刪除程序---添加/刪除Windows組件--選中Windows終端服務確定。安裝時要放入Win2000光碟.

3.在伺服器上安裝MetaFrame。Metaframe是citrix公司在Win2000下的終端伺服器他比Win2000的終端服務更加強大,提供多種客戶終端接入服務。

4.安裝好Metafrmae後,開始製作終端客戶安裝軟盤.

開始---程序---Metaframe tools---Ica client creator----Ica Client For win3x

5.為Win2000添加遠程啟動服務。由於Win2000已經不在支持遠程啟動服務。因此,我們考慮將NT4的遠程啟動服務移植到Win2000中。可到凌心之 家(www.lingxin-home.com)或我的主頁(networld2001.8u8.com)去下載遠程服務安裝工具。

6.在Win2000下依次配一台Dos、win32無盤站.方法與nt下一模一樣,別告訴我你不會配置.不會的,以下就不用看了。

7.以無盤win32啟動工作站,把第4步製作的終端客戶盤安裝在無盤站上。

8.配置客戶端。雙擊citrix圖標,建立一個新連接,這里注意:要填好主機名(伺服器名稱),協議選擇Netbios,的其它全部用他的默認就可以了。

9.建立連接完成後,雙擊剛才建立的連接,就出現夢寐以求的Win2000桌面了。你可以運行任何在伺服器的軟體了!

6、安裝Linux無盤工作站

[文章導讀]

其實Linux 對遠程引導的支持非常好,Linnx內核自身又支持網路文件系統,因此非常適合做無盤工作站,本文將以一個實例向大家詳細介紹無盤Linux工作站的安裝辦法。

[正文]

當年Novell下的無盤DOS工作站很是流行,後來又流行過Win95無盤工作站,只是由於問題多多,後來微軟自己停止了對無盤Windows的支持。隨著Linux的日益流行,使用Linux的人越來越多,其實Linux 對遠程引導的支持非常好,Linnx內核自身又支持網路文件系統,因此非常適合做無盤工作站,本文將以一個實例向大家詳細介紹無盤Linux工作站的安裝辦法。

這個網路是一個小的區域網,有1台伺服器和4台 Linux 無盤工作站,彼此之間用雙絞線通過HUB連接,伺服器的IP地址定為192.168.0.80 ,名字是server ,5台無盤工作站的地址由伺服器動態分配,地址范圍從 192.168.0.1 到192.168.0.4 ,名字分別是c1,c2, c3,c4,伺服器和無盤工作站使用的都是NE2000 兼容網卡,無盤工作站使用的網卡上都安 裝了BOOTROM 啟動晶元,伺服器操作系統安裝的是 RedHat Linux 6.0 ,安裝時選用定製安裝,並安裝了全部軟體。

Linux的遠程引導有兩種方式,一是利用Bootp協議,有一個專門的項目EtherBoot 提供支持(http://www.slug.org.au/etherboot/),這種方式引導 Linux 的速度是最快的,但這種方式有一個最大的問題,就是在市場上找不到支持這種遠程引導協議的 BOOTROM 啟動 晶元(除非自己刻錄),因為市場上幾乎所有的 BOOTROM 啟動晶元都是遵循NOVELL遠程引導 協議的,於是有人提出另外一種方式,就是伺服器端用 NetWare 伺服器,客戶端就可以用現 有的BOOTROM 啟動晶元了,說到這里大家一定胡塗了,作Linux無盤工作站豈不是還一台 NetWare 伺服器?不是的,因為神通廣大的 Linux 可以模擬 NetWare 伺服器,就象Samba 可以把 Linux 模擬成 NT 一樣,mars_nwe 可以把 Linux 模擬成 NetWare,不僅能提供 NetWare 文件和列印服務,還能提供遠程引導支持(知道Linux的厲害了吧),本文講述的 Linux 無盤工作站就是用這種方式作遠程引導的。

准備啟動盤

由於在 Linux 下沒有製作符合 NetWare 遠程引導協議啟動映象的工具,所以只能用早期的Win95提供的工具(遺憾)。找一台裝有 Win95 的機器啟動後按 F8 進入純DOS方式,格式化一張啟動盤 format a: /s ,然後將RedHat Linux安裝光碟上 dosutils 目錄下的 loadlin.exe復制到啟動盤,在啟動盤上作一個 autoexec.bat 文件,代碼只有一行 loadlin.exe bzImage root=/dev/nfsroot從 Windows 95 安裝光碟的 Win95 目錄下的cab文件中解出 rplboot.sys 文件放在啟動 盤上,命令如下:

extract.exe /a /l a:\ win95-27.cab rplboot.sys

一張用來做啟動映象的啟動盤就作好了,保存好啟動盤,以後作啟動映象時會用到它。

編譯內核

用於無盤工作站的Linux內核與用於從本地硬碟引導的Linux內核是不同的,無盤工作站的內核必須支持NFS作為根文件系統,即遠程根文件系統,所以必須編譯無盤工作站專用的內核。筆者使用的內核代碼版本是2.2.16,將內核源代碼解壓到/usr/src下, cd /usr/src/linux 進入內核子目錄,執行命令make menuconfig 進行內核編譯配置,下列項目必須按要求設置:

Processor type and features 該項目下面的選項必須根據無盤工作站的CPU類型設置,而不是根據伺服器的CPU類型設置
Loadable mole support 該項目下面的所有選項都禁止,即不支持模塊功能
Plug and Play support 設置為有效
Block devices 該項目下面的
Loopback device support
Network block device support

都設置為有效
Networking option 該項目下面的

kernel level autoconfiguration
DHCP support (NEW)
都設置為有效
Network device support 該項目下面的選項必須根據無盤工作站使用的網卡進 行設置,本例中使用的是NE2000兼容網卡,選項
Ethernet (10 or 100Mbit)
Other ISA cards
NE2000/NE1000 support (NEW)
都設置為有效
Filesystems 該項目下面的Network File Systems子項目下面的
NFS filesystem support
Root file system on NFS (NEW)
都設置為有效

以上設置完成後,退出內核編譯設置程序,會出現一個對話框:Do you wish to save your new kernel configuration?

然後執行 make dep && make bzImage 進行內核編譯,這個過程得花一點時間,特別是如果計算機的速度不快的話,花的時間會更長一些。編譯內核如果沒有錯誤,會得到內核映象文件/usr/src/linux/arch/i386/boot/bzImage ,將啟動軟盤插入計算機,執行下面的命令 mount -t vfat /dev/fd0 /mnt/floopy cp /usr/src/linux/arch/i386/boot/bzImage /mnt/floppy umount /dev/fd0

好了,啟動盤上的文件都准備齊全了,等會兒用它到Win95環境下製作啟動映象。

伺服器設置

伺服器端需要運行nfsd、dhcpd、mars_new等幾個服務進程,這些軟體在ReHat Linux 發行套件里都有,如果在安裝 Linux 的時候選擇全部安裝,這些軟體都會隨著安裝操作 系統而裝好了,下面對這些軟體進行設置,注意,下面的操作要以 root 身份進行。

1、 NFS 守護進程nfsd

首先要建立幾個供無盤工作站使用的目錄,並通過nfsd 導出,命令如下:

mkdir /tftpboot

然後編輯文件 /etc/hosts ,加入下面的內容

192.168.0.80 server server.domain
192.168.0.1 c1 c1.domain
192.168.0.2 c2 c2.domain
192.168.0.3 c3 c3.domain
192.168.0.4 c4 c4.domain

第一台工作站的工作目錄設置方法如下:

mkdir /tftpboot/192.168.0.1
cd /tftpboot/192.168.0.1
c000p -a /bin .
cp -a /dev .
mknod dev/nd0 b 43 0
chmod 600 dev/nd0
cp -a /etc .
cp -a /home .
cp -a /lib .
rm -rf lib/moles
cp -a /root .
cp -a /sbin .
cp -a /var .
mkdir proc
mkdir usr
mkdir tmp
chmod 777 tmp
touch fastboot
chattr +i fastboot
cd etc

編輯文件 sysconfig/network-scripts/ifcfg-eth0

保留其中的

DEVICE=eth0
ONBOOT=yes

其餘的行全部刪除,然後增加一行

BOOTPROTO=dhcp

編輯文件 rc.d/rc.sysinit ,在文件最後加上兩行

mount -t nfs server:/usr /usr
/usr/X11R6/bin/xfs

編輯文件 fstab

保留其中的

none /proc proc defaults 0 0

其餘的行全部刪除,然後增加一行

server:/tftpboot/192.168.0.1 / nfs defaults 1 1

其它工作站的工作目錄設置方法就簡單多了

cd /tftpboot
cp -a 192.168.0.1 192.168.0.2
cp -a 192.168.0.1 192.168.0.3
cp -a 192.168.0.1 192.168.0.4

編輯文件 /etc/exports ,加入以下內容

/usr (ro,no_root_squash)
/tftpboot/192.168.0.1 (rw,no_root_squash)
/tftpboot/192.168.0.2 (rw,no_root_squash)
/tftpboot/192.168.0.3 (rw,no_root_squash)
/tftpboot/192.168.0.4 (rw,no_root_squash)

2、動態主機配置協議伺服器 dpchd

檢查一下文件/etc/dhcpd.leases是否存在,若不存在就用命令touch /etc/dhcpd.leases 創建一個,然後編輯文件 /etc/dhcpd.conf ,加入以下內容

subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.1 192.168.0.4;
}

3、NetWare 模擬器 marsw_nwe

編輯文件 /etc/nwserv.conf,找到下面的行

# 4 0x10 eth0 802.3 1

將該行開頭的'#'去掉,再找到

4 0x0 * 802.3 1

在該行開頭加上'#'

製作啟動映象

進入Win95,將Win95(早期的版本,可以用伺服器安裝方式安裝)安裝光碟的admin\nettools\netsetup\rplimage.exe 復制到硬碟,將啟動軟盤插入軟碟機,然後在純MSDOS方式下執行 rplimage a: 就會得到啟動映象 net$dos.sys,再將啟動映象 net$dos.sys 復制到啟動盤上(如果啟動盤空間不夠,可以先刪除啟動盤上的一些文件以留出空間)。

啟動 Linux 伺服器,以 root 用戶登錄,將啟動軟盤插入軟碟機,執行下面的命令 mount -t vfat /dev/fd0 /mnt/floppy cp /mnt/floppy/net\$dos.sys /var/mars_nwe\sys\login umount /dev/fd0 然後執行 setup ,移動光棒至 System services 選項回車,出現 Services 設置畫面,將dhcpd,nfs,mars-nwe 都設為有效,退出 setup 程序,執行以下的命令以啟動上述服務進程:

/etc/rc.d/rc3.d/*mars-nwe restart
/etc/rc.d/rc3.d/*dhcpd restart
/etc/rc.d/rc3.d/*nfs restart

下一次再啟動伺服器時,上述服務進程會自動執行。

至此,所有的設置工作全部完成了,聯好網路隨便打開一台無盤工作站,稍等一下,出現遠程引導的信息,接著會啟動 Win95,接下來很快就會裝載 Linux ,在一大堆 Linux 的啟動信息之後如果看到 Linux 的登錄提示,就說明遠程啟動成功了。

Linux 無盤工作站雖然運轉起來了,但還有一個問題,就是交換的問題,因為Linux 是一個支持虛擬存儲的操作系統,當機器內存不夠時,Linux 就會把內存中暫時不用的數 據換出到交換設備上,等需要時再換回來,剛才我們沒有設置交換區,在無盤工作站上用 free 命令就會發現交換區為零,如果無盤工作站內存較大,運行一些不大的程序,沒有交換區還是可以的,但若運行大型程序就會出問題,下面介紹在伺服器上設置交換區即遠 程交換的方法。
對於2.1.101版以前的內核,要實現遠程交換可有點費事,得從網路上下載有關的補丁來修改內核代碼,然後再編譯內核映象。從2.1.101版後的內核支持網路塊設備,這樣,實現遠程交換就容易了。首先編譯內核時要使 Network block device support 選項有效(剛才編譯內核時就是這么作的),再從http://atrey.karlin.mff.cuni.cz/~pavel/nbd/nbd.html 下載實用程序 nbd.14.tar.gz ,執行下面的命令

tar zxvf nbd.14.tar.gz
cd nbd
./configure
make

編譯完後會得到文件 nbd-server 和 nbd-client,將它們復制到 /usr/sbin 下面:

cp nbd-server nbd-client /usr/sbin
然後編輯文件 /etc/rc.d/rc.sysinit,在文件最後加上一行
/usr/sbin/nbd-server 7999 /tftpboot/%s/swap > /dev/null &
執行剛才的命令激活nbd服務:
/usr/sbin/nbd-server 7999 /tftpboot/%s/swap > /dev/null &

下一次伺服器啟動時,上述命令會自動執行。

再在伺服器上每個工作站目錄(/tftpboot/192.168.0.1,/tftpboot/192.168.0.2等等)下為各個無盤工作站建立交換文件,命令如下(本例中交換區大小為32M):

dd if=/dev/zero of=swap count=32768 bs=1024
mkswap swap

在每個工作站目錄下文件 /etc/rc.d/rc.sysinit 的最後加上兩行

/usr/sbin/nbd-client server 7999 /dev/nd0
swapon /dev/nd0

就這么簡單,再打開無盤工作站試一試啟動成功後登錄系統,執行命令 free 就會看到在顯示信息的最後有這樣一行:

Swap: 32764 XX XXXX
這說明交換區設置成功了。

通過以上步驟,一個完整的 Linux 無盤工作站網路就作好了,Linux 無盤工作站的用法很靈活,既可以象使用普通有盤工作站一樣使用,還可以把無盤工作站當成別的 Unix 主機的終端,特別是可以作為 X 終端,運行遠程 Unix 主機上的 X 應用。

7、實戰Linux無盤工作站

[文章導讀]

本文將詳細敘述一下建立linux無盤工作站的步驟。

[正文]

LINUX無盤工作站的建立,需要作客戶端和伺服器端兩方面的工作,本文將詳細敘述一下建立linux無盤工作站的步驟。

一.無盤工作站客戶端

這部分的主要任務是做一個EPROM的啟動文件,還包括一個處理Linux內核的工具mknbi-linux。有兩個package:etherboot和netboot可供選用, etherboot對網卡型號有要求,支持的網卡種類不算很多,但對最常用的網卡如3c503/507/509/905b、NE1000/2000/PCIne2000、Intel eepro等基本上都能支持;Netboot可以用ndis或pktdrv,這些文件一般在隨卡附帶的驅動盤上都有,但這僅限於網路啟動,對網卡的要求首先是Linux能識別。

以下步驟所述適用於etherboot;

1. 展開etherboot,進入src-32,編輯Config。有許多選項可以讓你做多重啟動、顯示信息、詢問口令之類的事情,這時你需要做的是用bootp代替dhcp,即在Config中定義-DNO_DHCP_SUPPORT設置。因為我們打算在伺服器端用bootp,所以這是必須的,否則在啟動時會因為未能尋找到dhcp server而啟動不了。如果你准備在伺服器端使用dhcp,那麼這一步就不需要了。

2. make。對每種網卡都會生成兩個文件 .rom和 .lzrom,後者是壓縮過的。

3. 使用軟盤啟動驗證所作的啟動ROM沒問題,假設你用的網卡是ne2000兼容的:

cat ../src/floppyload.bin ne.lzrom > /dev/fd0

如用軟盤啟動,系統能探測到你的網卡並發出bootp請求。如果一切OK,你就可以把ROM文件刻寫到EPROM里了。

4. cd ../netboot*;make;make install。make如果出錯,解決辦法是把系統中的bcc改名,然後將gcc連接成bcc,再重新make。最後在系統中會增加一個程序mknbi-linux,這是用來處理linux內核的,在伺服器端設置部分會講它的用法。

客戶端的工作完成了。
二、伺服器端:

假設你的無盤工作站ip為10.0.0.1; 機器名為dc1.subnet.net,另一台無盤工作站ip為10.0.0.2,機器名為dc2.subnet.net, 伺服器ip為10.0.0.254,名為server.subnet.net。

1. 修改/etc/hosts,增加dc1.subnet.net,dc2.subnet.net

2. 取得bootp-2.x.x,展開後注意把帶的各種patch都打上。然後make; make install

3. 建立/etc/bootptab,如下:
global.prof:

:sm=255.255.255.0:

:bf=/tftpboot/vmlinuz.nb:

dc1:tc=global.prof:ha=0000c0863d7a:ip=10.0.0.1:

dc2:tc=global.prof:ha=0800110244e1:ip=10.0.0.2:

ha用無盤工作站網卡的MAC地址代替。

4. 修改inetd.conf,去掉bootpd和tftpd的#號,如下:

tftp dgram udp wait root /usr/sbin/tcpd tftpd –s /tftpboot

bootps dgram udp wait root /usr/sbin/tcpd bootpd -i

kill –HUP `cat /var/run/inetd.pif`

5. 建立/tftpboot/10.0.0.1,cd /tftpboot/10.0.0.1,

(cd /; tar cpf – lib sbin bin var etc dev)| tar xpf –

mkdir usr; mkdir tmp; chmod 1777 tmp; mkdir home;mkdir root; makdir

proc; mkdir mnt

6. touch fastboot; chattr +i fastboot

(fstab 中 / 和 /usr 的最後一項設成0,也許不需要這一步了,但我沒試過)

以下是一個shell script,可用於自動執行以上操作。

#!/bin/sh

if [ $# != 1 ]

then
echo Usage: $0 client-IP-addr

exit 1

fi

cd /

umask 022

mkdir -p /tftpboot/$1

# just make these ones

for d in home mnt proc tmp usr

do

mkdir /tftpboot/$1/$d

done

chmod 1777 /tftpboot/$1/tmp

touch /tftpboot/$1/fastboot

chattr +i /tftpboot/$1/fastboot

# these ones

(cd /; tar cpf - bin lib sbin dev etc var) | (cd /tftpboot/$1; tar xpf -)

7. 刪除var下一切不需要的東西, 減小空間。刪除lib/moles下一切不需要的模塊。

8. 修改etc/sysconfig/network,etc/sysconfig/network-scripts/ifcfg-eth0,

etc/fstab,etc/conf.mole

fstab中指明root在伺服器server上,like this

server:/tftpboot/10.0.0.1 / nfs default 0 0

server:/usr /usr nfs default 0 0

9. 配置etc/rc.d/rc3.d,關掉一切不需要的網路服務。

10. 刪除etc/rc.d/rc6.d/K??network。

11. 修改etc/rc.d/rc.sysinit,尋找「mount –a –t nonfs,smbfs…"改成

「mount.–a –t nosmbfs…"

12. mkdir /tftpboot/10.0.0.2; cd /tftpboot/10.0.0.2;

13. 修改etc/sysconfig/network,etc/sysconfig/network-scripts/ifcfg-eth0,

etc/fstab,etc/conf.mole

14. cd /etc; vi exports;

/usr dc*.subnet.net(ro)

/tftpboot/10.0.0.1 dc1.subnet.net(rw,no_root_squash)

/tftpboot/10.0.0.2 dc2.subnet.net(rw,no_root_squash)

exportfs –a

15. 編譯一個新內核,必須包含以下特性:

NFS filesystem 支持

Root on NFS 支持

Bootp 支持

無盤工作站所用的網卡型號支持

編譯出新內核之後,用mknbi-linux處理,

mknbi-linux bzImage vmlinuz.nb

將vmlinuz.nb放在/tftpboot下即可。

至此,伺服器端的工作就完成了。

注意事項:

1. 如果你打算在伺服器端用dhcp,需要自己配置,參看dhcp的文檔。

2. Rh6.1自帶一個bootparamd,也應該能完成同樣的工作,但在manual中語焉不詳,不知該如何設置。

3. 伺服器端 / 和 /usr 最好單獨分區。

4. etherboot的文檔上說對有些網卡比如PCI NE2000兼容網卡,可能需要調整Makefile中的vendor信息和ID信息,我還未試過。

啟動你的無盤工作站,如一切操作無誤的話,工作站則應該能啟動起來。啟動過程中如果有一些地方不順利,可以在啟動之後對無盤工作站上按一般方法進行設置。

希望以上的講述能給讀者有所幫助和啟迪!

8、Linux無盤工作站架設實例

後面還有實例你自己看吧!

I. 徹底絕望!!!c語言編譯器就那麼難下嗎!!!!!!!!

直接裝上VC不就行了嗎?如果是linux操作系統,一般安裝時都安裝了GCC,不用下載呀。

J. 求一份用TC編譯的圖書管理系統程序

圖書館管理系統
摘 要
圖書管理系統是典型的信息管理系統(MIS),其開發主要包括後台資料庫的建立和維護以及前端應用程序的開發兩個方面。對於前者要求建立起數據一致性和完整性強、數據安全性好的庫。而對於後者則要求應用程序功能完備,易使用等特點。
因此本人結合開入式圖書館的要求,對MS SQL Server2000資料庫管理系統、SQL語言原理、Delphi應用程序設計,Delphi資料庫技術進行了較深入的學習和應用,主要完成對圖書管理系統的需求分析、功能模塊劃分、資料庫模式分析,並由此設計了資料庫結構和應用程序。系統運行結果證明,本文所設計的圖書管理系統可以滿足借閱者、圖書館工作人員和高級管理員三方面的需要。
第一章對資料庫應用系統開發和圖書管理系統進行了簡明的介紹,並分析了開發圖書管理系統所應進行的工作。
第二章對資料庫的設計和SQL語言的使用進行了系統分析,為深入理解資料庫應用打下了基礎。
第三章學習了具體的開發工具Delphi 6.0,對其資料庫組件,SQL語言在Delphi中的應用等資料庫編程關鍵技術進行了系統的介紹。
第四章分析了圖書管理信息系統的應用需求,按照資料庫設計理論一步一步地給出了系統需求說明書、局部ER圖、全局ER圖、系統關系模式,子模式,利用MS SQL Server2000建立了資料庫
第五章進行了具體的程序設計,具體劃分了三類用戶的操作許可權,設計了了三個操作界面。實現了資料庫表的瀏覽,記錄的添加、刪除和修改,報表的生成,實現了多資料庫表的連接操作,實現了多條件查詢和模糊查詢,並靈活實現了對不可更新查詢結果集的更新操作,實現了主從表操作,實現了密碼維護功能,最後,系統還可以導入資料庫以對任意同結構的資料庫進行操作。
設計充分利用Delphi 6、MS SQL Server2000資料庫技術的強大力量,提高了編程效率和可靠性。
關鍵詞:資料庫,SQL語言,MS SQL Server,Delphi6,
資料庫組件,圖書管理,窗體,listview組件
24
37
§5.2 數據模塊窗體的設置 ……………………………………………………… 第一章 緒 論
§1.1 資料庫應用系統開發簡介
在資料庫應用系統開發之前,對開發資料庫的基本概念應當了解,對資料庫的結構、開發資料庫應用程序的步驟、開發體系及方法都應當有相當清晰的了解和認識。
資料庫應用系統開發的目標是建立一個滿足用戶長期需求的產品。開發的主要過程為:理解用戶的需求,然後,把它們轉變為有效的資料庫設計。把設計轉變為實際的資料庫,並且這些資料庫帶有功能完備、高效能的應用。
資料庫技術在計算機軟體鄰域研究中一直是非常重要的主題,產生於60年代,30多年來資料庫技術得到了迅速發展,並已形成較為完整的理論體系和一大批實用系統。並且,近年來,隨著World Wide Web(WWW)的猛增及Internet技術的迅速發展,使得資料庫技術之時成為最熱門技術之一。
1.1.1 資料庫
如圖1.1顯示了資料庫系統的主要組件。資料庫由DBMS(資料庫管理系統)處理,DBMS則由開發人員和用戶通過應用程序直接或間接地使用。它主要包括四個要素:用戶數據、元數據、索引和應用元數據。
1.1.1.1 用戶數據
目前,大多數主流資料庫管理系統把用戶數據表示為關系。現在把關系看作數據表。表的列包含域或屬性,表的行包含對應業務環境中的實體的記錄。並非所有的關系都同樣符合要求,有些關系比其它關系更結構化一些。第二章描述了一個用以產生良好結構關系的過程,稱作規范化。
為了對比結構差的關系和結構好的關系之間的差別,以本文所設計的圖書管理系統中的圖書和圖書借閱者關系為例來說明,假若設計關系R1(借書證號,姓名,性別,身份編號,身份證,聯系電話,圖書編號,圖書名稱,圖書類別,作者,出版社,出版日期,備注,價格,數量);這個關系的問題出在它有關於兩個不同主題的數據,就是圖書借閱者和圖書。用這種方式構成的關系在進行修改時,會出現問題。因為一個圖書借閱者可能借閱多本書,如果某個圖書借閱者的某個欄位(如聯系電話)出現變更,它所借閱的圖書記錄(可能多個)也就必須變化,這是不好的。因此數據用兩個關系表示更好。現在如果某圖書借閱者改變了它的聯系電話,只有關系(表)user的對應行需要改變。當然,要想產生一個,顯示圖書名稱及其借閱者聯系電話的報表,就需要將這兩個表的行結合起來。結果表明,將關系分別存儲,在生成報表的時候將它們結合起來,比把它們存儲在一個合成的表中更好。
user(借書證號,姓名,性別,身份編號,身份證,聯系電話,)
book(圖書編號,圖書名稱,圖書類別,作者,出版社,出版日期,備注,價格,數量)
1.1.1.2 元數據
資料庫是自描述的,這就意味著它自身包含了它的結構的描述,這種結構的描述稱作元數據。因為DBMS產品是用來存儲和操縱表的,所以大多數產品把元數據以表的形式存儲,有時稱作系統表。這些系統表存儲了資料庫中表的情況,指出每一個表中有多少列,那一列是主關鍵字,每一列的數據類型的描述,它也存儲索引、關鍵字、規則和資料庫結構的其他部分。
在表中存儲元數據不僅對DBMS是有效的,對用戶也是方便的,因為他們可以使用與查詢用戶數據同樣的查詢工具來查詢元數據。本文第二章所介紹的SQL語言可以同時用於元數據和用戶數據。
1.1.1.3 索引
第三種類型的數據改進了資料庫的性能和可訪問性,這種數據經常稱作開銷數據,盡管有時也採用其他類型的數據結構,如鏈表,但它主要還是索引。索引可以用來排序和快速訪問數據。下面以本人的圖書管理信息系統中的book表為例來說明。
假定數據在磁碟上是按』圖書編號』的遞增順序排列的,用戶想列印一個按』圖書名稱』排序的圖書數據報表。為此,所有的數據都需要從源表中提取出來並排序,除非表很小,否則這是一個很費時的過程。或者,可以在『圖書名稱』欄位上創建一個索引,該索引的條目按照『圖書名稱』排序,這樣,該索引的條目可以讀出來,並用來按順序訪問book數據。
索引用於快速訪問數據。例如,一個用戶只想訪問book表中『圖書類別』值為『01』的那些學生。如果沒有索引,則必須搜索整個源表;但有了索引之後,可以找到索引條目,並使用它來挑選所有合適的行。
索引對排序和查找是有幫助的,但要付出代價。book表中的行每次改變時,索引也必須改變,這意味著索引並非隨意的,應該在真正需要時保存。
1.1.1.4 應用元數據
存儲在資料庫中的第四種數據是應用元數據,它用來存儲用戶窗體、報表、查詢和其他形式的查詢組件。並非所有的DBMS都支持應用組件,支持組件的DBMS也不一定把全部組件的結構作為應用元數據存儲在資料庫中。然而,大多數現代的DBMS產品存儲這種數據作為資料庫的一部分。一般來說,資料庫開發人員和用戶都不直接訪問應用元數據,想反,他們通過DBMS中的工具來處理這些數據。
MS SQL Server2000中就支持窗體、存儲過程等應用元數據。
1.1.2 資料庫管理系統
資料庫管理系統(DBMS)是指資料庫系統中管理數據的軟體系統。DBMS是資料庫系統的核心組成部分。對資料庫的一切操作,包括定義、更新及各種控制,都是通過DBMS進行的。DBMS總是基於某種數據模型,可以把DBMS看成是某種數據模型在計算機系統上的具體實現。根據數據模型的不同,DBMS可以分成層次型、網狀型、關系型、面向對象型等。MS SQL Server2000就是一種關系型資料庫管理系統。
關系模型。關系模型主要是用二維表格結構表達實體集,用外鍵表示實體間聯系。關系模型是由若干個關系模式組成的集合。關系模式相當於前面提到的記錄類型,它的實例稱為關系,每個關系實際上是一張二維表格。
關系模型和層次、網狀模型的最大判別是用關鍵碼而不是用指針導航數據,表格簡單用戶易懂,編程時並不涉及存儲結構,訪問技術等細節。關系模型是數學化模型。SQL語言是關系資料庫的標准化語言,已得到了廣泛的應用。
如圖1.1所示,DBMS的特點和功能可以分為三個子系統:設計工具子系統、運行子系統和DBMS引擎。
設計子系統有一個方便資料庫及其應用創建的工具集。它典型地包含產生表、窗體、查詢和報表的工具。DBMS產品還提供編程語言和對編程語言的介面。
運行子系統處理用設計子系統開發的應用組件。它所包含的運行處理器用來處理窗體和資料庫的數據交互,以及回答查詢和列印報表等。
DBMS引擎從其他兩個組件接受請求,並把它們翻譯成對操作系統的命令,以便讀寫物理介質上的數據。DBMS引擎還涉及事務管理、鎖、備份和恢復。
1.1.3 創建資料庫
1.1.3.1 資料庫模式
資料庫模式定義了資料庫的結構、表、關系、域和業務規則。資料庫模式是一種設計,資料庫和應用正是建立在此基礎上的。
域是一列可能擁有的值的集合。必須為每一個表的每一列確定域。除了數據的物理格式外,還需要確定是否有些域對表來說是唯一的。
資料庫模式的最後一個要素是業務規則,它是對需要反映在資料庫和資料庫應用程序中的業務活動的約束。業務規則是模式的一個重要部分,因為他們指定了無論什麼數據變化到達DBMS引擎,允許的數據值必須滿足的約束。不管無效的數據變化請求是來自窗體的用戶、查詢/修改請求還是應用程序,DBMS都應該拒絕。
遺憾的是,不同的DBMS產品用不同的方法實施業務規則。在某些情況下,DBMS產品不具備實施必要業務規則的能力,必須以代碼形式把它們編入應用程序。
1.1.3.2 創建表
1.1.3.3 定義聯系
1.1.4 應用組件
資料庫應用包括窗體、查詢、報表、菜單和應用程序。
§1.2 圖書管理系統
當今時代是飛速發展的信息時代。在各行各業中離不開信息處理,這正是計算機被廣泛應用於信息管理系統的環境。計算機的最大好處在於利用它能夠進行信息管理。使用計算機進行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。
尤其對於復雜的信息管理,計算機能夠充分發揮它的優越性。計算機進行信息管理與信息管理系統的開發密切相關,系統的開發是系統管理的前提。本系統就是為了管理好圖書館信息而設計的。
圖書館作為一種信息資源的集散地,圖書和用戶借閱資料繁多,包含很多的信息數據的管理,現今,有很多的圖書館都是初步開始使用,甚至尚未使用計算機進行信息管理。根據調查得知,他們以前對信息管理的主要方式是基於文本、表格等紙介質的手工處理,對於圖書借閱情況(如借書天數、超過限定借書時間的天數)的統計和核實等往往採用對借書卡的人工檢查進行,對借閱者的借閱許可權、以及借閱天數等用人工計算、手抄進行。數據信息處理工作量大,容易出錯;由於數據繁多,容易丟失,且不易查找。總的來說,缺乏系統,規范的信息管理手段。盡管有的圖書館有計算機,但是尚未用於信息管理,沒有發揮它的效力,資源閑置比較突出,這就是管理信息系統的開發的基本環境。
數據處理手工操作,工作量大,出錯率高,出錯後不易更改。圖書館採取手工方式對圖書借閱情況進行人工管理,由於信息比較多,圖書借閱信息的管理工作混亂而又復雜;一般借閱情況是記錄在借書證上,圖書的數目和內容記錄在文件中,圖書館的工作人員和管理員也只是當時對它比較清楚,時間一長,如再要進行查詢,就得在眾多的資料中翻閱、查找了,造成查詢費時、費力。如要對很長時間以前的圖書進行更改就更加困難了。
基於這此問題,我認為有必要建立一個圖書管理系統,使圖書管理工作規范化,系統化,程序化,避免圖書管理的隨意性,提高信息處理的速度和准確性,能夠及時、准確、有效的查詢和修改圖書情況。
§1.1 系統所做工作
1) 了解應用開發工具的現狀
2) DelPHi6.0編程基礎
3) MS SQL Server基礎
4) 設計資料庫;設計界面
5) 開發資料庫。資料庫實現的一些功能有
l 數據和數據說明的醒目顯示;
l 多條件的查詢、多條記錄的檢索、模糊查詢;
l 數據文件某種存儲格式導入數據窗體,經過數據完整性校驗存入資料庫;
l 資料庫安全性的設計;
l 資料庫的設計、數據介面、界面的設計。
§1.3 本文所作工作
緒論部分對資料庫應用系統的結構、開發進行了簡要介紹,分析了圖書管理信息系統設計的特點和任務。
第二章介紹了資料庫的設計和範式分析,並系統介紹了SQL語言,為設計和理解應用程序做了鋪墊。
第三章對系統介紹了Delphi 6.0的資料庫編程技術、SQL語言在Delphi 6.0中的應用、MS SQL Server基礎。
第四章分析了圖書管理系統的應用需求,設計了系統的資料庫結構,並根據需求對系統功能進行了劃分和細化。
第五章根據第四章的設計結果利用MSSQL Server2000和Delphi 6.0進行了具體的應用程序設計。
總結部分介紹了設計體會和編程體會,並指出了系統設計中的不足和改進的方向。
第二章 資料庫理論基礎
一個成功的信息管理系統,是建立在許多條件之上的,而資料庫是其中一個非常重要的條件和關鍵技術。
信息管理系統所涉及的資料庫設計分五個步驟:資料庫需求分析、概念設計、邏輯設計、物理設計與載入測試。
(1) 資料庫需求分析的任務是將業務管理單證流化為數據流,劃分主題之間的邊界,繪制出DFD圖,並完成相應的數據字典。
(2) 概念設計的任務是從DFD出發,繪制出本主題的實體-關系圖,並列出各個實體與關系的綱要表。
(3) 邏輯設計的任務是從E-R圖與對應的綱要表出發,確定各個實體及關系的表名屬性。
(4) 物理設計的任務是確定所有屬性的類型、寬度與取值范圍,設計出基本表的主鍵,將所有的表名與欄位名英文化(現在很多軟體能支持中文欄位,如MS SQL Server,我就是用的中文欄位名),實現物理建庫,完成資料庫物理設計字典。
(5) 載入測試工作貫穿於程序測試工作的全過程,整個錄入、修改、查詢、處理工作均可視為對資料庫的載入測試工作。
要設計出一個好的信息管理系統資料庫,除滿足系統所要求的功能外,還必須遵守下列原則:
² 基本表的個數越少越好。
² 主鍵的個數越少越好。鍵是表間連接的工具,主鍵越少,表間的連接就越簡單。
² 欄位的個數越少越好。
² 所有基本表的設計均應盡量符合第三範式。
資料庫的設計中,如何處理多對多的關系和如何設計主鍵,是兩個有著較大難度、需要重點考慮的問題。下面我們著重從SQL應用、資料庫設計範式和查詢優化等方面來分析本課題的系統關鍵技術和實現難點並加以解決。
§2.1 資料庫系統設計及範式分析
信息系統的主要任務是通過大量的數據獲得管理所需要的信息,這就必須存儲和管理大量的數據。因此建立一個良好的數據組織結構和資料庫,使整個系統都可以迅速、方便、准確地調用和管理所需的數據,是衡量信息系統開發工作好壞的主要指標之一。
2.1.1 資料庫系統設計
資料庫設計主要是進行資料庫的邏輯設計,即將數據按一定的分類、分組系統和邏輯層次組織起來,是面向用戶的。資料庫設計時需要綜合企業各個部門的存檔數據和數據需求,分析各個數據之間的關系,按照DBMS提供的功能和描述工具,設計出規模適當、正確反映數據關系、數據冗餘少、存取效率高、能滿足多種查詢要求的數據模型。
資料庫設計的步驟是:
(1) 資料庫結構定義:目前的資料庫管理系統(DBMS)有的是支持聯機事務處理CLTP(負責對事務數據進行採集、處理、存儲)的操作型DBMS,有的可支持數據倉庫、有聯機分析處理CLAP(指為支持決策的制定對數據的一種加工操作)功能的大型DBMS,有的資料庫是關系型的、有的可支持面向對象資料庫。針對選擇的DBMS,進行資料庫結構定義。
(2) 數據表定義:數據表定義指定義資料庫中數據表的結構,數據表的邏輯結構包括:屬性名稱、類型、表示形式、預設值、校驗規則、是否關鍵字、可否為空等。關系型資料庫要盡量按關系規范化要求進行資料庫設計,但為使效率高,規范化程度應根據應用環境和條件來決定。數據表設計不僅要滿足數據存儲的要求,還要增加一些如反映有關信息、操作責任、中間數據的欄位或臨時數據表。
(3) 存儲設備和存儲空間組織:確定數據的存放地點、存儲路徑、存儲設備等,備份方案,對多版本如何保證一致性和數據的完整性。
(4) 數據使用許可權設置:針對用戶的不同使用要求,確定數據的用戶使用許可權,確保數據安全。
(5) 數據字典設計:用數據字典描述資料庫的設計,便於維護和修改。
為了更好地組織數據和設計出實際應用資料庫,應該注意如下問題:
規范化地重組數據結構:對數據進行規范化表達,這在後面將會具體討論。
關系數據結構的建立:在進行了數據基本結構的規范化重組後,還必須建立整體數據的關系結構。這一步設計完成後資料庫和數據結構設計工作基本完成,只待系統實現時將數據分析和數據字典的內容代入到所設計的數據整體關系結構中,一個規范化資料庫系統結構就建立起來了。
建立關系數據結構涉及三方面內容:確定關聯的關鍵指標項並建立關聯表;確定單一的父系記錄結構;建立整個資料庫的關系結構。
(1)鏈接關系的確定
在進行了上述數據規范化重組後,已經可以確保每一個基本數據表(我們簡稱為表)是規范的,但是這些單獨的表並不能完整地反映事物,通常需要通過指標體系整體指標數據才能完整全面地反映問題。也就是說在這些基本表的各宇段中,所存儲的是同一事物不同側面的屬性。那麼計算機系統如何能知道哪些表中的哪些記錄應與其它表中的哪些記錄相對應,它們表示的是同一個事物呢?這就需要在設計數據結構時將這種各表之間的數據記錄關系確定下來。這種表與表之間的數據關系一般都是通過主或輔關鍵詞之間的連接來實現的。因為在每個表中只有主關鍵詞才能唯一地標識表中的這一個記錄值(因為根據第三範式的要求,表中其它數據欄位函數都依賴於主關鍵詞),所以將表通過關鍵詞連接就能夠唯一地標識出某一事物不同屬性在不同表中的存放位置。
(2)確定單一的父子關系結構
所謂確定單一的父系關系結構就是要在所建立的各種表中消除多對多(以下用M:N來表示)的現象,即設法使得所有表中記錄之間的關系呈樹狀結構(只能由一個主幹發出若干條分支,而不能有若干條主幹交錯發出若干條分支狀況)。所謂的「父系」就是指表的上一級關系表。消除多對多關系可以藉助於E-R圖的方法來解決,也可以在系統分析時予以注意,避免這種情況的發生。
消除這種M:N情況的辦法也很簡單,只需在二表之間增加一個表,則原來M:N的關系就改成了M:1,1:N的關系了。
確定數據資源的安全保密屬性:
一般DBMS都提供給我們自己定義數據安全保密性的功能。系統所提供的安全保密功能一般有8個等級(0-7級),4種不同方式(只讀、只寫、刪除、修改),而且允許用戶利用這8個等級的4種方式對每一個表自由地進行定義。
定義安全保密性的方法一般有如下幾種:
a.原則上所有文件都定義為4級,個別優先順序特別高的辦公室(終端或微機的入網賬號)可定義高於4級的級別,反之則定義為低於4的級別。
b.統計文件(表)和數據錄入文件一般只對本工作站定義為只寫方式,對其它工作站則定義為只讀方式。
c.財務等保密文件一般只對中工作站(如財務科等)定義為可寫、可改、可刪除方式,對其它工作站則定義為只讀方式,而且不是每個人都能讀,只有級別相同和高級別者才能讀

2.1.2 資料庫設計範式分析
建立起一個良好的數據指標體系,是建立數據結構和資料庫的最重要的一環。一個良好的數據指標體系是建立DB的必要條件,但不是充分條件。我們完全可以認為所建指標體系中的一個指標類就是關系資料庫中的一個基本表,而這個指標類下面的一個個具體指標就是這個基本表中的一個欄位。但如果直接按照這種方式建庫顯然還不能算最佳。對於指標體系中數據的結構在建庫前還必須進行規范化的重新組織。
a. 數據組織的規范化形式
在數據的規范化表達中,一般將一組相互關聯的數據稱為一個關系(relation),而在這個關系下的每個數據指標項則被稱為數據元素(data element),這種關系落實到具體資料庫上就是基本表,而數據元素就是基本表中的一個欄位(field)。規范化表達還規定在每一個基本表中必須定義一個數據元素為關鍵字(key),它可以唯一地標識出該表中其它相關的數據元素。在規范化理論中表是二維的,它有如下四個性質:
l 在表中的任意一列上,數據項應屬於同一個屬性(如圖中每一列都存放著不同合同記錄的同一屬性數據)。
l 表中所有行都是不相同的,不允許有重復組項出現(如圖中每一行都是一個不同的合同記錄)。
l 在表中,行的順序無關緊要(如圖中每行存的都是合同記錄,至於先放哪一個合同都沒關系)。
l 在表中,列的順序無關緊要,但不能重復(如圖中合同號和合同名誰先誰後都沒關系,但二者不可重復或同名)。
在對表的形式進行了規范化定義後,數據結構還有五種規范化定義,定名為規范化模式,稱為範式。在這五種範式中,一般只用前三種,對於常用系統就足夠了。而且這五種範式是「向上兼容」的,即滿足第五範式的數據結構自動滿足一、二、三、四範式,滿足第四範式的數據結構自動滿足第一、二、三範式,……,依此類推。
第一範式(first normal form,簡稱1st NF)就是指在同一表中沒有重復項出現,如果有則應將重復項去掉。這個去掉重復項的過程就稱之為規范化處理。在本文所討論的開發方法里,1st NF實際上是沒有什麼意義的。因為我們按規范化建立的指標體系和表的過程都自動保證了所有?/div>

閱讀全文

與編譯工作站相關的資料

熱點內容
加密投資者的心理 瀏覽:696
小米無命令 瀏覽:821
不要層層等命令 瀏覽:368
4k播放器怎樣設置源碼 瀏覽:948
二手冰箱壓縮機多少錢 瀏覽:517
excelpdf轉換器注冊碼 瀏覽:392
工作三年的大專程序員 瀏覽:728
java畢業設計文獻 瀏覽:143
籌碼集中度指標源碼 瀏覽:482
listsortjava 瀏覽:186
plc閃光電路編程實例 瀏覽:299
socket編程試題 瀏覽:206
華為的伺服器怎麼設置從光碟機啟動 瀏覽:871
程序員真的累嗎 瀏覽:328
學信網app為什麼刷臉不了 瀏覽:874
天蠍vs程序員 瀏覽:996
單片機下載口叫什麼 瀏覽:190
程序員的道 瀏覽:926
雲伺服器不實名違法嗎 瀏覽:558
怎樣查看文件夾圖片是否重復 瀏覽:995