New kernel aims to bring Linux-like OS to 8-bit MCUs
Apr 23, 2004 — by LinuxDevices Staff — from the LinuxDevices Archive — 9 viewsA tiny new “Linux-like” operating system has been released under the GPL, according to a post in the LinuxDevices.com reader forum. LinLike8 aims to bring a Linux-like kernel to 8-bit microcontrollers (MCUs). Version 00.01.00 supports a Cypress Microsystems programmable system-on-chip (PSoC), according to its author, and can be downloaded now.
Eight-bit MCUs are tiny, inexpensive logic chips found in myriad simple electronic devices and systems.
Below is the full text of the forum post, which appeared this morning:
i find it is so trouble to handle more jobs to do in my application, but i use ONE psoc only. I face a case, my application needs to display something in a graphic LCD(i need to scan all points), handle scaning key, and read data from ADC (i use ADCINC14, it seems slow response compare to cpu, so i need to make a loop to wait) and … All these combine together, i believe no body can accept the performance. So i think i need a kernel inside.
I am a linux follower, so i think about linux, but yes, it is impossible that linux is so big for 8-bit system, i look around internet and can't get anything similar (if i wrong, pls correct me), but i don't want to use other embedded os, such as uC/OS-II, freertos … Since, i have studied the source code of linux, and i want my code also using this coding style, same API(i.e. POSIX) … So i make this linlike8 (linux like in 8-bit system), i only limit this simple os for 8-bit system, because we can use back linux in 32-bit system (i have not conside 16-bit, because the biggest market is 8-bit and 32-bit at these few years, correct me if i wrong).
This linlike8(in 0.01.00) is very very simple. It only contains a yield() API. It has already fulfilled my requirement (i do not need real time in my application). As well, most important as i want to reduce the code size, since many 8-bit mcu is so small in ROM and RAM size, such as cypress psoc. This limited feature is running and works for simple job is enough.
i post this linlike8 and the license is running exactly same to linux, under GPL. Anyone can read, modify and add-on anything you like (for your application need), i just hope you can share what you done to public, so hope you to post back to forum.
The design of linlike8 aims to different 8-bit mcu, but it is working in cypress psoc CY8C27XXXX only now (i just test in CY8C27643).
thanks
yan
The post ends with a link to download the LinLike8 source code. The 135KB zip file contains 116 files and directories with about 16,700 lines of code. Most of the C files contain a header stating “Yan created this following Linux.” Several assembly and other files are also included that are copyright Cypress Microsystems. In his forum post, the author claims the release is made under the GPL, but no license is included in the download.
Several Linux port projects have attempted to squeeze Linux down for use on MCUs and other small processors. uClinux is the best known.
SoCs with cores based on the ARM7 instruction set — currently well supported by uClinux — are roughly the modern equivalent in capabilities and power requirements to 8-bit MCUs.
Another Linux port for small processors is the Embeddable Linux Kernel Subset (ELKS), which aims to bring Linux to pre-386 class Intel chips like the 80286 and 80186.
A fairly comprehensive list of Linux ports is available from the Linux ports project.
If you have questions or comments about this story or the new LinLike8 kernel, post them here.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.