嵌入式系统:CPU(SOC:system on chip)、内存、存储设备(Flash->NAND Flash)、输入(按键、触摸屏)
输出(LCD)、声音(音频芯片)、其他(USB芯片、网卡芯片)。
引导代码:bootloader
驱动:需要针对电路板进行重新开发移植
内核:可裁剪
开发环境:交叉编译
仿真器
Bootloader(设置内核参数,从指定位置加载内核到内存,跳到内核入口执行)
-> kernel(【Driver】核芯数据结构的初始化,初始化外部设备,挂载根文件系统,执行应用程序【详见“华清远见 系统开发移植”相关课程】)-> RootSystem(Application)
编译器移植-> Bootloader-> 内核移植-> 设备驱动程序开发-> 应用程序开发
宿主机的linux系统(比如虚拟机)通过串口与开发板进行交互
通过NFS(网络文件系统)共享宿主机的linux系统的文件系统
串口通讯:minicon,超级终端
波特率等根据开发手册进行设定
TFTP(简单文件传输协议 UDP):bootloader通过TFTP协议从主机端下载编译好的内核和Ramdisk
TFTP:/etc/xinetd.d/tftp
TFTP:disable = no server_arg = -s /tftpboot (这个目录要存在)
NFS:/etc/exports 实现网络上共享和挂载远程文件系统
/source/rootfs *(rw, sync, no_root_squash) *表示允许所有的网络主机服务
把开发板配套的根文件系统拷贝到共享目录 /sourcefootfs下
/etc/init.d/portmap restart
/etc/init.d/nfs-kernel-server restart
交叉编译:gdb-server gdb-client
SRAM(STATIC):0-4K
SDRAM(同步动态):3000 0000 - 3400 0000K 64M
输出(LCD)、声音(音频芯片)、其他(USB芯片、网卡芯片)。
引导代码:bootloader
驱动:需要针对电路板进行重新开发移植
内核:可裁剪
开发环境:交叉编译
仿真器
Bootloader(设置内核参数,从指定位置加载内核到内存,跳到内核入口执行)
-> kernel(【Driver】核芯数据结构的初始化,初始化外部设备,挂载根文件系统,执行应用程序【详见“华清远见 系统开发移植”相关课程】)-> RootSystem(Application)
编译器移植-> Bootloader-> 内核移植-> 设备驱动程序开发-> 应用程序开发
宿主机的linux系统(比如虚拟机)通过串口与开发板进行交互
通过NFS(网络文件系统)共享宿主机的linux系统的文件系统
串口通讯:minicon,超级终端
波特率等根据开发手册进行设定
TFTP(简单文件传输协议 UDP):bootloader通过TFTP协议从主机端下载编译好的内核和Ramdisk
TFTP:/etc/xinetd.d/tftp
TFTP:disable = no server_arg = -s /tftpboot (这个目录要存在)
NFS:/etc/exports 实现网络上共享和挂载远程文件系统
/source/rootfs *(rw, sync, no_root_squash) *表示允许所有的网络主机服务
把开发板配套的根文件系统拷贝到共享目录 /sourcefootfs下
/etc/init.d/portmap restart
/etc/init.d/nfs-kernel-server restart
交叉编译:gdb-server gdb-client
SRAM(STATIC):0-4K
SDRAM(同步动态):3000 0000 - 3400 0000K 64M