嵌入式Linux操作系统

嵌入式和传统PC的区别

  • 嵌入式系统的定义:嵌入式系统是“控制、监视或者辅助操作机器和设备的装置”,以应用为中心,以计算机技术为基础、软件硬件可裁减、适应应用系统对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。
  • 嵌入式系统相对通用计算机(PC)而言:
    • 嵌入性:需要与某些物理世界中的特定环境和设施紧密结合。
    • 专用性:面向某个特定应用。
    • 实时性:主要用来对宿主对象进行控制。
    • 可靠性:有些嵌入式系统所承担的计算任务涉及产品质量、人身设备安全和国家机密等重大事务;有些宿主对象需要工作在无人值守的环境中;
    • 可裁减性:供开发人员根据实际需要量体裁衣,去除冗余,使系统达到最精简的配置。
    • 功耗低:宿主对象是小型应用系统,没有容量较大的电源。
最大不同点 :嵌入式CPU大多工作在为特定用户群所专门设计的系统中 ;将通用CPU中许多由板卡完成的任务集成到芯片内部 ;有利于嵌入式系统在设计时趋于小型化 ;具有很高的效率和可靠性

注:也可以从软件【RTOS】实时角度;和硬件【MCU】角度进行理解。

嵌入式系统的特点:
形式多样、面向特定应用
多种类型的处理器和处理器体系结构
实时性和高可性要求
高效能 (efficiency)
嵌入式系统使用的操作系统一般是适应多种处理器、可剪裁、轻量型、实时可靠、可
固化的嵌入式操作系统
开发需要专门工具和特殊方法

Linux中c语言开发的流程

  1. 编写源代码:使用编辑工具如Vi编辑器来编辑源程序。
  2. 编译源代码:工具GCC;命令格式:gcc -o hello hello.c  【gcc -o 目标文件名  源文件名】
  3. 运行程序:如“./hello”
  4. 调试程序:GDB

注:到目前为止,linux下的C语言编程基本结束。可执行文件基于x86架构。若在嵌入式环境中还需进行下面的步骤:

  1. 交叉编译: arm-linux-gcc 后可在目录下查看到hello可执行文件,该文件运行不了,是基于ARM架构的。
  2. 编写Makefile


GCC编译的流程

  1. 预处理(Pre-Processing)
  2. 编译(Compiling)
  3. 汇编(Assembling)
  4. 链接(Linking)


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值