SISTEM OPERASI
1.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.
2. Masalah Critical Section
Critical Section
adalah sebuah segmen kode dari sebuah proses yang mana sumber daya
diakses bersamaan.
1. Mutual Exclusion.
Jika suatu proses
sedang menjalankan critical section-nya, maka proses-proses lain tidak dapat
menjalankan critical section mereka. Dengan kata lain, tidak ada dua proses
yang berada di critical section pada saat yang bersamaan.
2. Terjadi kemajuan
(progress).
Jika tidak ada proses
yang sedang menjalankan critical section-nya dan ada proses-proses lain yang
ingin masuk ke critical section, maka hanya proses-proses yang yang sedang
berada dalam entry section saja yang dapat berkompetisi untuk mengerjakan critical
section.
3. Ada batas waktu
tunggu (bounded waiting).
Jika seandainya ada
proses yang sedang menjalankan critical section, maka proses lain memiliki
waktu tunggu yang ada batasnya untuk menjalankan critical section-nya, sehingga
dapat dipastikan bahwa proses tersebut dapat mengakses critical section-nya
(tidak mengalami starvation: proses seolah-olah berhenti, menunggu request
akses ke critical section diperbolehkan).
Kunci untuk mencegah masalah ini dan di situasi yang lain yang
melibatkan shared memori, shared berkas, and shared sumber daya yang lain
adalah menemukan beberapa jalan untuk mencegah lebih dari satu proses untuk
melakukan proses writing dan reading kepada shared data pada saat yang sama.
Dengan kata lain kita memutuhkan mutual exclusion, sebuah jalan yang menjamin
jika sebuah proses sedang menggunakan shared berkas, proses lain dikeluarkan
dari pekerjaan yang sama. Kesulitan yang terjadi karena proses 2 mulai
menggunakan variabel bersama sebelum proses 1 menyelesaikan tugasnya. Masalah
menghindari race conditions dapat juga diformulasikan secara abstrak. Bagian
dari waktu, sebuah proses sedang sibuk melakukan perhitungan internal dan hal
lain yang tidak menggiring ke kondisi race conditions. Bagaimana pun setiap kali
sebuah proses
mengakses shared memory atau shared berkas atau melakukan sesuatu yang kitis akan menggiring kepada race conditions. Bagian dari program dimana shaed memory diakses disebut Critical Section atau Critical Region. Walau pun dapat mencegah race conditions, tapi tidak cukup untuk melakukan kerjasama antar proses secara pararel dengan baik dan efisien dalam menggunakan shared data. Kita butuh 4 kondisi agar menghasilkan solusi yang baik:
mengakses shared memory atau shared berkas atau melakukan sesuatu yang kitis akan menggiring kepada race conditions. Bagian dari program dimana shaed memory diakses disebut Critical Section atau Critical Region. Walau pun dapat mencegah race conditions, tapi tidak cukup untuk melakukan kerjasama antar proses secara pararel dengan baik dan efisien dalam menggunakan shared data. Kita butuh 4 kondisi agar menghasilkan solusi yang baik:
- Tidak ada dua proses secara
bersamaan masuk ke dalam citical section.
- Tidak ada asumsi mengenai kecepatan
atau jumlah cpu.
- Tidak ada proses yang berjalan di
luar critical secion yang dapat mengeblok proses lain.
- Tidak ada proses yang menunggu
selamamya untuk masuk critical section.
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
remainder section
} while(1);
3.Sistem Operasi - PCB
(process control block)
A.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.
B.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.
Contoh
: Pada
sistem operasi modern adalah:
1. Linux
2. Android
3. iOS
4. Mac OS X,
4.Pengertian
Distributed Processing
Pengertian
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 : system terdistribusi
lainnya adalah situs berita detik. System ini memanfaatkan layanan internet
dalam mendistribusikan informasi kepada penggunanya.
Pengguna harus memasukkan alamat web http://www.detik.com/ pada browser.
Melalui koneksi internet, input tersebut akan diproses kemudian memanggil dan
memunculkan tampilan web server www.detik.com pada
browser. Pada browser apapun dan dimanapun, akan memunculkan tampilan dengan
isi yang sama. Pada halaman tampilan tersebut pengguna dapat mengakses
informasi yang dibutuhkan. Informasi tersebut berasal dari database detik di
web server. Dengan adanya sistem terdistribusi inilah informasi dapat
didistribusikan dan disebarkan melalui koneksi internet sehingga pengguna dapat
mengaksesnya.
5.Pengertian Sistem HandHeld
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
1.Android,
2.Symbian.
6.Thread
Sistem Operasi
1.Thread
- Thread adalah unit terkecil dalam
suatu proses yang bisa dijadwalkan oleh sistem operasi.
- Merupakan sebuah status eksekusi
(ready, running, suspend, block, queue, dll)
- Kadang disebut sebagai proses
ringan (lightweight).
- Unit dasar dari dari sistem
utilisasi pada processor (CPU).
- Dalam thread terdapat: ID Thread,
Program Counter, Register dan Stack.
- Sebuah thread berbagi code section, data section dan resource sistem operasi dengan thread yang lain yang memiliki proses yang sama.
2.Single-Threading dan
Multi-Threading Single
Threading adalah
sebuah lightweight process (proses sederhana) yang mempunyai thread tunggal
yang berfungsi sebagai pengendali/ controller. Multi-Threading adalah
proses dengan thread yang banyak dan mengerjakan lebih dari satu tugas dalam
satu waktu.
3. Keuntungan
Multi-Threading
- Responsive;
tanggap: Multi-Threading mengizinkan program untuk
berjalan terus walau-pun pada bagian program tersebut di block atau
sedang dalam keadaan menjalankan operasi yang lama/ panjang. Sebagai
contoh, multithread web browser dapat mengizinkan pengguna
berinteraksi dengan suatu thread ketika suatu gambar sedang diload
oleh thread yang lain.
- Pembagian sumber daya:
Secara default, thread membagi memori dan sumber daya dari proses.Ketika
thread berjalan pada data yang sama, thread tersebut bisa berbagi cache
memory.
- Ekonomis:
Mengalokasikan memori dan sumber daya untuk membuat proses adalah sangat
mahal. Alternatifnya, karena thread membagi sumber daya dari proses, ini
lebih ekonomis untuk membuat threads.
- Pemberdayaan arsitektur
multiprosesor: Keuntungan dari multi-threading
dapat ditingkatkan dengan arsitektur multiprosesor, dimana setiap
thread dapat jalan secara paralel pada prosesor yang berbeda. Pada
arsitektur prosesor tunggal, CPU biasanya berpindah-pindah antara setiap
thread dengan cepat, sehingga terdapat ilusi paralelisme, tetapi pada
kenyataannya hanya satu thread yang berjalan di setiap waktu.
4. Kerugian
Multi-Threading
- Multiple thread bisa mengganggu
satu sama lain saat berbagi hardware resource, misalnya chace memory.
- Execution time (waktu proses) dari
sebuah single-thread tidak dapat diimprove (ditambah), tapi malah
bisa diturunkan. Ini terjadi karena penurunan frequensi yang dibutuhkan
ketika terjadi pergantian thread yang berjalan.
- Harus ada dukungan dari hardware
ataupun software untuk melakukan multi-Threading.
CONTOH WINDOW PADA THREAD :
One-to-one mapping
Berisi:
identitas
register, stack (user & kernel), data khusus 1
Struktur data utama:
Executive thread block (ETHREAD)
Kernel thread block (KTHREAD)
Thread environment block (TEB)]
REFERENSI
LINK
1. https://ahmadnurihsan059.wordpress.com/2018/10/28/apa-itu-batch-system-pengertian-dan-penjelasannya/
Tidak ada komentar:
Posting Komentar