linux55
A. linux內核中斷之獲取中斷號
Linux內核中可使用 platform_get_irq() 函數獲取 dts 文件中設置的中斷號。
函數原型: int platform_get_irq(struct platform_device *dev, unsigned int num)
定義文件: driversaseplatform.c
中斷號獲取函數 platform_get_irq() 調用流程如下:
rk3399 使用的是 GICv3 ,對應 irq_domain->name 。
文件: drivers/irqchip/irq-gic-v3.c 。
translate() 函數實現如下:
以 RockPI 4A 單板 Debian 系統Linux 4.4內核中的獲取 HDMI 中斷號為例。
1、查找中斷號
從手冊「Rockchip RK3399 TRM V1.3 Part1.pdf」中,可以查到 HDMI_IRQ 中斷號,即55。
2、 dts 配置
文件: arch/arm64/boot/dts/rockchip/rk3399.dtsi
hdmi 使用的是 GIC_SPI 中斷,按照 gic_irq_domain_translate() 函數中處理,需要將中斷號55減去32,得到 dts 中的中斷號23。
註: interrupts = <中斷類型 中斷號 中斷觸發類型 中斷分區(對應哪個CPU cluster,PPI類型中斷特有)>
3、驅動函數
文件: driversgpudrm ockchipdw_hdmi-rockchip.c
此時, irq 返回值為55。
後續會介紹 GIC 和中斷注冊等實現函數。
B. linux把內存打到55%
1、使用top命令或htop命令查看當前內存使用情況,找出佔用內存較多的進程信息。
2、嘗試終止佔用內存較多的進程。
3、調整應用程序的內存使用設置,例如通過修改etc,nginx,nginxconf配置文件來控制Nginx佔用的內存大小。
4、升級系統硬體配置,例如增加內存條容量等。
C. Linux如何使用shell查看Linux是32位還是64
現在絕大多數用戶使用的是Windows系統,都知道Windows系統有分32位和64位,其實Linux系統也有32位和64位之分,你知道你的Linux系統是幾位的嗎?下面小編就教你如何使用shell查看Linux是32位還是64位。
手動查看系統位數
查看linux系統位數,可以分別執行以下兩個命令
getconf WORD_BIT
用於獲取word的位數
getconf LONG_BIT
用於獲取long的位數
對於64位系統以上兩個命令應該分別得到32和64。
判斷linux系統是32位還是64位有很多方法,推薦用getconf,然而有人認為getconf WORD_BIT=32則是32bit,getconf WORD_BIT=64則是64bit,請去64bit機器上執行,呵呵。getconf WORD_BIT顯示結果還是32,why?
32位的系統中int類型和long類型一般都是4位元組,64位的系統中int類型還是4位元組的,但是long已變成了8位元組inux系統中可
用」getconf WORD_BIT」和」getconf LONG_BIT」獲得word和long的位數
shell判斷系統位數
ldconfig
if [ $(getconf WORD_BIT) = 『32』 ] && [ $(getconf LONG_BIT) = 『64』 ] ; then
ln -s /usr/local/mysql/lib/mysql /usr/lib64/mysql
else
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
fi
補充一些其它方法
uname -a
32位:Linux localhost.localdomain 2.6.32-431.17.1.el6.i686 #1 SMP Wed May 7 20:52:21 UTC 2014 i686 i686 i386 GNU/Linux
64位:Linux demolinux 2.6.32-431.11.2.el6.x86_64 #1 SMP Tue Mar 25 19:59:55 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
上面就是Linux使用shell查看Linux32位和64位的方法介紹了,除了使用shell查看,你還能手動執行命令查看系統位數。
D. linux設置系統時區命令
修改系統時間。
linux系統時鍾有兩個,一個是硬體時鍾,即BIOS時間,就是我們進行CMOS設置時看到的時間,另一個是系統時鍾,是linux系統Kernel時間。當Linux啟動時,系統Kernel會去讀取硬體時鍾的設置,然後系統時鍾就會獨立於硬體運作。有時我們會發現系統時鍾和硬體時鍾不一致,因此需要執行時間同步,下面就分享一下時間設置及時鍾同步的命令使用方法。
date命令將日期設置為2014年6月18日
---- date -s 06/18/14
將時間設置為14點20分50秒
---- date -s 14:20:50
將時間設置為2014年6月18日14點16分30秒(MMDDhhmmYYYY.ss)
----date 0618141614.30