Ubuntu Linux发行版已经被移植到最便宜、最便携的平台中:一个Atmel的ATmega微控制器。

拥有一个20MHz的8位AVR处理器,128KB的闪存和整块16KB的SRAM,ATmega1284P并不是建立微型计算机最合乎逻辑的选择。它是在Arduino原型平台中找到的同样基础的设计:一个微控制器,设计使用它的32引脚接口与如传感器、电机和LED等外部硬件相连接。

德米特里·格林伯格的设计,可以在一个Atmel微控制器上运行完整的GNU/Linux操作系统,尽管速度缓慢

但是,这并没有阻止出生在俄罗斯现居住于加利福尼亚州的程序员德米特里·格林伯格进行向该器件中移植Linux内核和完整的桌面操作系统的挑战。

“经常可以看到初学者在微控制器论坛上询问能否在他们微不足道的8位小微处理器中运行Linux”,格林伯格在博客中对于他的灵感解释说。“这些问题的结果通常是笑声。这种问题在Linux论坛中也是经常见到的,询问Linux运行的最低要求是什么。通常答案是Linux要求一个32位架构和一个MMU并至少有1MB的RAM来满足内核的需要。”

格林伯格决定不用软件而是用硬件仿真ATmega芯片,这样的限制可能被打破。设计他自己的ARM仿真器——“移植别人的代码没有乐趣,再加上没有仿真器;我发现以一种方式写这些代码可以使它们易于移植到8位的设备中”,他解释说——格林伯格可以使ATmega1284P芯片假装成PXA255 ARMMv5TE处理器。

将芯片从原有的20MHz超频到24MHz,并增加一个16MB的SIMM模块用于RAM,以及1GB的SD卡用于操作系统本身,格林伯格能够成功的加载一个Ubuntu Linux的老副本到设备上,连同图形用户界面。

虽然它可以工作,但结果并不是完全的快速守护进程:格林伯格计算的启动过程大约需要两个小时才能运行到BASH Shell(同样的事情上网本可以在平均2秒钟左右完成),进一步需要四个小时来加载操作系统的其他部分。“启动X(图形用户界面)需要花费更多的时间”,格林伯格补充道。

一个命令并在1分钟内获得一个回应。也就是说,实际上你可以使用它。比如今天我用它格式化了一个SD卡”。这绝对不是最快的,但我觉得它可能是最便宜、最慢、最简单的手工组装、最低的部件数量以及最低端的Linux PC。电路板是使用导线手工焊接的,甚至没有使用印刷电路板(PCB)的必要。

格林伯格的设计,是在非商业化得开源许可证下发布的,它可以移植到其他的微控制器,如更便宜的ATmega644。当你在讨论关于仅仅值8英镑的芯片时,然而,可能值得选择更强大的ATmega1284P。

这相当于一块ARMv5TE处理器运行在大约6.5KHz(没错,我就是要输入KHz而不是MHz),构建的全部细节可以在格林伯格的个人网站上找到。

Atmel跑Linux的arm芯片,Linux已被移植到Atmel的ATmega微控制器相关推荐

  1. Atmel跑Linux的arm芯片,linux下烧写atmel芯片

    linux下安装sam-ba驱动烧写atmel芯片 Install : You just have to unzip the 'sam-ba_cdc_x.y.linux_zz.zip' archive ...

  2. arm linux 时钟源 信息,Linux学习——ARM芯片时钟体系

    跟着视频学习了ARM芯片时钟体系,信息量有点大,做个笔记梳理梳理. 1.时钟体系的结构图 有很多外设,一些工作在AHB总线,一些工作在APB总线 CPU工作在FCLK,AHB总线工作在HCLK,APB ...

  3. 恩智浦arm芯片Linux,基于ARM处理器的工业控制系列【恩智浦】

    中国上海,2011年2月22日 -- 恩智浦半导体(NXP Semiconductors N.V.)今天宣布推出其基于ARM? Cortex?-M0处理器的LPC1200工业控制系列.LPC1200进 ...

  4. 痞子衡嵌入式:ARM Cortex-M内核那些事(2)- 第一款微控制器

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是第一款Cortex-M微控制器. 1.天生荣耀:ARM Cortex-M处理器由来 ARM公司自2004年推出ARMv7内核架构时,摒弃 ...

  5. Atmel跑Linux的arm芯片,Atmel针对Linux的低成本嵌入式设计推出新

    Atmel针对Linux的低成本嵌入式设计推出新 来源:dengzhiyu 作者:华仔 浏览:957 时间:2016-08-10 14:18 标签: 摘要: AtmelCorporation日前宣布推 ...

  6. linux下arm触摸屏显示,一些显示和触摸代码(linux on arm 平台)

    一些显示和触摸代码(linux on arm 平台) linux on arm 平台的一些显示和触摸功能 一.版本和平台: 代码版本:1.1 平台:linux arm开发板; LCD: 800x480 ...

  7. ARM Cortex-M3相比于ARM其他系列微控制器的优势和特点

    注:该文来源于网络,未仔细考证其来源,若有不当,还请知会 ARM Cortex-M3相比于ARM其他系列微控制器,具有以下优势或特点 1. **流水线+分支预测 ARM Cortex-M3与ARM7内 ...

  8. 大容量Flash型AT91系列ARM核微控制器

    AT91FR40162是美国Atmel公司生产的AT91系列微控制器中的一员,具有ARM7TDMI核.大容量Flash存储器以及片内SRAM和外围.这种微控制器的特点是高性能--32位RISC体系结构 ...

  9. 嵌入式系统原理及应用《基于ARM Cortex-M3 内核的STM32F103系列微控制器》思维导图

    嵌入式系统原理及应用 <基于ARM Cortex-M3 内核的STM32F103系列微控制器>课程思维导图 目录 第一章 嵌入式系统概论 第二章 嵌入式系统开发 第三章 ARM Corte ...

最新文章

  1. wannafly 12 删除子串 dp
  2. 理解ArcIMS投影元素
  3. boost::python模块显示如何使扩展类pickleable
  4. java集合的功能_功能性Java集合
  5. JavaFX技巧14:StackPane子项-隐藏但不消失
  6. 计算机网络是将地理知识,计算机网络的基础知识精选.ppt
  7. python zipfile 乱码_python zipfile文件名乱码问题
  8. 如何备份数据_如何通过归档、备份和灾难恢复实现多云数据保护
  9. 【SSM面向CRUD编程专栏 7】springAop 事务控制
  10. python编辑器安装视频教程_Python安装教程(推荐一款不错的Python编辑器)
  11. 语义分割江湖的那些事儿——从旷视说起
  12. 【 Logistic Regression 】林轩田机器学习基石
  13. 数据结构利器之私房STL
  14. 数据库学习笔记3-隔离级别 Read Uncommitted
  15. MATLAB创建数组方法
  16. 原生Android应用接入flutter(详细步骤)
  17. 华为服务器告警状态,华为RH2288H V5服务器CPU告警
  18. android应用是非正式版本,Androidstudio 打包apk安装失败 应用是非正式发布版本,当前设备不支持安装...
  19. Pdf.js 解决电子印章问题(最新)
  20. 吴恩达《深度学习专项》笔记(十一): CNN示例学习:VGG, ResNet, MobileNet

热门文章

  1. 搜狗高速浏览器怎么设置页面字体 设置方法介绍
  2. 关于Typora编辑器编写markdown文档时插入出现前字吞后字的解决方法
  3. wince手机投屏代码_除了 iOS,这些手机系统你肯定没用过
  4. mybatis plus 导出sql_软件更新丨mybatis-plus 3.0.7 发布,辞旧迎新
  5. hbase1.1.1 连接集群_Hadoop2.7.1+Hbase1.1.2集群环境搭建(10) hadoop hbase kerberos
  6. php swoole udp,基于Swoole如何搭建UDP服务?
  7. Python IO 基本编程示例
  8. java编码问题详解
  9. 数据结构与算法————稀疏数组
  10. mac地址转换_mac电脑格式转化工具