brew手机开发原理

简介: 嵌入式系统由于软件规模小,因此将引导代码和操作系统代码全部放到了系统的Flash芯片中了。正如我们所知道的,PC机上大部分的操作系统代码全部放在硬盘上,然后从硬盘上将程序载入内存执行。

嵌入式系统由于软件规模小,因此将引导代码和操作系统代码全部放到了系统的Flash芯片中了。正如我们所知道的,PC机上大部分的操作系统代码全部放在硬盘上,然后从硬盘上将程序载入内存执行。而嵌入式系统中目前大多数采用直接寻址的方式从Nor Flash芯片中读取代码并执行。因此,实际上嵌入式系统简化了PC系统的设计,将PC系统中的BIOS和硬盘代码全部集中到了一个Flash芯片上。因此BIOS虽然也可以使用Flash芯片,但是相对于嵌入式系统来说,他们的含义和作用却不同。
当前流行的分为NOR Flash和NAND Flash。
NAND与NOR Flash的区别主要有:
1、NAND Flash的空间比Nor Flash大
2、NAND Flash的访问速度比Nor Flash快
3、NAND Flash只有Page访问模式,Nor Flash可以进行Page和直接地址访问(直接地址访问也就是CPU可以直接寻址,或者叫做随机访问)
4、NAND Flash允许有坏块,但是Nor Flash不能有坏块
5、NAND Flash比NOR Flash更加便宜
Page模式允许一次读取多个字节,就像硬盘的最小读写单位是扇区一样,只不过Flash的最小读写单位叫做Page。Page模式下可以加快Flash的读写速度。由于NAND Flash只支持Page读写模式,因此使用NAND Flash做为代码区的时候需要外加控制电路。当前使用NAND做为代码区正在成为一种流行的趋势(因为NAND Flash成本更低),主要的实现方式有两种:一是添加仿真电路使得NAND Flash可以支持随机访问;二是增加一个类似硬盘的引导区(通常是第一个Page),系统启动的时候使用引导区的代码将全部NAND中的代码复制到RAM中执行。
在计算机系统中主要存在用户数据、程序数据和代码三种二进制内容。
二进制形态 PC系统 嵌入式系统
用户数据 存储在文件系统中,典型的设备是硬盘 存储在文件系统中,典型的设备是Flash存储芯片
程序数据 可读可写的数据存放在RAM中;只读数据存放在硬盘中,运行时与代码一起读入RAM 可读可写的数据存放在RAM中;只读数据存放在Flash中,与代码存储在同一个区域
代码 存储在文件系统中的文件里,运行时读入RAM由CPU执行 如果存储在NOR Flash等可随机访问的空间中则CPU直接在芯片中取指令运行;如果存储在NAND Flash等不能随机访问的空间中则需要读入RAM中运行

开发人员的主要工作是按需求在模拟器上,开发需要的程序,实现完整的功能,并且把程序的功能结构调试完成、考虑各种可能的情况把异常都处理好,然后编译到手机上进行真实环境调试和测试;一般这个过程都是边开发边调试边编译到手机上测试等步骤同时进行。

目录
相关文章
|
Shell 开发工具 git
brew - 常用命令
brew - 常用命令
977 0
|
3月前
|
关系型数据库 MySQL Linux
文章对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据自身需求选择最合适的安装方法
【10月更文挑战第8天】本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务及登录设置等。同时,文章对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据自身需求选择最合适的安装方法。
149 4
|
3月前
|
数据安全/隐私保护 iOS开发 MacOS
Homebrew 安装使用
【10月更文挑战第5天】Homebrew 是一款用于 MacOS 系统的软件包管理工具,能够便捷地安装、卸载及更新各类软件与工具。通过终端执行简单命令即可完成安装,并利用 `brew` 命令进行软件搜索、安装、更新和卸载等操作,极大提升了用户管理软件的效率。安装前需确认已安装 Xcode Command Line Tools。
557 6
|
5月前
Mac Brew install慢的问题
Mac Brew install慢的问题
90 1
|
6月前
|
数据安全/隐私保护
|
8月前
|
缓存 JavaScript 算法
Nodejs 第四章(Npm install 原理)
Nodejs 第四章(Npm install 原理)
100 0
|
缓存 前端开发 Linux
安装及管理程序(RPM、YUM、源码编译安装)(下)
1 Linux 应用程序基础 1.1 应用程序与系统命令的关系
194 1