Barriers to Progress
Despite the hype about nanotechnology in general and nanocomputing in particular, a number of significant barriers must be overcome before any progress can be claimed.
Work is needed in all areas associated with computer hardware and software design:
Nanoarchitectures and infrastructure
Communications protocols between multiple nanocomputers, networks, grids, and the Internet
Data storage, retrieval, and access methods
Operating systems and control mechanisms
Application software and packages
Security, privacy, and accuracy of data
Circuit faults and failure management
Basically, we can divide the obstacles to progress into two distinct areas:
Hardware: the physical composition of a nanocomputer, its architecture, its communications structure, and all the associated peripherals
Software: new software, operating systems, and utilities must be written and developed, enabling very small computers to execute in the normal environment.
A nanocomputer has to be constructed. Very few researchers are even close to achieving this goal. The process of self-replicating and building is nowhere near reality. The fundamental design of a nanocomputer has not even been proposed yet. No one has specified any realistic standards for architecture, CPU speeds/clock speeds, data formats. They simply don't exist in a real form. Work to achieve this goal will take substantial effort and may require from 1525 years of work.
Nanosoftware is not in much better shape. No architecture or hardware standards have been designed yet; it's very difficult to design software that will run on a computer that doesn't exist. Will we see Microsoft Windows products on a future nanocomputer? Unlikely. Entirely new operating systems must be designed and built for nanocomputers. Until there is a fundamental design in place with a basic architecture, very little software design can occur.