Batch System (FMS dan IBSYS)
Perkembangan generasi komputer
dibagi menjadi beberapa generasi. Dimulai dari generasi pertama tahun (1945 -
1955) dengan teknologinya berupa vacum tube, lalu digenerasi kedua tahun (1955
- 1965) dengan teknologinya transistor dan batch system.
Batch System adalah suatu
teknologi untuk melakukan suatu atau beberapa pekerjaan dalam satu waktu, cara
bekerjanya sistem batch yang akan diproses di alokasikan dalam script-script
batch. Sistem Operasi yang menjalankan proses batch system adalah Fortran
Monitor System atau FMS dan IBSYS.
Sebelum IBSYS, IBM memproduksi IBM
709, IBM 7094, IBM 7090 suatu komputer yang berbasis pada sistem operasi
FORTRAN. FORTRAN adalah suatu Sistem Operasi yang ketika akan dijalankan maka
pertama kali pengguna harus men-load compiler fortran yang akan men-load
program dan data dan biasanya haslnya berupa print out.
IBSYS adalah sistem operasi yang
sama tapi memiliki perbedaan yang cukup signifikan dengan Fortran. Sistem
Operasi ini sama-sama keluaran dari IBM. IBSYS adalah program monitor dasar
yang dapat membaca gambar dari control card yang ditempatkan di data kartu
program dan gambar kartu ini dibaca menggunakan kaset magnetik.
Critical Section
Suatu system
terdiri dari n proses dimana semuanya berkompetisi menggunakan data
yang digunakan bersama-sama. Masing-masing proses mempunyai sebuah kode segmen
yang disebut dengan critical section, dimana proses memungkinkan untuk
mengubah variabel umum, mengubah sebuah tabel, menulis file dan lain sebagainya.
Gambaran penting dari sistem adalah, ketika sebuah proses dijalankan di
dalam critical section, tidak ada proses lain yang diijinkan untuk
menjalankan critical section-nya. Sehingga eksekusi
dari critical section oleh proses-proses tersebut berlaku
eksklusif (mutually exclusive). Permasalahan critical
section digunakan untuk mendesain sebuah protokol dimana proses-proses
dapat bekerja sama. Masing-masing proses harus meminta ijin untuk
memasuki critical section-nya. Daerah kode yang mengimplementasikan
perintah ini disebut daerah entry. Critical section biasanya
diikuti oleh daerah exit. Kode pengingat terletak di
daerah remainder. Sebuah solusi dari permasalahan critical
section harus memenuhi 2 syarat sebagai berikut :
Mutual Exclusion.
Apabila
proses Pi menjalankan critical section-nya, maka tidak ada
proses lain yang dapat menjalankan critical section.
Progress. Apabila
tidak ada proses yang menjalankan critical section-nya dan terdapat
beberapa proses yang akan memasuki critical section-nya, maka hanya
proses-proses itu yang tidak diproses di dalam daerah pengingat (remainder)
dapat ikut berpartisipasi di dalam keputusan proses mana yang akan
memasuki critical section selanjutnya, dan pemilihan ini tidak dapat
ditunda tiba-tiba.
Bounded Waiting.
Terdapat
batasan jumlah waktu yang diijinkan oleh proses lain untuk
memasuki critical section setelah sebuah proses membuat permintaan
untuk memasuki critical section-nya dan sebelum permintaan dikabulkan.
Asumsi bahwa
masing-masing proses dijalankan pada kecepatan bukan nol (nonzero). Akan tetapi
tidak ada asumsi mengenai kecepatan relatif dari proses ke n. Pemecahan
masalah critical section tidak mengandalkan semua asumsi tentang
instruksi hardware atau jumlah prosessor dari hardware yang mendukung. Akan
tetapi, diasumsikan bahwa instruksi dasar bahasa mesin (instruksi primitif,
misalnya load, store dan test) dijalankan secara otomatis.
Sehingga apabila dua instruksi dijalankan
PCB (process control block)
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.
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
5.Context data : data yang
berkaitan dengan proses
6.I/O status information :
terdapat masukan dan keluaran yang diinginkan
7Accounting information :
memberikan informasi yang dibutuhkan
Macam-Macam Jenis Status Proses
Jenis status yang mungkin dapat
disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda.
Tetapi paling tidak ada 3 macam status yang umum, yaitu:
1.Ready adalah status dimana
proses siap untuk dieksekusi pada giliran berikutnya
2.Running adalah status dimana
saat ini proses sedang dieksekusi oleh prosesor
3.Blocked adalah status dimana
proses tidak dapat dijalankan pada saat prosesor siap/bebas
Distributed Processing
Berbagai definisi dan berbagai
arti yang berbeda dari Distribusi Processing :
Donald - Distributed
Processing
Meletakkan sumber daya komputer
(resource) dimana orang berada
Diebold - State of the Art in Distributed Processing
Suatu struktur organisasi data processing dengan
kemampuan sentralisasi, pemrosesan sedikitnya merupakan bagian dari
aplikasi dalam bentuk desentralisasi
Goldberg - IBM System
Communication Division Sederetan node-node data processing yang terhubungkan (interconnected) oleh telekomunikasi satu
sama lain dan host yang digunakan untuk menyediakan kontrol terhadap
keseluruhan jaringan
Karakteristik tentang Pendefinisian lain :
1.
Prosesor-prosesor di link dengan telekomunikasi atau saluran lainnya
(Dalam beberapa kasus : tidak di link dengan telekomunikasi, tetapi dengan tape atau disk secara
manual).
2. Peripheral prosesor merupakan subordinat dari
central machine (mungkin tidak ada mesin kontrol yang lebih tinggi, tetapi
dalam struktur jaringan mesin atau ring atau mesin-mesin dengan status yang
sama / satu level
Distributed Data Processing
(Distributed System)
Yang dimaksud dengan DDP Penyebaran secara terintegrasi dari sistem
data processing (hardware,data, proses, sistem) pada lokasi dimana End-user
berada/bekerja
DDP diperlukan karena Mengantisipasi
perkembangan kebutuhan organisasi/manajemen, dimana pola sentralisasi kurang
mendukung sehingga diperlukan desentralisasi
Keuntungan
Komputer Besar
1. Main memory
besar
2. Dapat
sharing dengan banyak user
3. DBMS (Data
Base Management System)
4. Powerfull
software
Tujuan
Distribusi Processing
1. Otonomi
lokal
2.
Desentralisasi operasi dan Sentralisasi kontrol
3.
Meningkatkan produktifitas End-User (apabila terjadi peningkatan diteruskan,apabila tidak harus direvisi)
4. Pengembangan aplikasi oleh User Group
5. Dialog
terminal lebih efisien
6. Akses
secara remote terhadap resource dan
data di lain lokasi
7. Membuat
jarak menjadi transparan
8.Proteksi (struktur data dan
program yang ada tidak perlu dikerjakan kembali)
Persyaratan
& Tujuan pendukung DDP
1. Penggunaan
komputer Mini & Mikro (dimana
interkoneksi micro computer, mini computer dan large computer lebih efektif biayanya)
2. Pemakaian
teknik Database. (dapat sharing data oleh banyak user)
3. Struktur jaringan yang fleksibel
4. Penggunaan standard line control
& network architecture
5. Penerapan
cryplography & security
6. High level
language
7. Corporate
strategy
l
Distributed system administration
l Distributed data administration
l Corporate network administration
l Distributed data administration
l Corporate network administration
PENGARUH
DISTRIBUSI PROSESING PADA ORGANISASI
DDP merupakan proses yang
tersebar kesetiap penjuru Karena
sifat penyebaran tersebut maka DDP perlu dikendalikan agar dapat sesuai
dengan tujuan organisasi
Tujuan utama DDP Meningkatkan
dan mengembangkan pemakaian komputer pada End-user Banyak End-user merasa tidak
puas terhadap pelayanan dari organisasi Sentralisasi Data Prosesing :
¡
Harus membuat/mengisi aplikasi form
¡ Menunggu proses yang lama
¡ Menunggu proses yang lama
¡
Tidak dapat mengakses ke komputer setiap
saat dimana ia membutuhkan
Type-type utama End-user
Interface
1. Dialog preprogram
Misnya: Bank teller menggunakan
terminal untuk menangani customer
2. Programming language
End-user melakukan programming
sendiri
3. Dialog Non-Program
Dialog dengan tidak membuat program lebih
dahulu Tidak menggunakan formal programming language Memakai Database
Retrieval (query)
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.
Thread
Dalam dunia IT, thread adalah pelaksanaan instruksi terkecil dari
program komputer yang dapat dikelola secara independen sesuai dengan jadwal.
Sebuah thread adalah jalan eksekusi sederhana dalam proses. Sebuah thread
adalah sebagai proses kuat karena thread bisa melakukan proses apa saja yang
bisa dilakukan. Sebuah thread adalah proses ringan dan membutuhkan sumber daya
yang lebih sedikit. Thread dapat mulai dari membaca dan menulis ke variabel
yang sama dan struktur data variabel. Thread dapat berkomunikasi antara thread
dengan mudah.
Hari ini multi-threading telah menjadi pendekatan alami untuk
banyak masalah. Sebuah pekerjaan besar dibagi menjadi beberapa bagian dan
masing-masing ditugaskan untuk unit eksekusi yang disebut thread. Ini hanya
multi-threading. Hal ini memerlukan kehati-hatian pemrograman karena thread
berbagi struktur data yang dimodifikasi oleh thread lain pada satu waktu dan
juga karena thread berbagi ruang alamat yang sama. Satu keuntungan lebih dari
thread adalah bahwa thread menyediakan cara yang efisien dan efektif untuk
mencapai paralelisme. Sebuah throughput sistem dapat ditingkatkan dengan
membiarkan beberapa thread berjalan pada beberapa prosesor karena thread adalah
entitas independen yang dapat dijadwal (schedulable).
Referensi:
Tidak ada komentar:
Posting Komentar