建立嵌入式Linux开发环境-myqcloudcom.PPT

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
建立嵌入式Linux开发环境-myqcloudcom

gdb调试的任务 运行程序,可以给程序加上所需的任何调试条件 在给定的条件下让程序停止 检查程序停止时的运行状态 通过改变一些数据,可以更快地改正程序的错误 搭建嵌入式系统的远程调试环境 搭建原理 stub方案 远程调试原理 宿主机 Xwindow环境 GDB/XGDB 目标机 Stub程序 内核 应用程序 串口或TCP/IP连接 GDB用法? 在编译时,必须要把调试信息加到可执行文件中 使用编译器( cc/gcc/g++)的 -g 参数 字符型设备驱动 struct file_operations struct file struct inode 块设备驱动 块设备与字符设备的区别(数据管理方式) 读写单位 I/O请求 访问方式 block_device_operations Gendisk request队列作用 网络设备驱动--最重要的两个数据结构 net_device sk_buffer 作用? - * - Android应用程序构成 一个Android应用程序通常是由4个组件构成 活动(Activity) 意图(Intent) 服务(Service) 内容提供器(Content Provider) - * - 资源访问 程序用到的字符串资源需要在res/values/strings.xml中定义 在其他资源文件中采用“@string/资源名称”的形式访问 TextView ...... android:text=@string/hello / 在代码中可通过“R.string.资源名称”的形式访问 TextView tv = ...... // 初始化TextView控件 tv.setText(R.string.hello); Android底层开发 Android系统架构 Android 编译系统 make –j4, m, mm, mmm Android 系统分区及镜像文件 Boot Loader的使用 烧写Boot Loader 烧写方法 Boot Loader加载或烧写内核和文件系统 Boot Loader的操作模式 Bootloader编程: trampoline 接口? 嵌入式Linux开发的主要步骤 选择开发平台 建立嵌入式Linux开发环境 系统软件开发 建立引导装载程序Bootloader ARM-Linux内核 嵌入式文件系统 嵌入式设备驱动 嵌入式GUI 搭建远程调试环境 嵌入式Linux内核编译 区别make config、make menuconfig、make xconfig? 区别make, make zImage, make bzImage? Linux内核配置 Linux内核编译 内核下载与烧写 内存管理 内存管理内容 包含地址映射、内存空间的分配,有时候还包括地址访问的限制(即保护机制) 如果将I/O也放在内存地址空间中,则还要包括I/O地址的映射 另外,像代码段、数据段、堆栈段空间的分配等等都属于内存管理 影响内存管理的两个方面 ARM-Linux内核知识要点 MMU 作用? 地址映射方式种类? MMU “内存管理单元” 地址映射 对地址访问的保护和限制 MMU可以做在芯片中,也可以作为协处理器 (了解)段映射与页面映射的区别 32位虚拟地址 段映射表 bit20~bit31 bit0~bit19 拼接 bit20~bit31 物理地址 32位虚拟地址 首层映射表 bit20~bit31 二层映射表 拼接 bit20~bit31 bit12~bit31 bit12~bit19 拼接 bit0~bit11 物理地址 bit12~bit19 进程管理和调度 什么是进程? Linux进程的创建 三个系统调用 Linux进程的执行 fork vs. exec 进程的销毁—三个事件驱动 (了解)ARM-Linux进程主动调度过程 可分为4步 (1)将进程添加到事件等待队列中 (2)置进程状态为TASK_INTERRUPTIBLE(或TASK_UNINTERRUPTIBLE) (3)在循环中检查等待条件是否满足,不满足则调用schedule(),满足了就退出循环 (4)将进程从事件等待队列中删除 (了解)ARM-Linux进程被动调度时机 发生在系统调用返回的前夕 中断异常处理返回前 用户态处理软中断返回前 进程调度依据 Policy 调度策略,用来区分实时进程和普通进程 实时进程会优先于普通进程运行 Priority 进程(包括实时和普通)的静态优先级 Counter 进程剩余的时间片,起始值就是priority的值 可以看作是

文档评论(0)

laolao123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档