Contiki Ported To x86 243
lt writes "The ultra-small Contiki OS has now been ported to the x86. This should give those of you who have an old x86 PC that is too small to run even the smallest of Linux variants, a chance to browse the web, set up a web server, and doing other essential stuff. If you're curious to see how it looks, there is a live VNC demo running."
As it will be slashdotted... (Score:3, Informative)
Some info before it gets toasted
The web pages you are watching are served by a web server running under the Contiki operating system on an an Ethernut embedded Ethernet board, which consists of a 14 MHz AVR Atmega128 microcontroller with 32 kilobytes of RAM and 128 kilobytes of flash ROM, and a RealTek RTL8019AS Ethernet chip.
Local Remote State Retransmissions Timer Flags 80 210.214.211.245:1166 FIN-WAIT-2 0 91 80 210.49.61.249:4000 ESTABLISHED 0 3 80 216.15.124.126:61657 FIN-WAIT-2 0 25 80 209.210.4.252:54730 ESTABLISHED 0 1 * 80 200.164.245.202:33548 ESTABLISHED 0 3 * 80 216.15.124.126:61654 FIN-WAIT-2 0 21 80 217.72.69.144:1077 SYN-RCVD 0 3 * 80 208.191.17.177:1937 ESTABLISHED 0 3 * 80 172.137.24.29:3071 SYN-RCVD 6 43 * 80 208.19.133.132:38209 ESTABLISHED 0 1 * 80 192.35.35.35:35197 ESTABLISHED 0 3 * 80 66.32.100.20:57348 ESTABLISHED 0 1 * 80 160.36.251.198:56226 FIN-WAIT-2 0 4 80 160.36.251.198:56225 ESTABLISHED 0 3 * 80 160.39.180.236:53790 FIN-WAIT-2 0 36 5900 67.82.242.97:27960 ESTABLISHED 0 3 * 80 200.164.245.202:33549 ESTABLISHED 0 2 *
Specs, just in case (Score:4, Informative)
A Post-Modern Cool Idea (Score:4, Informative)
Re:VNC (Score:4, Informative)
Interestingly enough I (in the past week) have thought about implementing Contiki on top of CP/M-86 [z80.de] 4. CP/M-86 4 is a rather small OS, and can optionally run DOS programs (the infamous DOSPLUS [seasip.info]), and I think, with tools I can easily find for free, I can code low-level stuff for it.
It can be done. IWBN, too.
-uso.
Pre-emptive multitasking? (Score:4, Informative)
Hah, apparently this didn't stop the Geoworks [toastytech.com] people from pulling off a fully preemptive OS on the lowly 8088.
Re:Pre-emptive multitasking? (Score:2, Informative)
Compare the fluidity of RiscOS with the fluidity of a Linux machine.
The first is used in many real time applications, like datacasting, black boxes, etc. while the second is good for server and desktop but not really for real-time demanding apps.
Simply because in a cooperative system, you know when an event shall occur.
Re:Wow! (Score:4, Informative)
Not the first.. (Score:5, Informative)
http://www.eznos.org [eznog.org]
Here's an XT running EZNOS [eznos.org].. there's also other 8088/87 projects, a 386 and other stuff.. neat.
Also, a web server running on the original IBM PC [no-ip.com].
I've been wating to get these people slashdotted ;)...
Re:Pre-emptive multitasking? (Score:5, Informative)
Re:VNC (Score:2, Informative)
The 8086 came first, and was 16-bit throughout.
The 8088 was designed to be cheaper, as it had an 8bit external data bus.. but the processor was 16-bit.
http://firstpc.no-ip.com/en/8086/page02/x86c.ht
That page is running on an 8086, BTW.
If you want something more useful (Score:5, Informative)
Older versions would run on an 8086 (one of the original design goals was that the WYSIWYG word processor could keep up with your typing on an 8086). The current version requires a 386. 2 megs of RAM should be fine for most things (even 1 will work ok), although you'd probably want at least 4 or 8 megs for browsing the web.
Re:neat but seriously how useful? (Score:2, Informative)
Linux From Scratch. [linuxfromscratch.org]
like RedHat, Gentoo, Suse that runs on a 486 with superior performance and uses virtual no resources like Contiki?
Yes. [linuxfromscratch.org]
but what REAL available distros are available?
Linux From Scratch. [linuxfromscratch.org]
Re:VNC (Score:2, Informative)
Re:Pushing the limits of computing (Score:3, Informative)
Well.. let's be really correct here, it was a 32/64-bit machine.
(32 bit processor)
In my book it counts as a 32-bit machine, but in any case, it's quite a far cry from an 8-bit machine.
Re:VNC (Score:2, Informative)
Java port to C64!! (Score:4, Informative)
Re:No wonder (Score:3, Informative)
Re:Am I the only one (Score:4, Informative)
I'm sure it would be plenty fast at 3ghz though
It's still alive! (Score:4, Informative)
These guys know what they're doing. Impressive indeed!! I got to change Window, and delete some text, then go to the addressbar and delete some more and trying to write in an address. But there were 7 other people connected too, doing other things. If I were alone, I bet I could've used the machine just fine.
Come to think of it, I still got my old dusty C64.. Maybe it's time to revive it
Re:Cute! (Score:3, Informative)
RTFA: "An RS-232 (serial) card or Ethernet connection is required for Internet connectivity" so it should be fast enough.
Re:If you want something more useful (Score:3, Informative)
It's possible to load PC-GEOS onto a GRiDPad 1910, which is another ancient machine, then load Graffiti handwriting recognition from Palm for Zoomer on it, and get a large PDA. Now if only I had all the applications from the Zoomer. (Mine died some time ago.)
Re:Pre-emptive multitasking? (Score:3, Informative)
You are talking about relocation, which has nothing to do with multitasking
Anyway, even code with absolute branches can be loaded wherever you want in memory, it just means the loader/linker has to be able to do the necessary fixups.
You are both wrong. (Score:3, Informative)
They have 16-bit internal registers ( and utilize one 16-bit page register and another offset register to acheive 20-bit memory space ). The data bus is insignificant to the definition.
The REASON "8-bit" is associated with the x86 architecture is BECAUSE the 8086 and 8088 are backward-compatible with the 8080, an 8-bit processor with a 16-bit address space.
Remember folks, the general definition of the "bits" attribute of a processor is how many bits wide the main instruction path(s) is / are.
Example: 80286: 16-bit registers, 24-bit address space, 16-bit memory bus.
Example: 80386SX: 32-bit registers, 24-bit address space, 16-bit memory bus.
Address space, memory bus width and instruction path width do not have to be the same. Do not assume they are tied together.
Re:Great Idea! (Score:3, Informative)
You are wrong about that. Anything that can be done on a conventional computer (or a RAM if you want a theoretical model) in polynomial time can also be done on a TM in polynomial time. However it will be a different polynomial. AFAIK at most you will add one or two to the degree of the polynomial. But in the real world it is less than that which seperates feasible from infeasible algorithms. Sorting slower than O(n^2) really makes the TM look slow.