給你一個 Linux 系統,如何判斷它的位數?
我經常用的,有這么幾種方式。
第一個,使用命令:
uname -m。
uname命令在 Linux 中用于顯示與操作系統內核相關的信息,加上 -m 可以顯示處理器的架構名稱。
比如 x86_64,表示的是 64 位處理器,i686 表示的是 32 位處理器。
從處理器架構可以間接的判斷操作系統的位數,不過這個也只能作為參考。
有些系統做了特殊配置或者虛擬化技術等等,這個方法就不行。
第二個,使用:
getconf LONG_BIT
命令,這個命令專門用于獲取操作系統的位數,在大多數情況下,得到的結果都是沒問題的。
第三個,通過寫代碼來判斷。
#include#include // 包含_WORDSIZE宏定義的頭文件 int main() { #if defined (__WORDSIZE) && __WORDSIZE == 32 printf("32-bit system "); #elif defined (__WORDSIZE) && __WORDSIZE == 64 printf("64-bit system "); #else printf("Waring: Unable to determine system bitness! "); #endif return 0; }
在這個頭文件中,有個宏定義叫 WORDSIZE,數值要么是 32 要么是 64,用過這個宏定義也能判斷出系統的位數。
當然,也有同學會通過 long 類型的長度來判斷,long 類型在 32 位系統一般占 4 字節,在 64 系統一般占 8 字節。不過這也跟編譯器有關系,也不排除 64 位系統占 4 字節的情況。
關于判斷操作系統的位數,還有哪些方法,歡迎在評論區交流。
-
處理器
+關注
關注
68文章
19436瀏覽量
231307 -
Linux
+關注
關注
87文章
11351瀏覽量
210497 -
位數
+關注
關注
0文章
3瀏覽量
2414
原文標題:如何判斷Linux系統的位數
文章出處:【微信號:學益得智能硬件,微信公眾號:學益得智能硬件】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
linux系統和windows系統的區別
LINUX系統教程之如何在Linux系統下進行編程
國內最好用的linux系統_linux系統入門命令
![國內最好用的<b class='flag-5'>linux</b><b class='flag-5'>系統</b>_<b class='flag-5'>linux</b><b class='flag-5'>系統</b>入門命令](https://file.elecfans.com/web1/M00/C5/63/pIYBAF9Fxh6ASBHfAAB9KR3NRV0820.jpg)
如何判斷硬件是否具有嵌入式Linux支持
![如何<b class='flag-5'>判斷</b>硬件是否具有嵌入式<b class='flag-5'>Linux</b>支持](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論