我目前正踮着脚尖进入自定义内核构建。
我首先从VirtualBox中的VM开始,安装了UbuntuServer20.04的新发行版。
我遵循了以下程序:
# getting the archive
cd ~/src/linux/
wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.4.91.tar.xz
tar -xf linux-5.4.91.tar.xz
cd linux-5.4.91/
# getting the config of the kernel currently running
cp -v /boot/con
我在基于ARM V7架构的嵌入式主板上工作,只有128MB的闪存,我想在里面安装Bootloader Image,Linux Kernel Image以及根文件系统,为此我的主要目标是减少引导加载程序和Linux Kernel image的大小。
为了减小内核大小,我做了以下优化:
1. Deleted all the printk messages from displaying which reduced some memory,
2. Turning off Sysfs Support decreased the size of the kernel substant
我正在学习linux中的分页概念,大多数时候我发现页面大小是固定的(默认值是4kb)。
当我在互联网上搜索更多时,我发现IBM有一个支持可变大小分页的POWER体系结构。
The POWER7® processor supports mixing 4 KB, 64 KB, and 16 MB page sizes within a single segment.
在这里,我没有得到一件事,这个可变页面大小是否在运行时处理?我的意思是,如果可以随时按需分配可变页面大小??如果是,那怎么可能呢?
如果这不是正确的平台,请将这个问题移到正确的一个上。
我已经尝试了很长一段时间来修改内核配置,但没有成功。:-(
在meta-xxx-yyy/中有一个BSP,它的配方是-kernel/linux/linux_git.bb。我尝试覆盖名为meta-xxx-mylayer的层中的内核配置,在该层中有菜谱- kernel /linux/linux_git.bbappend和菜谱-kernel/linux/files/Fra.cfg
frag.cfg:
# CONFIG_NETFILTER is not set
CONFIG_AUTOFS4_FS=y
linux_git.bbappend:
COMPATIBLE_MACHINE_my_mach =
我收到一条错误消息:“卷boot只剩下5.3MB的磁盘空间。”
我在这个站点上查看了一些答案,我找到的关闭的答案提到了旧的linux内核,但是下面是我所有内核的列表。
ii linux-image-3.5.0-17-generic 3.5.0-17.28 i386 Linux kernel image for version 3.5.0 on 32 bit x86 SMP
ii linux-image-3.5.0-18-generic 3.5.0-18.29 i386 Linux kernel image for versio
众所周知,MMIO空间被映射(例如,通过/dev/mem,通过调用remap_pfn_range()作为单个PTE来映射,这样就没有struct页面了。
在使用ioremap_wc()时也是这样吗,还是ioremap_wc()创建了一个由页面和许多PTE组成的结构?
操作系统: Linux x86_64