命令 輸出
uname -u IBM,01 10 CABFD(出于可讀性的原因,插入了一些空格。)
uname -M IBM,7043-260
uname -L -1 Null(沒有 LPAR)
uname -Mu IBM,7043-260 IBM,01 10 CABFD
uname -MuL IBM,7043-260 IBM,01 10 CABFD -1 NULL
uname -m 00C CABFD 4C00(注意:我們不建議使用這個命令。)
  
    在這臺計算機上,nid 為 cabfd 4c。盡管可以使用 uname -m,但不建議這樣做,因為對于唯一系統(tǒng)標識來說,5 位數(shù)字的序列號并非總是足夠的。
  
    正如您在前面的示例中所看到的,uname -u 給出了廠家代碼和計算機序列號,以便更好地標識一個系統(tǒng)。通過 uname -Mu 和 uname -MuL 命令,您可以添加其他的數(shù)據(jù)項,如計算機類型和計算機型號號碼。
  
    -L 標志給出了 LPAR 信息。在這個 AIX 5L Version 5.1 和 Version 5.2 的實驗中,我們使用了不帶分區(qū)支持的雙處理器 RS/6000 Model 260,因此 -L 的輸出是 -1 和 NULL。
  
    對于不具有邏輯分區(qū)的 AIX 5L Version 5.1 和 Version 5.2 級別的 IBM System p5 計算機,可以使用下面的命令生成建議的唯一系統(tǒng)標識符:
  


uname -Mu

    在前一個示例中,這個命令標志生成了輸出:
  


IBM,7043-260 IBM,01 10 CABFD

    該輸出字符串包含了下列元素: 
      計算機類型 (7043) 
      型號 (260)
      OF 前綴 (IBM,01)
      廠家代碼 (10)
      序列號 (CABFD)
  
  用于檢查系統(tǒng)標識的其他命令和系統(tǒng)接口
  
   lsattr 命令可以用來查詢 AIX 系統(tǒng)標識符。分別在 RS/6000 Model 260 和 IBM System p5 520 計算機上進行下面兩項測試:
  


lsattr -El sys0 -a systemid    (RS/6000 Model 260)
systemid IBM,01 10 CABFD Hardware system identifier False

lsattr -El sys0 -a systemid (IBM System p5 520)
systemid IBM,02 10 F190F Hardware system identifier False


    還可以通過一組系統(tǒng) API 來查詢系統(tǒng)標識信息:
  




uname()    and    unamex() xutsname.nid in
struct xutsname xutsname.lognid in
struct xutsname



    您可以在更新的編程接口規(guī)范 部分中找到關于這些結構和訪問函數(shù)的完整解釋。
  
  更新的 AIX 系統(tǒng)標識
  
    IBM 的產(chǎn)品改變了序列號生成的規(guī)則。IBM 正過渡為: 
       包含比 16 進制數(shù)值 (0-9, A-F) 更多內(nèi)容的序列號
       針對每個廠家代碼的獨立序列號
  
    另外,IBM Systems 的計算機已從單桌面計算機發(fā)展為具有共享邏輯分區(qū)和同步多線程 (SMT) 支持的大型服務器。生成唯一系統(tǒng)標識符的要求也相應地有所提高。下面是正確地支持系統(tǒng)標識符生成的要求列表: 
      POWER4 系統(tǒng)必須具有最多 32 個分區(qū),從 1 到 32 進行編號。
      POWER5 系統(tǒng)必須具有最多 254 個分區(qū),從 1 到 254 進行編號。
      將來的系統(tǒng)可能需要支持 1023 個分區(qū)。
      將來的系統(tǒng)必須支持未來的分區(qū)號,從 1 到大約 1 百萬。
  
    使用字符串“TTTTMMMCCSSSSS”來標識系統(tǒng),其中:
  
      TTTT 是 4 位數(shù)字 (0-9) 的計算機類型。
      MMM 是 3 位字母數(shù)字 (0-9, A-Z) 的型號號碼。
      CC 是 2 位字母數(shù)字 (0-9, A-Z) 的生產(chǎn)廠家。
      SSSSS 是 5 位字母數(shù)字的序列號。
  
    要唯一標識一個系統(tǒng),可能需要使用前面列表中的一個或多個元素來構造其標識符。
  
  表 2 介紹了一些系統(tǒng)中唯一系統(tǒng)標識符的生成方式:
    
  表 2. 當前一些系統(tǒng)的唯一標識符的生成


















描述 唯一標識符 序列號
現(xiàn)有的 IBM System p5(以前為 pSeries®)系統(tǒng) “TTTTSSSSS” 0-9,A-F
IBM System p5 系統(tǒng) “SSSSS” 0-9,A-F
IBM BladeCenter® JS20 “TTTTCCSSSSS” 0-9,A-F
(例如:E、I、J、O、Q、S、U)
09,AF


  
  注意:
    唯一標識符 列定義了系統(tǒng)生成唯一標識符所需的“TTTTMMMCCSSSSS”的子集:
  
      值“SSSSS”表示不需要計算機類型、型號號碼和生產(chǎn)廠家來生成唯一系統(tǒng)標識符。
      值“TTTTSSSSS”表示不需要型號號碼和生產(chǎn)廠家來生成唯一系統(tǒng)標識符。
      值“TTTTCCSSSSS”表示不需要型號號碼來生成唯一系統(tǒng)標識符。
  
  表 3 顯示了 AIX 5L 如何報告系統(tǒng)信息。 
  
   表 3. AIX 5L 系統(tǒng)信息


























描述 唯一標識符 序列號
子例程 unamex
xutsname.nid
32 位唯一系統(tǒng)標識符 “0x0123454C”
子例程 uname
utsname.machine
以 16 進制字符串表示的 32 位唯一系統(tǒng)標識符 “0123454C”
命令 uname -m
(注意:不要使用這個命令。)
“00”|| 以 16 進制字符串表示的 32 位唯一系統(tǒng)標識符 ||“00” “000123454C00”
命令 uname -M “IBM,”||“TTTT”||“-”||“MMM” “IBM,7042-681”
命令 uname -L 分區(qū)號和名稱 “兩個名稱”


  
    表 4 顯示了 AIX 5L Version 5.3 中可用的標識。(AIX 5L Version 5.1 和 Version 5.2 都需要使用經(jīng)過授權的程序分析報告 (APAR)。)
    
  表 4. AIX 5L Version 5.3 系統(tǒng)標識(對于 AIX 5L Version 5.1 和 AIX Version 5.2 也是相同的)
  











命令 描述
命令 uname -f 以 16 進制字符串表示、不帶“0X”前綴的 64 位分區(qū)/系統(tǒng)唯一標識符。
命令 uname -F 以 16 進制字符串表示、不帶“0X”前綴的 64 位系統(tǒng)唯一標識符。



    AIX 5L Version 5.3 還實現(xiàn)了下面的新的定義:
  
      unamex subroutine xutsname.nid 字段
      uname subroutine utsname.machine 字段
      uname command -m 標志
  
    uname 命令標志輸出 -M、-U 或 -L 并沒有什么變化。
  
  AIX 5L Version 5.3 uname 標志與 AIX 5L Version 5.2 和 Version 5.1 兼容
  
    在 AIX 5L Version 5.3 中,對于前面部分中提到的以及下面前兩個示例中使用的 uname 命令標志,并沒有什么改變。
  
    請注意,uname -L 的輸出可以表示經(jīng)過分區(qū)的計算機。這里的結果與 AIX 5L Version 5.1 和 AIX 5L Version 5.2 的結果是一致的: 
  




# uname -u
IBM,02 10 F190F

# uname -M
IBM,9111-520

# uname -L
1 testsp

# uname -MuL
IBM,9111-520 IBM,02 10 F190F 1 testsp



    對于這臺計算機,它的 nid 為 cf190f 4c,longnid 為 80001815。
  
  
  新的 AIX 5L Version 5.3 uname 命令標志
  
    基于更新的設計,為 /usr/bin/uname 命令添加了兩個新的標志,以便可靠地生成唯一系統(tǒng)標識。這些標識符僅針對新的硬件: 
  
    -F 標志顯示計算機的標識號。這是一個 16 進制數(shù)字的字符串,對于所有的系統(tǒng)唯一。 
    -f 標志顯示LPAR 配置中分區(qū)的標識號。這是一個16 進制數(shù)字字符串,對所有系統(tǒng)中的所有分區(qū)唯一。


示例




# uname -F
80001815 2DF00000
# uname -f
80001815 2DF00001


    對于這臺計算機,它的 nid 為 cf190f 4c,longnid 為 8000181552DF00001。
  
  
  更新的編程接口規(guī)范
  
    /usr/include/sys/utsname.h Header 文件定義了用來查詢系統(tǒng)標識和其他系統(tǒng)數(shù)據(jù)的結構。在 AIX 5L Version 5.1 和 Version 5.2 中,該結構定義如下: 
  


struct xutsname {
unsigned int nid; int reserved[3];


    對于 AIX 5L Version 5.3,這個結構添加了一個新的成員 longnid 以存儲 64 位系統(tǒng)標識符: 
  


struct xutsname {
unsigned int nid;
int reserved; // to preserve size and alignment
unsigned long long longnid;


    在從 AIX 5L Version 5.1 和 Version 5.2 遷移到 Version 5.3 時,唯一變化的編程接口是 xutsname 結構,它將成為成員 nid,但是這種改變是透明的。它的大小和類型保持不變。請注意,對于新的硬件,計算方法有所改變,而對于現(xiàn)有的硬件,計算方法保存不變。
  
  對于 AIX 5L Version 5.1 和 Version 5.2,可以使用 APAR
  
    對于目前的 AIX 5L Version 5.1 和 Version 5.2 用戶,可以進行升級以使用新的系統(tǒng)標識生成命令和 API。相關的 APAR 是:
     AIX 5L Version 5.1: IY52116 
    AIX 5L Version 5.2: IY52125
    出于兼容性原因?qū)?AIX 5L Version 5.1 進行了相應的改變,但是因為 AIX 5L Version 5.1 不支持真正需要 64 位標識的那些系統(tǒng),所以在 AIX 5L Version 5.1 中,并沒有實現(xiàn)所有改變的特性。
  
  將來的兼容性
  
    對于 AIX 5L 來說,總的方向是從 32 位系統(tǒng)標識符遷移到 64 位系統(tǒng)標識符。要為這種轉變做好準備,應用程序應該完成下列工作:
  
    遷移到返回 64 位系統(tǒng)標識符的命令,以取代返回 32 位系統(tǒng)標識符的命令,例如,uname ?C funame -F。 
    對于以編程的方式查詢系統(tǒng)標識符的應用程序:
      開始在 AIX 5L Version 5.3 中構建應用程序。
      停止使用 uname() subroutine。
      在使用 uname() subroutine 時,停止使用 xutsname 結構的 nid 成員。
      在使用 unamex() subroutine 時,開始使用 xutsname 結構的 longnid 成員。
    一旦完成了從 32 位到 64 位系統(tǒng)標識符的改變,所有生成 32 位系統(tǒng)標識符的命令和子例程都將返回 0 或由 0 組成的字符串,而這將取決于所使用的接口。
  
  結束語
  
    對于當前的 AIX 5L Version 5.1 或 Version 5.2,使用完整的數(shù)據(jù)字符串“TTTTMMMCCSSSSS”或其中的某些部分來標識系統(tǒng),在用于檢查系統(tǒng)標識的其他命令和系統(tǒng)接口 部分中對其進行了解釋。要獲取唯一系統(tǒng)標識符,可以使用帶 -Mu 或 -MuL 標志的 uname 命令。-L 標志用于生成邏輯分區(qū)號。
  
    AIX 5L Version 5.3 添加了兩個新的標志,-F 和 -f。您可以使用 uname -F 和 uname -f 的輸出來確定任何基于 POWER5 處理器的計算機或分區(qū)。
  
    AIX 5L Version 5.3 系統(tǒng)標識編程接口發(fā)生了變化。xutsname.nid 和 xutsname.longnid 包含了原始的和新的系統(tǒng)標識信息。
  
    您可以使用相關的 APAR 將 AIX 5L Version 5.3 的改變應用于 AIX 5L Version 5.1 和 Version 5.2。
  
  
  作者簡介
  
    Wayne 致力于 IBM eBusiness™ 和服務器操作系統(tǒng)的跨行業(yè)支持。他為應用程序設計、問題確定、系統(tǒng)性能調(diào)優(yōu)和應用程序基準測試方面的解決方案提供者和開發(fā)者提供 IBM 中間件和 IBM System p5 UNIX 專業(yè)知識。他擁有德州大學奧斯汀分校計算機科學碩士學位。您可以通過 huangw@us.ibm.com 與他聯(lián)系。 
    
     Huy-Suong 曾擔任過兩年的項目經(jīng)理,她目前是 IBM AIX 的項目經(jīng)理。她是一名通過 Project Management Institute (PMI) 認證的項目管理專業(yè)人員 (PMP),并且正準備通過 IBM PMP 認證。她擁有德州大學奧斯汀分校業(yè)務管理碩士學位。您可以通過 huysuong@us.ibm.com 與她聯(lián)系。
 
     Brad 十多年來一直幫助解決方案提供者在 IBM AIX 環(huán)境中移植、優(yōu)化、測試和增強他們的應用程序。除了幫助解決方案提供者以外,Brad 還喜歡申請各種專利、發(fā)表文章以及在開發(fā)人員會議上進行演講。您可以通過 bcobb@us.ibm.com 與他聯(lián)系。
  

分享到

多易

相關推薦