ISTILAH ISTILAH DALAM SYSTEM OPERASI
Batch
System
Batch system adalah
dimana job-job yang mirip dikumpulkan dan dijalankan secara kelompok kemudian
setelah kelompok yang dijalankan tadi selesai maka secara otomatis kelompok
lain dijalankan. jadi dengan kata lain adalah teknologi proses komputer dari
generasi ke-2. yang jika suatu tugas sedang dikerjakan pada 1 rangkaian, akan
di eksekusi secara berurutan. Pada komputer generasi ke-2 sistem komputer nya
maasih blum dilengkapi oleh sebuah sistem operasi. But, dalan beberapa fungsi
sistem operasi, seperti os yang tengah berkembang pada jaman sekarang ini.
Contohnya adlah FMS ( Fortarn Monitoring System ) dan IBSYS.Jadi bisa
disimpulkan, bahwa komputer generasi ke-2 ini merupakan generasi pertama Sistem
Operasi.
contoh sebuah Batch
System adalah sebuah e-mail dan transaksi batch processing. Dalam suatu sistem
batch processing, transaksi secara individual dientri melalui peralatan
terminal, dilakukan validasi tertentu, dan ditambahkan ke transaction file yang
berisi transaksi lain, dan kemudian dientri ke dalam sistem secara periodik. Di
waktu kemudian, selama siklus pengolahan berikutnya, transaction file dapat
divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master file
yang berkaitan.
ada
2 cara dalam Batch System yaitu :
Resident
Monitor
Operator
bertugas mengatur urutan job
Job-job
yg sama cukup dicetak sekali saja, cara inilah yg disebut “Batch system”
Teknik pengurutan job secara manual
begini akan menyebabkan tingginya waktu
menganggur CPU. Muncul
teknik pengurutan job otomatis yg mampu mentransfer secara otomatis dari suatu
proses ke proses lainnya.Program kecil dan bersifat residen dimemori serta
berisi urutan2 job yg akan berpindah secara otomatis, inilah “Resident Monitor”Overlap
Operasi antara I/O dg CPU
Off line Processing,
data yg dibaca dari card reader disimpan dulu dalam tape driver sebelum dibawa
ke CPU, demikian pula informasi yg mau dicetak, disimpan dulu di tape.
Spooling adalah suatu program dapat dikerjakan
walaupun I/O masih mengerjakan proses lainnya dan disk secara bersamaan
menggunakan data untuk banyak proses. Pengertian multi programming adalah
kegiatan menjalankan beberapa program pada memori pada satu waktu.
BENTUK
DARI BATCH SYSTEM
Multi-programming adalah
salah satu teknik penjadwalan dimana tugas (task) yang
sedang berjalan tetap berjalan sampai ia melakukan operasi yang
membutuhkan waktu untuk menunggu respon dari luar (external event),
misalnya membaca data dari disket/CD/dsb, atau sampai komputer memaksa
untuk menukar tugas yang sedang berjalan dengan tugas lainnya.
Sistem operasi yang yang menggunakan multi-program sebagai scheduler-nya
bertujuan untuk memaksimalkan penggunaan CPU.
Multiprocessing adalah
istilah teknologi informasi dalam bahasa Inggris yang
merujuk kepada kemampuan pemrosesan komputer yang dilakukan secara
serentak. Hal ini dimungkinkan dengan menggunakan dua CPU atau lebih
dalam sebuah sistem komputer. Istilah ini juga dapat merujuk kepada
dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan
mengalokasikan tugas kepada prosesor-prosesor tersebut.
Source :
https://ahmadnurihsan059.wordpress.com/2018/10/28/apa-itu-batch-system-pengertian-dan-penjelasannya/
Critical section
Critical Section adalah
dengan mendesain sebuah protocol di mana proses-proses dapat menggunakannya
secara bersama-sama.Setiap proses harus meminta izin untuk memasuki Critical
Section-nya.Bagian dari kode yang mengimplementasikan izin ini disebut entry
section.Akhir dari critical section itu disebut exit section.Bagian kode
selanjutnya remainder section.
Critical
Section adalah sebuah segmen kode dari sebuah proses yang mana sumber
daya diakses bersamaan. Terdiri dari:
Entry Section: kode yang
digunakan untuk masuk ke dalam critical section
Critical Section: Kode
di mana hanya ada satu proses yang dapat dieksekusi pada satu waktu
Exit Section: akhir
dari critical section, mengizinkan proses lain
Remainder Section: kode
istirahat setelah masuk ke critical section
Solusi untuk mengatasi masalah Critical Section, yaitu:
a). Mutual exclution : Jika proses pi sedang mengeksekusi critical section-nya maka tidak ada proses lain yang dapat mengeksekusi dalam critical section mereka.
a). Mutual exclution : Jika proses pi sedang mengeksekusi critical section-nya maka tidak ada proses lain yang dapat mengeksekusi dalam critical section mereka.
b). Progress : Jika tidak ada proses yang sedang
dieksekusi dalam critical section dan ada beberapa proses yang ingin masuk ke
critical section mereka, maka pemilihan proses yang akan masuk ke critical
section berikutnya tidak bias ditunda
c). Bounded Waiting :Suatu keterikatan harus ada pada
sejumlah proses yang diijinkan masuk ke critical section mereka, setelah adanya
proses yang meminta masuk ke critical section dan sebelum permintaan itu
diterima.
Contoh pada
algoritma
Cara-cara
memecahkan masalah
• Hanya dua
proses, Po dan P1
• Struktur umum
dari proses adalah Pi (proses lain Pj)
do {
critical section
remainder section
} while(1);
Algoritma 1
Disini kita akan mencoba membuat sebuah rangkaian
solusi-solusi dari permasalahan yang makin meningkat kerumitannya.
Pada semua contoh, i adalah proses yang sedang berjalan,
j adalah proses yang lain. Pada contoh ini code.
i. Shared variables
• int
turn
Initially turn=0
•
turn = i, Pi can enter its critical section
ii. Process Pi
do {
while(turn!=1);
critical section
turn=j;
remainder section
} while(1);
iii.
Memenuhi mutual exclusion, tapi bukan progress.
Prasyarat Solusi Critical Section
Solusi
dari masalah critical section harus memenuhi tiga syarat
berikut:
- Mutual
Exclusion . Mutual Exclusion merupakan
sebuah jalan yang menjamin jika sebuah proses sedang menggunakan variabel
atau berkas yang digunakan bersama-sama, proses lain akan dikeluarkan dari
pekerjaan yang sama. Misal proses Pi sedang menjalankan critical
section (dari proses Pi), maka tidak ada proses-proses lain yang
dapat menjalankan critical section dari proses-proses
tersebut. Dengan kata lain, tidak ada dua proses yang berada di critical
section pada saat yang bersamaan.
do {
entry section
critical section
exit section
remainder section
} while (1);
Setiap proses harus meminta izin untuk memasuki critical section-nya. Bagian dari kode yang mengimplementasikan izin ini disebut entry section. Akhir dari critical section itu disebut exit section.Bagian kode selanjutnya disebut remainder section. Dari kode di atas, dapat kita lihat bahwa untuk bisa memasuki critical section sebuah proses harus melalui entry section.
- Terjadi
kemajuan (progress). Jika tidak ada proses yang sedang
menjalankan critical section-nya dan jika terdapat lebih dari
satu proses lain yang ingin masuk ke critical section, maka
hanya proses-proses yang tidak sedang menjalankan remainder
section-nya yang dapat berpartisipasi dalam memutuskan siapa yang
berikutnya yang akan masuk ke critical section, dan pemilihan
siapa yang berhak masuk ke critical section ini tidak
dapat ditunda secara tak terbatas (sehingga tidak terjadi deadlock).
- Ada batas waktu tunggu (bounded waiting). Jika seandainya ada proses yang sedang menjalankan critical section, maka terdapat batasan waktu berapa lama suatu proses lain harus menunggu giliran untuk mengakses critical section. Dengan adanya batas waktu tunggu akan menjamin proses dapat mengakses ke critical section (tidak mengalami starvation: proses seolah-olah berhenti, menunggu request akses ke critical section diperbolehkan).
Source :
Process Control Block (PCB)
PCB (process control
block) dalam Sistem Operasi
Sebagai pendahuluan
kita harus mengenal dulu apa itu Sistem Operasi,Sistem operasi adalah
seperangkat program yang mengelola sumber daya perangkat keras komputer, dan
menyediakan layanan umum untuk aplikasi perangkat lunak. Sistem operasi adalah
jenis yang paling penting dari perangkat lunak sistem dalam sistem komputer.
Tanpa sistem operasi, pengguna tidak dapat menjalankan program aplikasi pada
komputer mereka, kecuali program aplikasi booting.
Sistem operasi
mempunyai penjadwalan yang sistematis mencakup perhitungan penggunaan memori,
pemrosesan data, penyimpanan data, dan sumber daya lainnya.Untuk fungsi-fungsi
perangkat keras seperti sebagai masukan dan keluaran dan alokasi memori, sistem
operasi bertindak sebagai perantara antara program aplikasi dan perangkat keras
komputer,meskipun kode aplikasi biasanya dieksekusi langsung oleh perangkat
keras dan seringkali akan menghubungi OS atau terputus oleh itu. Sistem operasi
yang ditemukan pada hampir semua perangkat yang berisi komputer-dari ponsel dan
konsol permainan video untuk superkomputer dan server web.
Contoh sistem operasi
modern adalah Linux, Android iOS, Mac OS X, dan Microsoft Windows.
Definisi Proses
Proses adalah program yang sedang dieksekusi.
Menurut SilberSchatz, suatu proses adalah lebih dari sebuah kode program, yang terkadang
disebut text section . Proses juga mencakup program counter , yaitu sebuah
stack untuk menyimpan alamat dari instruksi yang akan dieksekusi selanjutnya
dan register. Sebuah proses pada umumnya juga memiliki sebuah stack yang
berisikan data-data yang dibutuhkan selama proses dieksekusi (seperti parameter
method, alamat return dan variabel lokal), dan sebuah data section yang
menyimpan variabel global.
Kami tekankan bahwa program itu sendiri bukanlah
sebuah proses; suatu program adalah satu entitas pasif; seperti isi dari sebuah
berkas yang disimpan didalam disket. Sedangkan sebuah proses dalam suatu
entitas aktif, dengan sebuah program counter yang menyimpan alamat instruksi
selanjut yang akan dieksekusi dan seperangkat sumber daya ( resource yang dibutuhkan
agar sebuah proses dapat dieksekusi.
Setiap proses dalam sebuah sistem operasi
mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang
proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan
menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi
lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran
yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses
yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau
dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih
rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan
prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama.
Suatu sistem operasi dapat juga mengubah nilai prioritas proses tertentu, agar
proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi
berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu
eksekusi, sistem operasi menaikkan nilai prioritasnya).
Proses control block
Tiap
proses digambarkan dalam sistem operasi oleh sebuah process control block PCB -
juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi
yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal dibawah
ini:
1.Status
proses: status mungkin, new, ready, running, waiting, halted, dan juga banyak
lagi.
2.Program
counter: suatu stack yang berisi alamat dari instruksi selanjutnya untuk
dieksekusi untuk proses ini.
3.CPU
register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan
komputer. Register tersebut termasuk accumulator , indeks register, stack
pointer , general-purposes register , ditambah code information pada kondisi
apa pun. Besertaan dengan program counter, keadaaan/status informasi harus
disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut
berjalan/bekerja dengan benar setelahnya (lihat Gambar 2-3).
4.Informasi
managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai
dari dasar dan batas register, tabel page/halaman, atau tabel segmen tergantung
pada sistem memori yang digunakan oleh sistem operasi (lihat Bab Managemen
memori).
5.Informasi
pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang
digunakan, batas waktu, jumlah akun jumlah job atau proses, dan banyak lagi.
6.Informasi
status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada
proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi.
7.PCB hanya
berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari
proses yang satu dengan yang lain.
Gambar
Proses Control Blok
Elemen-elemen
dari Process Control Block (PCB) :
1.Identifier
: menjelaskan proses yang sedang terjadi
2.State
: kondisi yang terjadi pada proses
3.Priority
: urutan perintah yang jelas pad suatu proses
4.Program
counter : instruksi pada proses
5.Memory
pointers : media penyimpanan (penunjuk alamat) pada proses
6.Context
data : data yang berkaitan dengan proses
7.I/O
status information : terdapat masukan dan keluaran yang diinginkan
8.Accounting
information : memberikan informasi yang dibutuhkan
Source :
Distributed Processing
Distributed
Processing adalah kemampuan menjalankan semua proses pengolahan data secara
bersama antara komputer yang berfungsi sebagai pusat dengan beberapa komputer
yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap
komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian
data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu
penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah
maka prosesor yang lain akan mengambil alih tugasnya. Dalam proses distribusi
sudah mutlak diperlukan perpaduan yang mendalam antara teknologi komputer dan
telekomunikasi, karena selain proses yang harus didistribusikan, semua host
komputer wajib melayani terminal-terminalnya dalam satu perintah dari komputer
pusat.
Contoh
: Data-data yang tersimpan di server yang aktif untuk melayani berbagai
kebutuhan perangkat lunak atau data bagi komputer lain yang tergabung dalam
sistem jaringan distribusi.
Pengertian Distributed Processing
Mengerjakan semua
proses pengolahan data secara bersama antara komputer pusat dengan beberapa
komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi.
Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah
sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan
menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan
atau masalah yang lain akan mengambil alih tugasnya.
Contoh dari Distributed Data Processing
System :
ATM,
komputer yang dirancang untuk tugas-tugas melaksanakan proyek, analisis
finansial, penjadwalan waktu dan akuntansi. Contoh lainnya, pengolahan data
pada server yahoo yang tersebar hampir di seluruh dunia secara distribusi,
setiap wilayah mempunyai server masing-masing. Seperti di indonesia mempunyai
server tersendiri sehingga pengolahan data tidak di pusat melainkan di wilayah masing-masing,
dll.
Source :
Handheld
computer adalah
komputer yang cukup kecil sehingga dapat digenggam. Komputer genggam ini dapat
bekerja dengan fungsi yang hampir sama dengan komputer biasa. Meskipun sangat
mudah untuk dibawa, komputer genggam tidak dapat menggantikan komputer biasa
(PC) karena hanya memiliki keyboard dan layar yang kecil. Beberapa produsen
mencoba untuk memecahkan masalah keyboard yang terlalu kecil. Keyboard tersebut
diganti dengan electronic pen. Bagaimanapun, electronic pen ini
masih bergantung pada teknologi pengenalan tulisan tangan yang masih dalam
tahap pengembangan.
Kelebihan dari komputer genggam ini adalah pengguna dapat menyimpan serta mengatur data dengan lebih efisien dan akurat. Biasanya komputer genggam dilengkapi dengan teknologi Bluetooth. Bluetooth memang tepat untuk mencetak secara nirkabel, menghubungkan antara komputer genggam dengan mobile printer. Tidak hanya dengan printer tetapi komputer genggam juga dapat dihubungkan dengan alat-alat lain melalui koneksi Bluetooth.
Komputer genggam dapat meningkatkan produktivitas pengguna dan memudahkan mereka untuk bekerja lebih efisien. Komputer genggam yang paling banyak digunakan adalah komputer yang khusus dirancang untuk menyediakan fungsi PIM (Personal Information Manager), seperti kalender, agenda, dan buku alamat.
Contoh system handheld adalah Android,
Symbian.
Source :
THREAD
Thread adalah sebuah alur kontrol
dari sebuah proses. Suatu proses yang multithreaded mengandung beberapa
perbedaan alur kontrol dengan ruang alamat yang sama. Keuntungan dari
multithreaded meliputi peningkatan respon dari user, pembagian sumber daya
proses, ekonomis, dan kemampuan untuk mengambil keuntungan dari arsitektur
multiprosesor. User level thread adalah thread yang tampak oleh programmer dan
tidak diketahui oleh kernel. User level thread secara tipikal dikelola oleh
sebuah library thread di ruang user. Kernel level thread didukung dan dikelola
oleh kernel sistem operasi. Secara umum, user level thread lebih cepat dalam
pembuatan dan pengelolaan dari pada kernel thread. Ada tiga perbedaan tipe dari
model yang berhubungan dengan user dan kernel thread.
- Model many to one: memetakan beberapa user level thread
hanya ke satu buah kernel thread.
- Model one to one: memetakan setiap user thread ke dalam
satu kernel thread. Berakhir.
- Model many to many: mengizinkan pengembang untuk membuat user thread sebanyak mungkin, konkurensi tidak dapat tercapai karena hanya satu thread yang dapat dijadualkan oleh kernel dalam satu waktu.
Multithreaded Process
Benefits/manfaat
- Kemampuan reaksi
- Sumber daya berbagi
- Ekonomi
- Scalabilas
Thread bermanfaat untuk Multithreading yang berguna untuk Multiprocessor dan
Singleprocessor. Kegunaan untuk system Multiprocessor, adalah :
a) Sebagai unit pararel atau tingkat granularitas pararelisme.
b) Peningkatan kinerja disbanding berbasis proses.
Kegunaan Multithreading pada singleprocessor, adalah :
a) Kerja foreground dan background sekaligus di satu aplikasi.
b) Penanganan asynchronous processing menjadi lebih baik.
c) Mempercepat eksekusi program.
d) Pengorganisasian program menjadi lebih baik.
Kegunaan Thread
Multithreading berguna untuk multiprocessor dan singleprocessor.
Kegunaan untuk system multiprocessor adalah :
- Sebagai unit pararel atau tingkat granularitas pararelisme.
- Peningkatan kinerja disbanding berbasis proses.
Karakteristik Thread
Proses merupakan lingkungan eksekusi bagi thread-thread yang dimilikinya. Thread-thread di satu proses memakai bersama sumber daya yang dimiliki proses, yaitu :
- Ruang alamat.
- Himpunan berkas yang dibuka.
- Proses-proses anak.
- Timer-timer.
- Snyal-sinyal.
- Sumber daya-sumber daya lain milik proses.
Implementasi Paket Thread
1. Thread level kernel.
> Keunggulan :
· Memudahkan koordinasi multithread seperti proses server.
· Tidak seboros kumpulan proses tradisional.
> Kelemahan :
· Operasi manajemen thread sangat lebih boros.
· Kernel harus menyediakan semua feature.
2. Thread level pemakai.
> Keunggulan :
Kinerja luar biasa bagus disbanding thread level kernel.
· Tidak diperlukan modifikasi kernel.
· Fleksibelitas tinggi.
> Kelemahan :
· Tidak manfaatkan multiprocessor.
· Untuk aplikasi dengan keterlibatan kernel yang kecil.
· Mengharuskan nonblocking system call.
Comments
Post a Comment