共找到4條詞條名為SDL的結果 展開

SDL

規範與描述語言

SDL,是Specification and Description Language的縮寫,意思是規範與描述語言。

語言介紹


規範與描述語言(Specification and Description Language)
SDL(Specification and Description Language)語言是CCITT推薦的規格與描述性語言。由ITU-T發展和標準化,定義在蘭皮書Z.100建議中(1992年,1996年增補)。作為國際標準化的正式語言,它被用來規範描述實時系統。目前,SDL-96是SDL的最新版本。作為SDL相關技術,本文把Z.120建議:消息序列圖(message sequence charts, MSC)和Z.105建議:抽象語法符號-一(abstract syntax notation -one, ASN.1)作為SDL的一部分理解。
ITU將SDL描述為"實時系統的特性描述語言"。絕大多數SDL概念有文本和圖形兩種表述形式。由於缺乏某些範圍內的高層結構和一些象C語言的概念,SDL並非編程語言。SDL並不描述系統發展進程。因此,在實際應用中,開發人員將應用用SDL圖形描述,再由SDL工具將其轉化為C語言源代碼,或者CHILL源代碼,最後嵌入到實際開發環境中。
使用SDL,可以半圖形、半文本地定義特定類型的嵌入式系統的功能描述。這種方法的高度正式性,使得SDL工具有可能生成和測試完整的嵌入式應用。國外大量軟體評論家認為,SDL的這種正式方法,應該推薦擴展應用到嵌入式系統之外。事實上,如SDL的消息順序圖,已經被普通的面向對象技術CASE工具,如Rational Rose,在互動式圖形部分廣泛採用。

適應範圍


SDL的使用範圍甚至可以超出電信領域的範疇。但是,SDL也有一些限制。SDL不能適應所有類型的實時系統,例如系統需要描述精確行為,和(或)需要處理複雜數學問題或類似變換,就不適合。需要大量進程間的緊密協作時也不合適。SDL可以很好地處理多種并行處理應用,但僅當它們可用消息傳送和非優先順序排隊模型很好地表述時。另外,SDL難於表示系統的一套複雜靜態規則和數據關係,並缺乏對訪問穩定數據的有效支持。
SDL方法適合於以下系統:
·主要與其他系統通訊(嵌入式系統)
·精確準時行為非關鍵。
·與其他系統主要是數字通訊,而不是模擬信號。
·無須執行複雜計算。
·需要併發運行,非同步通訊。(并行系統)
·極少需要複雜數據關係模型。
SDL使用有限狀態機FSM的概念來描述對象。SDL進程本質上是對象,它們具有各種不同的狀態,在每種狀態下發送、接收和處理進程消息,對封裝的數據完成處理,並具有確定的狀態行為。當然,其數據處理能力遠不如描述進程能力強。SDL進程的任務是處理輸入消息隊列。為了提高效率,SDL進程併發運行,相互之間非同步通訊。SDL進程之間也可以通過特定的"SDL遠程調用"信號同步通訊。
由於SDL的種種特性,它最適合的場合時描述呼叫處理和協議處理。事實上,大量ITU-T的標準都是用SDL描述的,或者象國標中常常採用消息順序圖(MSC)來描述。MSC比SDL圖更加直觀,但其描述不足以生成為實際應用程序,它一般被用來作為系統設計用。在當前的多數SDL軟體工具中,都提供了從SDL到MSC的生成工具,用以作為後期設計系統的正確性驗證用。在如Telelogic的SDT軟體中,甚至提供了SDL調試中動態MSC跟蹤功能。
對於主機資料庫開發,用SDL就不合適。因為在這裡,需要大量單任務,同步通訊一個進程調用另外一個進程。SDL可以處理這種過程直接調用模型,但其真正的長處在於處理并行多任務之間的非同步通訊。當然,在協調併發任務之間的同步機制上,SDL僅提供了高級的支持。對於一部分流行的支持搶先式多任務的操作系統,如pSOS, VxWorks, Win32等,部分SDL工具附帶提供了SDL與操作系統的緊耦合介面庫。

軟體工具現狀


SDL的商用工具主要有以下幾種:
·CATT的SDL工具Melba。
·Kvatro Telecom的SDL到CHILL轉換器,與Telelogic的SDT集成在一起。CHILL工具CHIPSY。
·Telelogic的SDL工具SDT,和其他相關工具。
·Verilog的SDL工具ObjectGEODE,和其他相關工具。
另外,還有一些SDL的共享軟體工具。
由於SDL語言在工程設計中所處的層次較低,及它已經面嚮應用開發的最末端(可以生成機器代碼),SDL在系統分析方面,尤其是面向對象的分析方面有自身的不足,SDL-92開始引入面向對象的概念。而在SDL工具軟體中,則大量使用流行的OMT/UML對象標準模型(Object Modeling Technique),並提供CORBA/IDL支持。SDT也不例外。其UML(Unified Modeling Language)編輯工具,採用的就是OMT/UML標準文法及標註方式。在分散式應用面向對象模型CORBA中,兩個重要的部件是ORB(Object Request Broker)和IDL(Interface Description Language)。SDT支持用IDL寫CORBA對象描述,然後通過SDT提供的IDL-SDL轉換工具,自動轉換並實現在SDL中。