Saturday, January 29, 2011

Computer Memory: RAM and ROM


Computer memory is the internal storage areas in the computer. It comes in the form of chips or ICs (Integrated Circuits), verses the computer storage which exists on tapes or disks. Moreover, the term memory is usually used as a shorthand for physical memory, which refers to the actual chips capable of holding data. Some computers also use virtual memory, which expands physical memory onto a hard disk.
There are two basic types of memory: ROM and RAM.
ROM - Read-only memory: On ROM, data is prerecorded for read only which can not be removed. ROM is nonvolatile and it retains its contents regardless the computer is on or off. Most personal computers contain a small amount of ROM that stores critical programs such as the program that boots the computer. In addition, ROMs are used in calculators and peripheral devices such as laser printers, whose fonts are often stored in ROMs. There are a few variations of ROM such as programmable read-only memory(PROM), which is manufactured as blank chips on which data can be written with a special device called a PROM programmer.
RAM - Random access memory: whose contents can be accessed (read, write and remove) in any order. This is in contrast to sequential memory devices such as magnetic tapes, discs and drums, in which the mechanical movement of the storage medium forces the computer to access data in a fixed order. RAM is usually used for primary storage in computers to hold active information such as data and programs. Common forms of RAM are: SRAM (Static RAM) and DRAM (Dynamic RAM).
RAM ICs are often assembled into plug-in modules. Some standard module types are: Single in-line memory module (SIMM) and Dual in-line memory module (DIMM).
There are also some hybrad memory types which combines characters of both RAM and ROM, such as Flash memory, NVRAM and EEPROM.
TypeVolatileWriteableErase SizeMax Erase CyclesCost (per Byte)Speed
SRAMYesYesByteUnlimitedExpensiveFast
DRAMYesYesByteUnlimitedModerateModerate
Masked ROMNoNon/an/aInexpensiveFast
PROMNoOnce, with a device programmern/an/aModerateFast
EPROMNoYes, with a device programmerEntire ChipLimited (consult datasheet)ModerateFast
EEPROMNoYesByteLimited (consult datasheet)ExpensiveFast to read, slow to erase/write
FlashNoYesSectorLimited (consult datasheet)ModerateFast to read, slow to erase/write
NVRAMNoYesByteUnlimitedExpensive (SRAM + battery)Fast

Sunday, January 23, 2011

WHO RUNS THE INTERNET


The Domain Name System
the authors created an architecture for interconnecting independent networks that could then be federated into a seamless whole without changing any of the underlying networks. This was the genesis of the Internet as we know it today. 
In order to work properly, the architecture required a global addressing mechanism (or Internet address) to enable computers on any network to reference and communicate with computers on any other network in the federation. Internet addresses fill essentially the same role as telephone numbers do in telephone networks. The design of the Internet assumed first that the individual networks could not be changed to accommodate new architectural requirements; but this was largely a pragmatic assumption to facilitate progress. The networks also had varying degrees of reliability and speed. Host computers would have to be able to put disordered packets back into the correct order and discard duplicate packets that had been generated along the way. This was a major change from the virtual circuit-like service provided by ARPANET and by then contemporary commercial data networking services such as Tymnet and Telenet. In these networks, the underlying network took responsibility for keeping all information in order and for re-sending any data that might have been lost. The Internet design made the computers responsible for tending to these network problems.
A key architectural construct was the introduction of gateways (now called routers) between the networks to handle the disparities such as different data rates, packet sizes, error conditions, and interface specifications. The gateways would also check the destination Internet addresses of each packet to determine the gateway to which it should be forwarded. These functions would be combined with certain end-end functions to produce the reliable communication from source to destination. A draft paper by the authors describing this approach was given at a meeting of the International Network Working Group in 1973 in Sussex, England and the final paper was subsequently published by the Institute for Electrical and Electronics Engineers, the leading professional society for the electrical engineering profession, in its Transactions on Communications in May, 1974 . The paper described the TCP/IP protocol.
DARPA contracted with Cerf's group at Stanford to carry out the initial detailed design of the TCP software and, shortly thereafter, with BBN and University College London to build independent implementations of the TCP protocol (as it was then called – it was later split into TCP and IP) for different machines. BBN also had a contract to build a prototype version of the gateway. These three sites collaborated in the development and testing of the initial protocols on different machines. Cerf, then a professor at Stanford, provided the day-to-day leadership in the initial TCP software design and testing. BBN deployed the gateways between the ARPANET and the PRNET and also with SATNET. During this period, under Kahn's overall leadership at DARPA, the initial feasibility of the Internet Architecture was demonstrated.
The TCP/IP protocol suite was developed and refined over a period of four more years and, in 1980, it was adopted as a standard by the U.S. Department of Defense. On January 1, 1983 the ARPANET converted to TCP/IP as its standard host protocol.  Gateways (or routers) were used to pass packets to and from host computers on “local area networks.” Refinement and extension of these protocols and many others associated with them continues to this day by way of the Internet Engineering Task Force .

GOVERNMENT’S HISTORICAL ROLE
Other political and social dimensions that enabled the Internet to come into existence and flourish are just as important as the technology upon which it is based. The federal government played a large role in creating the Internet, as did the private sector interests that made it available to the general public. The development of the personal computer industry and significant changes in the telecommunications industry also contributed to the Internet’s growth in the 1980s. In particular, the development of workstations, the Unix operating system, and local area networking  (especially the Ethernet) contributed to the spread of the Internet within the research community from which the Internet industry eventually emerged.
The National Science Foundation and others
In the late 1970s, the National Science Foundation (NSF) became interested in the impact of the ARPANET on computer science and engineering. NSF funded the Computer Science Network (CSNET), which was a logical design for interconnecting universities that were already on the ARPANET and those that were not. Telenet was used for sites not connected directly to the ARPANET and a gateway was provided to link the two. Independent of NSF, another initiative called BITNET ("Because it's there" Net)  provided campus computers with email connections to the growing ARPANET. Finally, AT&T Bell Laboratories development of the Unix operating system led to the creation of a grass-roots network called USENET , which rapidly became home to thousands of “newsgroups” where Internet users discussed everything from aerobics to politics and zoology.
In the mid 1980s, NSF decided to build a network called NSFNET to provide better computer connections for the science and education communities.  The NSFNET made possible the involvement of a large segment of the education and research community in the use of high speed networks. A consortium consisting of MERIT (a University of Michigan non-profit network services organization), IBM and MCI Communications won a 1987 competition for the contract to handle the network’s construction. Within two years, the newly expanded NSFNET had become the primary backbone component of the Internet, augmenting the ARPANET until it was decommissioned in 1990.At about the same time, other parts of the U.S. government had moved ahead to build and deploy networks of their own, including NASA and the Department of Energy. While these groups originally adopted independent approaches for their networks, they eventually decided to support the use of TCP/IP.
The developers of the NSFNET, led by Steve Wolff who had the direct responsibility for the NSFNET program,  also decided to create intermediate level networks to serve research and education institutions and, more importantly, to allow networks that were not commissioned by the U.S. government to connect to the NSFNET. This strategy reduced the overall load on the backbone network operators and spawned a new industry: Internet Service Provision. Nearly a dozen intermediate level networks were created, most with NSF support, some, such as UUNET, with Defense support, and some without any government support. The NSF contribution to the evolution of the Internet was essential in two respects. It opened the Internet to many new users and, drawing on the properties of TCP/IP, structured it so as to allow many more network service providers to participate.
For a long time, the federal government did not allow organizations to connect to the Internet to carry out commercial activities.  By 1988, it was becoming apparent, however, that the Internet's growth and use in the business sector might be seriously inhibited by this restriction. That year, CNRI requested permission from the Federal Networking Council to interconnect the commercial MCI Mail electronic mail system to the Internet as part of a general electronic mail interconnection experiment. Permission was given and the interconnection was completed by CNRI, under Cerf’s direction, in the summer of 1989. Shortly thereafter, two of the then non-profit Internet Service Providers (UUNET and NYSERNET) produced new for-profit companies (UUNET and PSINET respectively). In 1991, they were interconnected with each other and CERFNET .  Commercial pressure to alleviate restrictions on interconnections with the NSFNET began to mount.
In response, Congress passed legislation allowing NSF to open the NSFNET to commercial usage. Shortly thereafter, NSF determined that its support for NSFNET might not be required in the longer term and, in April 1995, NSF ceased its support for the NSFNET. By that time, many commercial networks were in operation and provided alternatives to NSFNET for national level network services. Today, approximately 10,000 Internet Service Providers (ISPs) are in operation. Roughly half the world's ISPs currently are based in North America and the rest are distributed throughout the world.

A DEFINITION FOR THE INTERNET
The authors feel strongly that efforts should be made at top policy levels to define the Internet. It is tempting to view it merely as a collection of networks and computers. However, as indicated earlier, the authors designed the Internet as an architecture that provided for both communications capabilities and information services. Governments are passing legislation pertaining to the Internet without ever specifying to what the law applies and to what it does not apply. In U.S. telecommunications law, distinctions are made between cable, satellite broadcast and common carrier services. These and many other distinctions all blur in the backdrop of the Internet. Should broadcast stations be viewed as Internet Service Providers when their programming is made available in the Internet environment? Is use of cellular telephones considered part of the Internet and if so under what conditions? This area is badly in need of clarification.
The authors believe the best definition currently in existence is that approved by the Federal Networking Council in 1995,  and which is reproduced in the footnote below  for ready reference. Of particular note is that it defines the Internet as a global information system, and included in the definition, is not only the underlying communications technology, but also higher-level protocols and end-user applications, the associated data structures and the means by which the information may be processed, manifested, or otherwise used.  In many ways, this definition supports the characterization of the Internet as an “information superhighway.” Like the federal highway system, whose underpinnings include not only concrete lanes and on/off ramps, but also a supporting infrastructure both physical and informational, including signs, maps, regulations, and such related services and products as filling stations and gasoline, the Internet has its own layers of ingress and egress, and its own multi-tiered levels of service.
The FNC definition makes it clear that the Internet is a dynamic organism that can be looked at in myriad ways. It is a framework for numerous services and a medium for creativity and innovation. Most importantly, it can be expected to evolve.

What Is The Internet


INTRODUCTION
As we approach a new millennium, the Internet is revolutionizing our society, our economy and our technological systems. No one knows for certain how far, or in what direction, the Internet will evolve. But no one should underestimate its importance.
Over the past century and a half, important technological developments have created a global environment that is drawing the people of the world closer and closer together. During the industrial revolution, we learned to put motors to work to magnify human and animal muscle power. In the new Information Age, we are learning to magnify brainpower by putting the power of computation wherever we need it, and to provide information services on a global basis. Computer resources are infinitely flexible tools; networked together, they allow us to generate, exchange, share and manipulate information in an uncountable number of ways. The Internet, as an integrating force, has melded the technology of communications and computing to provide instant connectivity and global information services to all its users at very low cost.
Ten years ago, most of the world knew little or nothing about the Internet. It was the private enclave of computer scientists and researchers who used it to interact with colleagues in their respective disciplines. Today, the Internet’s magnitude is thousands of times what it was only a decade ago. It is estimated that about 60 million host computers on the Internet today serve about 200 million users in over 200 countries and territories. Today’s telephone system is still much larger: about 3 billion people around the world now talk on almost 950 million telephone lines (about 250 million of which are actually radio-based cell phones). But by the end of the year 2000, the authors estimate there will be at least 300 million Internet users. Also, the total numbers of host computers and users have been growing at about 33% every six months since 1988 – or roughly 80% per year. The telephone service, in comparison, grows an average of about 5-10% per year. That means if the Internet keeps growing steadily the way it has been growing over the past few years, it will be nearly as big as today’s telephone system by about 2006.

THE EVOLUTION OF THE INTERNET
The underpinnings of the Internet are formed by the global interconnection of hundreds of thousands of otherwise independent computers, communications entities and information systems. What makes this interconnection possible is the use of a set of communication standards, procedures and formats in common among the networks and the various devices and computational facilities connected to them. The procedures by which computers communicate with each other are called "protocols." While this infrastructure is steadily evolving to include new capabilities, the protocols initially used by the Internet are called the "TCP/IP" protocols, named after the two protocols that formed the principal basis for Internet operation.
On top of this infrastructure is an emerging set of architectural concepts and data structures for heterogeneous information systems that renders the Internet a truly global information system. In essence, the Internet is an architecture, although many people confuse it with its implementation. When the Internet is looked at as an architecture, it manifests two different abstractions. One abstraction deals with communications connectivity, packet delivery and a variety of end-end communication services. The other abstraction deals with the Internet as an information system, independent of its underlying communications infrastructure, which allows creation, storage and access to a wide range of information resources, including digital objects and related services at various levels of abstraction.
Interconnecting computers is an inherently digital problem. Computers process and exchange digital information, meaning that they use a discrete mathematical “binary” or “two-valued” language of 1s and 0s. For communication purposes, such information is mapped into continuous electrical or optical waveforms. The use of digital signaling allows accurate regeneration and reliable recovery of the underlying bits. We use the terms “computer,” “computer resources” and “computation” to mean not only traditional computers, but also devices that can be controlled digitally over a network, information resources such as mobile programs and other computational capabilities.
The telephone network started out with operators who manually connected telephones to each other through “patch panels” that accepted patch cords from each telephone line and electrically connected them to one another through the panel, which operated, in effect, like a switch. The result was called circuit switching, since at its conclusion, an electrical circuit was made between the calling telephone and the called telephone. Conventional circuit switching, which was developed to handle telephone calls, is inappropriate for connecting computers because it makes limited use of the telecommunication facilities and takes too long to set up connections. Although reliable enough for voice communication, the circuit-switched voice network had difficulty delivering digital information without errors.
For digital communications, packet switching is a better choice, because it is far better suited to the typically "burst" communication style of computers. Computers that communicate typically send out brief but intense bursts of data, then remain silent for a while before sending out the next burst. These bursts are communicated as packets, which are very much like electronic postcards. The postcards, in reality packets, are relayed from computer to computer until they reach their destination. The special computers that perform this forwarding function are called variously "packet switches" or "routers" and form the equivalent of many bucket brigades spanning continents and oceans, moving buckets of electronic postcards from one computer to another.  Together these routers and the communication links between them form the underpinnings of the Internet.
Without packet switching, the Internet would not exist as we now know it. Going back to the postcard analogy, postcards can get lost. They can be delivered out of order, and they can be delayed by varying amounts. The same is true of Internet packets, which, on the Internet, can even be duplicated. The Internet Protocol is the postcard layer of the Internet. The next higher layer of protocol, TCP, takes care of re-sending the “postcards” to recover packets that might have been lost, and putting packets back in order if they have become disordered in transit.
Of course, packet switching is about a billion times faster than the postal service or a bucket brigade would be. It also has to operate over many different communications systems, or substrata. The authors designed the basic architecture to be so simple and undemanding that it could work with most communication services. Many organizations, including commercial ones, carried out research using the TCP/IP protocols in the 1970s. Email was steadily used over the nascent Internet during that time and to the present. It was not until 1994 that the general public began to be aware of the Internet by way of the World Wide Web application, particularly after Netscape Communications was formed and released its browser and associated server software.
Thus, the evolution of the Internet was based on two technologies and a research dream. The technologies were packet switching and computer technology, which, in turn, drew upon the underlying technologies of digital communications and semiconductors. The research dream was to share information and computational resources. But that is simply the technical side of the story. Equally important in many ways were the other dimensions that enabled the Internet to come into existence and flourish. This aspect of the story starts with cooperation and far-sightedness in the U.S. Government, which is often derided for lack of foresight but is a real hero in this story.
It leads on to the enthusiasm of private sector interests to build upon the government funded developments to expand the Internet and make it available to the general public. Perhaps most important, it is fueled by the development of the personal computer industry and significant changes in the telecommunications industry in the 1980s, not the least of which was the decision to open the long distance market to competition. The role of workstations, the Unix operating system and local area networking (especially the Ethernet) are themes contributing to the spread of Internet technology in the 1980s into the research and academic community from which the Internet industry eventually emerged.
Many individuals have been involved in the development and evolution of the Internet covering a span of almost four decades if one goes back to the early writings on the subject of computer networking by Kleinrock , Licklider, Baran , Roberts , and  Davies .  The ARPANET, described below, was the first wide-area computer network. The NSFNET, which followed more than a decade later under the leadership of Erich Bloch, Gordon Bell, Bill Wulf and Steve Wolff, brought computer networking into the mainstream of the research and education communities. It is not our intent here to attempt to attribute credit to all those whose contributions were central to this story, although we mention a few of the key players.  A readable summary on the history of the Internet, written by many of the key players, . 
From One Network to Many: The role of DARPA
Modern computer networking technologies emerged in the early 1970s.  In 1969, The U.S. Defense Advanced Research Projects Agency (variously called ARPA and DARPA), an agency within the Department of Defense, commissioned a wide-area computer network called the ARPANET. This network made use of the new packet switching concepts for interconnecting computers and initially linked computers at universities and other research institutions in the United States and in selected NATO countries. At that time, the ARPANET was essentially the only realistic wide-area computer network in existence, with a base of several dozen organizations, perhaps twice that number of computers and numerous researchers at those sites. The program was led at DARPA by Larry Roberts. The packet switches were built by Bolt Beranek and Newman (BBN), a DARPA contractor. Others directly involved in the ARPANET activity included the authors, Len Kleinrock, Frank Heart, Howard Frank, Steve Crocker, Jon Postel and many many others in the ARPA research community.
Back then, the methods of internetworking (that is interconnecting computer networks) were primitive or non-existent. Two organizations could interwork technically by agreeing to use common equipment, but not every organization was interested in this approach. Absent that, there was jury-rigging, special case development and not much else. Each of these networks stood on its own with essentially no interaction between them – a far cry from today’s Internet.
In the early 1970s, ARPA began to explore two alternative applications of packet switching technology based on the use of synchronous satellites (SATNET) and ground-based packet radio (PRNET). The decision by Kahn to link these two networks and the ARPANET as separate and independent networks resulted in the creation of the Internet program and the subsequent collaboration with Cerf. These two systems differed in significant ways from the ARPANET so as to take advantage of the broadcast and wireless aspects of radio communications. The strategy that had been adopted for SATNET originally was to embed the SATNET software into an ARPANET packet switch, and interwork the two networks through memory-to-memory transfers within the packet switch. This approach, in place at the time, was to make SATNET an “embedded” network within the ARPANET; users of the network would not even need to know of its existence. The technical team at Bolt Beranek and Newman (BBN), having built the ARPANET switches and now building the SATNET software, could easily produce the necessary patches to glue the programs together in the same machine. Indeed, this is what they were under contract with DARPA to provide. By embedding each new network into the ARPANET, a seamless internetworked capability was possible, but with no realistic possibility of unleashing the entrepreneurial networking spirit that has manifest itself in modern day Internet developments. A new approach was in order.
The Packet Radio (PRNET) program had not yet gotten underway so there was ample opportunity to change the approach there. In addition, up until then, the SATNET program was only an equipment development activity. No commitments had been obtained for the use of actual satellites or ground stations to access them. Indeed, since there was no domestic satellite industry in the U.S. then, the only two viable alternatives were the use of Intelsat or U.S. military satellites. The time for a change in strategy, if it was to be made, was then.
THE INTERNET ARCHITECTURE
The authors created an architecture for interconnecting independent networks that could then be federated into a seamless whole without changing any of the underlying networks. This was the genesis of the Internet as we know it today. 
In order to work properly, the architecture required a global addressing mechanism (or Internet address) to enable computers on any network to reference and communicate with computers on any other network in the federation. Internet addresses fill essentially the same role as telephone numbers do in telephone networks. The design of the Internet assumed first that the individual networks could not be changed to accommodate new architectural requirements; but this was largely a pragmatic assumption to facilitate progress. The networks also had varying degrees of reliability and speed. Host computers would have to be able to put disordered packets back into the correct order and discard duplicate packets that had been generated along the way. This was a major change from the virtual circuit-like service provided by ARPANET and by then contemporary commercial data networking services such as Tymnet and Telenet. In these networks, the underlying network took responsibility for keeping all information in order and for re-sending any data that might have been lost. The Internet design made the computers responsible for tending to these network problems.
A key architectural construct was the introduction of gateways (now called routers) between the networks to handle the disparities such as different data rates, packet sizes, error conditions, and interface specifications. The gateways would also check the destination Internet addresses of each packet to determine the gateway to which it should be forwarded. These functions would be combined with certain end-end functions to produce the reliable communication from source to destination. A draft paper by the authors describing this approach was given at a meeting of the International Network Working Group in 1973 in Sussex, England and the final paper was subsequently published by the Institute for Electrical and Electronics Engineers, the leading professional society for the electrical engineering profession, in its Transactions on Communications in May, 1974 . The paper described the TCP/IP protocol.
DARPA contracted with Cerf's group at Stanford to carry out the initial detailed design of the TCP software and, shortly thereafter, with BBN and University College London to build independent implementations of the TCP protocol (as it was then called – it was later split into TCP and IP) for different machines. BBN also had a contract to build a prototype version of the gateway. These three sites collaborated in the development and testing of the initial protocols on different machines. Cerf, then a professor at Stanford, provided the day-to-day leadership in the initial TCP software design and testing. BBN deployed the gateways between the ARPANET and the PRNET and also with SATNET. During this period, under Kahn's overall leadership at DARPA, the initial feasibility of the Internet Architecture was demonstrated.
The TCP/IP protocol suite was developed and refined over a period of four more years and, in 1980, it was adopted as a standard by the U.S. Department of Defense. On January 1, 1983 the ARPANET converted to TCP/IP as its standard host protocol.  Gateways (or routers) were used to pass packets to and from host computers on “local area networks.” Refinement and extension of these protocols and many others associated with them continues to this day by way of the Internet Engineering Task Force .

GOVERNMENT’S HISTORICAL ROLE
Other political and social dimensions that enabled the Internet to come into existence and flourish are just as important as the technology upon which it is based. The federal government played a large role in creating the Internet, as did the private sector interests that made it available to the general public. The development of the personal computer industry and significant changes in the telecommunications industry also contributed to the Internet’s growth in the 1980s. In particular, the development of workstations, the Unix operating system, and local area networking  (especially the Ethernet) contributed to the spread of the Internet within the research community from which the Internet industry eventually emerged.
The National Science Foundation and others

In the late 1970s, the National Science Foundation (NSF) became interested in the impact of the ARPANET on computer science and engineering. NSF funded the Computer Science Network (CSNET), which was a logical design for interconnecting universities that were already on the ARPANET and those that were not. Telenet was used for sites not connected directly to the ARPANET and a gateway was provided to link the two. Independent of NSF, another initiative called BITNET ("Because it's there" Net)  provided campus computers with email connections to the growing ARPANET. Finally, AT&T Bell Laboratories development of the Unix operating system led to the creation of a grass-roots network called USENET, which rapidly became home to thousands of “newsgroups” where Internet users discussed everything from aerobics to politics and zoology.
In the mid 1980s, NSF decided to build a network called NSFNET to provide better computer connections for the science and education communities.  The NSFNET made possible the involvement of a large segment of the education and research community in the use of high speed networks. A consortium consisting of MERIT (a University of Michigan non-profit network services organization), IBM and MCI Communications won a 1987 competition for the contract to handle the network’s construction. Within two years, the newly expanded NSFNET had become the primary backbone component of the Internet, augmenting the ARPANET until it was decommissioned in 1990.At about the same time, other parts of the U.S. government had moved ahead to build and deploy networks of their own, including NASA and the Department of Energy. While these groups originally adopted independent approaches for their networks, they eventually decided to support the use of TCP/IP.
The developers of the NSFNET, led by Steve Wolff who had the direct responsibility for the NSFNET program,  also decided to create intermediate level networks to serve research and education institutions and, more importantly, to allow networks that were not commissioned by the U.S. government to connect to the NSFNET. This strategy reduced the overall load on the backbone network operators and spawned a new industry: Internet Service Provision. Nearly a dozen intermediate level networks were created, most with NSF support, some, such as UUNET, with Defense support, and some without any government support. The NSF contribution to the evolution of the Internet was essential in two respects. It opened the Internet to many new users and, drawing on the properties of TCP/IP, structured it so as to allow many more network service providers to participate.
For a long time, the federal government did not allow organizations to connect to the Internet to carry out commercial activities.  By 1988, it was becoming apparent, however, that the Internet's growth and use in the business sector might be seriously inhibited by this restriction. That year, CNRI requested permission from the Federal Networking Council to interconnect the commercial MCI Mail electronic mail system to the Internet as part of a general electronic mail interconnection experiment. Permission was given and the interconnection was completed by CNRI, under Cerf’s direction, in the summer of 1989. Shortly thereafter, two of the then non-profit Internet Service Providers (UUNET  and NYSERNET) produced new for-profit companies (UUNET and PSINET respectively). In 1991, they were interconnected with each other and CERFNET .  Commercial pressure to alleviate restrictions on interconnections with the NSFNET began to mount.
In response, Congress passed legislation allowing NSF to open the NSFNET to commercial usage. Shortly thereafter, NSF determined that its support for NSFNET might not be required in the longer term and, in April 1995, NSF ceased its support for the NSFNET. By that time, many commercial networks were in operation and provided alternatives to NSFNET for national level network services. Today, approximately 10,000 Internet Service Providers (ISPs) are in operation. Roughly half the world's ISPs currently are based in North America and the rest are distributed throughout the world.

A DEFINITION FOR THE INTERNET
The authors feel strongly that efforts should be made at top policy levels to define the Internet. It is tempting to view it merely as a collection of networks and computers. However, as indicated earlier, the authors designed the Internet as an architecture that provided for both communications capabilities and information services. Governments are passing legislation pertaining to the Internet without ever specifying to what the law applies and to what it does not apply. In U.S. telecommunications law, distinctions are made between cable, satellite broadcast and common carrier services. These and many other distinctions all blur in the backdrop of the Internet. Should broadcast stations be viewed as Internet Service Providers when their programming is made available in the Internet environment? Is use of cellular telephones considered part of the Internet and if so under what conditions? This area is badly in need of clarification.
The authors believe the best definition currently in existence is that approved by the Federal Networking Council in 1995,  and which is reproduced in the footnote below  for ready reference. Of particular note is that it defines the Internet as a global information system, and included in the definition, is not only the underlying communications technology, but also higher-level protocols and end-user applications, the associated data structures and the means by which the information may be processed, manifested, or otherwise used.  In many ways, this definition supports the characterization of the Internet as an “information superhighway.” Like the federal highway system, whose underpinnings include not only concrete lanes and on/off ramps, but also a supporting infrastructure both physical and informational, including signs, maps, regulations, and such related services and products as filling stations and gasoline, the Internet has its own layers of ingress and egress, and its own multi-tiered levels of service.
The FNC definition makes it clear that the Internet is a dynamic organism that can be looked at in myriad ways. It is a framework for numerous services and a medium for creativity and innovation. Most importantly, it can be expected to evolve.

Microphones


. How They Work.

A microphone is an example of a transducer, a device that changes information from one form to another. Sound information exists as patterns of air pressure; the microphone changes this information into patterns of electric current. The recording engineer is interested in the accuracy of this transformation, a concept he thinks of as fidelity.
A variety of mechanical techniques can be used in building microphones. The two most commonly encountered in recording studios are the magneto-dynamic and the variable condenser designs.

THE DYNAMIC MICROPHONE.



In the magneto-dynamic, commonly called dynamic, microphone, sound waves cause movement of a thin metallic diaphragm and an attached coil of wire. A magnet produces a magnetic field which surrounds the coil, and motion of the coil within this field causes current to flow. The principles are the same as those that produce electricity at the utility company, realized in a pocket-sized scale. It is important to remember that current is produced by the motion of the diaphragm, and that the amount of current is determined by the speed of that motion. This kind of microphone is known as velocity sensitive.

THE CONDENSER MICROPHONE.



In a condenser microphone, the diaphragm is mounted close to, but not touching, a rigid backplate. (The plate may or may not have holes in it.) A battery is connected to both pieces of metal, which produces an electrical potential, or charge, between them. The amount of charge is determined by the voltage of the battery, the area of the diaphragm and backplate, and the distance between the two. This distance changes as the diaphragm moves in response to sound. When the distance changes, current flows in the wire as the battery maintains the correct charge. The amount of current is essentially proportioinal to the displacement of the diaphragm, and is so small that it must be electrically amplified before it leaves the microphone.
A common varient of this design uses a material with a permanently imprinted charge for the diaphragm. Such a material is called an electret and is usually a kind of plastic. (You often get a piece of plastic with a permanent charge on it when you unwrap a record. Most plastics conduct electricity when they are hot but are insulators when they cool.) Plastic is a pretty good material for making diaphragms since it can be dependably produced to fairly exact specifications. (Some popular dynamic microphones use plastic diaphragms.) The major disadvantage of electrets is that they lose their charge after a few years and cease to work.

II. Specifications

There is no inherent advantage in fidelity of one type of microphone over another. Condenser types require batteries or power from the mixing console to operate, which is occasionally a hassle, and dynamics require shielding from stray magnetic fields, which makes them a bit heavy sometmes, but very fine microphones are available of both styles. The most important factor in choosing a microphone is how it sounds in the required application. The following issues must be considered:

Sensitivity.

This is a measure of how much electrical output is produced by a given sound. This is a vital specification if you are trying to record very tiny sounds, such as a turtle snapping its jaw, but should be considered in any situation. If you put an insensitive mic on a quiet instrument, such as an acoustic guitar, you will have to increase the gain of the mixing console, adding noise to the mix. On the other hand, a very sensitive mic on vocals might overload the input electronics of the mixer or tape deck, producing distortion.

Overload characteristics.

Any microphone will produce distortion when it is overdriven by loud sounds. This is caused by varous factors. With a dymanic, the coil may be pulled out of the magnetic field; in a condenser, the internal amplifier might clip. Sustained overdriving or extremely loud sounds can permanently distort the diaphragm, degrading performance at ordinary sound levels. Loud sounds are encountered more often than you might think, especially if you place the mic very close to instruments. (Would you put your ear in the bell of a trumpet?) You usually get a choice between high sensitivity and high overload points, although occasionally there is a switch on the microphone for different situations.

Linearity, or Distortion.

This is the feature that runs up the price of microphones. The distortion characteristics of a mic are determined mostly by the care with which the diaphragm is made and mounted. High volume production methods can turn out an adequate microphone, but the distortion performance will be a matter of luck. Many manufacturers have several model numbers for what is essentially the same device. They build a batch, and then test the mics and charge a premium price for the good ones. The really big names throw away mic capsules that don't meet their standards. (If you buy one Neumann mic, you are paying for five!)

No mic is perfectly linear; the best you can do is find one with distortion that complements the sound you are trying to record. This is one of the factors of the microphone mystique discussed later.

Frequency response.

A flat frequency response has been the main goal of microphone companies for the last three or four decades. In the fifties, mics were so bad that console manufacturers began adding equalizers to each input to compensate. This effort has now paid off to the point were most professional microphones are respectably flat, at least for sounds originating in front. The major exceptions are mics with deliberate emphasis at certain frequencies that are useful for some applications. This is another part of the microphone mystique. Problems in frequency response are mostly encountered with sounds originating behind the mic, as discussed in the next section.

Noise.

Microphones produce a very small amount of current, which makes sense when you consider just how light the moving parts must be to accurately follow sound waves. To be useful for recording or other electronic processes, the signal must be amplified by a factor of over a thousand. Any electrical noise produced by the microphone will also be amplified, so even slight amounts are intolerable. Dynamic microphones are essentially noise free, but the electronic circuit built into condensor types is a potential source of trouble, and must be carefully designed and constructed of premium parts.

Noise also includes unwanted pickup of mechanical vibration through the body of the microphone. Very sensitive designs require elastic shock mountings, and mics intended to be held in the hand need to have such mountings built inside the shell.

The most common source of noise associated with microphones is the wire connecting the mic to the console or tape deck. A mic preamp is very similar to a radio reciever, so the cable must be prevented from becoming an antenna. The basic technique is to surround the wires that carry the current to and from the mic with a flexible metallic shield, which deflects most radio energy. A second technique, which is more effective for the low frequency hum induced by the power company into our environment, is to balance the line:


Current produced by the microphone will flow down one wire of the twisted pair, and back along the other one. Any current induced in the cable from an outside source would tend to flow the same way in both wires, and such currents cancel each other in the transformers. This system is expensive.

Microphone Levels

As I said, microphone outputs are of necessity very weak signals, generally around -60dBm. (The specification is the power produced by a sound pressure of 10 uBar) The output impedance will depend on whether the mic has a transformer balanced output . If it does not, the microphone will be labeled "high impedance" or "hi Z" and must be connected to an appropriate input. The cable used must be kept short, less than 10 feet or so, to avoid noise problems.

If a microphone has a transformer, it will be labeled low impedance, and will work best with a balanced input mic preamp. The cable can be several hundred feet long with no problem. Balanced output, low impedance microphones are expensive, and generally found in professonal applications. Balanced outputs must have three pin connectors ("Cannon plugs"), but not all mics with those plugs are really balanced. Microphones with standard or miniature phone plugs are high impedance. A balanced mic can be used with a high impedance input with a suitable adapter.

You can see from the balanced connection diagram that there is a transformer at the input of the console preamp. (Or, in lieu of a transformer, a complex circuit to do the same thing.) This is the most significant difference between professional preamplifiers and the type usually found on home tape decks. You can buy transformers that are designed to add this feature to a consumer deck for about $20 each. (Make sure you are getting a transformer and not just an adapter for the connectors.) With these accessories you can use professional quality microphones, run cables over a hundred feet with no hum, and because the transformers boost the signal somewhat, make recordings with less noise. This will not work with a few inexpensive cassette recorders, because the strong signal causes distortion. Such a deck will have other problems, so there is little point trying to make a high fidelity recording with it anyway.

III. Pick Up Patterns

Many people have the misconception that microphones only pick up sound from sources they are pointed at, much as a camera only photographs what is in front of the lens. This would be a nice feature if we could get it, but the truth is we can only approximate that action, and at the expense of other desirable qualities.


MICROPHONE PATTERNS

These are polar graphs of the output produced vs. the angle of the sound source. The output is represented by the radius of the curve at the incident angle.

Omni

The simplest mic design will pick up all sound, regardless of its point of origin, and is thus known as an omnidirectional microphone. They are very easy to use and generally have good to outstanding frequency response. To see how these patterns are produced, here's a sidebar on directioal microphones.

Bi-directional

It is not very difficult to produce a pickup pattern that accepts sound striking the front or rear of the diaphragm, but does not respond to sound from the sides. This is the way any diaphragm will behave if sound can strike the front and back equally. The rejection of undesired sound is the best achievable with any design, but the fact that the mic accepts sound from both ends makes it difficult to use in many situations. Most often it is placed above an instrument. Frequency response is just as good as an omni, at least for sounds that are not too close to the microphone.

Cardioid

This pattern is popular for sound reinforcement or recording concerts where audience noise is a possible problem. The concept is great, a mic that picks up sounds it is pointed at. The reality is different. The first problem is that sounds from the back are not completely rejected, but merely reduced about 10-30 dB. This can surprise careless users. The second problem, and a severe one, is that the actual shape of the pickup pattern varies with frequency. For low frequencies, this is an omnidirectional microphone. A mic that is directional in the range of bass instruments will be fairly large and expensive. Furthermore, the frequency response for signals arriving from the back and sides will be uneven; this adds an undesired coloration to instruments at the edge of a large ensemble, or to the reverberation of the concert hall.

ATM machines

An automatic teller machine or ATM allows a bank customer to conduct their banking transactions from almost every other ATM machine in the world. Don Wetzel was the co-patentee and chief conceptualist of the automated teller machine, an idea he thought of while waiting in line at a Dallas bank. At the time (1968) Wetzel was the Vice President of Product Planning at Docutel, the company that developed automated baggage-handling equipment. The other two inventors listed on the patent were Tom Barnes, the chief mechanical engineer and George Chastain, the electrical engineer. It took five million dollars to develop the ATM. The concept of the ATM first began in 1968, a working prototype came about in 1969 and Docutel was issued a patent in 1973. The first working ATM was installed in a New York based Chemical Bank. : There are different claims to which bank had the first ATM, here is Don Wetzel's reference:

The first voucher based cash dispensing machine was installed in 1967 by Barclay's Bank in London.  Experts, however, do not consider this an ATM.  The first modern day ATM was introduced to consumers in 1969 by Chemical Bank.
"No, it wasn't in a lobby, it was actually in the wall of the bank, out on the street. They put a canopy over it to protect it from the rain and the weather of all sorts. Unfortunately they put the canopy too high and the rain came under it. (laughing) One time we had water in the machine and we had to do some extensive repairs. It was a walkup on the outside of the bank. That was the first one. And it was a cash dispenser only, not a full ATM... We had a cash dispenser, and then the next version was going to be the total teller (created in 1971), which is the ATM we all know today -- takes deposits, transfers money from checking to savings, savings to checking, cash advances to your credit card, takes payments; things like that. So they didn't want just a cash dispenser alone." - Don Wetzel on the first ATM installed at the Rockville Center, New York Chemical Bank from a NMAH interview.
atm.jpg (17930 bytes)
Early model of an ATM on display at the Smithsonion Institute

Jack Gebhart had the idea to put the magnetic stripe on the bankcard to carry the customer information. This information could then be read by a reader, also from Jack Gerbhart, which in its turn is connected to a computer.
There is as usual a controversy.
Who invented the idea of an ATM? 
  • History shows it was Luther George Simjian to develop the idea in 1939, though he could not make a commercial success out of it (see timeline).
  • James Goodfellow in Scotland holds a patent dated of 1966 for a full service ATM.
  • But what about John Shepherd-Barron's machine installed outside a north London branch of Barclays Bank in 1967?
  • The free standing ATM from 1968? It were Don Witzel, Tom Barnes, George Chastain, Jack Gebhart, and John D. White for Docutel in the US.

How work Processors


The processor, or CPU (Central Processing Unit), is a chip designed around what's termed the x86 instruction set. Not all chips are created equal: graphics chips, for example, are designed around a completely different set of instructions. The processor in your mobile phone is designed around yet another. x86 processors are designed as a sort of jack-of-all-trades. The CPU is a generalized piece of hardware, not specialized toward any given task.
Let me explain: in theory, any type of processor can execute just about any type of code. Your CPU can execute the code necessary to produce the graphics of your favorite computer game. The problem? The CPU isn't designed and optimized for that task, so while your Nvidia GeForce 8400M can make Unreal Tournament 3 run pretty smoothly and hit about thirty frames per second, your CPU will choke trying to hit even five frames per second, and it really doesn't matter just how fast your CPU is (unless somehow you've violated the laws of physics and gotten it running at 30GHz instead of 2GHz.)
Modern processors have several things in common: they generally have some number of cores, an on-die cache, and support for either 32-bit or 64-bit code. They require a chipset (remember the motherboard article?) to properly communicate with the rest of the system. And they're one of the most power-hungry components of a laptop.
I'll explain all of these things.
32-Bit and 64-Bit
Okay, so the last time you heard the terms 32-bit or 64-bit and had them mean anything was around the era of the original Sony Playstation and Nintendo 64. I'm not going to get into the esoterica of exactly what these terms mean, but here's the gist of it: almost everything up until this point in consumer-grade computers is 32-bit. So just establish in your head that 32-bit is actually a known quantity: if you were running Windows 98 or XP, you were running a 32-bit operating system.
A 32-bit operating system can only address 4GB of memory at most. This is reduced by the fact that every piece of hardware in your laptop requires what's called an "address" - an "address" that would normally be occupied by memory. Your computer knows everything in it by its address, and everything uses memory addresses. So if you only have 4GB worth of addresses, all the other parts are going to start eating into that, leaving part of the 4GB of physical memory you have untouched. I know it's a little confusing, but it's basically why when you put 4GB of memory into a Windows XP or Windows Vista 32-bit machine, Windows doesn't give you the full 4GB - it may give you as little as 2.5GB or as much as 3.5GB, depending on the hardware you have in your machine.
What a 64-bit processor and 64-bit operating system does is dramatically raise the amount of memory your computer can address. By increasing this limit, it allows the computer to see the full 4GB and still have room for everything else. It also allows the computer to run 64-bit code and use 64-bit operating systems (Windows Vista 64-bit has become pretty popular). 64-bit programs can be potentially faster than 32-bit, though many modern implementations have seen only minimal improvement. The flipside to running a 64-bit operating system is that memory addresses are now twice as long, which results in programs requiring a substantially greater amount of memory to run.
Still, the move to 64-bit - provided you're running at least 4GB of memory - can generally be beneficial. My desktop, for example, has 8GB of memory since I do high-definition video editing on it. Having full access to that 8GB of memory and being able to hand that access over to Adobe's software can substantially improve performance.
So what does this have to do with your processor? Simple, really: your processor either can or can't run 64-bit code. The overwhelming majority of notebooks on the shelf today can: if your processor is an Intel Core 2 Duo or some flavor of AMD Turion, it is 64-bit capable and will run that software happily.
Multi-Core
The new hotness over the past couple years - after Intel and AMD both realized how hard it was to get a processor to run past 3 GHz - has been going "multi-core." You've probably heard the terms single core, dual core, quad core, and the odd tri core; these last two are currently only available in desktops although Intel has a notebook quad core on the way.
What the heck does this mean? Well, basically, it's this: a single core processor is what we've been using up until dual cores came on the market. It's basically just a single processor. A dual core is more or less two processors put together in one chip. You can probably guess what a tri core and quad core are.
Now, an important distinction: this does NOT mean that a 2GHz dual core is equal to a 4GHz single core in performance. All this means is that you have two 2GHz cores working for you instead of one. Why is this important?
Simple: if you have one cook in the kitchen, and he has to make both spaghetti and salad, and for some odd reason these two dishes take exactly the same amount of time to prepare, he's going to have to do them one after the other. If you put a second cook in the kitchen, he can make the salad while the first one works on the spaghetti, and the work gets done in half the time. However, if you have both cooks in the kitchen and the only dish that needs to be prepared is the spaghetti, the second cook can't really do anything, so his being there doesn't reduce the overall time it takes to make the spaghetti.
So adding cores basically increases the number of cooks in the kitchen. However, here's where it gets a little complicated: What if the recipe is written in such a way that it has instructions for more than one cook?
This is what's called "multi-threading." A program that's multi-threaded - written for more than one core - can take advantage of a multi-core processor. So essentially, your spaghetti recipe, instead of spelling things out one step at a time, now tells one cook to boil the noodles while the other one works on the sauce. One of these tasks is going to take more time than the other, sure, but overall, the spaghetti gets made in substantially less time. Not half the time, but less time.
This is pretty much exactly how multi-threaded programs work: they divvy up the work as best they can to send it through the processor. What's important to note here, too, is that you don't NEED a quad core processor to handle a program that runs in four threads: the cooks in your kitchen aren't stupid, they'll just separate the four tasks between however many of them there are.
Multi-core's tangible benefit isn't necessarily one of speed, but one of smoothness. Even doing basic tasks on your computer, a multi-core processor can divvy up the different programs you're running between the cores, resulting in a smoother running computer. So if you're running an antiviral scan and talking on the internet, instead of these tasks taking turns on your single core and reducing responsiveness, now the antiviral scan - the most time-consuming task - can sit in one core and do its thing while you talk on the internet using the other core. Your operating system keeps all of this transparent to you, too, so all you feel is the smoothness.
This is becoming a long-winded section, but there IS more: more cores isn't always better, and there's definitely such a thing as diminishing returns. For the vast majority of users, a dual core is going to be exactly as much as you need. Because as I mentioned before I edit video - a task that requires as much processing power as you can conceivably throw at it - I use a quad core in my desktop. Yet because most programs really can't take advantage of more than two cores (let alone one), it's important to keep in mind that the extra cores may go to waste. More than that, more cores means more power draw and with that more heat. In a notebook, these become serious considerations, which is why either vendor is taking so long to get notebook quad cores on the market, and why Intel's upcoming notebook quad is an "Extreme" processor that will only surface in large desktop replacement machines.
Cache
Cache is kind of a funny thing; basically, it's memory, or RAM, that's been built into the processor. Because of its proximity to the cores and its build within the processor itself, it enjoys substantially greater bandwidth than the memory does. This cache is called "on-die cache."
It's assembled into a sort of a hierarchy: L1 (level 1) cache is the smallest and fastest, L2 cache is pretty much the standard, and the odd processor employs L3 cache. Because of L1 cache's integration into the core itself, L2 cache tends to be the one that sees the most variability. I'm sure someone in the forums is going to correct me on this, but bottom line here: L2 is the one you want to worry about.
Now I know someone is going to ask: if cache is so much faster than memory (and it is), why bother with memory at all? Why not just integrate all that memory into the processor itself? Simple: memory is physically huge. Sure, it's not that big when you look at a processor or a stick of memory, but consider this: on a typical processor, the L2 cache takes up roughly half the die. So if as little as 4MB of cache takes up that much space, try to fathom how much space 1GB would need. And that's why.
Cache size is honestly a number you shouldn't worry about too much. Sure, it'll be advertised all over the place, but it shouldn't be a consideration. On an Intel processor, as long as the L2 cache is at least 2MB on a dual core, it's plenty. On an AMD, it doesn't matter as much, at least as of the time this is written.
Front-Side Bus
This is presently an Intel-only statistic, and even it will be phased out within two or three years. This basically refers to how fast the processor communicates with the memory. It's measured in MHz.
This number is about as important to overall performance as the cache size is, and it bears mentioning that while desktop hardware has front-side bus speeds all the way up to 1600MHz, notebooks are just now seeing 1066MHz speeds. So why isn't it ramping up in notebooks as fast?
Simple: a faster FSB draws more power. Remember that laptop processor design is a balancing act that tries to maximize the amount of performance a processor can provide while minimizing the amount of power it draws and heat it generates. So the faster this is, the more power it can draw and the more heat it can generate, which is why technology in notebooks tends to advance a bit more slowly.
This isn't to say that you should be hunting down low-FSB processors or that you'll get substantially or even noticeably better battery life for it - it's all part of the total package.
Recommendations and Conclusion
The bottom line with modern processors is honestly this: a dual core is enough, and the clock speed doesn't actually matter that much for everyday use. The rise in popularity of modern "netbooks" like the ASUS Eee PC, the MSI Wind, and all of the competitors waiting in the wings suggests how overpowered a modern processor can be. These notebooks use substantially lower-powered processors that nonetheless provide a perfectly reasonable experience for daily uses such as word processing, playing music, or surfing the internet.
While you don't want a shamefully slow, crippled single core processor for regular use, that extra $250-$500 for a top of the line processor really isn't going to do you any favors unless you're rendering video or doing heavy gaming - and I mean HEAVY gaming - on your laptop. Even games are going to be largely limited by the processing power on hand in the notebook's graphic card or GPU (more on this in a future article); the CPU itself honestly just isn't going to factor in that much.
Breaking it down as I so love to do, here's the bottom line:
  • CPUs are general purpose hardware, a jack of all trades and master of none.
  • The number of cores doesn't directly affect performance, but rather smoothness. It can only improve performance in applications designed to handle more than one core, and these applications are termed "multi-threaded."
  • Cache and front-side bus are statistics that sound pretty, but largely don't mean a whole lot unless they're painfully low (1MB of cache or a front-side bus of 400MHz).