Proses dalam suatu program komputer dinamakan

Program komputer atau sering kali disingkat sbg program adalah serangkaian instruksi yang ditulis sebagai memperagakan suatu fungsi spesifik pada komputer.[1] Komputer pada landasannya membutuhkan keberadaan program agar dapat menjalankan fungsinya sbg komputer, kebanyakan hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program tersebut pada prosesor.[2] Suatu program kebanyakan memiliki suatu bangun model pengeksekusian tertentu agar mampu secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang mampu dibaca oleh manusia disebut sbg kode sumber, bangun program yang memungkinkan programmer menganalisis serta memperagakan penelaahan algoritma yang digunakan pada program tersebut. Kode sumber tersebut pada kemudiannya dikompilasi oleh utilitas bahasa pemrograman tertentu sehingga membentuk suatu program. bangun alternatif pautan model pengeksekusian suatu program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan.

Beberapa program komputer mampu dijalankan pada suatu komputer pada masa bersamaan, kemampuan komputer sebagai menjalankan beberapa program pada masa bersamaan disebut sbg multitasking. Program komputer mampu dikategorikan menurut fungsinya; perangkat lunak sistem atau perangkat lunak aplikasi.

Pemrograman komputer

#include <stdio.h>int main(){

printf("Hello world!");return 0;

}

Kode sumber suatu program yang ditulis dengan bahasa pemrograman C

Pemrograman komputer merupakan suatu proses iteratif penulisan dan penyuntingan kode sumber sehingga membentuk suatu program. Penyuntingan kode sumber meliputi proses pengetesan, analisis, pembetulan kekeliruan, pengoptimasian algoritma, normalisasi kode, dan kadang-kadang pengkoordinasian selang satu programmer dengan programmer pautannya bila suatu program dikerjakan oleh beberapa orang dalam suatu tim. Seorang praktisi yang memiliki keahlian sebagai memperagakan penulisan kode dalam bahasa pemrograman disebut sbg programmer komputer atau programmer, pengembang perangkat lunak, atau koder. Istilah rekayasa perangkat lunak (bahasa Inggris: Software engineering) seringkali digunakan karena proses penulisan program tersebut dipandang sbg suatu disiplin ilmu perekayasaan.

Paradigma

Program komputer mampu dikategorikan menurut paradigma bahasa pemrograman yang digunakannya. Dua paradigma utama yang umum digunakan adalah imperatif dan deklaratif.

Program yang ditulis dalam bahasa pemrograman imperatif kebanyakan memiliki algoritma yang ditulis dalam serangkaian klausal pendeklarasian, ekspresi aritmatis, dan sebanyak perintah.[3] Pendeklarasian meliputi pendeklarasian variabel serta tipe data atas variabel tersebut, contoh: var x: integer; Penggunaan ekpresi operasi aritmatis yang menghasilkan nilai, contoh: 2 + 2 menghasilkan nilai 4. Dan perintah yang melingkupi pendelegasian nilai atas hasil dari operasi aritmatis tersebut ke dalam suatu variabel, contoh: x := 2 + 2; if x = 4 then lakukan_sesuatu(); Salah satu bangun kritik atas implementasi imperatif ini adalah efek samping yang timbul atas pendelegasian perintah terhadap variabel yang hadir diluar cakupan dari fungsi tersebut atau semakin dikenal sbg non-local variable.[4]

Program yang ditulis dengan bahasa deklaratif meliputi sebanyak properti yang mesti dipenuhi sebagai mendapatkan suatu bangun hasil tertentu. Properti tersebut tidak mencerminkan suatu cerminan atas proses kerja suatu program namun merupakan suatu bangun deklarasi relasional matematis atas sebanyak objek melaui properti-propertinya. Dua bagian utama atas pemrograman deklaratif adalah bahasa pemrograman fungsional dan bahasa pemrograman logikal. Prinsip landasan dibalik bahasa pemrograman fungsional (Haskell) adalah mencegah timbulnya efek samping seperti yang terdapat pada model pemrograman imperatif sehingga menciptakannya semakin remeh sebagai digunakan menciptakan program yang memperagakan sebanyak operasi matematis.[4] Sementara itu, prinsip dari suatu bahasa pemrograman logikal (Prolog) adalah merumuskan permasalahan yang mau diselesaikan, tujuan yang mau dicapai, dan membiarkan sistem memperagakan analisis atas detail solusi terhadap permasalahan tersebut.[5] Tujuan utama atas suatu program diartikan dengan cara menciptakan sebanyak tujuan-tujuan yang semakin kecil, kemudian pada tiap-tiap tujuan tersebut secara semakin lanjut diartikan tujuan-tujuan pautan yang semakin kecil lagi, dan begitu seterusnya. Bila suatu arahan tujuan yang diartikan gagal digunakan sebagai menemukan solusi atas suatu permasalahan, karenanya arahan tujuan anakan yang semakin kecil akan di telusuri ulang, dan arahan pautannya akan diujicobakan.

Bangun dari cara suatu program diproduksi dapat berupa tekstual ataupun visual. Dalam pemrograman visual, elemen-elemen program kebanyakan dimanipulasi secara grafis, sementara bila diproduksi secara tekstual berfaedah suatu program ditulis secara manual.

Kompilasi atau interpretasi

Program komputer dalam bangun yang mampu dibaca oleh manusia kebanyakan disebuat sbg kode sumber. Kode sumber mampu dikonversikan menjadi bangun berkas yang mampu dieksekusi secara langsung oleh komputer. Proses pengkonversian ini disebut sbg proses kompilasi dan kebanyakan dilakukan suatu program utilitas dari bahasa pemrograman yang digunakan yang disebut sbg kompiler. Pada beberapa bahasa pemrograman tertentu, kode sumber mampu langsung dieksekusi sbg suatu program dengan menggunakan bantuan utilitas yang disebut sbg interpreter.

Patut melewati proses kompilasi ataupun interpretatif, eksekusi program mampu dilakukan dalam suatu proses batch tanpa membutuhkan interaksi dengan manusia, namun program interpretatif memungkinkan pengguna sebagai menulis perintah dalam suatu sesi interaktif. Pada kasus ini suatu program dieksekusi sbg suatu perintah, yang kemudian dieksekusi patut secara serial ataupun paralel. Bahasa pemrograman yang menyediakan fitur interaktif seperti ini dinamakan sbg bahasa skrip.

Kompiler digunakan sebagai menerjemahkan kode sumber dari suatu bahasa pemrograman menjadi kode objek ataupun kode mesin. Kode objek kebanyakan membutuhkan proses semakin lanjut sehingga mampu menjadi kode mesin, dan kode mesin merupakan instruksi-instruksi yang diketahui dan mampu secara langsung dieksekusi oleh prosesor. Program komputer yang telah terkompilasi kebanyakan disebut sbg berkas eksekutabel, ataupun berkas biner; yang merujuk pada bangun sistem biner yang digunakan sebagai menyimpan kode mesin tersebut.

Program komputer yang diinterpretasikan -baik secara batch ataupun dalam modus interaktif- kebanyakan akan diterjemahkan terlebih dahulu ke dalam sebanyak token baru kemudian dieksekusi, atau dapat juga token-token tersebut dioptimasi semakin lanjut sehingga menjadi sebanyak instruksi yang memiliki tingkat efisiensi yang semakin patut dan disimpan sbg berkas P-Code terpisah sebagai dieksekusi kemudian oleh interpreter. BASIC, Perl, dan Python merupakan beberapa contoh dari bahasa pemrograman yang menyediakan fasilitas prasarana penerjemahaan langsung. Alternatif pautannya, program komputer yang ditulis dalam bahasa pemrograman Java merupakan hasil kompilasi kode sumber ke dalam bytcode yang kemudian dieksekusi oleh interpreter yang disebut sbg mesin virtual java.

Kerugian utama pemanfaatan interpreter adalah unjuk kerja program kebanyakan semakin lambat dibandingkan dengan program yang dikompilasi terlebih dahulu. Namun keuntungannya proses pengembangan perangkat lunak kebanyakan dapat dilakukan semakin cepat karena proses pengetesan atas berlanjutnya program mampu dilakukan dalam kala yang relatif singkat. Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian pautannya adalah, sebagai mampu menjalankan program tersebut, utilitas interpreter mesti diikutkan dalam setiap pendistribusian, berlainan halnya dengan program terkompilasi yang mampu didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena sifatnya yang sudah dalam bangun kode mesin.

Umumnya masa ini bahasa-bahasa pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (Just in Time) yang akan menganalisis serta menerjemahkan instruksi-instruksi yang sangat sering digunakan ke dalam bahasa mesin pada masa program dijalankan sehingga tingkat unjuk kerjanya mampu ditingkatkan mengimbangi unjuk kerja program yang terkompilasi.

Eksekusi dan penyimpanan

Suatu program komputer kebanyakan akan disimpan terlebih dahulu dalam memori utama (RAM) komputer sebelum dijalankan yang kebanyakan dilakukan oleh sistem operasi. Prosesor kemudian akan mengeksekusi program tersebut, instruksi demi instruksi sampai program tersebut diterminasi. Suatu program yang tengah dieksekusi oleh prosesor dinamakan sbg proses.[6] Terminasi ataupun penghentian eksekusi suatu program kebanyakan terjadi patut karena permintaan dari pengguna, interupsi pengguna, kekeliruan atas program itu sendiri, ataupun kekeliruan atas perangkat keras yang digunakan.

Program terpancang

Proses dalam suatu program komputer dinamakan

microcontroller di sebelah kanan dari USB flash drive di atas dikontrol melewati suatu program terpancang.

Beberapa program komputer tertentu dipancangkan langsung pada perangkat kerasnya sbg program yang dipanggil sebagai kebutuhan identifikasi serta inisialisasi atas bermacam bagian sebagai memastikan perangkat keras tersebut berfungsi.[7] Masa proses inisialisasi tersebut, program terpancang tersebut akan dipanggil oleh sistem operasi, program terpancang tersebut kemudian akan menjembatani penggunaan perangkat keras tersebut sehingga sistem operasi mampu menggunakannya dengan patut.[8]

Pemrograman manual

Proses dalam suatu program komputer dinamakan

pengalih sebagai input manual pada suatu komputer Data General Nova 3

Program komputer awal mulanya diinput secara manual ke prosesor utama dengan menggunakan sebanyak pengalih sbg representasi atas instruksi yang atas status konfigurasi on/off. Setelah menetapkan konfigurasi tersebut, tombol eksekusi akan ditekan. Proses ini kemudian dilakukan secara iteratif. Program komputer dalam sejarahnya pernah juga ditulis melewati paper tape' atau punched cards. Setelah dibawa masuk dan alamat awal eksekusi telah dibawa masuk, tombol eksekusi akan ditekan.[9]

Pembuatan program otomatis

Pemrograman generatif merupakan suatu tipikial dari pemrograman komputer yang akan menciptakan kode sumber melewati kelas-kelas generik, prototipe, bagian, templat, dan pembuat kode (code generator) sebagai meningkatkan produktifitas programmer. Kode sumber yang diproduksi oleh utilitas pemrograman tersebut misalnya pemroses templat pada suatu IDE. Bangun yang sangat sederhana adalah pemroses makro yang terdapat pada bahasa pemrograman C.

Eksekusi simultan

Umumnya sistem operasi yang hadir masa ini sudah mendukung pemanfaatan multitasking yang memungkinkan beberapa program komputer dijalankan pada masa yang bersamaan di suatu komputer. Sebagai mampu menjalankan beberapa program tersebut pada masa yang bersamaan, sistem operasi menggunakan mekanisme penjadualan proses yang merupakan suatu mekanisme yang akan mengatur pengalihan prosesor dalam memperagakan pemrosesan sehingga beberapa program komputer tersebut mampu berinteraksi dengan pengguna masa dijalankan.[10] Di sisi perangkat keras yang digunakan, prosesor modern masa ini umumnya telah mendukung beberapa core prosesor yang dipancangkan sbg suatu prosesor yang memungkinkannya menjalankan beberapa program sekaligus.[11]

Suatu program komputer mampu memperagakan kalkulasi secara simultan pada beberapa jenis operasi di masa yang bersamaan dengan menggunakan thread atau sbg proses terpisah. Umumnya prosesor yang hadir masa ini sudah mendukung arsitektur multithreading yang teroptimasi sebagai menjalankan beberapa thread secara efisien.

Lihat juga

  • Perangkat lunak komputer
  • Bahasa pemrograman
  • Kompiler
  • Interpreter

Pustaka

  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 1, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89683-4. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 2, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89684-2. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 3, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89685-0. 

  1. ^ Stair, Ralph M., et al. (2003). Principles of Information Systems, Sixth Edition. Thomson Learning, Inc. p. 132. ISBN 0-619-06489-7. 
  2. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 58. ISBN 0-201-50480-4. 
  3. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 75. ISBN 0-201-56885-3. 
  4. ^ a b Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 213. ISBN 0-201-56885-3. 
  5. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 244. ISBN 0-201-56885-3. 
  6. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 97. ISBN 0-201-50480-4. 
  7. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 30. ISBN 0-201-50480-4. 
  8. ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. p. 11. ISBN 0-13-854662-2. 
  9. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 6. ISBN 0-201-50480-4. 
  10. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 100. ISBN 0-201-50480-4. 
  11. ^ Akhter, Shameem (2006). Multi-Core Programming. Richard Bowles (Intel Press). pp. 11–13. ISBN 0-9764832-4-6. 


edunitas.com


Page 2

Program komputer atau sering kali disingkat sbg program adalah serangkaian instruksi yang ditulis sebagai melakukan suatu fungsi spesifik pada komputer.[1] Komputer pada landasannya membutuhkan keberadaan program agar dapat menjalankan fungsinya sbg komputer, biasanya hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program tersebut pada prosesor.[2] Suatu program biasanya memiliki suatu struktur model pengeksekusian tertentu agar mampu secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang mampu dibaca oleh manusia disebut sbg kode sumber, struktur program yang memungkinkan programmer menganalisis serta melakukan penelaahan algoritma yang digunakan pada program tersebut. Kode sumber tersebut pada kemudiannya dikompilasi oleh utilitas bahasa pemrograman tertentu sehingga membentuk suatu program. struktur alternatif pautan model pengeksekusian suatu program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan.

Beberapa program komputer mampu dijalankan pada suatu komputer pada masa bersamaan, kemampuan komputer sebagai menjalankan beberapa program pada masa bersamaan disebut sbg multitasking. Program komputer mampu dikategorikan menurut fungsinya; perangkat lunak sistem atau perangkat lunak aplikasi.

Pemrograman komputer

#include <stdio.h>int main(){

printf("Hello world!");return 0;

}

Kode sumber suatu program yang ditulis dengan bahasa pemrograman C

Pemrograman komputer merupakan suatu proses iteratif penulisan dan penyuntingan kode sumber sehingga membentuk suatu program. Penyuntingan kode sumber meliputi proses pengetesan, analisis, pembetulan kekeliruan, pengoptimasian algoritma, normalisasi kode, dan kadang-kadang pengkoordinasian selang satu programmer dengan programmer pautannya jika suatu program dikerjakan oleh beberapa orang dalam suatu tim. Seorang praktisi yang memiliki keahlian sebagai melakukan penulisan kode dalam bahasa pemrograman disebut sbg programmer komputer atau programmer, pengembang perangkat lunak, atau koder. Istilah rekayasa perangkat lunak (bahasa Inggris: Software engineering) seringkali digunakan karena proses penulisan program tersebut dipandang sbg suatu disiplin ilmu perekayasaan.

Paradigma

Program komputer mampu dikategorikan menurut paradigma bahasa pemrograman yang digunakannya. Dua paradigma utama yang umum digunakan adalah imperatif dan deklaratif.

Program yang ditulis dalam bahasa pemrograman imperatif biasanya memiliki algoritma yang ditulis dalam serangkaian klausal pendeklarasian, ekspresi aritmatis, dan sebanyak perintah.[3] Pendeklarasian meliputi pendeklarasian variabel serta tipe data atas variabel tersebut, contoh: var x: integer; Penggunaan ekpresi operasi aritmatis yang menghasilkan nilai, contoh: 2 + 2 menghasilkan nilai 4. Dan perintah yang melingkupi pendelegasian nilai atas hasil dari operasi aritmatis tersebut ke dalam suatu variabel, contoh: x := 2 + 2; if x = 4 then lakukan_sesuatu(); Salah satu struktur kritik atas implementasi imperatif ini adalah efek samping yang timbul atas pendelegasian perintah terhadap variabel yang berada diluar cakupan dari fungsi tersebut atau lebih dikenal sbg non-local variable.[4]

Program yang ditulis dengan bahasa deklaratif meliputi sebanyak properti yang harus dipenuhi sebagai mendapatkan suatu struktur hasil tertentu. Properti tersebut tidak mencerminkan suatu cerminan atas proses kerja suatu program namun merupakan suatu struktur deklarasi relasional matematis atas sebanyak objek melaui properti-propertinya. Dua bagian utama atas pemrograman deklaratif adalah bahasa pemrograman fungsional dan bahasa pemrograman logikal. Prinsip landasan dibalik bahasa pemrograman fungsional (Haskell) adalah mencegah timbulnya efek samping seperti yang terdapat pada model pemrograman imperatif sehingga menciptakannya lebih gampang sebagai digunakan menciptakan program yang melakukan sebanyak operasi matematis.[4] Sementara itu, prinsip dari suatu bahasa pemrograman logikal (Prolog) adalah merumuskan permasalahan yang akan diselesaikan, tujuan yang akan dicapai, dan membiarkan sistem melakukan analisis atas detail solusi terhadap permasalahan tersebut.[5] Tujuan utama atas suatu program diartikan dengan cara menciptakan sebanyak tujuan-tujuan yang lebih kecil, kemudian pada tiap-tiap tujuan tersebut secara lebih lanjut diartikan tujuan-tujuan pautan yang lebih kecil lagi, dan begitu seterusnya. Jika suatu arahan tujuan yang diartikan gagal digunakan sebagai menemukan solusi atas suatu permasalahan, karenanya arahan tujuan anakan yang lebih kecil akan di telusuri ulang, dan arahan pautannya akan diujicobakan.

Struktur dari cara suatu program dibuat dapat berupa tekstual ataupun visual. Dalam pemrograman visual, elemen-elemen program biasanya dimanipulasi secara grafis, sementara bila dibuat secara tekstual gunanya suatu program ditulis secara manual.

Kompilasi atau interpretasi

Program komputer dalam struktur yang mampu dibaca oleh manusia biasanya disebuat sbg kode sumber. Kode sumber mampu dikonversikan menjadi struktur berkas yang mampu dieksekusi secara langsung oleh komputer. Proses pengkonversian ini disebut sbg proses kompilasi dan biasanya dilakukan suatu program utilitas dari bahasa pemrograman yang digunakan yang disebut sbg kompiler. Pada beberapa bahasa pemrograman tertentu, kode sumber mampu langsung dieksekusi sbg suatu program dengan menggunakan bantuan utilitas yang disebut sbg interpreter.

Baik melalui proses kompilasi ataupun interpretatif, eksekusi program mampu dilakukan dalam suatu proses batch tanpa membutuhkan interaksi dengan manusia, namun program interpretatif memungkinkan pengguna sebagai menulis perintah dalam suatu sesi interaktif. Pada kasus ini suatu program dieksekusi sbg suatu perintah, yang kemudian dieksekusi baik secara serial ataupun paralel. Bahasa pemrograman yang menyediakan fitur interaktif seperti ini dinamakan sbg bahasa skrip.

Kompiler digunakan sebagai menerjemahkan kode sumber dari suatu bahasa pemrograman menjadi kode objek ataupun kode mesin. Kode objek biasanya membutuhkan proses lebih lanjut sehingga mampu menjadi kode mesin, dan kode mesin merupakan instruksi-instruksi yang diketahui dan mampu secara langsung dieksekusi oleh prosesor. Program komputer yang telah terkompilasi biasanya disebut sbg berkas eksekutabel, ataupun berkas biner; yang merujuk pada struktur sistem biner yang digunakan sebagai menyimpan kode mesin tersebut.

Program komputer yang diinterpretasikan -baik secara batch ataupun dalam modus interaktif- biasanya akan diterjemahkan terlebih dahulu ke dalam sebanyak token baru kemudian dieksekusi, atau dapat juga token-token tersebut dioptimasi lebih lanjut sehingga menjadi sebanyak instruksi yang memiliki tingkat efisiensi yang lebih baik dan disimpan sbg berkas P-Code terpisah sebagai dieksekusi kemudian oleh interpreter. BASIC, Perl, dan Python merupakan beberapa contoh dari bahasa pemrograman yang menyediakan sarana prasarana penerjemahaan langsung. Alternatif pautannya, program komputer yang ditulis dalam bahasa pemrograman Java merupakan hasil kompilasi kode sumber ke dalam bytcode yang kemudian dieksekusi oleh interpreter yang disebut sbg mesin virtual java.

Kerugian utama pemanfaatan interpreter adalah unjuk kerja program biasanya lebih lambat dibandingkan dengan program yang dikompilasi terlebih dahulu. Namun keuntungannya proses pengembangan perangkat lunak biasanya dapat dilakukan lebih cepat karena proses pengetesan atas berlanjutnya program mampu dilakukan dalam saat yang relatif singkat. Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian pautannya adalah, sebagai mampu menjalankan program tersebut, utilitas interpreter harus diikutkan dalam setiap pendistribusian, berbeda halnya dengan program terkompilasi yang mampu didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena sifatnya yang sudah dalam struktur kode mesin.

Umumnya masa ini bahasa-bahasa pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (Just in Time) yang akan menganalisis serta menerjemahkan instruksi-instruksi yang paling sering digunakan ke dalam bahasa mesin pada masa program dijalankan sehingga tingkat unjuk kerjanya mampu ditingkatkan mengimbangi unjuk kerja program yang terkompilasi.

Eksekusi dan penyimpanan

Suatu program komputer biasanya akan disimpan terlebih dahulu dalam memori utama (RAM) komputer sebelum dijalankan yang biasanya dilakukan oleh sistem operasi. Prosesor kemudian akan mengeksekusi program tersebut, instruksi demi instruksi sampai program tersebut diterminasi. Suatu program yang tengah dieksekusi oleh prosesor dinamakan sbg proses.[6] Terminasi ataupun penghentian eksekusi suatu program biasanya terjadi baik karena permintaan dari pengguna, interupsi pengguna, kekeliruan atas program itu sendiri, ataupun kekeliruan atas perangkat keras yang digunakan.

Program terpancang

Proses dalam suatu program komputer dinamakan

microcontroller di sebelah kanan dari USB flash drive di atas dikontrol melalui suatu program terpancang.

Beberapa program komputer tertentu dipancangkan langsung pada perangkat kerasnya sbg program yang dipanggil sebagai kebutuhan identifikasi serta inisialisasi atas berbagai aspek sebagai memastikan perangkat keras tersebut berfungsi.[7] Masa proses inisialisasi tersebut, program terpancang tersebut akan dipanggil oleh sistem operasi, program terpancang tersebut kemudian akan menjembatani penggunaan perangkat keras tersebut sehingga sistem operasi mampu menggunakannya dengan baik.[8]

Pemrograman manual

Proses dalam suatu program komputer dinamakan

pengalih sebagai input manual pada suatu komputer Data General Nova 3

Program komputer awalnya diinput secara manual ke prosesor utama dengan menggunakan sebanyak pengalih sbg representasi atas instruksi yang atas status konfigurasi on/off. Setelah menetapkan konfigurasi tersebut, tombol eksekusi akan ditekan. Proses ini kemudian dilakukan secara iteratif. Program komputer dalam sejarahnya pernah juga ditulis melalui paper tape' atau punched cards. Setelah dibawa masuk dan alamat awal eksekusi telah dibawa masuk, tombol eksekusi akan ditekan.[9]

Pembuatan program otomatis

Pemrograman generatif merupakan suatu tipikial dari pemrograman komputer yang akan menciptakan kode sumber melalui kelas-kelas generik, prototipe, aspek, templat, dan pembuat kode (code generator) sebagai meningkatkan produktifitas programmer. Kode sumber yang dibuat oleh utilitas pemrograman tersebut misalnya pemroses templat pada suatu IDE. Struktur yang paling sederhana adalah pemroses makro yang terdapat pada bahasa pemrograman C.

Eksekusi simultan

Umumnya sistem operasi yang hadir masa ini sudah mendukung pemanfaatan multitasking yang memungkinkan beberapa program komputer dijalankan pada masa yang bersamaan di suatu komputer. Sebagai mampu menjalankan beberapa program tersebut pada masa yang bersamaan, sistem operasi menggunakan mekanisme penjadualan proses yang merupakan suatu mekanisme yang akan mengatur pengalihan prosesor dalam melakukan pemrosesan sehingga beberapa program komputer tersebut mampu berinteraksi dengan pengguna masa dijalankan.[10] Di sisi perangkat keras yang digunakan, prosesor modern masa ini umumnya telah mendukung beberapa core prosesor yang dipancangkan sbg suatu prosesor yang memungkinkannya menjalankan beberapa program sekaligus.[11]

Suatu program komputer mampu melakukan kalkulasi secara simultan pada beberapa jenis operasi di masa yang bersamaan dengan menggunakan thread atau sbg proses terpisah. Umumnya prosesor yang hadir masa ini sudah mendukung arsitektur multithreading yang teroptimasi sebagai menjalankan beberapa thread secara efisien.

Lihat juga

  • Perangkat lunak komputer
  • Bahasa pemrograman
  • Kompiler
  • Interpreter

Pustaka

  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 1, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89683-4. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 2, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89684-2. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 3, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89685-0. 

  1. ^ Stair, Ralph M., et al. (2003). Principles of Information Systems, Sixth Edition. Thomson Learning, Inc. p. 132. ISBN 0-619-06489-7. 
  2. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 58. ISBN 0-201-50480-4. 
  3. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 75. ISBN 0-201-56885-3. 
  4. ^ a b Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 213. ISBN 0-201-56885-3. 
  5. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 244. ISBN 0-201-56885-3. 
  6. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 97. ISBN 0-201-50480-4. 
  7. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 30. ISBN 0-201-50480-4. 
  8. ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. p. 11. ISBN 0-13-854662-2. 
  9. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 6. ISBN 0-201-50480-4. 
  10. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 100. ISBN 0-201-50480-4. 
  11. ^ Akhter, Shameem (2006). Multi-Core Programming. Richard Bowles (Intel Press). pp. 11–13. ISBN 0-9764832-4-6. 


edunitas.com


Page 3

Program komputer atau sering kali disingkat sbg program adalah serangkaian instruksi yang ditulis sebagai melakukan suatu fungsi spesifik pada komputer.[1] Komputer pada landasannya membutuhkan keberadaan program agar dapat menjalankan fungsinya sbg komputer, biasanya hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program tersebut pada prosesor.[2] Suatu program biasanya memiliki suatu struktur model pengeksekusian tertentu agar mampu secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang mampu dibaca oleh manusia disebut sbg kode sumber, struktur program yang memungkinkan programmer menganalisis serta melakukan penelaahan algoritma yang digunakan pada program tersebut. Kode sumber tersebut pada kemudiannya dikompilasi oleh utilitas bahasa pemrograman tertentu sehingga membentuk suatu program. struktur alternatif pautan model pengeksekusian suatu program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan.

Beberapa program komputer mampu dijalankan pada suatu komputer pada masa bersamaan, kemampuan komputer sebagai menjalankan beberapa program pada masa bersamaan disebut sbg multitasking. Program komputer mampu dikategorikan menurut fungsinya; perangkat lunak sistem atau perangkat lunak aplikasi.

Pemrograman komputer

#include <stdio.h>int main(){

printf("Hello world!");return 0;

}

Kode sumber suatu program yang ditulis dengan bahasa pemrograman C

Pemrograman komputer merupakan suatu proses iteratif penulisan dan penyuntingan kode sumber sehingga membentuk suatu program. Penyuntingan kode sumber meliputi proses pengetesan, analisis, pembetulan kekeliruan, pengoptimasian algoritma, normalisasi kode, dan kadang-kadang pengkoordinasian selang satu programmer dengan programmer pautannya jika suatu program dikerjakan oleh beberapa orang dalam suatu tim. Seorang praktisi yang memiliki keahlian sebagai melakukan penulisan kode dalam bahasa pemrograman disebut sbg programmer komputer atau programmer, pengembang perangkat lunak, atau koder. Istilah rekayasa perangkat lunak (bahasa Inggris: Software engineering) seringkali digunakan karena proses penulisan program tersebut dipandang sbg suatu disiplin ilmu perekayasaan.

Paradigma

Program komputer mampu dikategorikan menurut paradigma bahasa pemrograman yang digunakannya. Dua paradigma utama yang umum digunakan adalah imperatif dan deklaratif.

Program yang ditulis dalam bahasa pemrograman imperatif biasanya memiliki algoritma yang ditulis dalam serangkaian klausal pendeklarasian, ekspresi aritmatis, dan sebanyak perintah.[3] Pendeklarasian meliputi pendeklarasian variabel serta tipe data atas variabel tersebut, contoh: var x: integer; Penggunaan ekpresi operasi aritmatis yang menghasilkan nilai, contoh: 2 + 2 menghasilkan nilai 4. Dan perintah yang melingkupi pendelegasian nilai atas hasil dari operasi aritmatis tersebut ke dalam suatu variabel, contoh: x := 2 + 2; if x = 4 then lakukan_sesuatu(); Salah satu struktur kritik atas implementasi imperatif ini adalah efek samping yang timbul atas pendelegasian perintah terhadap variabel yang berada diluar cakupan dari fungsi tersebut atau lebih dikenal sbg non-local variable.[4]

Program yang ditulis dengan bahasa deklaratif meliputi sebanyak properti yang harus dipenuhi sebagai mendapatkan suatu struktur hasil tertentu. Properti tersebut tidak mencerminkan suatu cerminan atas proses kerja suatu program namun merupakan suatu struktur deklarasi relasional matematis atas sebanyak objek melaui properti-propertinya. Dua bagian utama atas pemrograman deklaratif adalah bahasa pemrograman fungsional dan bahasa pemrograman logikal. Prinsip landasan dibalik bahasa pemrograman fungsional (Haskell) adalah mencegah timbulnya efek samping seperti yang terdapat pada model pemrograman imperatif sehingga menciptakannya lebih gampang sebagai digunakan menciptakan program yang melakukan sebanyak operasi matematis.[4] Sementara itu, prinsip dari suatu bahasa pemrograman logikal (Prolog) adalah merumuskan permasalahan yang akan diselesaikan, tujuan yang akan dicapai, dan membiarkan sistem melakukan analisis atas detail solusi terhadap permasalahan tersebut.[5] Tujuan utama atas suatu program diartikan dengan cara menciptakan sebanyak tujuan-tujuan yang lebih kecil, kemudian pada tiap-tiap tujuan tersebut secara lebih lanjut diartikan tujuan-tujuan pautan yang lebih kecil lagi, dan begitu seterusnya. Jika suatu arahan tujuan yang diartikan gagal digunakan sebagai menemukan solusi atas suatu permasalahan, karenanya arahan tujuan anakan yang lebih kecil akan di telusuri ulang, dan arahan pautannya akan diujicobakan.

Struktur dari cara suatu program dibuat dapat berupa tekstual ataupun visual. Dalam pemrograman visual, elemen-elemen program biasanya dimanipulasi secara grafis, sementara bila dibuat secara tekstual gunanya suatu program ditulis secara manual.

Kompilasi atau interpretasi

Program komputer dalam struktur yang mampu dibaca oleh manusia biasanya disebuat sbg kode sumber. Kode sumber mampu dikonversikan menjadi struktur berkas yang mampu dieksekusi secara langsung oleh komputer. Proses pengkonversian ini disebut sbg proses kompilasi dan biasanya dilakukan suatu program utilitas dari bahasa pemrograman yang digunakan yang disebut sbg kompiler. Pada beberapa bahasa pemrograman tertentu, kode sumber mampu langsung dieksekusi sbg suatu program dengan menggunakan bantuan utilitas yang disebut sbg interpreter.

Baik melalui proses kompilasi ataupun interpretatif, eksekusi program mampu dilakukan dalam suatu proses batch tanpa membutuhkan interaksi dengan manusia, namun program interpretatif memungkinkan pengguna sebagai menulis perintah dalam suatu sesi interaktif. Pada kasus ini suatu program dieksekusi sbg suatu perintah, yang kemudian dieksekusi baik secara serial ataupun paralel. Bahasa pemrograman yang menyediakan fitur interaktif seperti ini dinamakan sbg bahasa skrip.

Kompiler digunakan sebagai menerjemahkan kode sumber dari suatu bahasa pemrograman menjadi kode objek ataupun kode mesin. Kode objek biasanya membutuhkan proses lebih lanjut sehingga mampu menjadi kode mesin, dan kode mesin merupakan instruksi-instruksi yang diketahui dan mampu secara langsung dieksekusi oleh prosesor. Program komputer yang telah terkompilasi biasanya disebut sbg berkas eksekutabel, ataupun berkas biner; yang merujuk pada struktur sistem biner yang digunakan sebagai menyimpan kode mesin tersebut.

Program komputer yang diinterpretasikan -baik secara batch ataupun dalam modus interaktif- biasanya akan diterjemahkan terlebih dahulu ke dalam sebanyak token baru kemudian dieksekusi, atau dapat juga token-token tersebut dioptimasi lebih lanjut sehingga menjadi sebanyak instruksi yang memiliki tingkat efisiensi yang lebih baik dan disimpan sbg berkas P-Code terpisah sebagai dieksekusi kemudian oleh interpreter. BASIC, Perl, dan Python merupakan beberapa contoh dari bahasa pemrograman yang menyediakan sarana prasarana penerjemahaan langsung. Alternatif pautannya, program komputer yang ditulis dalam bahasa pemrograman Java merupakan hasil kompilasi kode sumber ke dalam bytcode yang kemudian dieksekusi oleh interpreter yang disebut sbg mesin virtual java.

Kerugian utama pemanfaatan interpreter adalah unjuk kerja program biasanya lebih lambat dibandingkan dengan program yang dikompilasi terlebih dahulu. Namun keuntungannya proses pengembangan perangkat lunak biasanya dapat dilakukan lebih cepat karena proses pengetesan atas berlanjutnya program mampu dilakukan dalam saat yang relatif singkat. Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian pautannya adalah, sebagai mampu menjalankan program tersebut, utilitas interpreter harus diikutkan dalam setiap pendistribusian, berbeda halnya dengan program terkompilasi yang mampu didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena sifatnya yang sudah dalam struktur kode mesin.

Umumnya masa ini bahasa-bahasa pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (Just in Time) yang akan menganalisis serta menerjemahkan instruksi-instruksi yang paling sering digunakan ke dalam bahasa mesin pada masa program dijalankan sehingga tingkat unjuk kerjanya mampu ditingkatkan mengimbangi unjuk kerja program yang terkompilasi.

Eksekusi dan penyimpanan

Suatu program komputer biasanya akan disimpan terlebih dahulu dalam memori utama (RAM) komputer sebelum dijalankan yang biasanya dilakukan oleh sistem operasi. Prosesor kemudian akan mengeksekusi program tersebut, instruksi demi instruksi sampai program tersebut diterminasi. Suatu program yang tengah dieksekusi oleh prosesor dinamakan sbg proses.[6] Terminasi ataupun penghentian eksekusi suatu program biasanya terjadi baik karena permintaan dari pengguna, interupsi pengguna, kekeliruan atas program itu sendiri, ataupun kekeliruan atas perangkat keras yang digunakan.

Program terpancang

Proses dalam suatu program komputer dinamakan

microcontroller di sebelah kanan dari USB flash drive di atas dikontrol melalui suatu program terpancang.

Beberapa program komputer tertentu dipancangkan langsung pada perangkat kerasnya sbg program yang dipanggil sebagai kebutuhan identifikasi serta inisialisasi atas berbagai aspek sebagai memastikan perangkat keras tersebut berfungsi.[7] Masa proses inisialisasi tersebut, program terpancang tersebut akan dipanggil oleh sistem operasi, program terpancang tersebut kemudian akan menjembatani penggunaan perangkat keras tersebut sehingga sistem operasi mampu menggunakannya dengan baik.[8]

Pemrograman manual

Proses dalam suatu program komputer dinamakan

pengalih sebagai input manual pada suatu komputer Data General Nova 3

Program komputer awalnya diinput secara manual ke prosesor utama dengan menggunakan sebanyak pengalih sbg representasi atas instruksi yang atas status konfigurasi on/off. Setelah menetapkan konfigurasi tersebut, tombol eksekusi akan ditekan. Proses ini kemudian dilakukan secara iteratif. Program komputer dalam sejarahnya pernah juga ditulis melalui paper tape' atau punched cards. Setelah dibawa masuk dan alamat awal eksekusi telah dibawa masuk, tombol eksekusi akan ditekan.[9]

Pembuatan program otomatis

Pemrograman generatif merupakan suatu tipikial dari pemrograman komputer yang akan menciptakan kode sumber melalui kelas-kelas generik, prototipe, aspek, templat, dan pembuat kode (code generator) sebagai meningkatkan produktifitas programmer. Kode sumber yang dibuat oleh utilitas pemrograman tersebut misalnya pemroses templat pada suatu IDE. Struktur yang paling sederhana adalah pemroses makro yang terdapat pada bahasa pemrograman C.

Eksekusi simultan

Umumnya sistem operasi yang hadir masa ini sudah mendukung pemanfaatan multitasking yang memungkinkan beberapa program komputer dijalankan pada masa yang bersamaan di suatu komputer. Sebagai mampu menjalankan beberapa program tersebut pada masa yang bersamaan, sistem operasi menggunakan mekanisme penjadualan proses yang merupakan suatu mekanisme yang akan mengatur pengalihan prosesor dalam melakukan pemrosesan sehingga beberapa program komputer tersebut mampu berinteraksi dengan pengguna masa dijalankan.[10] Di sisi perangkat keras yang digunakan, prosesor modern masa ini umumnya telah mendukung beberapa core prosesor yang dipancangkan sbg suatu prosesor yang memungkinkannya menjalankan beberapa program sekaligus.[11]

Suatu program komputer mampu melakukan kalkulasi secara simultan pada beberapa jenis operasi di masa yang bersamaan dengan menggunakan thread atau sbg proses terpisah. Umumnya prosesor yang hadir masa ini sudah mendukung arsitektur multithreading yang teroptimasi sebagai menjalankan beberapa thread secara efisien.

Lihat juga

  • Perangkat lunak komputer
  • Bahasa pemrograman
  • Kompiler
  • Interpreter

Pustaka

  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 1, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89683-4. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 2, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89684-2. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 3, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89685-0. 

  1. ^ Stair, Ralph M., et al. (2003). Principles of Information Systems, Sixth Edition. Thomson Learning, Inc. p. 132. ISBN 0-619-06489-7. 
  2. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 58. ISBN 0-201-50480-4. 
  3. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 75. ISBN 0-201-56885-3. 
  4. ^ a b Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 213. ISBN 0-201-56885-3. 
  5. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 244. ISBN 0-201-56885-3. 
  6. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 97. ISBN 0-201-50480-4. 
  7. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 30. ISBN 0-201-50480-4. 
  8. ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. p. 11. ISBN 0-13-854662-2. 
  9. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 6. ISBN 0-201-50480-4. 
  10. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 100. ISBN 0-201-50480-4. 
  11. ^ Akhter, Shameem (2006). Multi-Core Programming. Richard Bowles (Intel Press). pp. 11–13. ISBN 0-9764832-4-6. 


edunitas.com


Page 4

Program komputer atau sering kali disingkat sbg program adalah serangkaian instruksi yang ditulis sebagai melakukan suatu fungsi spesifik pada komputer.[1] Komputer pada landasannya membutuhkan keberadaan program agar dapat menjalankan fungsinya sbg komputer, biasanya hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program tersebut pada prosesor.[2] Suatu program biasanya memiliki suatu struktur model pengeksekusian tertentu agar mampu secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang mampu dibaca oleh manusia disebut sbg kode sumber, struktur program yang memungkinkan programmer menganalisis serta melakukan penelaahan algoritma yang digunakan pada program tersebut. Kode sumber tersebut pada kemudiannya dikompilasi oleh utilitas bahasa pemrograman tertentu sehingga membentuk suatu program. struktur alternatif pautan model pengeksekusian suatu program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan.

Beberapa program komputer mampu dijalankan pada suatu komputer pada masa bersamaan, kemampuan komputer sebagai menjalankan beberapa program pada masa bersamaan disebut sbg multitasking. Program komputer mampu dikategorikan menurut fungsinya; perangkat lunak sistem atau perangkat lunak aplikasi.

Pemrograman komputer

#include <stdio.h>int main(){

printf("Hello world!");return 0;

}

Kode sumber suatu program yang ditulis dengan bahasa pemrograman C

Pemrograman komputer merupakan suatu proses iteratif penulisan dan penyuntingan kode sumber sehingga membentuk suatu program. Penyuntingan kode sumber meliputi proses pengetesan, analisis, pembetulan kekeliruan, pengoptimasian algoritma, normalisasi kode, dan kadang-kadang pengkoordinasian selang satu programmer dengan programmer pautannya jika suatu program dikerjakan oleh beberapa orang dalam suatu tim. Seorang praktisi yang memiliki keahlian sebagai melakukan penulisan kode dalam bahasa pemrograman disebut sbg programmer komputer atau programmer, pengembang perangkat lunak, atau koder. Istilah rekayasa perangkat lunak (bahasa Inggris: Software engineering) seringkali digunakan karena proses penulisan program tersebut dipandang sbg suatu disiplin ilmu perekayasaan.

Paradigma

Program komputer mampu dikategorikan menurut paradigma bahasa pemrograman yang digunakannya. Dua paradigma utama yang umum digunakan adalah imperatif dan deklaratif.

Program yang ditulis dalam bahasa pemrograman imperatif biasanya memiliki algoritma yang ditulis dalam serangkaian klausal pendeklarasian, ekspresi aritmatis, dan sebanyak perintah.[3] Pendeklarasian meliputi pendeklarasian variabel serta tipe data atas variabel tersebut, contoh: var x: integer; Penggunaan ekpresi operasi aritmatis yang menghasilkan nilai, contoh: 2 + 2 menghasilkan nilai 4. Dan perintah yang melingkupi pendelegasian nilai atas hasil dari operasi aritmatis tersebut ke dalam suatu variabel, contoh: x := 2 + 2; if x = 4 then lakukan_sesuatu(); Salah satu struktur kritik atas implementasi imperatif ini adalah efek samping yang timbul atas pendelegasian perintah terhadap variabel yang berada diluar cakupan dari fungsi tersebut atau lebih dikenal sbg non-local variable.[4]

Program yang ditulis dengan bahasa deklaratif meliputi sebanyak properti yang harus dipenuhi sebagai mendapatkan suatu struktur hasil tertentu. Properti tersebut tidak mencerminkan suatu cerminan atas proses kerja suatu program namun merupakan suatu struktur deklarasi relasional matematis atas sebanyak objek melaui properti-propertinya. Dua bagian utama atas pemrograman deklaratif adalah bahasa pemrograman fungsional dan bahasa pemrograman logikal. Prinsip landasan dibalik bahasa pemrograman fungsional (Haskell) adalah mencegah timbulnya efek samping seperti yang terdapat pada model pemrograman imperatif sehingga menciptakannya lebih gampang sebagai digunakan menciptakan program yang melakukan sebanyak operasi matematis.[4] Sementara itu, prinsip dari suatu bahasa pemrograman logikal (Prolog) adalah merumuskan permasalahan yang akan diselesaikan, tujuan yang akan dicapai, dan membiarkan sistem melakukan analisis atas detail solusi terhadap permasalahan tersebut.[5] Tujuan utama atas suatu program diartikan dengan cara menciptakan sebanyak tujuan-tujuan yang lebih kecil, kemudian pada tiap-tiap tujuan tersebut secara lebih lanjut diartikan tujuan-tujuan pautan yang lebih kecil lagi, dan begitu seterusnya. Jika suatu arahan tujuan yang diartikan gagal digunakan sebagai menemukan solusi atas suatu permasalahan, karenanya arahan tujuan anakan yang lebih kecil akan di telusuri ulang, dan arahan pautannya akan diujicobakan.

Struktur dari cara suatu program dibuat dapat berupa tekstual ataupun visual. Dalam pemrograman visual, elemen-elemen program biasanya dimanipulasi secara grafis, sementara bila dibuat secara tekstual gunanya suatu program ditulis secara manual.

Kompilasi atau interpretasi

Program komputer dalam struktur yang mampu dibaca oleh manusia biasanya disebuat sbg kode sumber. Kode sumber mampu dikonversikan menjadi struktur berkas yang mampu dieksekusi secara langsung oleh komputer. Proses pengkonversian ini disebut sbg proses kompilasi dan biasanya dilakukan suatu program utilitas dari bahasa pemrograman yang digunakan yang disebut sbg kompiler. Pada beberapa bahasa pemrograman tertentu, kode sumber mampu langsung dieksekusi sbg suatu program dengan menggunakan bantuan utilitas yang disebut sbg interpreter.

Baik melalui proses kompilasi ataupun interpretatif, eksekusi program mampu dilakukan dalam suatu proses batch tanpa membutuhkan interaksi dengan manusia, namun program interpretatif memungkinkan pengguna sebagai menulis perintah dalam suatu sesi interaktif. Pada kasus ini suatu program dieksekusi sbg suatu perintah, yang kemudian dieksekusi baik secara serial ataupun paralel. Bahasa pemrograman yang menyediakan fitur interaktif seperti ini dinamakan sbg bahasa skrip.

Kompiler digunakan sebagai menerjemahkan kode sumber dari suatu bahasa pemrograman menjadi kode objek ataupun kode mesin. Kode objek biasanya membutuhkan proses lebih lanjut sehingga mampu menjadi kode mesin, dan kode mesin merupakan instruksi-instruksi yang diketahui dan mampu secara langsung dieksekusi oleh prosesor. Program komputer yang telah terkompilasi biasanya disebut sbg berkas eksekutabel, ataupun berkas biner; yang merujuk pada struktur sistem biner yang digunakan sebagai menyimpan kode mesin tersebut.

Program komputer yang diinterpretasikan -baik secara batch ataupun dalam modus interaktif- biasanya akan diterjemahkan terlebih dahulu ke dalam sebanyak token baru kemudian dieksekusi, atau dapat juga token-token tersebut dioptimasi lebih lanjut sehingga menjadi sebanyak instruksi yang memiliki tingkat efisiensi yang lebih baik dan disimpan sbg berkas P-Code terpisah sebagai dieksekusi kemudian oleh interpreter. BASIC, Perl, dan Python merupakan beberapa contoh dari bahasa pemrograman yang menyediakan sarana prasarana penerjemahaan langsung. Alternatif pautannya, program komputer yang ditulis dalam bahasa pemrograman Java merupakan hasil kompilasi kode sumber ke dalam bytcode yang kemudian dieksekusi oleh interpreter yang disebut sbg mesin virtual java.

Kerugian utama pemanfaatan interpreter adalah unjuk kerja program biasanya lebih lambat dibandingkan dengan program yang dikompilasi terlebih dahulu. Namun keuntungannya proses pengembangan perangkat lunak biasanya dapat dilakukan lebih cepat karena proses pengetesan atas berlanjutnya program mampu dilakukan dalam saat yang relatif singkat. Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian pautannya adalah, sebagai mampu menjalankan program tersebut, utilitas interpreter harus diikutkan dalam setiap pendistribusian, berbeda halnya dengan program terkompilasi yang mampu didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena sifatnya yang sudah dalam struktur kode mesin.

Umumnya masa ini bahasa-bahasa pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (Just in Time) yang akan menganalisis serta menerjemahkan instruksi-instruksi yang paling sering digunakan ke dalam bahasa mesin pada masa program dijalankan sehingga tingkat unjuk kerjanya mampu ditingkatkan mengimbangi unjuk kerja program yang terkompilasi.

Eksekusi dan penyimpanan

Suatu program komputer biasanya akan disimpan terlebih dahulu dalam memori utama (RAM) komputer sebelum dijalankan yang biasanya dilakukan oleh sistem operasi. Prosesor kemudian akan mengeksekusi program tersebut, instruksi demi instruksi sampai program tersebut diterminasi. Suatu program yang tengah dieksekusi oleh prosesor dinamakan sbg proses.[6] Terminasi ataupun penghentian eksekusi suatu program biasanya terjadi baik karena permintaan dari pengguna, interupsi pengguna, kekeliruan atas program itu sendiri, ataupun kekeliruan atas perangkat keras yang digunakan.

Program terpancang

Proses dalam suatu program komputer dinamakan

microcontroller di sebelah kanan dari USB flash drive di atas dikontrol melalui suatu program terpancang.

Beberapa program komputer tertentu dipancangkan langsung pada perangkat kerasnya sbg program yang dipanggil sebagai kebutuhan identifikasi serta inisialisasi atas berbagai aspek sebagai memastikan perangkat keras tersebut berfungsi.[7] Masa proses inisialisasi tersebut, program terpancang tersebut akan dipanggil oleh sistem operasi, program terpancang tersebut kemudian akan menjembatani penggunaan perangkat keras tersebut sehingga sistem operasi mampu menggunakannya dengan baik.[8]

Pemrograman manual

Proses dalam suatu program komputer dinamakan

pengalih sebagai input manual pada suatu komputer Data General Nova 3

Program komputer awalnya diinput secara manual ke prosesor utama dengan menggunakan sebanyak pengalih sbg representasi atas instruksi yang atas status konfigurasi on/off. Setelah menetapkan konfigurasi tersebut, tombol eksekusi akan ditekan. Proses ini kemudian dilakukan secara iteratif. Program komputer dalam sejarahnya pernah juga ditulis melalui paper tape' atau punched cards. Setelah dibawa masuk dan alamat awal eksekusi telah dibawa masuk, tombol eksekusi akan ditekan.[9]

Pembuatan program otomatis

Pemrograman generatif merupakan suatu tipikial dari pemrograman komputer yang akan menciptakan kode sumber melalui kelas-kelas generik, prototipe, aspek, templat, dan pembuat kode (code generator) sebagai meningkatkan produktifitas programmer. Kode sumber yang dibuat oleh utilitas pemrograman tersebut misalnya pemroses templat pada suatu IDE. Struktur yang paling sederhana adalah pemroses makro yang terdapat pada bahasa pemrograman C.

Eksekusi simultan

Umumnya sistem operasi yang hadir masa ini sudah mendukung pemanfaatan multitasking yang memungkinkan beberapa program komputer dijalankan pada masa yang bersamaan di suatu komputer. Sebagai mampu menjalankan beberapa program tersebut pada masa yang bersamaan, sistem operasi menggunakan mekanisme penjadualan proses yang merupakan suatu mekanisme yang akan mengatur pengalihan prosesor dalam melakukan pemrosesan sehingga beberapa program komputer tersebut mampu berinteraksi dengan pengguna masa dijalankan.[10] Di sisi perangkat keras yang digunakan, prosesor modern masa ini umumnya telah mendukung beberapa core prosesor yang dipancangkan sbg suatu prosesor yang memungkinkannya menjalankan beberapa program sekaligus.[11]

Suatu program komputer mampu melakukan kalkulasi secara simultan pada beberapa jenis operasi di masa yang bersamaan dengan menggunakan thread atau sbg proses terpisah. Umumnya prosesor yang hadir masa ini sudah mendukung arsitektur multithreading yang teroptimasi sebagai menjalankan beberapa thread secara efisien.

Lihat juga

  • Perangkat lunak komputer
  • Bahasa pemrograman
  • Kompiler
  • Interpreter

Pustaka

  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 1, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89683-4. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 2, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89684-2. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 3, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89685-0. 

  1. ^ Stair, Ralph M., et al. (2003). Principles of Information Systems, Sixth Edition. Thomson Learning, Inc. p. 132. ISBN 0-619-06489-7. 
  2. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 58. ISBN 0-201-50480-4. 
  3. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 75. ISBN 0-201-56885-3. 
  4. ^ a b Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 213. ISBN 0-201-56885-3. 
  5. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 244. ISBN 0-201-56885-3. 
  6. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 97. ISBN 0-201-50480-4. 
  7. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 30. ISBN 0-201-50480-4. 
  8. ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. p. 11. ISBN 0-13-854662-2. 
  9. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 6. ISBN 0-201-50480-4. 
  10. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 100. ISBN 0-201-50480-4. 
  11. ^ Akhter, Shameem (2006). Multi-Core Programming. Richard Bowles (Intel Press). pp. 11–13. ISBN 0-9764832-4-6. 


edunitas.com


Page 5

Program komputer atau sering kali disingkat sbg program adalah serangkaian instruksi yang ditulis sebagai melakukan suatu fungsi spesifik pada komputer.[1] Komputer pada landasannya membutuhkan keberadaan program agar dapat menjalankan fungsinya sbg komputer, biasanya hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program tersebut pada prosesor.[2] Suatu program biasanya memiliki suatu struktur model pengeksekusian tertentu agar mampu secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang mampu dibaca oleh manusia disebut sbg kode sumber, struktur program yang memungkinkan programmer menganalisis serta melakukan penelaahan algoritma yang digunakan pada program tersebut. Kode sumber tersebut pada kemudiannya dikompilasi oleh utilitas bahasa pemrograman tertentu sehingga membentuk suatu program. struktur alternatif pautan model pengeksekusian suatu program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan.

Beberapa program komputer mampu dijalankan pada suatu komputer pada masa bersamaan, kemampuan komputer sebagai menjalankan beberapa program pada masa bersamaan disebut sbg multitasking. Program komputer mampu dikategorikan menurut fungsinya; perangkat lunak sistem atau perangkat lunak aplikasi.

Pemrograman komputer

#include <stdio.h>int main(){

printf("Hello world!");return 0;

}

Kode sumber suatu program yang ditulis dengan bahasa pemrograman C

Pemrograman komputer merupakan suatu proses iteratif penulisan dan penyuntingan kode sumber sehingga membentuk suatu program. Penyuntingan kode sumber meliputi proses pengetesan, analisis, pembetulan kekeliruan, pengoptimasian algoritma, normalisasi kode, dan kadang-kadang pengkoordinasian selang satu programmer dengan programmer pautannya jika suatu program dikerjakan oleh beberapa orang dalam suatu tim. Seorang praktisi yang memiliki keahlian sebagai melakukan penulisan kode dalam bahasa pemrograman disebut sbg programmer komputer atau programmer, pengembang perangkat lunak, atau koder. Istilah rekayasa perangkat lunak (bahasa Inggris: Software engineering) seringkali digunakan karena proses penulisan program tersebut dipandang sbg suatu disiplin ilmu perekayasaan.

Paradigma

Program komputer mampu dikategorikan menurut paradigma bahasa pemrograman yang digunakannya. Dua paradigma utama yang umum digunakan adalah imperatif dan deklaratif.

Program yang ditulis dalam bahasa pemrograman imperatif biasanya memiliki algoritma yang ditulis dalam serangkaian klausal pendeklarasian, ekspresi aritmatis, dan sebanyak perintah.[3] Pendeklarasian meliputi pendeklarasian variabel serta tipe data atas variabel tersebut, contoh: var x: integer; Penggunaan ekpresi operasi aritmatis yang menghasilkan nilai, contoh: 2 + 2 menghasilkan nilai 4. Dan perintah yang melingkupi pendelegasian nilai atas hasil dari operasi aritmatis tersebut ke dalam suatu variabel, contoh: x := 2 + 2; if x = 4 then lakukan_sesuatu(); Salah satu struktur kritik atas implementasi imperatif ini adalah efek samping yang timbul atas pendelegasian perintah terhadap variabel yang berada diluar cakupan dari fungsi tersebut atau lebih dikenal sbg non-local variable.[4]

Program yang ditulis dengan bahasa deklaratif meliputi sebanyak properti yang harus dipenuhi sebagai mendapatkan suatu struktur hasil tertentu. Properti tersebut tidak mencerminkan suatu cerminan atas proses kerja suatu program namun merupakan suatu struktur deklarasi relasional matematis atas sebanyak objek melaui properti-propertinya. Dua bagian utama atas pemrograman deklaratif adalah bahasa pemrograman fungsional dan bahasa pemrograman logikal. Prinsip landasan dibalik bahasa pemrograman fungsional (Haskell) adalah mencegah timbulnya efek samping seperti yang terdapat pada model pemrograman imperatif sehingga menciptakannya lebih gampang sebagai digunakan menciptakan program yang melakukan sebanyak operasi matematis.[4] Sementara itu, prinsip dari suatu bahasa pemrograman logikal (Prolog) adalah merumuskan permasalahan yang akan diselesaikan, tujuan yang akan dicapai, dan membiarkan sistem melakukan analisis atas detail solusi terhadap permasalahan tersebut.[5] Tujuan utama atas suatu program diartikan dengan cara menciptakan sebanyak tujuan-tujuan yang lebih kecil, kemudian pada tiap-tiap tujuan tersebut secara lebih lanjut diartikan tujuan-tujuan pautan yang lebih kecil lagi, dan begitu seterusnya. Jika suatu arahan tujuan yang diartikan gagal digunakan sebagai menemukan solusi atas suatu permasalahan, karenanya arahan tujuan anakan yang lebih kecil akan di telusuri ulang, dan arahan pautannya akan diujicobakan.

Struktur dari cara suatu program dibuat dapat berupa tekstual ataupun visual. Dalam pemrograman visual, elemen-elemen program biasanya dimanipulasi secara grafis, sementara bila dibuat secara tekstual gunanya suatu program ditulis secara manual.

Kompilasi atau interpretasi

Program komputer dalam struktur yang mampu dibaca oleh manusia biasanya disebuat sbg kode sumber. Kode sumber mampu dikonversikan menjadi struktur berkas yang mampu dieksekusi secara langsung oleh komputer. Proses pengkonversian ini disebut sbg proses kompilasi dan biasanya dilakukan suatu program utilitas dari bahasa pemrograman yang digunakan yang disebut sbg kompiler. Pada beberapa bahasa pemrograman tertentu, kode sumber mampu langsung dieksekusi sbg suatu program dengan menggunakan bantuan utilitas yang disebut sbg interpreter.

Baik melalui proses kompilasi ataupun interpretatif, eksekusi program mampu dilakukan dalam suatu proses batch tanpa membutuhkan interaksi dengan manusia, namun program interpretatif memungkinkan pengguna sebagai menulis perintah dalam suatu sesi interaktif. Pada kasus ini suatu program dieksekusi sbg suatu perintah, yang kemudian dieksekusi baik secara serial ataupun paralel. Bahasa pemrograman yang menyediakan fitur interaktif seperti ini dinamakan sbg bahasa skrip.

Kompiler digunakan sebagai menerjemahkan kode sumber dari suatu bahasa pemrograman menjadi kode objek ataupun kode mesin. Kode objek biasanya membutuhkan proses lebih lanjut sehingga mampu menjadi kode mesin, dan kode mesin merupakan instruksi-instruksi yang diketahui dan mampu secara langsung dieksekusi oleh prosesor. Program komputer yang telah terkompilasi biasanya disebut sbg berkas eksekutabel, ataupun berkas biner; yang merujuk pada struktur sistem biner yang digunakan sebagai menyimpan kode mesin tersebut.

Program komputer yang diinterpretasikan -baik secara batch ataupun dalam modus interaktif- biasanya akan diterjemahkan terlebih dahulu ke dalam sebanyak token baru kemudian dieksekusi, atau dapat juga token-token tersebut dioptimasi lebih lanjut sehingga menjadi sebanyak instruksi yang memiliki tingkat efisiensi yang lebih baik dan disimpan sbg berkas P-Code terpisah sebagai dieksekusi kemudian oleh interpreter. BASIC, Perl, dan Python merupakan beberapa contoh dari bahasa pemrograman yang menyediakan sarana prasarana penerjemahaan langsung. Alternatif pautannya, program komputer yang ditulis dalam bahasa pemrograman Java merupakan hasil kompilasi kode sumber ke dalam bytcode yang kemudian dieksekusi oleh interpreter yang disebut sbg mesin virtual java.

Kerugian utama pemanfaatan interpreter adalah unjuk kerja program biasanya lebih lambat dibandingkan dengan program yang dikompilasi terlebih dahulu. Namun keuntungannya proses pengembangan perangkat lunak biasanya dapat dilakukan lebih cepat karena proses pengetesan atas berlanjutnya program mampu dilakukan dalam saat yang relatif singkat. Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian pautannya adalah, sebagai mampu menjalankan program tersebut, utilitas interpreter harus diikutkan dalam setiap pendistribusian, berbeda halnya dengan program terkompilasi yang mampu didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena sifatnya yang sudah dalam struktur kode mesin.

Umumnya masa ini bahasa-bahasa pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (Just in Time) yang akan menganalisis serta menerjemahkan instruksi-instruksi yang paling sering digunakan ke dalam bahasa mesin pada masa program dijalankan sehingga tingkat unjuk kerjanya mampu ditingkatkan mengimbangi unjuk kerja program yang terkompilasi.

Eksekusi dan penyimpanan

Suatu program komputer biasanya akan disimpan terlebih dahulu dalam memori utama (RAM) komputer sebelum dijalankan yang biasanya dilakukan oleh sistem operasi. Prosesor kemudian akan mengeksekusi program tersebut, instruksi demi instruksi sampai program tersebut diterminasi. Suatu program yang tengah dieksekusi oleh prosesor dinamakan sbg proses.[6] Terminasi ataupun penghentian eksekusi suatu program biasanya terjadi baik karena permintaan dari pengguna, interupsi pengguna, kekeliruan atas program itu sendiri, ataupun kekeliruan atas perangkat keras yang digunakan.

Program terpancang

Proses dalam suatu program komputer dinamakan

microcontroller di sebelah kanan dari USB flash drive di atas dikontrol melalui suatu program terpancang.

Beberapa program komputer tertentu dipancangkan langsung pada perangkat kerasnya sbg program yang dipanggil sebagai kebutuhan identifikasi serta inisialisasi atas berbagai aspek sebagai memastikan perangkat keras tersebut berfungsi.[7] Masa proses inisialisasi tersebut, program terpancang tersebut akan dipanggil oleh sistem operasi, program terpancang tersebut kemudian akan menjembatani penggunaan perangkat keras tersebut sehingga sistem operasi mampu menggunakannya dengan baik.[8]

Pemrograman manual

Proses dalam suatu program komputer dinamakan

pengalih sebagai input manual pada suatu komputer Data General Nova 3

Program komputer awalnya diinput secara manual ke prosesor utama dengan menggunakan sebanyak pengalih sbg representasi atas instruksi yang atas status konfigurasi on/off. Setelah menetapkan konfigurasi tersebut, tombol eksekusi akan ditekan. Proses ini kemudian dilakukan secara iteratif. Program komputer dalam sejarahnya pernah juga ditulis melalui paper tape' atau punched cards. Setelah dibawa masuk dan alamat awal eksekusi telah dibawa masuk, tombol eksekusi akan ditekan.[9]

Pembuatan program otomatis

Pemrograman generatif merupakan suatu tipikial dari pemrograman komputer yang akan menciptakan kode sumber melalui kelas-kelas generik, prototipe, aspek, templat, dan pembuat kode (code generator) sebagai meningkatkan produktifitas programmer. Kode sumber yang dibuat oleh utilitas pemrograman tersebut misalnya pemroses templat pada suatu IDE. Struktur yang paling sederhana adalah pemroses makro yang terdapat pada bahasa pemrograman C.

Eksekusi simultan

Umumnya sistem operasi yang hadir masa ini sudah mendukung pemanfaatan multitasking yang memungkinkan beberapa program komputer dijalankan pada masa yang bersamaan di suatu komputer. Sebagai mampu menjalankan beberapa program tersebut pada masa yang bersamaan, sistem operasi menggunakan mekanisme penjadualan proses yang merupakan suatu mekanisme yang akan mengatur pengalihan prosesor dalam melakukan pemrosesan sehingga beberapa program komputer tersebut mampu berinteraksi dengan pengguna masa dijalankan.[10] Di sisi perangkat keras yang digunakan, prosesor modern masa ini umumnya telah mendukung beberapa core prosesor yang dipancangkan sbg suatu prosesor yang memungkinkannya menjalankan beberapa program sekaligus.[11]

Suatu program komputer mampu melakukan kalkulasi secara simultan pada beberapa jenis operasi di masa yang bersamaan dengan menggunakan thread atau sbg proses terpisah. Umumnya prosesor yang hadir masa ini sudah mendukung arsitektur multithreading yang teroptimasi sebagai menjalankan beberapa thread secara efisien.

Lihat juga

  • Perangkat lunak komputer
  • Bahasa pemrograman
  • Kompiler
  • Interpreter

Pustaka

  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 1, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89683-4. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 2, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89684-2. 
  • Knuth, Donald E. (1997). The Art of Computer Programming, Volume 3, 3rd Edition. Boston: Addison-Wesley. ISBN 0-201-89685-0. 

  1. ^ Stair, Ralph M., et al. (2003). Principles of Information Systems, Sixth Edition. Thomson Learning, Inc. p. 132. ISBN 0-619-06489-7. 
  2. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 58. ISBN 0-201-50480-4. 
  3. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 75. ISBN 0-201-56885-3. 
  4. ^ a b Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 213. ISBN 0-201-56885-3. 
  5. ^ Wilson, Leslie B. (1993). Comparative Programming Languages, Second Edition. Addison-Wesley. p. 244. ISBN 0-201-56885-3. 
  6. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 97. ISBN 0-201-50480-4. 
  7. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 30. ISBN 0-201-50480-4. 
  8. ^ Tanenbaum, Andrew S. (1990). Structured Computer Organization, Third Edition. Prentice Hall. p. 11. ISBN 0-13-854662-2. 
  9. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 6. ISBN 0-201-50480-4. 
  10. ^ Silberschatz, Abraham (1994). Operating System Concepts, Fourth Edition. Addison-Wesley. p. 100. ISBN 0-201-50480-4. 
  11. ^ Akhter, Shameem (2006). Multi-Core Programming. Richard Bowles (Intel Press). pp. 11–13. ISBN 0-9764832-4-6. 


edunitas.com


Page 6

Tags (tagged): 2 Title of articles, 2002 FIFA World Cup Qualifying - European Zone Group 5, 2002 FIFA World Cup Qualifying - European Zone Group 7, 2002 FIFA World Cup Qualifying - European Zone Group 8, 2002 FIFA World Cup Qualifying - European Zone Group 9, 2006 FIFA World Cup Qualifying - Final Round Zone North, Central America and the Caribbean, 2006 FIFA World Cup Qualifying - First round African Zone, 2006 FIFA World Cup Qualifying - First round of Asian Zone, 2006 FIFA World Cup Qualifying - Qualifying Zone North, Central America and the Caribbean, 2011 AFC Cup, 2011 Asian Cup, 2011 CONCACAF Gold Cup, 2011 Copa America squad, 2014 FIFA World Cup Qualifying - Second Round Zone North, Central America and the Caribbean, 2014 FIFA World Cup Qualifying - Third Round Zone North, Central America and the Caribbean, 2014 FIFA World Cup squads, 2014 Winter Olympics, 27 September, 270, 273 BC, 28


Page 7

Tags (tagged): 2 Title of articles, 2002 FIFA World Cup Qualifying - European Zone Group 5, 2002 FIFA World Cup Qualifying - European Zone Group 7, 2002 FIFA World Cup Qualifying - European Zone Group 8, 2002 FIFA World Cup Qualifying - European Zone Group 9, 2006 FIFA World Cup Qualifying - Final Round Zone North, Central America and the Caribbean, 2006 FIFA World Cup Qualifying - First round African Zone, 2006 FIFA World Cup Qualifying - First round of Asian Zone, 2006 FIFA World Cup Qualifying - Qualifying Zone North, Central America and the Caribbean, 2011 AFC Cup, 2011 Asian Cup, 2011 CONCACAF Gold Cup, 2011 Copa America squad, 2014 FIFA World Cup Qualifying - Second Round Zone North, Central America and the Caribbean, 2014 FIFA World Cup Qualifying - Third Round Zone North, Central America and the Caribbean, 2014 FIFA World Cup squads, 2014 Winter Olympics, 27 September, 270, 273 BC, 28


Page 8

Tags (tagged): F Title of articles, F/A-18 Hornet, F1 2011 European Grand Prix, F1 Brazilian Grand Prix 2003, F1 Brazilian Grand Prix 2009, FC Sion, FC Slavyansky Slavyansk-na-Kubani, FC Slovan Liberec, FC Smena Komsomolsk-na-Amure, FIFA Ballon d' Or 2011, FIFA Ballon d'Or, FIFA Ballon d'Or 2012, FIFA Ballon d'Or 2013, Flag of Slovakia, Flag of Slovenia, Flag of Solomon Islands, Flag of Somalia, foster brother, Fotodiode, Fouad Rachid, Foued Kadir


Page 9

Tags (tagged): F Title of articles, F/A-18 Hornet, F1 2011 European Grand Prix, F1 Brazilian Grand Prix 2003, F1 Brazilian Grand Prix 2009, FC Sion, FC Slavyansky Slavyansk-na-Kubani, FC Slovan Liberec, FC Smena Komsomolsk-na-Amure, FIFA Ballon d' Or 2011, FIFA Ballon d'Or, FIFA Ballon d'Or 2012, FIFA Ballon d'Or 2013, Flag of Slovakia, Flag of Slovenia, Flag of Solomon Islands, Flag of Somalia, foster brother, Fotodiode, Fouad Rachid, Foued Kadir


Page 10

Tags (tagged): G Title of articles, Gary Andrew Stevens, Gary Breen, Gary Cahill, Gary Caldwell, Georginio Wijnaldum, Georgios George Koumantarakis, Georgios Karagounis, Georgios Samaras, Giuseppe Wilson, giussano, Givi Chokheli, Givi Dmitriyevich Chokheli, Granze, graph, grapheme, graphic, Gunter Friesenbichler, Gunungkidul Persig, Gunungsitoli, Gupta script


Page 11

Tags (tagged): G Title of articles, Gary Andrew Stevens, Gary Breen, Gary Cahill, Gary Caldwell, Georginio Wijnaldum, Georgios George Koumantarakis, Georgios Karagounis, Georgios Samaras, Giuseppe Wilson, giussano, Givi Chokheli, Givi Dmitriyevich Chokheli, Granze, graph, grapheme, graphic, Gunter Friesenbichler, Gunungkidul Persig, Gunungsitoli, Gupta script


Page 12

Tags (tagged): H Title of articles, Half-Blood Prince (character), Hali, halide, Halil Altintop, Harut and Marut, harvest, Harvesters combination, harvesting, Henk Bos (football player), Henk Ngantung, Henk Pellikaan, Henk Sneevliet, Hirofumi Moriyasu, Hirohito, Hiroki Sakai, Hiroshi Kiyotake, Houssine Kharja, Houston, Houston Dynamo, Houston Texans


Page 13

Tags (tagged): H Title of articles, Half-Blood Prince (character), Hali, halide, Halil Altintop, Harut and Marut, harvest, Harvesters combination, harvesting, Henk Bos (football player), Henk Ngantung, Henk Pellikaan, Henk Sneevliet, Hirofumi Moriyasu, Hirohito, Hiroki Sakai, Hiroshi Kiyotake, Houssine Kharja, Houston, Houston Dynamo, Houston Texans


Page 14

Tags (tagged): I Title of articles, Ibrahima Traore, Ibrox Stadium, Ibu Kota Beijing International Airport, Ibu Tien, Independiente, Index Kompas100, Index of Economic Freedom, India, Indonesian Young, Indonesian Youth Party, Indonesian ZALORA, Indonesias Got Talent, Internet Movie Database, Internet protocol, Internet protocol suite, Internet protocol television, ISO 3166-2, ISO 3166-2 : PH, ISO 3166-2 GB, ISO 4217


Page 15

Tags (tagged): I Title of articles, Ibrahima Traore, Ibrox Stadium, Ibu Kota Beijing International Airport, Ibu Tien, Independiente, Index Kompas100, Index of Economic Freedom, India, Indonesian Young, Indonesian Youth Party, Indonesian ZALORA, Indonesias Got Talent, Internet Movie Database, Internet protocol, Internet protocol suite, Internet protocol television, ISO 3166-2, ISO 3166-2 : PH, ISO 3166-2 GB, ISO 4217


Page 16

Tags (tagged): J Title of articles, Jabu Mahlangu, Jabu Pule, Jaca, Jacatra, January, January 1, January 10, January 11, Jens Bertelsen, Jens Hegeler, Jens Janse, Jens Jeremies, Johan Devrindt, Johan Djourou, Johan Elmander, Johan Hendrik Caspar Kern, Jorge Larrionda, Jorge Lobo Carrascosa, Jorge Luis Burruchaga, Jorge Luis Pinto


Page 17

Tags (tagged): J Title of articles, Jabu Mahlangu, Jabu Pule, Jaca, Jacatra, January, January 1, January 10, January 11, Jens Bertelsen, Jens Hegeler, Jens Janse, Jens Jeremies, Johan Devrindt, Johan Djourou, Johan Elmander, Johan Hendrik Caspar Kern, Jorge Larrionda, Jorge Lobo Carrascosa, Jorge Luis Burruchaga, Jorge Luis Pinto


Page 18

Tags (tagged): K Title of articles, Karl Erik Algot Almgren, Karl Gosta Herbert Lofgren, Karl Henry, Karl Hohmann, Kerkrade, Kermes ilicis, Kern County, California, Kernel (computer science), King of Bahrain Cup 2012, King of Bandits Jing, King Osanga, King Power Stadium, Konstantinos Mitroglou, Konstanz, Konya, Koo Ja-Cheol, Kwandang, North Gorontalo, Kwasi Appiah, KY, Kyai


Page 19

Tags (tagged): K Title of articles, Karl Erik Algot Almgren, Karl Gosta Herbert Lofgren, Karl Henry, Karl Hohmann, Kerkrade, Kermes ilicis, Kern County, California, Kernel (computer science), King of Bahrain Cup 2012, King of Bandits Jing, King Osanga, King Power Stadium, Konstantinos Mitroglou, Konstanz, Konya, Koo Ja-Cheol, Kwandang, North Gorontalo, Kwasi Appiah, KY, Kyai


Page 20

Tags (tagged): L Title of articles, La Romareda, La Romareda Stadium, La Rosaleda Stadium, La Spezia, Laureano Sanabria Ruiz, Lauren, Lauren Colthorpe, Lauren Etame Mayer, lesions, Lesley de Sa, lesmo, Lesotho, List of counties and cities in Central Java, List of counties and cities in Central Kalimantan, List of counties and cities in Central Sulawesi, List of counties and cities in East Java, List of Indonesian leaders, List of Indonesian legendary football player, List of Indonesian local clothing, List of Indonesian minister


Page 21

Tags (tagged): L Title of articles, La Romareda, La Romareda Stadium, La Rosaleda Stadium, La Spezia, Laureano Sanabria Ruiz, Lauren, Lauren Colthorpe, Lauren Etame Mayer, lesions, Lesley de Sa, lesmo, Lesotho, List of counties and cities in Central Java, List of counties and cities in Central Kalimantan, List of counties and cities in Central Sulawesi, List of counties and cities in East Java, List of Indonesian leaders, List of Indonesian legendary football player, List of Indonesian local clothing, List of Indonesian minister


Page 22

Tags (tagged): O Title of articles, Obu, Aichi- Obu, Aichi, Occidental Mindoro, Occimiano, Occitania, OIC, OIC Islamic University, Oier Olazabal, Oier Sanjurjo, Olympic Stadium Berlin, Olympic Stadium Fisht, Olympic Stadium San Marino, Olympic Stadium, Munich, Orchid, Orchidaceae, Orchids, North Gorontalo, Order of Carmelites, Oskemen, Oslo, Oslo Peace Agreement, Osman Chavez


Page 23

Tags (tagged): O Title of articles, Obu, Aichi- Obu, Aichi, Occidental Mindoro, Occimiano, Occitania, OIC, OIC Islamic University, Oier Olazabal, Oier Sanjurjo, Olympic Stadium Berlin, Olympic Stadium Fisht, Olympic Stadium San Marino, Olympic Stadium, Munich, Orchid, Orchidaceae, Orchids, North Gorontalo, Order of Carmelites, Oskemen, Oslo, Oslo Peace Agreement, Osman Chavez


Page 24

Tags (tagged): Judul Topik (Artikel) O, OB Shift 2, Oba Selatan, Tidore Kepulauan, Oba Tengah, Tidore Kepulauan, Oba Utara, Tidore, Oda Nobunaga, Odair Fortes, Odalengo Grande, Odalengo Piccolo, Oktaf, Oktaf Paskah, Oktal, Oktan, Olivia Dewi, Olivia Lubis Jensen, Olivia Newton John, Olivia Newton-John, Onozalukhu You, Moro O, Nias Barat, Onozalukhu, Lahewa, Nias Utara, Onozitoli Sawo, Sawo, Nias Utara, Onta


Page 25

Tags (tagged): Judul Topik (Artikel) O, OB Shift 2, Oba Selatan, Tidore Kepulauan, Oba Tengah, Tidore Kepulauan, Oba Utara, Tidore, Oda Nobunaga, Odair Fortes, Odalengo Grande, Odalengo Piccolo, Oktaf, Oktaf Paskah, Oktal, Oktan, Olivia Dewi, Olivia Lubis Jensen, Olivia Newton John, Olivia Newton-John, Onozalukhu You, Moro O, Nias Barat, Onozalukhu, Lahewa, Nias Utara, Onozitoli Sawo, Sawo, Nias Utara, Onta


Page 26

Tags (tagged): Judul Topik (Artikel) A, A Cinderella Story, A Clockwork Orange, A Clockwork Orange (film), A Collection, Aaptos papillata, Aaptos pernucleata, Aaptos robustus, Aaptos rosacea, Abdul Aziz Alu-Sheikh, Abdul Aziz Angkat, Abdul Aziz bin Abdulah bin Baz, Abdul Aziz bin Abdullah Alu Syaikh, Abisai, Abit, Mook Manaar Bulatn, Kutai Barat, Abitibi-Consolidated, AbiWord, AC Arles-Avignon, AC Bellinzona, AC Martina, AC Milan