Showing posts with label Komputer. Show all posts
Showing posts with label Komputer. Show all posts

12.19.2010

Machine code

In most computers, individual instructions are stored as machine code with each instruction being given a unique number (its operation code or opcode for short). The command to add two numbers together would have one opcode, the command to multiply them would have a different opcode and so on. The simplest computers are able to perform any of a handful of different instructions; the more complex computers have several hundred to choose from—each with a unique numerical code. Since the computer's memory is able to store numbers, it can also store the instruction codes. This leads to the important fact that entire programs (which are just lists of these instructions) can be represented as lists of numbers and can themselves be manipulated inside the computer in the same way as numeric data. The fundamental concept of storing programs in the computer's memory alongside the data they operate on is the crux of the von Neumann, or stored program, architecture. In some cases, a computer might store some or all of its program in memory that is kept separate from the data it operates on. This is called the Harvard architecture after the Harvard Mark I computer. Modern von Neumann computers display some traits of the Harvard architecture in their designs, such as in CPU caches.

While it is possible to write computer programs as long lists of numbers (machine language) and while this technique was used with many early computers,[21] it is extremely tedious and potentially error-prone to do so in practice, especially for complicated programs. Instead, each basic instruction can be given a short name that is indicative of its function and easy to remember—a mnemonic such as ADD, SUB, MULT or JUMP. These mnemonics are collectively known as a computer's assembly language. Converting programs written in assembly language into something the computer can actually understand (machine language) is usually done by a computer program called an assembler. Machine languages and the assembly languages that represent them (collectively termed low-level programming languages) tend to be unique to a particular type of computer. For instance, an ARM architecture computer (such as may be found in a PDA or a hand-held videogame) cannot understand the machine language of an Intel Pentium or the AMD Athlon 64 computer that might be in a PC.[22]

Limited-function ancient computers

The history of the modern computer begins with two separate technologies—automated calculation and programmability—but no single device can be identified as the earliest computer, partly because of the inconsistent application of that term. Examples of early mechanical calculating devices include the abacus, the slide rule and arguably the astrolabe and the Antikythera mechanism, an ancient astronomical computer built by the Greeks around 80 BC.[4] The Greek mathematician Hero of Alexandria (c. 10–70 AD) built a mechanical theater which performed a play lasting 10 minutes and was operated by a complex system of ropes and drums that might be considered to be a means of deciding which parts of the mechanism performed which actions and when.[5] This is the essence of programmability.

The "castle clock", an astronomical clock invented by Al-Jazari in 1206, is considered to be the earliest programmable analog computer.[6][verification needed] It displayed the zodiac, the solar and lunar orbits, a crescent moon-shaped pointer travelling across a gateway causing automatic doors to open every hour,[7][8] and five robotic musicians who played music when struck by levers operated by a camshaft attached to a water wheel. The length of day and night could be re-programmed to compensate for the changing lengths of day and night throughout the year.[6]
The Renaissance saw a re-invigoration of European mathematics and engineering. Wilhelm Schickard's 1623 device was the first of a number of mechanical calculators constructed by European engineers, but none fit the modern definition of a computer, because they could not be programmed.

Memory

A computer's memory can be viewed as a list of cells into which numbers can be placed or read. Each cell has a numbered "address" and can store a single number. The computer can be instructed to "put the number 123 into the cell numbered 1357" or to "add the number that is in cell 1357 to the number that is in cell 2468 and put the answer into cell 1595". The information stored in memory may represent practically anything. Letters, numbers, even computer instructions can be placed into memory with equal ease. Since the CPU does not differentiate between different types of information, it is the software's responsibility to give significance to what the memory sees as nothing but a series of numbers.

In almost all modern computers, each memory cell is set up to store binary numbers in groups of eight bits (called a byte). Each byte is able to represent 256 different numbers (2^8 = 256); either from 0 to 255 or −128 to +127. To store larger numbers, several consecutive bytes may be used (typically, two, four or eight). When negative numbers are required, they are usually stored in two's complement notation. Other arrangements are possible, but are usually not seen outside of specialized applications or historical contexts. A computer can store any kind of information in memory if it can be represented numerically. Modern computers have billions or even trillions of bytes of memory.
The CPU contains a special set of memory cells called registers that can be read and written to much more rapidly than the main memory area. There are typically between two and one hundred registers depending on the type of CPU. Registers are used for the most frequently needed data items to avoid having to access main memory every time data is needed. As data is constantly being worked on, reducing the need to access main memory (which is often slow compared to the ALU and control units) greatly increases the computer's speed.
Computer main memory comes in two principal varieties: random-access memory or RAM and read-only memory or ROM. RAM can be read and written to anytime the CPU commands it, but ROM is pre-loaded with data and software that never changes, so the CPU can only read from it. ROM is typically used to store the computer's initial start-up instructions. In general, the contents of RAM are erased when the power to the computer is turned off, but ROM retains its data indefinitely. In a PC, the ROM contains a specialized program called the BIOS that orchestrates loading the computer's operating system from the hard disk drive into RAM whenever the computer is turned on or reset. In embedded computers, which frequently do not have disk drives, all of the required software may be stored in ROM. Software stored in ROM is often called firmware, because it is notionally more like hardware than software. Flash memory blurs the distinction between ROM and RAM, as it retains its data when turned off but is also rewritable. It is typically much slower than conventional ROM and RAM however, so its use is restricted to applications where high speed is unnecessary.[28]
In more sophisticated computers there may be one or more RAM cache memories which are slower than registers but faster than main memory. Generally computers with this sort of cache are designed to move frequently needed data into the cache automatically, often without the need for any intervention on the programmer's part.

3.04.2010

Sejarah Internet di Dunia


ARPANET
Pada tahun 1957 Dephan AS (DoD = Departement of Defense) membentuk ARPA (Advanced Research Projects Agency) sebagai tanggapan terhadap peluncuran Sputnik-nya Uni Sovyet. ARPA bertugas meningkatkan kemampuan teknologi yang dapat dimanfaatkan oleh militer. Sebenarnya ARPA tidak memiliki ahli ilmu pengetahuan ataupun laboratorium. Yang dimiliki hanya kantor dan budget kecil (bagi standar Pentagon) saja. ARPA menjalankan tugasnya dengan memberikan bantuan dan melakukan kontrak kerja dengan universitas-universitas dan perusahaan-perusahaan yang memiliki ide yang dianggap menjanjikan bagi operasinya.

Pada pertengahan tahun 1960-an, saat puncak Perang Dingin, DoD ingin memiliki komando dan pengendalian jaringan yang dapat mempertahankan diri bila terjadi perang nuklir. Jaringan telepon tradisional dianggap tidak aman. Karena bila satu jalur saja hilang, maka hal ini dapat mengakibatkan terhentinya semua percakapan yang menggunakan jaringan atau bahkan yang hanya menggunakan sebagian jaringan secara tiba-tiba. Untuk mengatasi masalah ini DoD mengubah arah risetnya, ARPA.

Bekerjasama dengan beberapa universitas, ARPA memutuskan bahwa jaringan yang diperlukan DoD adalah berbentuk packet-switching yang terdiri dari sebuah subnet dan komputer-komputer host. Pada Desember 1968, ARPA memberikan kontraknya kepada BBN, sebuah biro konsultan di Cambridge, Massachusetts untuk membangun jaringan tersebut dan membuat software-software pendukung.

Walaupun masih terdapat kekurangan pada masalah software, pada Desember 1969 berhasil diluncurkan sebuah jaringan eksperimen yang menghubungkan empat buah simpul yaitu UCLA, UCSB, SRI dan Utah University. Keempat simpul ini memang memiliki berbagai kontrak dengan ARPA, dan masing-masing simpul mempunyai komputer host yang benar-benar berbeda dan tidak bersesuaian satu dengan lainnya. Jaringan ARPANET ini segera berkembang dengan pesat meliputi seluruh wilayah AS dalam tiga tahun pertamanya.

Sebagai tambahan dalam membantu pertumbuhan ARPANET yang masih prematur ini, ARPA juga membiayai penelitian jaringan satelit dan jaringan radio paket yang mobile. Percobaan ini juga menunjukkan bahwa protokol-protokol ARPANET yang telah ada tidak sesuai untuk dioperasikan pada jaringan ganda. Pengamatan ini mendorong semakin banyaknya penelitian tentang protokol, yang berpuncak pada penemuan model dan protokol TCP/IP. TCP/IP secara spesifik dirancang untuk menangani komunikasi melalui internetwork, sesuatu yang menjadi semakin penting dengan semakin banyaknya jaringan dan LAN yang dihubungkan ke ARPANET.

Untuk mendorong pemakaian protokol-protokol baru tersebut, ARPA mengadakan beberapa kontrak dengan BBN dan Universitas California di Berkeley untuk mengintegrasikan protokol-protokol tersebut ke dalam Berkeley UNIX. Para peneliti di Berkeley menyusun sebuah program antarmuka (interface) ke jaringan (socket) yang memudahkan dan menulis beberapa program utilitas, aplikasi dan manajemen untuk membuat sistem jaringan lebih mudah dioperasikan.

Pada tahun 1983, ARPANET memiliki jaringan yang besar dan sudah dapat dianggap stabil dan sukses. Sampai pada keadaan ini, ARPA menyerahkan manajemen jaringan ke Defense Communication Agency (DCA) untuk menjalankan ARPANET sebagai jaringan operasional. Yang pertama dilakukan DCA adalah memisahkan bagian jaringan militer ke subnet tersendiri, MILNET, yang memiliki gateway-gateway yang sangat ketat membedakan antara MILNET dengan sisa subnet riset lainnya.

Selama tahun 1980-an, jaringan-jaringan tambahan, khususnya LAN, makin banyak yang dihubungkan ke ARPANET. Sejalan dengan bertambah luasnya jaringan, host-pun semakin mahal. Karena itu DNS (Domain Naming System) dibentuk untuk mengorganisasi mesin ke dalam domain-domain tertentu dan memetakan nama-nama host ke dalam alamat-alamat IP. Sejak itu, DNS menjadi sistem database yang tergeneralisasi dan terdistribusi untuk menyimpan berbagai informasi yang berhubungan dengan penamaan.

Pada tahun 1990, ARPANET telah tersusun oleh jaringan-jaringan yang baru, yang sebenarnya dilahirkan sendiri oleh ARPANET. Setelah itu ARPANET menghentikan operasinya dan dibongkar. Sampai saat ini, MILNET masih tetap beroperasi.

NSFNET
Pada akhir tahun 1970-an, NSF (National Science Foundation) melihat begitu besarnya dampak ARPANET bagi penelitian universitas. Namun hanya universitas yang memiliki kontrak penelitian dengan DoD yang dapat bergabung ke ARPANET. Kekurangan akses yang universal ini mendorong NSF untuk membangun sebuah jaringan maya, CSNET.

Pada tahun 1984 NSF mulai merancang jaringan backbone berkecepatan tinggi yang akan menghubungkan keenam pusat superkomputernya di San Diego, Boulder, Champaign, Pittsburgh, Ithaca dan Princeton. Jaringan ini diproyeksikan sebagai pengganti ARPANET dan akan dibuka untuk seluruh kelompok-kelompok riset universitas, laboratorium riset, perpustakaan dan musium untuk mengakses keenam superkomputernya itu dan berkomunikasi satu dengan lainnya. Jaringan ini juga terhubung dengan ARPANET.

Jaringan NSFNET segera meraih sukses dalam waktu yang relatif singkat dan sekaligus kelebihan beban. Selanjutnya NSF dengan segera membuat rencana jaringan penerusnya dan memberikan kontrak kepada konsorsium Michigan-based MERIT untuk melaksanakan rencana tersebut. Jaringan ini pun akhirnya kewalahan sehingga pada tahun 1990 jaringan ini segera ditingkatkan kemampuannya.

Seiring dengan perkembangan berkelanjutan, NSF menyadari bahwa pemerintah tidak dapat memberikan dana pengembangan jaringan untuk selamanya. Selain banyak organisasi komersial yang ingin bergabung ke dalam jaringan yang dibiayai NSF. Akibatnya, NSF meminta MERIT, MCI dan IBM untuk membentuk perusahaan nirlaba, ANS (Advanced Networks Services). Pada tahun 1990, ANS mengambil alih NSFNET dan meningkatkan kemampuan jaringan itu untuk membentuk ANSNET.

Pada tahun 1991, Wakil Presiden AS Al Gore, mengusulkan perluasan arsitektur NSFNET agar melibatkan sekolah K-12, community college (perguruan tinggi setempat), dan college dua-tahun lebih banyak lagi. Desember 1991, Kongres AS mengesahkan rancangan undang-undang NREN (National Research and Educational Network) yang dapat diakses oleh pelaku bisnis dengan mengizinkan mereka membeli sebagian dari jaringan untuk penggunaan komersial.

Pada tahun 1995, backbone NSFNET tidak diperlukan lagi untuk menginterkoneksikan jaringan-jaringan regional NSF. Hal ini disebabkan karena banyak perusahaan yang mengoperasikan jaringan IP komersial. Pada saat ANSNET dijual ke America Online pada tahun 1995, jaringan regional harus keluar dan harus memiliki layanan IP komersial untuk dapat saling terhubung.

Untuk mempermudah dan meyakinkan bahwa setiap jaringan regional dapat berkomunikasi dengan jaringan regional lainnya, NSF memberikan kontrak kerja kepada empat operator jaringan untuk membuat NAP (Network Access Point). Operator-operator tersebut adalah PacBell (San Francisco), Ameritech (Chicago), MFS (Washington D.C.) dan Sprint (New York City). Setiap operator jaringan yang ingin menyediakan layanan backbone kepada jaringan-jaringan regional NSF harus menghubungkan semua NAP tersebut. Selain NAP-NAP NSF, juga telah dibuat bermacam-macam NAP pemerintah (misalnya, FIX-E, FIX-W, MAE-East dan MAE-West) dan NAP-NAP komersial (misalnya CIX).

Negara-negara dan daerah lainnya juga membangun jaringan yang sebanding dengan NSFNET. Di Eropa misalnya, EuropaNet merupakan sebuah backbone IP untuk organisasi-organisasi riset dan EBONE merupakan jaringan yang lebih berorientasi komersial. Keduanya jaringan ini menghubungkan sejumlah kota di Eropa. Setiap negara di Eropa memiliki satu atau lebih jaringan nasional yang sebanding dengan jaringan regional NSF.

INTERNET
Setelah TCP/IP dinyatakan sebagai satu-satunya protokol resmi pada 1 januari 1983, jumlah jaringan, mesin dan pengguna yang terhubung ke ARPANET bertambah dengan pesatnya. Pada saat NSFNET dan ARPANET saling dihubungkan, pertumbuhannya menjadi eksponensial. Banyak jaringan regional yang bergabung dan hubungan-hubungan dibuat untuk membangun jaringan di Kanada, Eropa dan Pasifik.

Pada pertengahan tahun 1980-an, orang mulai memandang kumpulan jaringan-jaringan tersebut sebagai sebuah internet, dan kemudian disebut Internet. Pertumbuhan terus berlanjut secara eksponensial, dan pada tahun 1990 Internet telah tumbuh menjadi 3000 jaringan dan 200.000 komputer. Pada tahun 1992, host kesatu-juta telah terhubung ke jaringan. Pada tahun 1995, terdapat banyak backbone, ratusan jaringan tingkat menengah (regional), puluhan ribu LAN, jutaan host dan puluhan juta pengguna.

Faktor yang mempunyai andil besar dalam pertumbuhan yang cepat itu adalah penyambungan jaringan-jaringan yang telah ada ke Internet. Pada waktu yang lampau penyambungan tersebut meliputi SPAN (jaringan fisika luar angkasa NASA), HEPNET (jaringan fisika energi tinggi), BITNET (jaringan mainframe IBM), EARN (jaringan akademis Eropa), dan jaringan-jaringan lainnya. Sejumlah link trans atlantik juga terbentuk. Dengan perkembangan yang eksponensial ini, cara informal lama dalam mengoperasikan Internet tidak lagi dipakai. Pada bulan Januari 1992, Masyarakat Internet (Internet Society) terbentuk. Masyarakat Internet bertujuan untuk mempromosikan manfaat Internet.

Sampai awal tahun 1990-an, Internet banyak dipakai oleh para akademisi, pemerintah dan para peneliti industri. Sebuah aplikasi baru, WWW (World Wide Web) mengubah wajah Internet dan membantu jutaan pengguna baru, nonakademisi ke jaringan. Aplikasi ini, ditemukan oleh fisikawan CERN Tim Berners-Lee, tanpa mengubah fasilitas-fasilitas yang telah ada namun membuatnya menjadi lebih mudah digunakan. Bersama-sama dengan Mosaic viewer, yang dibuat oleh NCSA (National Center for Supercomputer Applications), WWW memungkinkan sebuah situs (site) untuk menyusun sejumlah halaman informasi yang berisi teks, gambar, suara dan bahkan video, dengan meletakkan link ke halaman-halaman lainnya. Dengan meng-klik sebuah link, pengguna akan segera dibawa ke halaman yang ditunjukkan oleh link tersebut.

Dalam setahun setelah Mosaic diluncurkan, jumlah server WWW berkembang dari 100 menjadi 7000. Pertumbuhan yang cepat ini terus berlangsung dengan pesat sampai sekarang.

Sumber:
1. Jaringan Komputer, Edisi Bahasa Indonesia, Jilid I, Andrew S. Tanenbaum, 2000
2. Multimedia di Internet, Damon A. Dean, 1996