310 likes | 465 Views
KIDE 集成开发环境概述. 成研所操作系统团队. 嵌入式 Linux 开发工具 Eclipse 集成开发环境 KIDE 概述 针对嵌入式开发的功能模块. 目录. 行业背景. 嵌入式软件平台是我国软件行业的一个重要发展领域,是关系到我国掌握嵌入软件 核心技术 、缩短与发达国家技术差距并保证 网络安全 的重要问题。 嵌入软件领域也被认为是我国最有可能赶上世界先进水平并取得突破进展的领域,得到国家 高度重视 。 平台得到广泛的应用,可以大大提高公司的研发 效率 ,优化资源配置,并提高公司的 核心竞争力 。. 机站设备 传输设备 核心网设备 终端设备 ….
E N D
KIDE集成开发环境概述 成研所操作系统团队
嵌入式Linux开发工具 Eclipse集成开发环境 KIDE概述 针对嵌入式开发的功能模块 目录
行业背景 • 嵌入式软件平台是我国软件行业的一个重要发展领域,是关系到我国掌握嵌入软件核心技术、缩短与发达国家技术差距并保证网络安全的重要问题。 • 嵌入软件领域也被认为是我国最有可能赶上世界先进水平并取得突破进展的领域,得到国家高度重视。 • 平台得到广泛的应用,可以大大提高公司的研发效率,优化资源配置,并提高公司的核心竞争力 。
机站设备 • 传输设备 • 核心网设备 • 终端设备 • … • 脱离开发主机 • 文件系统 • 启动脚本 单板集成 上层应用开发 • LSP整合了传统嵌入式Linux开发的2大部分: • 内核配置 • 设备驱动 LSP开发 • 系统初始化、引导、解压、启动配置 • 根文件系统 • 最小系统设备驱动 嵌入式Linux开发流程 Bootloader开发
嵌入式Linux开发的特点 • 交叉嵌入式开发 • 主机:编码、编译、构建 • 目标板/机:调试、测试 • 实时性、稳定性要求高 • 严格控制开发出的内核尺寸 • 开发初期调试困难 • 点灯 • 串口输出 • 开发工具繁多、复杂,界面不友好
传统开发工具的缺陷 • Cygwin • 命令行界面,对于大型工程,操作异常繁琐 • 需要用户写Makefile • Eclipse • 整体缺乏针对嵌入式的解决方案 • Tornado • 主要支持Vxworks • 高额的License费用
嵌入式Linux开发工具 Eclipse集成开发环境 KIDE概述 针对嵌入式开发的功能模块 目录
历史背景 • Eclipse最初是由IBM公司发行,于2001年11月发布1.0版。由于成熟度低,饱受业界批评。 • 2003年3月发布2.1版,引起轰动。 • IBM将Eclipse捐献给开源组织Eclipse.org • IBM的子公司OTI仍然领导着Eclipse的开发 • 许多知名大公司从Eclipse平台上发展开来,如HP、Oracle、Sybase、Borland、Suse、Rational Software、RedHat…
开放式、可扩展的IDE • Eclipse的特点 • 目前,Eclipse已经开始提供Java,C,C++语言开发的功能插件。 • 能扩展到任何语言的开发,甚至能成为图片绘制的工具。 • Eclipse是一个开放源代码的项目,任何人都可以下载Eclipse的源代码,并且在此基础上开发自己的功能插件。 • 通过插件开发环境PDE可以任意扩展Eclipse的功能,可以作为各种编程工具,也可以作为一个应用程序,例如MIS。
Eclipse平台 • 运行时最小集合 • 加载所有插件 • 工作台/JFace/SWT • Java开发工具 • Java开发插件 • 编辑/编译/运行 • 调试/发布 • 插件开发环境 • 开发插件的插件 • 自动创建/处理 • 调试/部署插件 • 工作空间 • 资源访问 • 遍历 • 资源变化 • 批量修改 Eclipse架构
Eclipse组件 • 平台核心 • 让每样东西都动起来,再加载所需外挂程序。启动时首先运行这个组件,再用它启动其他外挂程序。 • 工作空间 • 管理项目及其内部资源 • 项目与工作空间下的数据夹一一对应 • 工作空间维护一个历史纪录,记录每个资源的改变。 • 每个项目都有一个性质,如Java项目。
工作台 视图 透视图 Eclipse组件 • 工作台:除平台核外最基本的组件,Eclipse主窗口。 • 视图:工作台内部的不同种类的小窗口。以不同的视野看整 个项目,如整个项目的错误信息。 • 透视图: Eclipse预设好,或者用户定义的一定数量的视图, 这些视图的大小、位置都已经定义排列好。主要是 为了执行某项特定工作,而选择的视图功能集合。 如开发、调试。
Eclipse组件 • 图形API:SWT/JFace • 开发出的组件拥有Windows界面外观 • 设计出比AWT/SWING更美观的界面 • 尽管本身不具跨平台性,但早已移植到几个主流操作系统。 • 开发出的Java程序不需要移植,已经为各操作系统提供统一编程接口。 • 作为应用程序开发和插件开发区别不大
Eclipse组件 • 开发工具SWT Designer
Eclipse的视图、透视图、菜单、动作都是通过扩展方式实现的Eclipse的视图、透视图、菜单、动作都是通过扩展方式实现的 Plugin开发 • 开发工具:PDE • PDE=Plugin Develop Evironment • 插件扩展方式
嵌入式Linux开发工具 Eclipse集成开发环境 KIDE概述 针对嵌入式开发的功能模块 目录
KIDE介绍 • 由成研所开发,主要针对嵌入式Linux开发的集成开发环境 • 基于Eclipse的图形化界面,和Windows一致的风格 • 包含标准Linux内核 • 包含成研所开发的另一套产品:强实时操作系统KLinux • 交叉式调试开发环境
KIDE的优势 • 编码、编译、构建、调试统一界面,解决了一直以来Linux嵌入式开发工具不统一的问题。 • 可集成支持标准Linux内核、KLinux、商业发布版Linux • 一整套的交叉调试工具,多种断点类型,内核态与用户态两种调试方式,3种调试类型。 • 支持4种主流CPU体系,多种类型目标板CPU • 提供各种LSP模板,并在不断扩充 • 成研所针对嵌入式各领域的解决方案、开发合作
发布版Linux 上层应用 内核 驱动 标准Linux 应用 LSP Downloadable KLinux Bootable KIDE开发对象 KIDE
网线 串行线 KIDE体系结构 Eclipse 发布版Linux 用户态应用 工程管理 调试器 标准Linux 用户态应用 内核 编辑器 第3方工具 KLinux 内核态应用 底层命令行工具 内核 Windows BootLoader 主机 目标机
嵌入式Linux开发工具 Eclipse集成开发环境 KIDE概述 针对嵌入式开发的功能模块 目录
工程向导 • KLinux工程 • LSP • Downloadable • Bootable • 用户态工程 • 交叉构建 • 本地构建 • 内核态工程 • 内核工程 • 模块工程
工程管理器 • 工程导入、导出
工程管理器 • 编译构建
为KLinux增加的配置 工程管理器 • 内核配置
标签,点击切换 编辑器 支持中文注释
切换目标板 3种调试类型 调试配置 • 通过调试配置,我们可以实现多板调试,多种调试类型,符号表选择,源路径选择。 配置符号表
调试视图 • 线程表查看,堆栈查看 • 线程运行、暂停、恢复 • 双态调试 • Attach/Detach • 单步调试
查看视图 • 6大查看窗口:变量、表达式、寄存器、反汇编、内存、断点