給你一個(gè) Linux 系統(tǒng),如何判斷它的位數(shù)?
我經(jīng)常用的,有這么幾種方式。
第一個(gè),使用命令:
uname -m。
uname命令在 Linux 中用于顯示與操作系統(tǒng)內(nèi)核相關(guān)的信息,加上 -m 可以顯示處理器的架構(gòu)名稱(chēng)。
比如 x86_64,表示的是 64 位處理器,i686 表示的是 32 位處理器。
從處理器架構(gòu)可以間接的判斷操作系統(tǒng)的位數(shù),不過(guò)這個(gè)也只能作為參考。
有些系統(tǒng)做了特殊配置或者虛擬化技術(shù)等等,這個(gè)方法就不行。
第二個(gè),使用:
getconf LONG_BIT
命令,這個(gè)命令專(zhuān)門(mén)用于獲取操作系統(tǒng)的位數(shù),在大多數(shù)情況下,得到的結(jié)果都是沒(méi)問(wèn)題的。
第三個(gè),通過(guò)寫(xiě)代碼來(lái)判斷。
#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; }
在這個(gè)頭文件中,有個(gè)宏定義叫 WORDSIZE,數(shù)值要么是 32 要么是 64,用過(guò)這個(gè)宏定義也能判斷出系統(tǒng)的位數(shù)。
當(dāng)然,也有同學(xué)會(huì)通過(guò) long 類(lèi)型的長(zhǎng)度來(lái)判斷,long 類(lèi)型在 32 位系統(tǒng)一般占 4 字節(jié),在 64 系統(tǒng)一般占 8 字節(jié)。不過(guò)這也跟編譯器有關(guān)系,也不排除 64 位系統(tǒng)占 4 字節(jié)的情況。
關(guān)于判斷操作系統(tǒng)的位數(shù),還有哪些方法,歡迎在評(píng)論區(qū)交流。
-
處理器
+關(guān)注
關(guān)注
68文章
19822瀏覽量
233692 -
Linux
+關(guān)注
關(guān)注
87文章
11469瀏覽量
212889 -
位數(shù)
+關(guān)注
關(guān)注
0文章
3瀏覽量
2490
原文標(biāo)題:如何判斷Linux系統(tǒng)的位數(shù)
文章出處:【微信號(hào):學(xué)益得智能硬件,微信公眾號(hào):學(xué)益得智能硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
如何判斷一個(gè)任意位數(shù)的數(shù)字為回文數(shù)?
LabView判斷小數(shù)點(diǎn)位數(shù)
什么是Linux系統(tǒng)?為什么要使用Linux系統(tǒng)
stm32的8位數(shù)據(jù)結(jié)構(gòu)怎么判斷正負(fù)?
Linux操作系統(tǒng)

linux系統(tǒng)和windows系統(tǒng)的區(qū)別
如何判斷系統(tǒng)的線性和時(shí)變性

LINUX系統(tǒng)教程之如何在Linux系統(tǒng)下進(jìn)行編程
Linux中如何判斷文件夾是否存在并新建文件夾

Linux系統(tǒng)有哪些優(yōu)點(diǎn)
國(guó)內(nèi)最好用的linux系統(tǒng)_linux系統(tǒng)入門(mén)命令

如何判斷硬件是否具有嵌入式Linux支持

linux系統(tǒng)基礎(chǔ)入門(mén)教程
貼片電阻的阻值如何判斷?

評(píng)論