Dalam kebanyakan prosesor, yang merupakan instruksi pointer incremented secara otomatis setelah mengambil sebuah program pengajaran, sehingga petunjuk biasanya diambil dari memori secara berurutan, dengan instruksi tertentu, seperti kantor cabang, melompat dan subroutine panggilan dan kembali, interrupting urutan dengan menempatkan nilai baru dalam program counter. Melompat seperti petunjuk membolehkan alamat baru yang akan dipilih sebagai awal dari sebelah bagian dari aliran instruksi dari memori. J subroutine panggilan yang dicapai cukup lama dengan membaca isi dari program counter, sebelum mereka ditimpa oleh nilai baru, dan disimpan di suatu tempat lain dalam memori atau mendaftar. J subroutine kembali kemudian menulis dicapai oleh nilai yang disimpan kembali ke dalam program counter lagi.
Bekerja dari sebuah program sederhana counter
Di pusat pengolahan unit (CPU) dari komputer yang sederhana berisi hardware (unit kontrol dan upacara ucapan alu) yang melaksanakan petunjuk tersebut, seperti yang diambil dari memori unit. Sebagian besar instruksi siklus [4] terdiri dari CPU mengirim alamat pada bus alamat, ke memori unit, yang kemudian merespon dengan mengirimkan isi dari lokasi memori yang meliputi data, pada data bus. (Hal ini sangat sibuk dengan ide yang disimpan-program komputer yang dieksekusi dalam petunjuk disimpan di samping biasa data dalam memori unit, dan oleh itu sama dengan [5]).
PC hanyalah satu dari sekian banyak mendaftar di hardware dari CPU. Itu, seperti masing-masing register lainnya, terdiri dari bank dari biner latches (a binary memalangi juga dikenal sebagai tiba-tiba), dengan satu flip-flop bit per dalam integer yang akan disimpan [6] (32 untuk 32-bit CPU, misalnya). Dalam hal PC, yang merupakan integer alamat dalam memori unit yang akan diambil berikutnya.
Setelah data (dengan instruksi) telah diterima pada data bus, PC adalah incremented. Dalam beberapa CPU ini dicapai dengan menambahkan 000 .. 001 ke isinya, dan hasilnya menjadi latching register harus isi yang baru, pada kebanyakan CPU, though, PC diimplementasikan sebagai register yang internal kabel sehingga dianggap sampai ke nilai berikutnya ketika sinyal tertentu akan diterapkan ke luar [7].
Semua sifat yg dpt meliputi program counter
Keberadaan program counter dalam CPU telah mencapai jauh konsekuensi pada cara kita berpikir ketika kita program komputer, dan memang program counter (atau setara blok perangkat keras yang melayani tujuan yang sama [8]) sangat pusat ke arsitektur von Neumann. It membebankan ketat sequencial memesan pada mengambil dari instruksi dari memori unit (yang aliran kontrol), bahkan di mana tidak ada sequenciality ini diterapkan oleh algoritma itu sendiri (yang von Neumann kemacetan). Hal ini mungkin mengapa penelitian menjadi model untuk komputasi paralel dianggap [9], pada satu titik, tidak lain von Neumann atau dataflow model yang tidak menggunakan program counter. Bahkan kemudian, sebagian besar peneliti ini emulated di microcode konvensional komputer (karenanya masih melibatkan sebuah program counter dalam hardware), tetapi, sebenarnya, combinators sangat sederhana, mereka bisa, pada prinsipnya dilaksanakan secara langsung pada perangkat keras tanpa kembali ke microcode counter atau program sama sekali. In the end, though, hasil penelitian yang makan kembali, sebaliknya, menjadi cara untuk meningkatkan pelaksanaan kecepatan prosesor konvensional. Cara yang ditemukan untuk mengorganisir di luar aturan pelaksanaan, sehingga untuk mendapatkan informasi yang sequencing yang tersirat dalam data. Selain itu, pipa dan sangat panjang instruksi kata organisasi diizinkan compiler untuk mengatur beberapa perhitungan yang akan berangkat bersama. Pada awal setiap instruksi pelaksanaan, tetapi, instruksi yang harus diambil dari memori, dan ini dimulai oleh sebuah instruksi fetch siklus yang picks alamat, satu per satu, dari program counter.
Bahkan bahasa pemrograman tingkat tinggi yang memiliki program-counter konsep berurat berakar mendalam dalam perilaku mereka. Anda hanya perlu untuk melihat bagaimana programmer debugs atau mengembangkan program komputer untuk melihat bukti ini, dengan pemrogram menggunakan jari untuk menunjuk ke baris berturut-turut dalam program untuk model langkah-langkah pelaksanaannya. Memang, sebuah bahasa pemrograman tingkat tinggi yang tidak kurang daripada assembler bahasa tinggi mesin virtual [10] - sebuah komputer yang akan terlalu rumit untuk biaya-efektif untuk membangun secara langsung dalam perangkat keras, sehingga adalah melaksanakan, bukan menggunakan beberapa kerang dari pertandingan (dengan compiler atau interpreter menyediakan lebih tinggi, dan microcode menyediakan tingkat bawah).
Referensi
^ Citation needed to a seminal Intel instruction set, such as the 8080 or 4004 ^ Citation diperlukan untuk instruksi Intel mani yang ditetapkan, seperti 8080 atau 4004
^ Carver Mead and Lynn Conway (1980), Introduction to VLSI Systems , Addison-Wesley, Reading, USA, ISBN 0-201-04358-0 ^ Carver Mead dan Lynn Conway (1980), Pengantar VLSI Systems, Addison-Wesley, Reading, Amerika Serikat, ISBN 0-201-04358-0
^ Harry Katzan (1971), Computer Organization and the System/370 , Van Nostrand Reinhold Company, New York, USA, LCCCN 72-153191 ^ Harry Katzan (1971), dan Organisasi Komputer System/370, Van Nostrand Reinhold Company, New York, Amerika Serikat, LCCCN 72-153191
^ John L. Hennessy and David A. Patterson (1990), Computer Architecture: a quantitative approach , Morgan Kaufmann Publishers, Palo Alto, USA, ISBN 1-55860-069-8 ^ John L. Hennessy dan David A. Patterson (1990), Arsitektur Komputer: sebuah pendekatan kuantitatif, Morgan Kaufmann Publishers, Palo Alto, Amerika Serikat, ISBN 1-55860-069-8
^ B. ^ B. Randall (1982), The Origins of Digital Computers , Springer-Verlag, Berlin, D Randall (1982), The Origin of Digital Komputer, Springer-Verlag, Berlin, D
^ C. ^ C. Gordon Bell and Allen Newell (1971), Computer Structures: Readings and Examples , McGraw-Hill Book Company, New York, USA Gordon Bell dan Allen Newell (1971), Computer Structures: pembacaan dan Contoh, McGraw-Hill Book Company, New York, Amerika Serikat
^ BSWalker (1967), Introduction to Computer Engineering , University of London Press, London, UK, SBN 340 06831 0 ^ BSWalker (1967), Pengantar Teknik Komputer, Universitas London Press, London, Inggris, SBN 340 06831 0
^ Example of an alternative, somewhat blunt, but otherwise equivalent, arrangement ( The Story of Mel ) ^ Contoh alternatif, agak tumpul, tetapi jika sama, susunan (The Story of Mel)
^ FB Chambers , DA Duce and GP Jones (1984), Distributed Computing , Academic Press, Orlando, USA, ISBN 0-12-167350-2 ^ FB Chambers, DA Duce dan GP Jones (1984), Distributed Computing, Academic Press, Orlando, Amerika Serikat, ISBN 0-12-167350-2
^ Douglas Hofstadter (1980), Gödel, Esher, Bach: an eternal golden braid , Penguin Books, Harmondsworth, UK, ISBN 0-14-005579-7 ^ Douglas Hofstadter (1980), Gödel, esher, Bach: an eternal mengepang emas, Penguin Books, Harmondsworth, Inggris, ISBN 0-14-005579-7
Lalu pilih pilihan pertama "Try Ubuntu without any chage to your computer" dan tekan enter. Setelah itu akan masuk pada menu pemilihan bahasa seperti gambar berikut, dan pilih "English" saja dan enter.
Jika dalam komputer akan diinstal beberapa sistem operasi maka lebih baik pembagian partisinya dilakukan dengan cara manual saja. Dengan pengaturan manual, memungkinkan konfigurasi lebih advanced dan lebih detail lagi dalam melakukan manajemen partisi hardisk yang digunakan. Lebih disarankan melakukannya secara manual. Pilih manual lalu klik fordward untuk melanjutkan instalasi.
Sistem operasi
Dalam Ilmu komputer, Sistem operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.
Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditaruh pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi.
Biasanya, istilah Sistem Operasi sering ditujukan kepada semua software yang masuk
Kalau sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah penghubung antara lapisan hardware dan lapisan software. Lebih jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem file. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur skedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.
Dalam banyak kasus, Sistem Operasi menyediakan suatu pustaka dari fungsi-fungsi standar, dimana aplikasi lain dapat memanggil fungsi-fungsi itu, sehingga dalam setiap pembuatan program baru, tidak perlu membuat fungsi-fungsi tersebut dari awal.
Sistem Operasi secara umum terdiri dari beberapa bagian:
- Mekanisme Boot, yaitu meletakkan kernel ke dalam memory
- Kernel, yaitu inti dari sebuah Sistem Operasi
- Command Interpreter atau shell, yang bertugas membaca input dari pengguna
- Pustaka-pustaka, yaitu yang menyediakan kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain
- Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol mereka.
Sebagian Sistem Operasi hanya mengizinkan satu aplikasi saja yang berjalan pada satu waktu, tetapi sebagian besar Sistem Operasi baru mengizinkan beberapa aplikasi berjalan secara simultan pada waktu yang bersamaan. Sistem Operasi seperti itu disebut sebagai Multi-tasking Operating System. Beberapa Sistem Operasi berukuran sangat besar dan kompleks, serta inputnya tergantung kepada input pengguna, sedangkan Sistem Operasi lainnya sangat kecil dan dibuat dengan asumsi bekerja tanpa intervensi manusia sama sekali. Tipe yang pertama sering disebut sebagai Desktop OS, sedangkan tipe kedua adalah Real-Time OS
Sebagai contoh, yang dimaksud sistem operasi itu antara lain adalah Windows, Linux, Free BSD, Solaris, palm, dan sebagainya.
[sunting] Layanan inti umum
Seiring dengan berkembangnya Sistem Operasi, semakin banyak lagi layanan yang menjadi layanan inti umum. Kini, sebuah OS mungkin perlu menyediakan layanan network dan koneksitas internet, yang dulunya tidak menjadi layanan inti umum. Sistem Operasi juga perlu untuk menjaga kerusakan sistem komputer dari gangguan program perusak yang berasal dari komputer lainnya, seperti virus. Daftar layanan inti umum akan terus bertambah.
Program saling berkomunikasi antara satu dengan lainnya dengan Antarmuka Pemrograman Aplikasi, Application Programming Interface atau disingkat dengan API. Dengan API inilah program aplikasi dapat berkomunikasi dengan Sistem Operasi. Sebagaimana manusia berkomunikasi dengan komputer melalui Antarmuka User, program juga berkomunikasi dengan program lainnya melalui API.
Walaupun demikian API sebuah komputer tidaklah berpengaruh sepenuhnya pada program-program yang dijalankan diatas platform operasi tersebut. Contohnya bila program yang dibuat untuk windows 3.1 bila dijalankan pada windows 95 dan generasi setelahnya akan terlihat perbedaan yang mencolok antara window program tersebut dengan program yang lain.
[sunting] Sistem Operasi saat ini
Sistem operasi-sistem operasi utama yang digunakan komputer sistem umum (termasuk PC, komputer personal) terbagi menjadi 3 kelompok besar:
- Keluarga Microsoft Windows - yang antara lain terdiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows 7 (Seven) yang akan dirilis pada tahun 2009, dan Windows Orient yang akan dirilis pada tahun 2014)).
- Keluarga Unix yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.
Sedangkan komputer Mainframe, dan Super komputer menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.
[sunting] Proses
Prosesor mengeksekusi program-program komputer. Prosesor adalah sebuah chip dalam sistem komputer yang menjalankan instruksi-instruksi program komputer. Dalam setiap detiknya prosesor dapat menjalankan jutaan instruksi.
Program adalah sederetan instruksi yang diberikan kepada suatu komputer. Sedangkan proses adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya. Di dalam bahasan Sistem Operasi, kita lebih sering membahas proses dibandingkan dengan program. Pada Sistem Operasi modern, pada satu saat tidak seluruh program dimuat dalam memori, tetapi hanya satu bagian saja dari program tersebut. Sedangkan bagian lain dari program tersebut tetap beristirahat di media penyimpan disk. Hanya pada saat dibutuhkan saja, bagian dari program tersebut dimuat di memory dan dieksekusi oleh prosesor. Hal ini sangat menghemat pemakaian memori.
Beberapa sistem hanya menjalankan satu proses tunggal dalam satu waktu, sedangkan yang lainnya menjalankan multi-proses dalam satu waktu. Padahal sebagian besar sistem komputer hanya memiliki satu prosesor, dan sebuah prosesor hanya dapat menjalankan satu instruksi dalam satu waktu. Maka bagaimana sebuah sistem prosesor tunggal dapat menjalankan multi-proses? Sesungguhnya pada granularity yang sangat kecil, prosesor hanya menjalankan satu proses dalam satu waktu, kemudian secara cepat ia berpindah menjalankan proses lainnya, dan seterusnya. Sehingga bagi penglihatan dan perasaan pengguna manusia, seakan-akan prosesor menjalankan beberapa proses secara bersamaan.
Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga merubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).
[sunting] Status Proses
Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:
- Ready, yaitu status dimana proses siap untuk dieksekusi pada giliran berikutnya
- Running, yaitu status dimana saat ini proses sedang dieksekusi oleh prosesor
- Blocked, yaitu status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas