User Tools

Site Tools


use_cases

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
use_cases [2014-08-21 19:28]
tbird20d
use_cases [2014-09-11 21:35] (current)
tbird20d
Line 1: Line 1:
 Different people want to reduce the size of the Linux kernel for different reasons. ​ This page holds a few use cases for a small Linux kernel, as a means of illustrating some of the requirements and possibilities for this "​feature"​ of the kernel. Different people want to reduce the size of the Linux kernel for different reasons. ​ This page holds a few use cases for a small Linux kernel, as a means of illustrating some of the requirements and possibilities for this "​feature"​ of the kernel.
  
-==== Linux as a bootloader =====+===== Linux as a bootloader =====
 Linux can be used on some devices at the primary bootloader. ​ The size requirements on the first-stage bootloader are more stringent than for the ultimate running operating system. Linux can be used on some devices at the primary bootloader. ​ The size requirements on the first-stage bootloader are more stringent than for the ultimate running operating system.
  
 There are projects along these lines, such as the [[http://​www.coreboot.org|coreboot project]], There are projects along these lines, such as the [[http://​www.coreboot.org|coreboot project]],
-or petitboot+or [[https://​www.kernel.org/​pub/​linux/​kernel/​people/​geoff/​petitboot/​petitboot.html|petitboot]]
  
 === Requirements === === Requirements ===
Line 13: Line 13:
   * re-use of Linux device drivers   * re-use of Linux device drivers
  
-==== Linux in the Internet of Things ====+===== Linux in the Internet of Things ​=====
 There is currently a migration from 8-bit micro-controllers to 32-bit micro-controllers in the deeply embedded space. ​ These types of processors are used in industrial automation, sensors, infrastructure,​ and more... ​ Some of these devices may need to be powered for a long time on a coin cell battery, or be powered by ambient energy. There is currently a migration from 8-bit micro-controllers to 32-bit micro-controllers in the deeply embedded space. ​ These types of processors are used in industrial automation, sensors, infrastructure,​ and more... ​ Some of these devices may need to be powered for a long time on a coin cell battery, or be powered by ambient energy.
  
Line 25: Line 25:
 [[http://​electronicdesign.com/​embedded/​practical-advice-running-uclinux-cortex-m3m4|Practical Advice on Running uClinux on Cortex-M3/​M4]] [[http://​electronicdesign.com/​embedded/​practical-advice-running-uclinux-cortex-m3m4|Practical Advice on Running uClinux on Cortex-M3/​M4]]
  
-==== single-purpose program ​running entirely in L2 cache ==== +===== Program ​running entirely in L2 cache ===== 
-A program may want to run at high performance entirely within the L2 cache of the processor it is on.+A program may want to run at high performance entirely within the L2 cache of the processor it is on.  If the combination of kernel and program is small enough, it can avoid accessing main memory entirely. 
 + 
 +===== Linux entirely in on-chip memory ===== 
 +Here are some chips with on-chip memory that could run Linux with no external RAM: 
 +  * http://​linuxgizmos.com/​quad-core-cortex-a15-soc-features-6mb-on-chip-ram/​ TI quad-core ARM chip with 6 MB on-chip RAM 
 +  * Intel Quark - http://​en.wikipedia.org/​wiki/​Intel_Quark (512KB on-board SRAM)
use_cases.1408649326.txt.gz · Last modified: 2014-08-21 19:28 (external edit)