Kamis, 02 April 2009

THREADS
Definisi threads
Thread merupakan sebuah pengontrol aliran program untuk lebih mudahnya, bayangkanlah thread sebagai sebuah proses yang akan dieksekusi didalam sebuah program tertentu. Sebagai contoh aplikasinya adalah hot java browser yang memperbolehkan anda untuk browsing terhadap suatu page, bersamaan dengan mendownload object yang lain, misalnya gambar, memainkan animasi, dan juga file audio pada saat yang bersamaan.
State dari thread :
1. Running
2. Ready to run
3. Resumed
4. Suspended
5. blocked
Tinjauan :
• Multithreading Models
• Perpustakaan thread
• Isu Threading
• Contoh Sistem Operasi
• Windows XP Threads
• Linux Threads
Tujuan
pemanfaatan yang membentuk dasar dari sistem komputer multithreaded Untuk mendiskusikan API Pthreads, Win32, dan Java thread.

Single and Multithreaded Processes





Manfaat
•Respon
•Berbagisumberdaya
•Ekonomi
•Skalabilitas

MulticorePemrograman

Multicoresystems memberikan tekanan pada program

Dividing kegiatan
• Keseimbangan
• Data menggelikan
• Ketergantungan data
• Testing dan debugging

Multithreaded Server Architecture





Pengguna Threads
• Manajemen thread dilakukan oleh user level threads perpustakaan
• 3 perpustakaan thread :
• POSIX Pthreads
• Win32 threads
• Java threads
Kernel Threads
• Didukung oleh Kernel
Contoh
• Windows XP/2000
• Solaris
• Linux
• Tru64 UNIX
• Mac OS X

Multithreading Models
• Banyak-ke-Satu
• Satu-ke-Satu
• Banyak-ke-Banyak

Banyak-ke-Satu
pengguna level thread dipetakan ke kernel thread tunggal
Contoh:
• Solaris Green Threads
• GNU Portable Threads

Satu-ke-Satu
user-level thread ke kernel thread peta
Contoh
Wiondows NT/XP 2000, Linux, solaris 9

Banyak-ke-BanyakModel
banyak pengguna tingkat benang yang akan dipetakan ke banyak kernel threads,
Memungkinkan sistem operasi yang cukup untuk membuat jumlah kernel threads
• Solaris sebelum versi 9
• Windows NT/2000 dengan ThreadFiberpackage

Model dua-tingkat
sama dengan M: M, kecuali yang memungkinkan pengguna untuk boundto thread kernel thread
Contoh :
• IRIX
• HP-UX
• Tru64 UNIX
• Solaris 8 dan sebelumnya

Perpustakaan thread
Thread perpustakaan programmer menyediakan API untuk mengelola threads
Dua cara utama pelaksanaan
• Perpustakaan pengguna sepenuhnya dalam ruang
• Kernel level perpustakaan didukung oleh OS

Pthreads
sebagai salah satu pengguna atau kernel-tingkat-tingkat. POSIX standard (IEEE 1003.1c) API untuk pembuatan thread dan sinkronisasi. API menentukan perilaku urutan perpustakaan, pelaksanaan adalah sampai dengan perkembangan perpustakaan. Umum dalam sistem operasi UNIX (Solaris, Linux, Mac OS X).

Java Threads
Java threads dikelola oleh JVM, Biasanya dilaksanakan dengan menggunakan benang model yang disediakan oleh OS.
Java threads dapat dibuat oleh:
• Memperluas kelas Thread
• Pelaksanaan Runnableinterface

Isu Threading
Semantik dari fork () dan exec () system calls.
Thread pembatalan target thread.
• Asynchronous atau ditunda
Sinyal penanganan.
Thread renang.
Thread-data spesifik.
Penjadwal activations.


Pembatalan thread
Terminating sebuah thread sebelum selesai, ada Dua pendekatan:
Asynchronous cancellationterminates target thread segera

Penanganan sinyal
Sinyal digunakan di sistem UNIX untuk memberitahukan bahwa suatu proses telah terjadi,
1. Sinyal yang dihasilkan oleh peristiwa tertentu
2. Sinyal yang dikirimkan ke proses
3. Sinyal ditangani

Pilihan:
• Memberikan sinyal pada urutan ke sinyal
• Memberikan sinyal ke setiap thread dalam proses
• Memberikan sinyal ke thread tertentu
• Menetapkan tertentu threato menerima sinyal untuk semua proses

Thread Pools
Buat jumlah benang dalam sebuah kolam di mana mereka menunggu bekerja.
Keuntungan :
• Biasanya sedikit lebih cepat ke layanan dengan permintaan yang ada daripada membuat thread baru thread
• Memungkinkan jumlah benang dalam aplikasi (s) untuk terikat dengan ukuran renang
Thread Data Spesifik
Memungkinkan setiap thread memiliki salinan data.
Berguna bila Anda tidak memiliki kontrol atas urutan proses penciptaan (misalnya, bila menggunakan thread pool).

Penjadwal Activations
Kedua M: M dan Dua level model memerlukan komunikasi yang sesuai untuk mempertahankan jumlah kernel threads untuk aplikasi.
Penjadwal upcalls-activations menyediakan mekanisme komunikasi dari kernel thread ke perpustakaan.
komunikasi trsbt memungkinkan aplikasi untuk mempertahankan correctnumber kernel threads.

Contoh Sistem Operasi
• Windows XP Threads
• Linux Thread

Windows XP Threads
thread berisi :
• thread id
• Daftar menetapkan
• Terpisah user dan kernel susunan
• Tempat penyimpanan data pribadi

Register set, susunan, dan tempat penyimpanan pribadi dikenal sebagai konteks, struktur utama data dari thread termasuk:
• ETHREAD
• KTHREAD
• TEB

Linux Threads
• Linux merujuk kepada tasksrather dari benang.
• Thread dilakukan melalui penciptaan clone ()
• clone () memungkinkan seorang untuk berbagi ruang alamat orang tua tugas (proses).
READ MORE -

Selasa, 10 Maret 2009

SISTEM OPERASI

3 KOMPONEN UTAMA MESIN KOMPUTER

- Processor
Pemroses data dengan berbagai perangkat pendukung. Alat ini digunakan sebagai pusat atau otak dari komputer yang berfungsi untuk melakukan perhitungan dan menjalankan tugas. Oleh karena itu prosesor menjadi tolak ukur setiap komputer. Beberapa prosesor yang terkemuka adalah produk-produk Intel dan AMD, yakni Pentium dan K-6.

- Memory
Bagian dari komputer yang berfungsi untuk menyimpan data dan program.

- I/O
Terdiri dari perangkat masukan dan keluaran, seperti keyboard dan printer.

3 KOMPONEN UTAMA CPU

- Control unit (CU)
Control Unit (CU), merupakan komponen utama prosesor yang mengontrol semua perangkat yang terpasang pada komputer, mulai dari input device sampai output device.

- Aritmatic logic unit (ALU)
Arithmetic Logic Unit (ALU), merupakan bagian dari prosesor yang khusus mengolah data aritmatika (menambah, mengurang dll) serta data logika (perbandingan).

- Register
register adalah sebuah tempat penampungan sementara untuk data- data yng akan diolah oleh prosesor register dapat didefinisikan juga sebagai memori yang sangat cepat dalam transfer datanya, bertugas membantu operasi yang dilakukan pemroses, terutama sebagai tempat operan-operan. Register ini dikategorikan menjadi dua, yaitu (1) register yang terlihat pemakai, seperti data register dan address register. (2) register untuk kendali status.

4 DEFINISI SISTEM OPERASI
- Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. Sebelum ada sistem operasi, orang hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal digital. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing. Untuk lebih memahami sistem operasi maka sebaiknya perlu diketahui terlebih dahulu beberapa konsep dasar mengenai sistem operasi itu sendiri.

- sistem operasi ialah pengelola seluruh sumber-daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer.
- Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer.

- Sistem operasi Komputer adalah perangkat lunak komputer atau software yang bertugas untuk melakukan kontrol dan manajemen perangkat keras dan juga operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah data yang bisa digunakan untuk mempermudah kegiatan manusia. Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS. Sistem Operasi berfungsi sebagai penghubung antara lapisan hardware dan lapisan software. selain itu, Sistem Operasi komputer juga melakukan semua perintah perintah penting dalam komputer, serta menjamin aplikasi-aplikasi yang berbeda fungsinya dapat berjalan lancar secara bersamaan tanpa hambatan. Sistem Operasi Komputer menjamin aplikasi perangkat lunak lainnya bisa memakai memori, melakukan input serta output terhadap peralatan lain, dan mempunya akses kepada sistem file. Jika beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi Komputer akan mengatur jadwal yang tepat, sehingga sebisa mungkin semua proses pada komputer yang berjalan mendapatkan waktu yang cukup untuk menggunakan CPU dan tidak saling mengganggu dengan perangkat yang lain.

PROSES BOOTING KOMPUTER

Poses booting adalah proses dimana suatu komputer dan operating system - nya mulai bekerja dengan menginisialisasi semua device yang ada di komputer beserta driver-driver yang akan menjalankannya.

Berikut adalah urutan proses booting yang dilakukan suatu operating system :

Boot loader mencari image kernel, meloadnya ke memory kemudian dari memory, image kernel tadi dijalankan.
Kernel mengenali device-device beserta driver-driver nya.
Kemudian kernel menge-mount root filesystem yang merupakan salah satu langkah penting agar proses-proses lain di dalam system UNIX dapat dijalankan ( di dalam system UNIX root filesystem ditandai dengan / )
Selanjutnya kernel akan menjalankan program bernama init.
Program bernama init inilah yang kemudian menjalankan service selanjutnya.
Proses terakhir yang dijalankan init adalah getty. Dengan getty kita mendapat suatu interface untuk masuk ke dalam system dengan memasukkan username dan password

ISTILAH-ISTILAH DALAM KOMPUTER

- Computer user
Pengguna komputer yang menjalankan sistem dan program aplikasi lainya yang ada di komputer.

- Application program
Merupakan program yang khusus melakukan suatu pekerjaan tertentu, seperti program gaji pada suatu perusahaan. Maka program ini hanya digunakan oleh bagian keuangan saja tidak dapat digunakan oleh departemen yang lain. Biasanya program aplikasi ini dibuat oleh seorang programmer komputer sesuai dengan permintaan / kebutuhan seseorang / lembaga/ perusahaan guna keperluan interennya atau program komputer yang menjalankan fungsi-fungsi tertentu yang dibutuhkan pengguna. Fungsionalitas tersebut sangat bervariasi, seperti word processing, spreadsheet, atau database. Application program adalah software yang dibuat untuk memenuhi suatu kebutuhan yang lebih spesifik.

- Compiler
Adalah program sistem yang digunakan sebagai alat bantu dalam pemrogaman.Perangkat lunak yang melakukan proses penterjemahan code (dibuat programmer) ke dalam bahasa mesin. Hasil dari terjemahan ini adalah bahasa mesin. Pada beberapa compiler output berupa bahasa mesin dilaksanakan dengan proses assembler yang berbeda.

- Computer library
Suatu Kumpulan subroutines yang digunakan untuk mengembangkan perangkat lunak. Perpustakaan berisi kode dan data yang memberikan layanan untuk program-program independen. memungkinkan kode dan data yang akan diubah dalam berbagi dan modular fashion.

- Shell
Adalah program penerima perintah komputer melalui teks. Atau salah satu jenis program bawaan sistem operasi (seringnya merupakan program yang terpisah dari inti sistem operasi) yang menyediakan komunikasi langsung antara pengguna dan sistem operasi. Contoh dari shell adalah COMMAND.COM dalam MS-DOS, Macintosh Finder (Macintosh), Windows Explorer, Command Prompt/cmd.exe, PowerShell dalam Microsoft Windows, Bourne shell, C shell, Korn shell dan masih banyak lainnya khususnya dalam keluarga sistem operasi UNIX. Beberapa shell juga dapat digunakan untuk melakukan manajemen berkas. (http://id.wikipedia.org/wiki/Shell_(komputer)).

- System call
Adalah tata cara pemanggilan di program aplikasi untuk memperoleh layanan yang disediakan oleh sistem operasi. System call berupa rutin sistem operasi untuk keperluan tertentu yang spesifik. Bentuk system call beragam, terbanyak berupa rutin prosedur atau fungsi. System call merupakan jembatan antara proses process dan sistem operasi operating system.

- Operating system kernel
Adalah jembatan antara hardware dan aplikasi-aplikasi yang menerjemahkan bahasa software sehingga mampu dimengerti oleh hardware dan hardware akan segera memprosesnya sesuai dengan permintaan. Akibatnya hal tersebut memungkinkan pengguna untuk menggunakan atau bekerja dengan komputernya melalui software.

- Computer hardware
Adalah berupa magnetis, elektronik, mekanis dan komponen listrik membuat suatu sistem komputer.



HUBUNGAN ISTILAH-ISTIALAH TERSEBUT

Suatu OS menunggu instruksi dari user /pengguna. Setelah user memberikan instruksi melalui program aplikasi, maka program yang akan membaca instruksi dan mengartikan keinginal user adalah Shell. Shell menerjemahkan (compile) dan memastikan ke validan instruksi dari user melalui computer library lalu secara otomatis shell menjadi penyedia interface antara program dan bagian OS. Proses selanjutnya instruksi di lanjutkan oleh system call dimana mengelola perizinan instruksi, hal ini sangat di perlukan karena pengguna tidak dapat secara langsung mengakses I/O Devices tanpa melalui proses ini . Setelah instruksi sampai kepada OS, OS akan mengolah, mengontrol dan memutuskan instruksi tersebut akan di jalankan atau tidak dengan kevalidan antara instruksi dan devices. Apabila positif maka instruksi akan kembali kepada pengguna dengan output yang pengguna harapkan.




Referensi didapat dari :

http://riffasi08d.wordpress.com/2008/11/17/pengertian-software-perangkat-lunak-komputer/
http://www.total.or.id/info.php?kk=shell
http://www.total.or.id/info.php?kk=System%20call
http://cloudstrifeardi.blogspot.com/2007/09/pengertian-gnukernelopen-sourcelive-cd.html
http://otakkacau.co.cc/?p=92
http://www.total.or.id/info.php?kk=System%20call
http://www.indogamers.com/f391/istilah_istilah_dalam_internet-155498/
http://www.indowebster.web.id/f14/kamus-and-istilah-teknologi-infoermasi-1007-post8204/
http://www.total.or.id/info.php?kk=compiler
http://www.total.or.id/info.php?kk=Shell
http://www.total.or.id/info.php?kk=System%20call
http://www.total.or.id/info.php?kk=Online%20Computer%20Library%20Catalog
http://agtree.wordpress.com/2008/03/21/pemrograman-c-di-linux/
READ MORE -