Embedded Software

software

How about you actually tell people something about the hardware you have... the processor for instance might be useful information.

Blane.

Reply to
Blane Bramble
Loading thread data ...

I have a 300 MHZ embedded computer, what embedded operating system software is out there that I can load onto a 250mb solid state hard drive.

Iam using a solid state hard drive to cut down on space and portability.

Thanks Mikle

Reply to
EYES ONLY

Considering the hardware you might put anything on that device. What exactly are going to use it for?

Regards, Sasho

--
Alexander Popov                    ProSyst Bulgaria Inc.
Tech Leader                        48 Vladajska Str.
RTOS and JVM Dept.  	           Sofia 1606, Bulgaria
Phone:  +359 2 952 3581/204        http://www.prosyst.com
Mobile: +359 887 663 193           OSGi Technology Leaders
----------------------------------------------------------
Reply to
Alexander Popov

I have a 300 MHZ AMD Geode processor embedded computer. What embedded operating system software is out there that I can load onto a

250mb memory card as a hard drive. Iam using a memory card to cut down on space and portability.

I have windows 95 loaded at the moment as a operating system, with a GPS program.

Iam using a GPS for navigation, the Windows 95 takes up to much memory.

Thanks Mikle

Reply to
Eyes Only

I have a 300 MHZ AMD Geode processor embedded computer. What embedded operating system software is out there that I can load onto a

250mb memory card as a hard drive. Iam using a memory card to cut down on space and portability.

I have windows 95 loaded at the moment as a operating system, with a GPS program.

Iam using a GPS for navigation, the Windows 95 takes up to much memory.

Thanks Mikle

Reply to
Eyes Only

I've installed Debian linux on a 300MHz Geode using both 128MB and 256MB flash cards. Worked great.

--
Grant Edwards                   grante             Yow!  Yow! Is this sexual
                                  at               intercourse yet?? Is it,
                               visi.com            huh, is it??
Reply to
Grant Edwards

onto a

sexual

it,

Hi Grant, Just curious, how did adapt Debian for use on a flash-based system? Specifically I'm interested in ...

- how you shrunk Debian down to that size?

- how did you disable the swap file?

- did you make the filesystem read-only?

- did you use a ramdisk?

- did you disable things like kernel logging, /tmp

I'm investigating this option for our embedded system, but it seems there is alot of work to make it suitable for embedded.

Thanks! Mark

Reply to
Mark

We also started with Debian and made changes to run on flash. We found 32M to be quite usable as bare-bone console mode system.

Manually remove all the unnecessary files.

Don't use swap at all.

Yes, but optional.

Yes, can't do without it.

No, but they go to ramdisk first.

But you only have to do it once, you can just re-tar from that image.

Reply to
Linnix

It's not that much really...

You can start by getting the kernel and the major libraries (libc, libpthread, libmath, whatever you need...), /etc (again whaterev you need from it) and /dev then build a busybox with the tools that you plan to use on the target. Then just add whatever is missing in busybox (ssh for example)... partition the space so that you can have a OS image on a read only based system (kernel, libs, etc.) - cramfs is a good choice for that... another read-write partition should be used for the software/configs - jffs2 is a good choice for that. Then setup the system to use tmpfs for /var, /tmp and a generic ram based partition - use it to protect the flash from unnecessary (temp) writings.

and that's pretty much all there is...

Regards, Sasho

--
Alexander Popov                    ProSyst Bulgaria Inc.
Tech Leader                        48 Vladajska Str.
RTOS and JVM Dept.  	           Sofia 1606, Bulgaria
Phone:  +359 2 952 3581/204        http://www.prosyst.com
Mobile: +359 887 663 193           OSGi Technology Leaders
----------------------------------------------------------
Reply to
Alexander Popov

checkout the Familiar project (familiar.handhelds.org) - if you have a iPAQ install it and see what the linux image contains - then just compile the same software for x86... Familiar is running great on 16MB flash (with jffs2) and

32MB RAM on a 200MHz StrongARM CPU...

Or you can just remove all unnecessary stuff from a pre-made Linux distro (like debian, slack, fedora...). You may want to use nanoX or some other embedded X alternative... There are many open/free linux based navigation projects (search

formatting link
for example)...

Regards, Sasho

--
Alexander Popov                    ProSyst Bulgaria Inc.
Tech Leader                        48 Vladajska Str.
RTOS and JVM Dept.  	           Sofia 1606, Bulgaria
Phone:  +359 2 952 3581/204        http://www.prosyst.com
Mobile: +359 887 663 193           OSGi Technology Leaders
----------------------------------------------------------
Reply to
Alexander Popov

libpthread, libmath, whatever you need...), /etc (again whaterev you need from it) and /dev then build a busybox with the tools that you plan to use on the target. Then just add whatever is missing in busybox (ssh for example)...

system (kernel, libs, etc.) - cramfs is a good choice for that...

jffs2 is a good choice for that.

partition - use it to protect the flash from unnecessary (temp) writings.

Thanks for the reply. I'm just getting started into this so I hope these questions aren't too basic. I must be overestimating the work required, but it seems a bit daunting to set this all up from scratch.

- are there /etc packages available? Or do you have to build these from scratch?

- For a distribution like Debian, I'm sure there must be a swap file enabled. Is this easy to turn off? Does this require a kernel re-build?

- I've successfully built a semi-working system, but it is 150Mb (I need to fit into 64Mb). I'm also concerned about the system writing to flash on it's own and wearing it out prematurely. Is it sufficient to make a ramdisk (or tmpfs?) for /var and /tmp? When you mentioned a 'generic ram based partition' what area of the filesystem would this be required?

- Is cramfs recommended for a flash-based system? My initial attempt used ext3, but again I'm not sure how to ensure that the system doesn't write to flash on it's own.

Thanks for your suggestions!

Mark

Reply to
Mark

Mikle

You might be ahead to check out "buildroot" for uClibc and Busybox:

formatting link

This is a cross-hosted distribution that you can build on most Linux machines. Kudos, Erik Andersen.

To get "buildroot", follow the directions under "Accessing CVS" for module "buildroot".

- Glen

Alexander P> >

install it and see what the linux image contains - then just compile the same software for x86... Familiar is running great on 16MB flash (with jffs2) and

32MB RAM on a 200MHz StrongARM CPU...

(like debian, slack, fedora...). You may want to use nanoX or some other embedded X alternative...

formatting link
for example)...

-- Glen Call snipped-for-privacy@flash.net

Reply to
Glen Call

Try HardHat Linux. Google for BlueCat and HardHat. I use it on PC104 systems with '386 equivalent. Some systems have GPS on them.

--
Russ Lyttle
Not Powered by ActiveX
http://home.earthlink.net/~lyttlec/philosophy/logos.html
Reply to
crynwulf

Try "Embedded Linux, Hardware, Software, and Interfacing", Graig Hollabaugh, Ph.D ISBN 0-672-32226-9. It has step-by-step instructions and scripts targeting several processors. I built his example as an exercise and can attest that it does work.

Also "Embedded Linux", John Lombardo, ISBN 0-7357-0998-x has some good info on using BlueCat and PeeWeeLinux.

--
Russ Lyttle
Not Powered by ActiveX
http://home.earthlink.net/~lyttlec/philosophy/logos.html
Reply to
crynwulf

You can take the ones that you embedded system will require from the standard Debian distro. Remove all that you don't need (depending on what applications you plan to have there)

No distribution REQUIRES swap. To turn it of just remove the "swapon" lines from the rc.x scripts. In order to do that just grep the init.d directory for swapon/swapoff and comment the lines

yep - that is toooo much :) Ok, here os waht I suggest:

  1. Read the From PowerUp to Bash HOWTO (tldp.org)
  2. Read the Linux from Scratch Guide
  3. Start from scratch :))
3.1 build a kernel for the target and boot it (it should come up to the init failure) 3.2 build libc, libpthreads, libmath as dynamic libs (.so). these along with libdl and ld-linux are sufficient for a startup. Also build init, busybox. 3.3 populate your fs with these libs, busybox, login (is login available in busybox??) and init, /etc, /dev. Then define /var and /tmp as tmpfs in /etc/fstab. It's a good idea to make your own /etc/init.d scripts or at least remove everything unnecessary from the existing ones.
  1. boot!
  2. See where the system crushes and provide the stuff that it requires. If it wants something that you don't need modify the /etc/init.d files that try to start the things that are not available...
  3. repeat 4 and 5 until you get to a shell prompt...

In order to protect the application available flash from unnecessary writing use JFFS2 - it's specifically designed for flash! Checkout the Wiki in familiar.handhelds.org for docs on understanding, making, using jffs2

cramfs is a read-only fs. NO ONE can write on it - it simply does not support writing :) for the stuff that needs to be protected (kernel, system libs, busybox ect.) use cramfs...

Regards, Sahso

--
Alexander Popov                    ProSyst Bulgaria Inc.
Tech Leader                        48 Vladajska Str.
RTOS and JVM Dept.  	           Sofia 1606, Bulgaria
Phone:  +359 2 952 3581/204        http://www.prosyst.com
Mobile: +359 887 663 193           OSGi Technology Leaders
----------------------------------------------------------
Reply to
Alexander Popov

I'd also add=20

Building Embedded Linux Systems By Karim Yaghmour April 2003=20 ISBN: 0-596-00222-X

416 pages, $44.95 US, $69.95 CA, =A331.95 UK=20

The book is quite good for newbies.

Regards, Sasho

gh,

fo

--=20 Alexander Popov ProSyst Bulgaria Inc. Tech Leader 48 Vladajska Str. RTOS and JVM Dept. Sofia 1606, Bulgaria Phone: +359 2 952 3581/204

formatting link
Mobile: +359 887 663 193 OSGi Technology Leaders

----------------------------------------------------------

Reply to
Alexander Popov

...

use JFFS2 - it's specifically designed for flash! Checkout the Wiki in familiar.handhelds.org for docs on understanding, making, using jffs2

writing :)

use cramfs...

All file system can be mounted read-only. In fact, we mount ext2 fs read-only by default and remount read-write for modifications. We would not want to use the fs without the option of updating, even for the kernel.

Even if you have a read-only cramfs, you can't stop "stupid_program >

/dev/hda".

Reply to
Linnix

use JFFS2 - it's specifically designed for flash! Checkout the Wiki in familiar.handhelds.org for docs on understanding, making, using jffs2

support writing :)

use cramfs...

I agree, but unlike ext2, cramfs has a pretty good compression (maybe the best compression used in a filesystem). The point here is that with cramfs you have both protected files and efective usage of the limited flash storage space.

--
Alexander Popov                    ProSyst Bulgaria Inc.
Tech Leader                        48 Vladajska Str.
RTOS and JVM Dept.  	           Sofia 1606, Bulgaria
Phone:  +359 2 952 3581/204        http://www.prosyst.com
Mobile: +359 887 663 193           OSGi Technology Leaders
----------------------------------------------------------
Reply to
Alexander Popov

Google "yet another rescue disk" A perl bit of software that makes putting together minimal systems much more idiot proof. It may not quite do exactly what you want, but that's why god invented source code.

Reply to
<root

I have "cheated"...

I have an application which uses openh323 and vpn to go between two "boxes". Chose Netier Netxpress XL2000's, available for about $25 each on the surplus market. 300 Mhz PIIMMX, 256 MB ram. And I have it running on a CF card. I bought 512MB cards for the project, but I have it living "un trimmed" in

169MB, which includes the openh323 application and libraries (which include pwlib) and Some other added libraries I needed to make it play.

I used Slackware's "Zipslak". It is running in UMSDOS, the CF card still FAT formatted. Zipslak is installed in a windoze box easiest, and done in a matter of minutes. OK, no gui, but who needs that?

Java, not sure of how you'd do that.

But this one was simple beyond belief. I can trim it down by eliminating unused modules, executables and libraries.

The only problem, and I have yet not been able to put a number on this, is the number of read/write cycles that a CF card can do. It won't last forever, but with all I've read on it, still don't know when it may die.

These XL-2000's have 72 MB Disk-on-Chip. But don't know if I can make it that skinny, and getting these DOC's to work with Linux is not easy, documentation I've found is circularly convoluded (you chase your tail and find no information that relates to other already retrieved info)

So, so what it's worth.

snipped-for-privacy@dyb.com

software

Reply to
George Csahanin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.