在kernel的代码中, 有时候会看见IS_ENABLED(CONFIG_XXXX)来测试某个Kconfig选项是否开启(即选中为y或者m). 如 if(IS_ENABLED(CONFIG_TIME_LOW_RES) && timer->is_rel) rem -= hrtimer_resolution; 这里当TIME_LOW_RES这个Kconfig选项配置为y或m, 并且timer->is_rel不为0时调用rem -= hrtimer_resolution. ...
這個宏函數跟IS_ENABLED的類似, 不同之處是,如果CONFIG_SND_DUMMY被設置爲了m,那麼IS_REACHABLE(CONFIG_SND_DUMMY)在靜態編譯到kernel中的文件中被預處理的時候會返回0,而在編譯到模塊的文件中預處理時會返回0.原因是MODULE宏只有在編譯模塊代碼期間纔會被定義. 下面我們將config_enabled(CONFIG_SND_DUMMY)展開: ...
初始化过程,首先如上节先将物理内存加入到memblock.memory中,然后在函数arm64_memblock_init中初始化memblock。 //start_kernel() ->setup_arch() ->arm64_memblock_init()void__initarm64_memblock_init(void){consts64linear_region_size=BIT(vabits_actual-1);fdt_enforce_memory_region();memblock_remove(1...
snapd.system-shutdown.service enabled speech-dispatcher.service generated spice-vdagent.service enabled spice-vdagentd.service enabled ssh.service enabled ssh@.service static sshd.service enabled stop-bootlogd-single.service masked stop-bootlogd.service masked sudo.service masked syslog.service enabled s...
今天在装某个软件的时候,修改了selinux参数。修改selinux 的某个参数值为Disable。导致 linux系统不能启动。出现如下错误 Kernel panic -not syncing:Attempted to kill init! 后经过向群友请教和自己操作和互联网搜索,终于找到了解决办法。 在linux启动界面出现时,按f2进入如下界面: ...
浅析Linux Kernel[5.11.0]内存管理(一) 一、前言 本文基于如下环境: Kernel Version:5.11.0 Debugging Env:Ubuntu 20.04.02 x64(Kernel Version—5.11.0) 近来笔者计划从脏牛漏洞入手,分析Linux内核漏洞,故在开始之前学习了Linux内核中内存管理部分相关内容,下文权当笔者学习过程整理的笔记。如有不当之处,望读者不...
Linux x86-64Linux Kernel - Version: 4.0 to 5.3 Goal FromSELinux Frequently Asked Questions(FAQ): Security-enhanced Linux (SELinux) is a reference implementation of the Flask security architecture for flexible mandatory access control. It was created to demonstrate the value of flexible mandatory ac...
Enable/disable kernelandmodulebase offset ASLR (Address Space Layout Randomization)ifbuiltintothe kernel.WhenCONFIG_HIBERNATIONisselected, kASLRisdisabledbydefault.WhenkASLRisenabled, hibernation will be disabled. 假设我们不使用nokaslr参数,CONFIG_RANDOMIZE_BASE选项可用,则将kaslr标志位加到内核加载标志中 ...
kdb> Uncompressing Linux... done, booting the kernel.进入了kdb内核调试,输入go继续,kdb> go[ 139.889951] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b[ 139.889951][ 141.730569] random: nonblocking pool is initialized...
浅析Linux Kernel[5.11.0]内存管理(一) 一、前言 本文基于如下环境: Kernel Version:5.11.0 Debugging Env:Ubuntu 20.04.02 x64(Kernel Version—5.11.0) 近来笔者计划从脏牛漏洞入手,分析Linux内核漏洞,故在开始之前学习了Linux内核中内存管理部分相关内容,下文权当笔者学习过程整理的笔记。如有不当之处,望读者不...