I have developed an application that runs on an STD-BUS based platform. It boots under DOS, but then 'takes over the box' after booting. It provides UDP/IP (written by me) over 10BaseT to a host and drives as many as 24 serial ports at up to 38,400 baud each. The whole thing runs in 640K real mode. The .EXE file is about 50KB. The "original" cisco terminal server code would "support" 64 lines at up to 19200bps, with telnet/tcp/ip/rlogin/reverseTelnet/lots-o-stuff in 1Mbyte of memory (code + data. There was a whopping 256k of ROM as well, but that was copied into ram before running it.) It was more-or less running on a 286AT PC (640k) at one point as well. It seems kind of funny: we have people running UDP/IP on resource limited PICs, and it seems the next level up people are talking about multimegabyte platforms. As you move away from situations that "obviously" require hand-crafted code, it becomes more and more tempting to move to an "off the shelf" fully dynamic and featureful "sockets based" tcp/ip implementation that you buy or download from somewhere else. And those tend to get big pretty rapidly. (of course, the same thing can be said for hardware. Once you go beyond microcontrollers with limitted on-chip memory, RAM is pretty cheap.) FWIW, Internet connectivity is the current "big thing" for embedded operating systems (and "hardware".) At ESC last week, everyone who was anyone was touting their internet code, bundled with or without operating system, in sizes ranging from about 12k (Interniche technologies) to a host of linux and embedded linux offerings... BillW -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.