×
嵌入式开发 > 详情

Linux已被移植到Atmel的ATmega微控制器

发布时间:2020-07-13 发布时间:
|

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

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

但是,这并没有阻止出生在俄罗斯现居住于加利福尼亚州的程序员德米特里·格林伯格进行向该器件中移植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)的必要。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
CC-Link现场总线及应用实例