此面板上的選項定義由編譯器產生的輸出。
有關 *CMDDFT 設定和按鈕說明的資訊, 請參閱一般對話框說明。
- 產生選項
- 權限
- 對沒有特定物件權限的使用者指定物件權限。使用者可能不在權限表中,或他所在的群組沒有特定的物件權限。可選擇下列某一個值填入該欄位中:
- *CMDDFT
- 參考系統目前預設的物件權限。
- *LIBCRTAUT
- 物件的公共權限取自目標檔檔案庫 (該目標檔檔案庫包含了所建立的物件) 的
CRTAUT 關鍵字。此值是在建立物件時確定的。若在建立物件後變更檔案庫的 CRTAUT
值,則新值不影響現有的物件。
- *ALL
- 提供所有物件操作 (除了那些限於所有者和由權限表的管理權限控制的操作)
的權限。任何使用者都可以控制物件的存在,指定其安全性,並對其執行基本功能,但不能轉移其所有權。
- *CHANGE
- 提供所有資料權限和對物件執行所有操作
(除了那些限於所有者或由物件權限和物件管理權限控制的操作)
的權限。可以變更物件,並且可對其執行基本功能。
- *EXCLUDE
- 沒有特殊權限的使用者不能存取物件。
- *USE
- 提供物件操作權限、讀取權限和物件基本操作的權限。沒有特定權限的使用者不能變更物件。
- 目標版次
- 為正在建立的物件指定作業系統的版次。您可以選取此欄位中的下列其中一個值:
- *CMDDFT
- 參考系統目前預設的版次。
- *CURRENT
- 正在編譯的物件所使用的作業系統與目前在系統上執行的作業系統的版次相同或更高。例如,
如果編譯系統的版次是 V2R3M5,則選擇此選項會產生一個物件,它可以在安裝了版次為
V2R3M5 或更高版次的系統上執行。
- *PRV
- 正在編譯的物件所使用的作業系統比編譯系統上使用的作業系統低一個層次。
例如,如果編譯系統的版次是 V2R3M5,則選擇該選項將產生一個物件,
它可以在安裝了版次為 V2R2 或更高層次的系統上執行。
您也可以直接在此欄位中鍵入目標版次。 使用格式
VxRxMx 指定版次, 其中,Vx
是版本,Rx 是版次,而 Mx 是修正層次。 例如,V4R3M0 是版本
4,版次 3,修訂本層次 0。
- 最佳化
- 指定應用於編譯物件的最佳化層次。 您可以選取此欄位中的下列其中一個值:
- *CMDDFT
- 參考系統目前預設的最佳化層次。
- 10
- 產生的程式碼不進行最佳化。這一層次的編譯時間是最短的。
- 20
- 對產生的代碼進行部份最佳化
- 30
- 對產生的程式碼進行完全最佳化。
- 40
- 所有在層次 30 上完成的最佳化都是在產生的程式碼中執行。
此外,程式碼將從啟用指令追蹤和呼叫追蹤系統功能的程序式言和結尾常式中刪除。刪除此程式碼就可以建立葉程序。葉程序不包含對其他程序的呼叫,而且對葉程序的程序呼叫要明顯快於對一般程序的呼叫。
- 列舉大小
- 指定一個列舉將佔用多少儲存空間。您可以選取此欄位中的下列其中一個值:
- *CMDDFT
- 使用目前設定為系統預設值的列舉大小。
- 1
- 讓所有列舉變數的大小均為 1 位元組。
- 2
- 讓所有列舉變數的大小均為 2 位元組。
- 4
- 讓所有列舉變數的大小均為 4 位元組。
- *INT
- 使用「ANSI C 標準」列舉大小 (帶正負號的 4 位元組)。
- *SMALL
- 選取可容納列舉變數的最小範圍。
- 儲存體模型
- 指定模組物件將使用的儲存體類型 (靜態或自動)。
您可以選取此欄位中的下列其中一個值:
- *CMDDFT
- 參考系統目前預設的列舉大小。
- *SNGLVL
- 模組或程式將使用傳統的單一層次儲存體模型。
物件的靜態及自動儲存體是從單一層次儲存來配置的,且只能使用 16
位元組指標加以存取。 如果指定了 TERASPACE(*YES) 選項,
則模組可以選用性地存取兆空間動態儲存體。
- *TERASPACE
- 模組或程式將使用兆空間儲存體模型。此儲存體模型最多能提供 1
兆位元本端位址空間給單一工作。 物件的靜態及自動儲存體是從兆空間來配置的,
且可以使用 8 位元組或 16 位元組指標加以存取。
- 使用者設定檔
- 指定在執行已編譯的程式物件時使用的使用者設定檔,
包括程式物件對每個物件所擁有的權限。
程式所有者或程式使用者的設定檔將用來控制程式物件將使用哪些物件。
您可以選取此欄位中的下列其中一個值:
- *CMDDFT
- 參考系統目前預設的使用者設定檔。
- *USER
- 使用執行程式的使用者的設定檔。
- *OWNER
- 使用程式所有者和程式使用者的使用者設定檔中的物件權限集合,以在程式物件的處理時間內尋找和存取物件。
由程式建立之物件的所有者是程式使用者。
- 預設字元類型
- 如果選取此勾選框,則編譯器將把字元視為帶正負號的類型。否則,
將字元視為無正負號的類型。
- 設定檔資料
- 如果選取此勾選框,則將打開對正在編譯的程式或模組的程式設定檔。產生的程式碼將收集物件建立時的設定檔資料,包括執行程序中時間基本區塊的數量和對程序呼叫的次數。
建立設定檔可以改進 ILE
應用程式中快取記憶體行和記憶體頁面的使用,使程式的效能更好。
註:
- 獨立式 *MODULE 物件不能建立設定檔。
- 僅當「產生」選項面板上的下列選項也啟用之後此選項才有效。
- 將最佳化設定為 *FULL、30 或更高。
- 將目標版次設定為 *CURRENT。
- 兆空間選項
- 兆空間儲存位址
- 如果選取此勾選框,則編譯器將產生的程式碼能夠處理兆空間儲存位址,
包括從其他已啟用兆空間的程式和服務程式傳遞參數。選擇此勾選框還將啟用下列勾選框:
- 兆空間儲存函數
- 如果選取此勾選框,則編譯器將使用兆空間版本的儲存函數, 如
malloc 或 schmat, 而無須變更原始程式碼。編譯器定義了
__TERASPACE__ 巨集,
並將某些儲存函數名稱對映到其相應的支援兆空間的地方。例如,
選取此編譯器選項會造成 malloc() 儲存體函數對映到
_C_TS_malloc()。
如果未 選取此勾選框, 則編譯器就不會
使用支援兆空間版本的儲存函數 (如 malloc() 或 schmat())。
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.