The Long Life of Hardware
- Commodore 64
- Built in 1982
- End Production 1993
- 1 Mhz 6510 cpu
- 64K RAM 20K ROM
- No user serviceable parts
- Original List Price $595
Want to run C64 software?
- Commodore 64 system on Ebay today costs around $10.50
- Run a software emulator on Linux
- Vice -- http://www.viceteam.org/
Video Games
- Elevator Action
- Released by Tatio in 1983
Elevator Action today?
- Buy the game on Ebay (if you find it)
- Use an emulator
- Multiple Arcade Machine Emulator (MAME)
- http://www.mame.net/
Old Operating Systems
- VMS – “Virtual Memory System” was the operating system that ran on the VAX 11/780
VMS Today
- VMS has been ported to both the DEC Alpha and the Intel Itanium.
- OpenVMS – http://www.openvms.org
- FreeVMS – http://freshmeat.net/project/freevms
Points to Remember
- Hardware lasts forever
- Software lasts a little longer
Compiler Flow
- 1) Parse human provided code
- 2) Translate to RTL
- 3) Optimize
- 4) Link to resolve references to external library calls
- 5) Generate machine code
Compilers
- Native
- Runs on Machine A, builds code that runs on Machine A
- Cross Compiler
- Runs on Machine A, builds code that runs on Machine B
Why use a cross compiler?
- The target machine is so new that a native compiler does not exist yet.
- The target machine has too little memory to run a native compiler.
- The target machine is too slow to do useful development.
- The target system uses a different architecture than the development system
Linux on multiple architectures
What's needed to build a compiler?
- The source code of GCC
- And an older version to build the new version with.
- The source code of Glibc
- Building C requires the C library.
- Binutils
- This is the assembler, the linker, BFD, objdump, nm and others.
- Linux kernel source (for system headers)
What does the Cobalt Qube2 offer?
- Apache
- NFS
- Apple Talk
- Samba
- DNS
- DHCP
- SNMP
Why is this an appliance?
- No keyboard (use the arrow keys to set the IP address)
- No mouse
- No monitor
- No removable media
- It is for the most part, a sealed system.
Security patches or OS upgrades?
- With no removable media, the options are
- limited.
- Software updates through a web page using CGI and Java.
- Network boot followed by NFS mounted root from another machine.
- TFTP (Trivial File Transfer Protocol)
Other examples of Linux based appliances
- Phone systems (cell phones and PBXs)
- Robots
- Routers
- PDAs
- Digital music players