In theory, NCs can use a wide variety of microprocessors and OSes, because Java insulates the applications software from the underlying hardware and system software. Everything from the object file format and above is platform-independent and could run on any NC that has a Java run-time engine.