02 2017 档案
摘要:1、busybox源码下载及配置 https://busybox.net/downloads/ 1.1、修改Makefile (1) ARCH = arm(2) CROSS_COMPILE = /usr/local/arm/arm-2009q3/bin//arm-none-linux-gnueabi
阅读全文
摘要:在内核启动的最后阶段启动了三个进程 进程0:进程0其实就是刚才讲过的idle进程,叫空闲进程,也就是死循环。进程1:kernel_init函数就是进程1,这个进程被称为init进程。进程2:kthreadd函数就是进程2,这个进程是linux内核的守护进程。这个进程是用来保证linux内核自己本身能
阅读全文
摘要:1、为什么需要根文件系统(1)init进程的应用程序在根文件系统上(2)根文件系统提供了根目录/(3)内核启动后的应用层配置(etc目录)在根文件系统上。几乎可以认为:发行版=内核+rootfs(4)shell命令程序在根文件系统上。譬如ls、cd等命令总结:一套linux体系,只有内核本身是不能工
阅读全文
摘要:1、配置网络部分,主要是使能CONFIG_IP_PNP以在2中能够看到Root file system on NFS选项Networking support Networking options TCP/IP networking IP: kernel level autoconfiguration
阅读全文
摘要:1.nfs方式(挂载的为文件夹) bootargs=root=/dev/nfs nfsroot=192.168.1.105:/mnt/rootfs/rootfs ip=192.168.1.88:192.168.1.105:192.168.1.1:255.255.255.0::eth0:off ini
阅读全文
摘要:1、尝试编译分析结果 配置编译下载尝试 (1)检查Makefile中ARCH和CROSS_COMPILE(2)make xx_defconfig(3)make menuconfig(4)make -j4、 显示结构:Starting kernel ...后没有任何反应(...为uboot输出的最后信
阅读全文
摘要:1、编译内核出现以下错误 Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at kernel/timeconst.pl line 373. /root/working/Hi3520D_SDK_V2.0.3
阅读全文
摘要:从stext开始到cpu_idle()结束 1、Makefile分析 (1)Makefile中刚开始定义了kernel的内核版本号。这个版本号挺重要(在模块化驱动安装时会需要用到),要注意会查,会改。(2)在make编译内核时,也可以通过命令行给内核makefile传参(跟uboot配置编译时传参一
阅读全文
摘要:以2.6.35.7版本的内核为例 总结:.config决定了Make时的条件编译与连接。.config文件由两次配置第一次make XX_defconfig 第二次menuconfig。 1、分析源码目录下的单个文件 (1)Kbuild,Kbuild是kernel build的意思,就是内核编译的意
阅读全文
摘要:最近使用这个工具,普通用户可以登录root用户不可以登录。将vi /etc/ssh/sshd_config按照下述配置解决问题 修改sshd配置文件:vi /etc/ssh/sshd_config PermitRootLogin yes PubkeyAuthentication no Passwor
阅读全文
摘要:1、uboot借用(移植)了linux驱动(1)linux驱动本身做了模块化设计。linux驱动本身和linux内核不是强耦合的,这是linux驱动可以被uboot借用(移植)的关键。(2)uboot移植了linux驱动源代码。uboot是从源代码级别去移植linux驱动的,这就是linux系统的开
阅读全文
摘要:1、代码位置 (1)uboot命令体系的实现代码在uboot/common/cmd_xxx.c中。有若干个.c文件和命令体系有关。(还有command.c main.c也是和命令有关的) 2、传参方式 命令参数以argc&argv传给函数(1)有些uboot的命令还支持传递参数。也就是说命令背后对应
阅读全文
摘要:1、摘要 (1)、启动4步骤第一步:将内核搬移到DDR中第二步:校验内核格式、CRC等第三步:准备传参第四步:跳转执行内核(2)、涉及到的主要函数是:do_bootm和do_bootm_linux(3)、uboot能启动的内核格式:zImage uImage fdt方式(设备树)(4)、跳转与函数指
阅读全文
摘要:1、启动过程特征总结(1)第一阶段为汇编阶段(start.s)、第二阶段为C阶段(board.c中的start_armboot 函数)(2)第一阶段在SRAM中、第二阶段在DRAM中(3)第一阶段注重SoC内部、第二阶段注重SoC外部Board内部 2、移植时的注意点(1)x210_sd.h头文件中
阅读全文
摘要:1、编译uboot前需要三次make make distcleanmake x210_sd_configmake -j4 make distclean为清楚dist文件。 make x210_sd_config 跳转执行mkconfig用来配置并生成config.mk(board/samsung/x
阅读全文
摘要:1、配置编译 uboot的配置编译需要在linux原生文件夹下,因为在编译过程中会生成符号链接。在windows中不支持。配置方法是:首先cd进入uboot源码的根目录,然后在根目录下执行:make x210_sd_config。执行配置命令后,如果出现:Configuring for x210_s
阅读全文
摘要:1、shell中的变量定义和引用(1)变量定义和初始化。shell是弱类型语言(语言中的变量如果有明确的类型则属于强类型语言;变量没有明确类型就是弱类型语言),和C语言不同。在shell编程中定义变量不需要制定类型,也没有类型这个概念。(2)变量定义时可以初始化,使用=进行初始化赋值。在shell中
阅读全文
摘要:1.典型嵌入式linux系统启动过程: 嵌入式系统上电后先执行uboot、然后uboot负责初始化DDR,初始化Flash,然后将OS从Flash中读取到DDR中,然后启动OS(OS启动后uboot就无用了) 2.uboot必须解决哪些问题 1、自身可开机直接启动(1)一般的SoC都支持多种启动方式
阅读全文
摘要:1、什么是LCD? (1)LCD(Liquid Crystal Display)俗称液晶.(2)液晶是一种材料,液晶这种材料具有一种特点:可以在电信号的驱动下液晶分子进行旋转,旋转时会影响透光性,因此我们可以在整个液晶面板后面用白光照(称为背光),可以通过不同电信号让液晶分子进行选择性的透光,此时在
阅读全文
摘要:nand 1、nand的单元组织:block与page(大页Nand与小页Nand)(1)Nand的页和以前讲过的块设备(尤其是硬盘)的扇区是类似的。扇区最早在磁盘中是512字节,后来也有些高级硬盘扇区不是512字节而是1024字节/2048字节/4096字节等。Nand也是一样,不同的Nand的页
阅读全文
摘要:1.裸机运行程序时一般情况下程序代码小于16KB将其下载地址设置到BL1的起始地址。BL0会自动加载并执行BL1。 当程序大于16kB时无法直接运行。 例如UBOOT就大于16KB,执行的原理为。将程序分为BL1、BL2两部分。 其中BL1初始化DDR并且指定BL2的起始地址。BL2为真正需要的程序
阅读全文

浙公网安备 33010602011771号