MAKALAH
PROCESS
DESCRIPTION
AND
CONTROL
Disusun
Oleh :
Kelompok
: 3
Nama Mahasiswa
|
NIM
|
Bima
Primaga Yudha
|
11590157
|
Bahar
Miftahul Aziz
|
11590048
|
Budi
Sattry Widodo
|
11590008
|
Akhmad
Syahruddin
|
10590008
|
Amrulloh
|
11590029
|
Melani Septina M.S
|
115900
|
Cici Kartika Sari
|
11590144
|
Siti Alfa Rohmatin
|
11590143
|
Yuliana
Indra D.S
|
11590050
|
JURUSAN
TEKNIK INFORMATIKA
UNIVERSITAS
DARUL ULUM ISLAM JOMBANG
TAHUN AJARAN 2011-2012
KATA PENGANTAR
Assalamu’alaikum Wr. Wb.
Syukur alhamdulilah kami persembahkan
kehadirat Allah SWT yang telah mencurahkan rahmat dan karunianya, sehingga penulis
dapat menyelesaikan makalah Pengantar Teknologi Informasi ini dengan judul “Process
Description and Control”. Untuk itu kami mengucapkan terima kasih terhadap semua
pihak yang telah membantu hingga terselesaikannya makalah ini. Terutama kami ucapkan
kepada :
1.
Ibu Izzatul Umami, S.Kom selaku dosen mata kuliah Sistem
Operasi Teknik Informatika Universitas Darul Ulum Jombang
2.
Kedua orang tua kami, atas segala dukungan yang telah diberikan.
3.
Rekan-rekan mahasiswa-mahasiswi Teknik Informatika Universitas
Darul Ulum Jombang, atas segala dukungannya.
Makalah ini kami susun sebagai tugas
mata kuliah Sistem Operasi. Tak ada gading yang tak retak, demikian pepatah mengatakan.
Demikian juga kiranya makalah ini, tentu masih banyak kekurangan. Oleh karena itu,
penulis mengharapkan saran dan kritik dari pembaca demi sempurnanya makalah kami
yang akan datang.
Akhirnya, mudah-mudahan makalah
ini bermanfaat bagi mahasiswa khususnya, dan bagi seluruh komponen bangsa Indonesia
umumnya.
Wassalamu’alaikum Wr.Wb.
Jombang, Desember 2011
Penulis
DAFTAR ISI
BAB I
PENDAHULUAN
1.1 LATAR BELAKANG
Biasanya, istilah Sistem Operasi sering ditujukan kepada semua
software yang masuk dalam satu paket dengan sistem komputer sebelum aplikasi-aplikasi
software terinstall. Kalau sistem komputer terbagi dalam lapisan-lapisan, maka Sistem
Operasi adalah penghubung antara lapisan hardware dan lapisan software. Lebih
jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer,
dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan
lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori,
melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem
file. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur
skedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan
waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.
Dalam banyak kasus, Sistem Operasi menyediakan suatu pustaka
dari fungsi-fungsi standar, dimana aplikasi lain dapat memanggil fungsi-fungsi itu,
sehingga dalam setiap pembuatan program baru, tidak perlu membuat fungsi-fungsi
tersebut dari awal.
Sistem Operasi secara umum terdiri dari beberapa bagian:
2. Kernel,
yaitu inti dari sebuah Sistem Operasi
3. Command Interpreter atau shell, yang bertugas membaca
input dari pengguna
4. Pustaka-pustaka, yaitu yang menyediakan
kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain
5.
Driver untuk berinteraksi dengan hardware
eksternal, sekaligus untuk mengontrol mereka.
Sebagian Sistem Operasi hanya mengizinkan satu aplikasi saja
yang berjalan pada satu waktu, tetapi sebagian besar Sistem Operasi baru mengizinkan
beberapa aplikasi berjalan secara simultan pada waktu yang bersamaan. Sistem Operasi
seperti itu disebut sebagai Multi-tasking Operating System. Beberapa Sistem
Operasi berukuran sangat besar dan kompleks, serta inputnya tergantung kepada input
pengguna, sedangkan Sistem Operasi lainnya sangat kecil dan dibuat dengan asumsi
bekerja tanpa intervensi manusia sama sekali. Tipe yang pertama sering disebut sebagai
Desktop OS, sedangkan tipe kedua adalah Real-Time OS.
Seiring dengan berkembangnya Sistem Operasi,
semakin banyak lagi layanan yang menjadi layanan inti umum. Kini, sebuah OS mungkin
perlu menyediakan layanan network dan koneksitas internet, yang dulunya tidak menjadi
layanan inti umum. Sistem Operasi juga perlu untuk menjaga kerusakan sistem komputer
dari gangguan program perusak yang berasal dari komputer lainnya, seperti virus.
Daftar layanan inti umum akan terus bertambah.
Program
saling berkomunikasi antara satu dengan lainnya dengan Antarmuka Pemrograman Aplikasi,
Application Programming Interface atau disingkat dengan API. Dengan API inilah program aplikasi dapat berkomunikasi dengan Sistem Operasi.
Sebagaimana manusia berkomunikasi dengan komputer melalui Antarmuka User, program
juga berkomunikasi dengan program lainnya melalui API.
Walaupun
demikian API sebuah komputer tidaklah berpengaruh sepenuhnya pada program-program
yang dijalankan diatas platform operasi tersebut. Contohnya bila program yang dibuat
untuk windows 3.1 bila dijalankan pada windows 95 dan generasi setelahnya akan terlihat
perbedaan yang mencolok antara window program tersebut dengan program yang lain.
Sistem operasi-sistem
operasi utama yang digunakan komputer sistem umum (termasuk PC, komputer personal)
terbagi menjadi 3 kelompok besar:
1.
Keluarga Microsoft Windows - yang antara lain terdiri
dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows
95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows
2000, Windows XP, Windows Server 2003, dan Windows Vista yang akan dirilis pada
tahun 2007)).
2.
Keluarga Unix yang
menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley
Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi,
dan dikenal dengan nama Darwin) dan GNU/Hurd.
3. Mac OS, adalah sistem
operasi untuk komputer keluaran Apple yang
biasa disebut Mac atau Macintosh. Sistem operasi yang terbaru adalah
Mac OS X versi
10.4 (Tiger). Awal
tahun 2007 direncanakan peluncuran versi 10.5 (Leopard).
Sedangkan komputer Mainframe, dan Super komputer
menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan
dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.
Dalam makalah ini,
juga akan dibahas tentang fungsi dasar dari system operasi, tujuan mempelajari system
operasi, sejarah dari system operasi, layanan yang terdapat dalam system operasi.
Dan juga kita akan membahas tentang layanan dan antarmuka, serta akan membahas tentang
Linux.
1.2 RUMUSAN MASALAH
1. What Is a Process?
2. Process States
3. Process Description
4. Process Control
5. Execution
of the Operating System
6. Security Issues
7. Unix SVR4 Process Management
BAB II
PEMBAHASAN
PROCESS DESCRIPTION AND CONTROL
2.1 APAKAH
PROSES ITU ?
2.1.1 Pengertian Proses
Proses adalah keadaan ketika sebuah program
sedang di eksekusi. Saat komputer berjalan, terdapat banyak proses yang berjalan
secara bersamaan. Sebuah proses dibuat melalui system call create-process
yang membentuk proses turunan ( child process) yang dilakukan oleh proses
induk ( parent process). Proses turunan tersebut juga mampu membuat proses
baru sehingga semua proses ini pada akhirnya membentuk pohon proses.
Ketika
sebuah proses dibuat maka proses tersebut dapat memperoleh sumber-daya seperti waktu
CPU, memori, berkas, atau perangkat I/O. Sumber daya ini dapat diperoleh langsung
dari sistem operasi, dari proses induk yang membagi-bagikan sumber daya kepada setiap
proses turunannnya, atau proses turunan dan proses induk berbagi sumber-daya yang
diberikan sistem operasi.
Pengelolaan
Proses
Proses perlu dikelola karena dalam sebuah
proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. Sumber daya
tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat
I/O.
Sistem operasi bertanggung jawab atas
aktivitas-aktivitas yang berkaitan dengan managemen proses seperti :
• Pembuatan dan penghapusan proses pengguna
dan sistem proses.
• Menunda atau melanjutkan proses.
• Menyediakan mekanisme untuk proses sinkronisasi.
• Menyediakan mekanisme untuk proses komunikasi.
• Menyediakan mekanisme untuk penanganan
deadlock.
Perkembangan
sistem komputer mendatang adalah menuju ke sistem multi- processing, multiprogramming,
terdistribusi dan paralel yang mengharuskan adanya proses-proses yang berjalan bersama
dalam waktu yang bersamaan. Hal demikian
merupakan masalah yang perlu perhatian dari perancang sistem operasi. Kondisi dimana
pada saat yang bersamaan terdapat lebih dari satu proses disebut dengan kongkurensi
(proses-proses yang kongkuren).
Proses-proses yang mengalami
kongkuren dapat berdiri sendiri (independen)
atau dapat saling berinteraksi, sehingga membutuhkan sinkronisasi atau koordinasi
proses yang baik.
2.1.2 Process
and Process Control Blocks
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 merubah 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).
Awalnya sistem komputer hanya
diperbolehkan menjalankan satu program dalam satu waktu. Program ini memiliki kontrol
penuh terhadap sistem, dan memiliki akses ke semua sumber daya sistem.Kebutuhan
ini menghasilkan gagasan dari sebuah proses, yang merupakan program dalam eksekusi.Proses
adalah unit kerja dalam sistem time-sharing modern.
Sistem Operasi diharapkan semakin kompleks oleh
penggunanya. Sebuah sistem karena terdiri dari kumpulan proses: Operasi-sistem proses
mengeksekusi kode sistem, dan proses mengeksekusi kode pengguna. Semua proses ini
berlangsung bersamaan dengan meggunakan CPU multiplexing. Dengan beralih CPU antara
proses, sistem operasi dapat membuat komputer lebih produktif.
Mari kita andaikan bahwa prosesor
mulai mengeksekusi program kode,
dan kami lihat ini entitas melaksanakan sebagai suatu proses. Pada
setiap titik waktu tertentu, sementara program ini
melaksanakan, proses ini dapat secara unik ditandai oleh jumlah elemen, termasuk
yang berikut:
• Identifier
Sebuah pengenal unik yang terkait dengan proses
ini, untuk membedakannya dari
semua proses lainnya.
• state
Jika proses yang sedang dijalankan, itu adalah
dalam keadaan berjalan.
•
Prioritas
Prioritas tingkat relatif ke proses lainnya.
• Program counter
Alamat
instruksi berikutnya dalam program yang akan dieksekusi.
• Memori pointer
• Memori pointer
pointer
ke Termasuk kode program dan data yang terkait dengan proses ini, ditambah blok
memori bersama dengan proses lainnya.
• Konteks data
Ini
adalah data yang ada dalam register dalam prosesor sedangkan
proses mengeksekusi.
• I / O informasi status
Termasuk beredar I / O permintaan, I / O perangkat
(misalnya, tape drive) yang d itugaskan untuk
proses ini, daftar file yang digunakan
oleh proses, dan sebagainya.
•
Akuntansi informasi
meliputi jumlah waktu prosesor dan clock waktu yang digunakan, batas waktu, nomor rekening, dan sebagainya
Informasi
dalam daftar sebelumnya disimpan dalam struktur data, biasanya disebut blok kontrol
proses (Gambar 3.1), yang dibuat dan dikelola oleh OS. Titik signifikan tentang
blok kontrol proses adalah bahwa hal itu mengandung cukup informasi sehingga
bahwa adalah mungkin untuk mengganggu proses yang berjalan dan kemudian selanjutkan
eksekusi seakan interupsi itu tidak occurred.The proses kontrol blok adalah kuncinya alat yang memungkinkan OS untuk mendukung beberapa
proses dan menyediakan untuk multiprocessing. Ketika suatu proses terganggu, arus
nilai-nilai dari program counter dan register prosesor (data konteks) yang disimpan
dalam bidang yang sesuai dari blok kontrol proses yang sesuai, dan keadaan proses
ini berubah menjadi beberapa nilai lainnya, seperti diblokir atau siap (dijelaskan
kemudian). OS sekarang bebas untuk menaruh beberapa proses lain dalam keadaan berjalan.
Program counter dan konteks data untuk proses ini dimuat ke register prosesor dan
proses ini sekarang mulai mengeksekusi. Dengan demikian, kita dapat mengatakan bahwa
proses yang terdiri dari kode program dan data yang terkait ditambah blok kontrol
proses. Untuk komputer prosesor tunggal, pada waktu tertentu, di paling banyak satu
proses pelaksanaan dan proses yang dalam keadaan berjalan.
2.2 PROCESS
STATES
Seperti hanya dibahas, untuk
program yang akan dieksekusi, proses, atau tugas, diciptakan untuk itu program.
Dari prosesor sudut pandang, itu menjalankan instruksi dari repertoar dalam beberapa
urutan ditentukan oleh nilai-nilai perubahan dalam program counter register. Seiring
waktu, program counter bisa merujuk ke kode
dalam program-program berbeda yang adalah bagian dari proses yang berbeda. Dari
sudut pandang program individu, yang eksekusi melibatkan urutan instruksi dalam
program itu. Kita bisa mencirikan perilaku proses individual dengan membuat daftar
urutan instruksi yang melaksanakan proses itu. Seperti sebuah daftar disebut sebagai
jejak proses. Kita bisa mencirikan perilaku prosesor dengan menunjukkan bagaimana
jejak-jejak dari berbagai proses disisipkan. Kami mengasumsikan bahwa OS hanya memungkinkan
proses untuk melanjutkan eksekusi untuk maksimal enam siklus instruksi, setelah
itu terganggu; ini mencegah setiap proses tunggal dari waktu memonopoli prosesor,
enam pertama instruksi dari proses yang dijalankan, diikuti dengan time-out dan
pelaksanaan beberapa kode di operator, yang melaksanakan enam instruksi sebelum.
Didalam Status Proses ada
dua macam model yaitu model proses dua status dan model proses lima status
2.2.1 A Two-State Process Model (Model Proses Dua Status)
Proses dapat
berada pada salah satu dari dua status
– Berjalan (running) berarti program sedang melaksanakan
perintah dan sedang dieksekusi serta
proses exit
– Not-running berarti program tidak dalam proses eksekusi melainkan persiapan akan dieksekusi
– Not-running berarti program tidak dalam proses eksekusi melainkan persiapan akan dieksekusi
2.2.2 A Five-State Model (Model Proses Lima Status)
Model proses lima status diantaranya
adalah
·
New adalah Proses sedang dikerjakan/dibuat.
·
Running adalah Instruksi sednag dikerjakan.
·
Waiting adalah Proses sedang menunggu sejumlah kejadian untuk terjadi
(seperti sebuah penyelesaian I/O atau penerimaan sebuah tanda/signal).
·
Ready adalah Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.
·
Terminated adalah Proses telah selsesai melaksanakan
tugasnya/mengeksekusi.
Keadaan diagram yang berkaitan dangan
keadaan tersebut dijelaskan pada gambar dibawah ini :
Gambar
diatas menunjukkan kemungkinan terjadinya proses transisi diantaranya sebagai berikut:
·
Null
-New : Sebuah proses
baru yang dibuat untuk menjalankan sebuah event terjadi program
·
New
-Ready
: proses akan berpindah ke tempat yang
baru siap ketika sudah siap untuk melakukan proses tambahan. Kebanyakan sistem menetapkan
beberapa batas berdasarkan jumlah proses yang ada atau jumlah memori virtual berkomitmen
untuk proses yang ada.
·
Ready
– Running
: Ketika waktu untuk memilih menjalankan
proses OS memilih salah satu proses di siap state. Pekerjaan ini yang menjadwal
atau memberangkatkan.
·
Running
-Exit : proses yang
sedang berjalan diakhiri oleh OS jika proses menunjukkan bahwa ia telah selesai
atau jika aborts.
·
Running
– Ready
:alasan yang paling umum untuk transisi ini adalah proses yang berjalan telah mencapai
batas maksimum yang diijinkan untuk terganggu waktu pelaksanaan hampir semua sistem
operasi multiprogramming menentukan jenis waktu yang tepat.
·
Running
-Blocked :
Sebuah proses diletakkan di Diblokir
jika permintaan sesuatu yang harus menunggu. Permintaan untuk OS biasanya dalam
bentuk sistem layanan panggilan yaitu panggilan dari program untuk menjalankan prosedur
yang merupakan bagian dari sistem operasi kode.
·
Blocked
-Ready
: Sebuah proses blokir tersebut akan
dipindahkan yang Siap saat acara yang telah menunggu terjadi.
·
Ready
-Exit :
Untuk jelasnya, transisi ini tidak akan
ditampilkan pada diagram . Dalam beberapa sistem induk dapat proses setiap saat
Juga jika induk terminates dihentikan maka semua proses yang terkait dengan induk
tersebut akan dihentikan.
·
Blocked
– Exit
: Komentar di bawah item sebelumnya berlaku.
2.3 PROCESS DESCRIPTION
OS mengendalikan kegiatan dalam sistem komputer. Jadwalnya dan
mengirimkan proses untuk dieksekusi oleh prosesor,
mengalokasikan sumber daya untuk diproses,dan menanggapi permintaan dari pengguna
proses untuk layanan dasar. Pada
dasarnya, kita dapat berpikir tentang OS sebagai kesatuan yang mengelola penggunaan
sumber daya sistem oleh proses.
Dalam
sebuah lingkungan multiprogram,ada sebuah penomoron didalam proses (p1,p2,…,pn)
yang telah di buat dan berada di memori virtual.Setiap proses, selama
pelaksanaannya, perlu mengakses sumber
daya system tertentu, termasuk prosesor, perangkat I/O, dan memori utama. Pada gambar ini,
proses P1 berjalan, setidaknya bagian dari proses dalam memori utama, dan
memiliki control pada dua perangkat I/O.Proses P2 juga di memori utama tapi diblokir menunggu untuk perangkat I/O
dialokasikan untuk P1. Proses Pn telah bertukar keluar dan oleh karena itu
ditangguhkan.
Kami menjelaskan rincian pengelolaan sumber
daya ini oleh
OS atas
nama proses di kemudian chapters.Disini kita prihatin dengan pertanyaan yang lebih mendasar:Informasi apa yang OS butuhan untuk mengontrol proses dan mengelola sumber daya untuk mereka?
2.3.1 Struktur
Pengendalian
Sistem
Operasi
Jika OS adalah
untuk mengelola
proses dan sumber daya, ia harus memiliki
informasi tentang status saat ini dari setiap proses dan sumber daya. Pendekatan universal untuk memberikan informasi ini secara langsung: OS membangun dan menjaga tabel pada usaha yang ditunjukkan pada Gambar 3.11, yang menunjukkan empat jenis berbeda dari tabel dipelihara oleh OS : memori, I / O, file, dan proses.Meskipun rincian akan berbeda dari satu OS ke yang lain, pada dasarnya, semua sistem operasi menjaga informasi dalam empat kategori.
Tabel
memori yang
digunakan
untuk melacak kedua
memori utama (nyata) dan
sekunder (virtual).
Beberapa memori
utama ini
dicadangkan untuk digunakan oleh
OS; sisanya yang tersedia
untuk digunakan oleh
proses.Proses yang
dipelihara
pada memori sekunder menggunakan
semacam memori virtual
atau mekanisme swapping
sederhana.Tabel memori
harus berisi informasi
berikut:
·
Alokasi memori
utama untuk
proses
·
Alokasi memori
sekunder untuk
proses
·
Semua perlindungan atribut
dari blok memori
utama atau
virtual, seperti proses yang dapat
mengakses
daerah tertentu memori
bersama.
·
Setiap informasi
yang dibutuhkan
untuk mengelola memori
virtual
Kami memeriksa struktur
informasi untuk manajemen memori secara rinci di bagian 3.
I/O
tabel digunakan oleh
OS untuk
mengelola
perangkst I/O dan saluran dari
sistem komputer.Pada waktu tertentu,perangkat I/O mungkin
tidak tersedia atau ditugaskan untuk proses tertentu.Jika sebuah operasi I/O sedang berlangsung,OS perlu mengetahui status operasi I/O dan lokasi dalam memori utama yang digunakan sebagai sumber atau tujuan dari transfer I/O.I/O manajemen dijelaskan dalam Chapter 11.
OS juga
dapat mengurus tabel file.Table-tabel
ini memberikan informasi tentang keberadaan
file, lokasi mereka pada memori sekunder,status saat ini mereka,dan atribut lainnya.Banyak, jika tidak semua, informasi ini dapat diurus dan digunakan oleh sistem manajemen file,dalam hal ini OS memiliki sedikit atau tidak pengetahuan tentang file.Dalam sistem operasi lain, banyak detail dari manajemen file yang dikelola
oleh OS itu sendiri.Topik ini dibahas dalam Chapter 12.
Akhirnya,OS harus
mengurus tabel
proses
untuk mengelola
proses.Sisa dari
bagian ini adalah dikhususkan untuk pemeriksaan tabel proses
yang diperlukan.Sebelum melanjutkan
ke diskusi
ini, dua poin tambahan
harus dibuat. Pertama,meskipun Gambar 3.11 menunjukkan empat
set yang
berbeda dari
tabel,harus
jelas bahwa tabel ini harus dihubungkan atau cross-referenced dalam beberapa mode.Memori,
I / O, dan file yang dikelola atas nama proses,jadi pasti ada beberapa referensi ke sumber daya tersebut, secara langsung atau tidak langsung,dalam tabel proses.File-file yang disebutkan dalam tabel file yang diakses melalui perangkat I/O dan akan,pada beberapa kali,berada di memori utama atau virtual.Tabel itu sendiri harus dapat diakses oleh OS dan oleh karena itu tunduk pada manajemen memori.
Kedua,
bagaimana OS tahu untuk membuat tabel di tempat pertama?Jelasnya,OS harus memiliki beberapa pengetahuan tentang lingkungan dasar,seperti berapa banyak memori utama yang ada, apa perangkat
I/O-nya dan apa pengidentifikasian mereka, dan segera.Ini adalah masalah dari konfigurasi.yakni,ketika
OS dinyalakan,harus memiliki akses kebeberapa data konfigurasi yang mendefinisikan lingkungan dasar,dan data ini harus dibuat di luar OS,dengan
bantuan manusia
atau oleh beberapa
perangkat lunak autoconfiguration.
2.3.2 Struktur
control proses
Pertimbangkan apa OS harus
tahu jika
itu untuk mengelola
dan mengendalikan proses. Pertama,harus tahu dimana
proses berada,dan
kedua,harus mengetahui atribut
dari proses yang diperlukan untuk manajemen(misalnya, proses ID dan proses state).
Lokasi Proses
Sebelum kita dapat berurusan dengan pertanyaan tentang
di mana proses berada atau apa atribut-atributntanya,kita harus menyelesaikan sebuah pertanyaan yang lebih mendasar:Apa manifestasi fisik dari sebuah proses? Minimal,sebuah
process harus mencakup program atau seperangkat program yang akan dieksekusi.
Terkait dengan program ini adalah
satu set data
untuk variabel lokasi lokal
dan global
dan setiap konstanta yang didefinisikan. Dengan demikian,proses akan terdiri dari setidaknya memori yang cukup
untuk menangani program dan data dari proses itu.Selain itu, pelaksanaan program biasanya melibatkan tumpukan (lihat Lampiran 1B) yang digunakan untuk melacak prosedur panggilan dan parameter passing antara prosedur.Akhirnya, setiap proses
memiliki keterkaitan dengan sejumlah atribut yang digunakan oleh OS untuk proses control. Biasanya, koleksi atribut disebut sebagai Blok kontrol proses.
Tabel 3.4 Typical Elements
of a Process Image
|
Lokasi image
process akan
tergantung pada skema manajemen
memori yang
digunakan.Dalam kasus yang paling sederhana,Image
process diurus sebagai
sebuah blok memori,
yang berdekatan,atau kontinyu.Blok ini dipelihara
dalam memori
sekunder,biasanya disk.
Sehingga OS dapat
mengelola proses,setidaknya sebagian kecil dari gambar yang harus diurus dalam memori utama.Untuk menjalankan proses, seluruh process image harus dimuat ke memori utama atau setidaknya memori virtual.Dengan demikian,OS perlu mengetahui lokasi dari setiap proses pada disk dan,untuk setiap proses seperti yang ada di memori utama, lokasi proses yang di memori utama.Kami melihat variasi yang sedikit lebih kompleks pada skema ini dengan OS CTSS,dalam Bab2.Dengan CTSS,ketika proses ditukar, bagian dari process image dapat tetap berada dalam memori utama.Dengan demikian, OS harus melacak bagian mana dari gambar setiap prosesnya yang masih ada di memori utama.
Sistem
operasi modern
menganggap hardware paging memungkinkan
memori fisik
yang tidak berdekatan untuk
mendukung sebagian
proses residen.Pada waktu tertentu,sebagian dari process image dapat di lakukan di memori utama, dengan sisanya dalam memori sekunder.Oleh karena itu,
proses tabel yang dilakukan oleh OS harus menunjukkan lokasi setiap halaman masing-masing
process image.
Gambar 3.11 menggambarkan struktur informasi
lokasi dengan
cara berikut.Ada tabel
proses utama
dengan satu
entri untuk
setiap proses. Setiap entri berisi,setidaknya,sebuah
pointer ke
process image. Jika process image mengandung beberapa
blok,informasi
ini terkandung
langsung dalam tabel
proses utama atau
tersedia dengan
cross-reference ke entri
dalam tabel memori.Tentu
saja, penggambaran
ini adalah
bersifat umum;sebuah OS
tertentu akan
memiliki cara
sendiri untuk
mengatur informasi
lokasi.
Atribut proses
Sebuah sistem multiprogramming canggih membutuhkan
banyak informasi
tentang setiap
proses yang besar.Seperti
telah dijelaskan, informasi
ini dapat dianggap berada di blok kontrol proses.Sistem yang berbeda akan mengatur informasi ini dalam
berbagai cara,dan beberapa
contoh ini muncul
di akhir bab ini dan berikutnya.Untuk sekarang,mari kita cukup menjelajahi jenis informasi yang
mungkin bisa digunakan untuk sebuah OS tanpa mempertimbangkan secara rinci bagaimana informasi itu terorganisasi.
Tabel 3.5 Element khusus
Blok
Kontrol
Proses
|
Kita dapat
mengelompokkan
informasi proses
kontrol blok
ke dalam tiga
kategori umum:
·
Process
identification
·
Processor state information
·
Process control information
Hal
ini membawa desain isu penting.Sejumlah rutinitas dalam
OS akan memerlukan akses ke informasi di
blok kontrol proses. Penyediaan akses langsung ke tabel ini tidak sulit. Setiap proses dilengkapi dengan ID yang unik,dan
ini dapat digunakan sebagai indeks ke dalam tabel petunjuk ke blok kontrol proses.Kesulitan bukan mengakses melainkan perlindungan.Dua masalah ini sendiri:
·
Sebuah bug dalam
rutinitas
tunggal, seperti sebuah
interrupt handler,dapat
merusak proses kontrol blok,yang bisa menghancurkan kemampuan system untuk mengelola proses yang terkena dampak itu.
·
Sebuah perubahan desain
dalam struktur atau
semantik dari
blok kontrol
proses dapat mempengaruhi sejumlah modul di OS.
Masalah-masalah ini dapat
diatasi dengan
mewajibkan semua rutinitas di
OS untuk
pergi melalui pengendali rutin,satu-satunya pekerjaannya adalah untuk melindungi blok kontrol proses,dan yang mana adalah arbiter tunggal untuk membaca dan menulis blok ini.Tradeoff dalam penggunaan rutin seperti melibatkan isu-isu kinerja dan sejauh mana sisa dari software sistem dapat dipercaya untuk menjadi benar.
2.4 PROCESS
CONTROL
Sistem kontrol proses terdiri
atas sekumpulan piranti-piranti dan peralatanperalatan elektronik yang mampu menangani kestabilan, akurasi, dan mengeliminasi
transisi status yang berbahaya dalam proses produksi. Masingmasing komponen dalam
sistem kontrol proses tersebut memegang peranan pentingnya masing-masing, tidak peduli ukurannya. Misalnya saja, jika sensor
tidak ada atau rusak atau tidak bekerja, maka sistem kontrol proses tidak akan tahu
apa yang terjadi dalam proses yang sedang berjalan.
Kebanyakan prosesor
mendukung setidaknya dua mode eksekusi. Instruksi tertentu hanya dapat dilakukan dalam mode yang lebih istimewa. Ini akan mencakup membaca atau mengubah kontrol
register, seperti kata status program; primitif instruksi I / O, dan instruksi yang berhubungan dengan manajemen memori.
Selain itu, daerah-daerah tertentu dari memori hanya dapat diakses dalam modus yang lebih istimewa.
Modus
yang kurang-hak istimewa ini sering
disebut sebagai modus pengguna, karena program pengguna biasanya akan mengeksekusi dalam mode ini. Modus yang lebih istimewa
yang disebut sebagai mode sistem,
mode kontrol, atau mode kernel. Istilah terakhir
ini mengacu pada kernel dari
OS, yang mana dia adalah bagian dari OS yang meliputi fungsi
sistem penting. Tabel 3.7 berisi daftar fungsi biasanya
ditemukan pada kernel dari OS.
Tabel
3.7 Fungsi yang
khas dari
sebuah Kernel Sistem
Operasi
Proses Manajemen
• Proses penciptaan dan pengakhiran
• Proses penjadwalan dan pengiriman
• Perpindahan antar proses
• Proses sinkronisasi dan dukungan untuk interprocess
komunikasi
• Manajemen blok kontrol proses
Manajemen
Memori
• Alokasi ruang alamat untuk proses
• pertukaran
• Halaman dan manajemen segmen
I / O Manajemen
• penyangga manajemen
• Alokasi saluran I / O dan perangkat untuk proses
Dukungan Fungsi
• Interrupt penanganan
• Akuntansi
• Pemantauan
Alasan
untuk menggunakan dua mode harus jelas. Hal ini diperlukan untuk melindungi OS
dan tabel sistem operasi kunci, seperti blok kontrol proses, dari interferensi
oleh program pengguna. Dalam modus kernel, perangkat lunak memiliki kontrol
penuh terhadap prosesor dan semua instruksi, register, dan memori. Tingkat
kontrol ini tidak perlu dan untuk keselamatan tidak diinginkan untuk program
pengguna.
Dua
pertanyaan muncul: Bagaimana prosesor tahu di mana modus itu harus melaksanakan
dan bagaimana mode berubah? Mengenai pertanyaan pertama, biasanya ada bit dalam
program status word (PSW) yang menunjukkan modus eksekusi. Bit ini berubah
dalam menanggapi peristiwa tertentu. Biasanya, ketika pengguna membuat
panggilan ke layanan sistem operasi atau ketika interupsi memicu pelaksanaan
rutin sistem operasi, modus diatur ke mode kernel dan setelah
kembali dari layanan ke proses pengguna, modus
diatur ke mode pengguna.
Sebagai contoh, mempertimbangkan prosesor Intel Itanium, yang mengimplementasikan 64-bit IA-64 arsitektur. Prosesor memiliki processor
status register (PSR)
yang mencakup 2-bit cpl (current privilege level) bidang. Tingkat 0 adalah tingkat yang
paling istimewa, sementara tingkat 3 adalah tingkat paling sedikit istimewa. Sebagian besar sistem
operasi, seperti Linux, gunakan tingkat 0 untuk kernel dan satu tingkat lainnya
untuk mode pengguna. Ketika sebuah interrupt terjadi, prosesor membersihkan
sebagian besar bit dalam PSR, termasuk bidang cpl. Hal ini secara otomatis
mengatur cpl ke tingkat 0. Pada akhir rutin interupsi-penanganan, instruksi
terakhir yang dijalankan adalah IRT (interrup return). Instruksi ini
menyebabkan prosesor untuk mengembalikan PSR dari program terganggu, yang
mengembalikan tingkat hak istimewa dari program itu. Urutan serupa terjadi
ketika aplikasi tempat panggilan sistem. Untuk Itanium, sebuah appli-kation
tempat panggilan sistem dengan menempatkan identifier sistem panggilan dan
argumen sistem panggilan di area yang telah ditetapkan dan kemudian
mengeksekusi instruksi khusus yang memiliki efek mengganggu eksekusi pada
tingkat pengguna dan mentransfer kontrol ke kernel .
ProsesPenciptaan
Pada Bagian 3.2, kita telah membahas peristiwa-peristiwa yang mengarah pada penciptaan proses baru. Setelah membahas struktur data yang terkait dengan proses, kita sekarang dalam sition po-untuk menggambarkan secara singkat langkah-langkah yang terlibat dalam benar-benar menciptakan proses.
Pada Bagian 3.2, kita telah membahas peristiwa-peristiwa yang mengarah pada penciptaan proses baru. Setelah membahas struktur data yang terkait dengan proses, kita sekarang dalam sition po-untuk menggambarkan secara singkat langkah-langkah yang terlibat dalam benar-benar menciptakan proses.
Setelah
OS memutuskan, untuk
alasan apapun, untuk membuat proses
baru, dapat melanjutkan sebagai
berikut:
1. Menetapkan
pengidentifikasi proses unik untuk
proses baru. Pada saat ini, entri baru akan ditambahkan ke tabel proses utama, yang
berisi satu entri per proses.
2. Mengalokasikan
ruang untuk proses. Ini mencakup semua
elemen dari gambar proses.
Dengan demikian, OS harus tahu berapa banyak ruang yang dibutuhkan untuk ruang alamat pengguna pribadi (program dan data) dan pengguna
stack. Nilai-nilai ini dapat diberikan secara default didasarkan pada jenis proses,
atau mereka dapat diatur berdasarkan permintaan pengguna pada saat
penciptaan lapangan kerja. Jika suatu proses melahirkan oleh proses lain, proses induk dapat melewati nilai-nilai yang diperlukan untuk OS sebagai bagian dari permintaan proses penciptaan. Jika
ada ruang alamat yang ada untuk dibagi oleh proses baru, yang sesuai link-usia harus
diset. Akhirnya, ruang untuk blok
kontrol proses harus dialokasikan.
3.
Inisialisasi
blok kontrol proses. Bagian proses identifikasi berisi ID dari proses
ini ditambah sesuai ID lainnya, seperti bahwa
dari proses induk. Negara Bagian informasi prosesor
biasanya akan diinisialisasi dengan entri yang paling nol, kecuali untuk program
counter (set ke entry point
program) dan stack pointer sistem (digunakan untuk menentukan batas-batas
proses stack). Proses
kontrol porsi informasi diinisialisasi berdasarkan standar standar val-nilai ditambah
atribut yang telah diminta untuk proses ini. Misalnya, proses negara
biasanya akan diinisialisasi ke Siap atau Siap
/ Suspend. Prioritas
mungkin diatur secara default untuk
prioritas terendah kecuali permintaan eksplisit dibuat untuk prioritas yang lebih tinggi. Awalnya, proses tersebut mungkin tidak memiliki sumber
daya sendiri (I / O device, file) kecuali ada permintaan eksplisit untuk ini atau kecuali mereka inher-ited dari orangtua.
4. Mengatur hubungan yang sesuai.
Sebagai contoh, jika OS aintains setiap antrian penjadwalan sebagai linked
list, maka rocess baru harus dimasukkan dalam daftar Siap atau Siap / Suspend.
5. Buat atau memperluas struktur data
lainnya. Sebagai contoh, OS dapat mempertahankan sebuah file akuntansi pada
setiap proses yang akan digunakan selanjutnya untuk penagihan dan / atau tujuan
penilaian kinerja.
Proses Switching
Secara sepintas, fungsi
proses switching tampaknya akan menjadi
mudah. Pada suatu
saat , proses yang berjalan terganggu
dan OS memberikan proses lain ke keadaan yang sedang berjalan
dan merubah kontrol atas proses
tersebut. Namun, masalah beberapa desain dibangkitkan. Pertama, apa peristiwa memicu
switch proses? Masalah
lainnya adalah bahwa kita harus mengenali perbedaan antara switching modus dan proses switching.
Akhirnya, apa yang harus lakukan untuk OS struktur
berbagai data di bawah kontrol untuk mencapai switch proses?Kapan
Beralih Proses Sebuah
switch proses dapat terjadi
setiap saat bahwa OS telah memperoleh kontrol dari proses yang sedang berjalan.
Tabel 3.8 menunjukkan peristiwa yang mungkin memberikan
kontrol ke OS.
Pertama,
mari kita pertimbangkan interupsi
sistem. Sebenarnya, kita dapat membedakan, sebagai sistem banyak, dua jenis sistem
interupsi, salah satunya adalah hanya disebut sebagai interupsi,
dan lainnya sebagai jebakan. Yang pertama adalah karena beberapa jenis dari peristiwa itu adalah mantan-ternal dan
independen dari proses yang sedang
berjalan, seperti penyelesaian operasi
I / O. Yang terakhir ini berkaitan dengan kesalahan atau kondisi kekecualian yang dihasilkan dalam proses sedang berjalan, seperti upaya akses file ilegal. Dengan
interupsi biasa, kontrol pertama
ditransfer ke interrupt handler, yang melakukan beberapa rumah tangga dasar dan kemudian cabang ke rutin OS yang berkaitan dengan jenis tertentu dari interupsi yang telah terjadi. Contoh meliputi:
• Jam
menyela: OS menentukan apakah proses yang sedang berjalan telah melaksanakan
untuk unit maksimum waktu, disebut sebagai waktu slice. Artinya, irisan waktu
adalah waktu maksimum bahwa suatu proses dapat mengeksekusi sebelum terganggu.
Jika demikian, proses ini harus beralih ke keadaan siap dan proses lain
dikirim.
• I
/ O menyela: OS menentukan apa yang saya / tindakan O telah terjadi. Jika I / O
ac-tion merupakan sebuah acara yang satu atau lebih proses yang menunggu, maka OS
bergerak semua proses diblokir sesuai dengan status Siap (dan Diblokir /
Suspend proses untuk status Siap / Suspend). OS kemudian harus memutuskan
apakah akan melanjutkan eksekusi dari proses saat ini di negara Menjalankan
atau untuk mendahului proses bahwa untuk proses dengan prioritas lebih tinggi
siap.
• Memori
kesalahan: prosesor pertemuan referensi alamat memori virtual untuk kata yang
tidak ada di memori utama. OS harus membawa dalam blok (halaman atausegmen)
dari memori yang berisi referensi dari memori sekunder untuk memori utama.
Setelah permintaan I / O dikeluarkan untuk membawa di blok memori, proses
dengan kesalahan memori ditempatkan dalam keadaan diblokir; OS kemudian
per-bentuk saklar proses untuk melanjutkan eksekusi proses lain. Setelah
de-bapak blok dibawa ke dalam memori, proses yang ditempatkan dalam status
Siap.
Dengan perangkap, OS
menentukan apakah kesalahan atau kondisi pengecualian adalah fatal. Jika
demikian, maka proses yang sedang berjalan adalah pindah ke negara Keluar dan
switch proses terjadi. Jika tidak, maka tindakan dari OS akan tergantung pada
sifat kesalahan dan desain OS. Ini mungkin mencoba beberapa prosedur pemulihan
atau hanya memberitahu pengguna. Ini mungkin melakukan switch proses atau
melanjutkan proses yang sedang berjalan.
Akhirnya, OS dapat
diaktifkan oleh panggilan pengawas dari program yang sedang dieksekusi. Sebagai
contoh, proses pengguna berjalan dan instruksi yang dijalankan permintaan
operasi I / O, seperti file yang terbuka. Panggilan ini menghasilkan transfer
ke ROU-tine yang merupakan bagian dari kode sistem operasi. Penggunaan sistem
panggilan dapat menempatkan proses pengguna di negara Diblokir.
Modus Switching Dalam
Bab 1, kita membahas pencantuman tahap interupsi sebagai bagian dari siklus
instruksi. Ingatlah bahwa, dalam tahap mengganggu, prosesor memeriksa untuk
melihat apakah ada interrupt yang tertunda, ditunjukkan dengan adanya sinyal
interupsi. Jika tidak ada interupsi yang tertunda, prosesor hasil ke tahap
mengambil dan mengambil instruksi berikutnya dari program saat ini dalam proses
saat ini. Jika-dalam terrupt sedang menunggu, prosesor melakukan hal
berikut:
1.
Ini set program counter
untuk alamat awal dari program interrupt handler.
2.
Itu beralih dari mode
pengguna ke mode kernel sehingga kode pengolahan interupsi mungkin termasuk
instruksi privileged.
Prosesor sekarang hasil
untuk tahap mengambil dan mengambil instruksi pertama dari program interrupt
handler, yang akan mengganggu layanan. Pada titik ini, biasanya, konteks dari
proses yang telah terganggu akan disimpan ke dalam blok kontrol proses dari
program terganggu.
Satu pertanyaan yang
mungkin sekarang terjadi kepada Anda adalah, Apa yang merupakan konteks yang
disimpan? Jawabannya adalah bahwa ia harus menyertakan informasi yang dapat
diubah oleh eksekusi interrupt handler dan yang akan dibutuhkan untuk
melanjutkan pro-gram yang terputus. Dengan demikian, bagian dari blok kontrol
proses yang disebut sebagai prosesor informasi negara harus diselamatkan. Ini
mencakup program counter, register prosesor lainnya, dan informasi stack.
Apakah hal lain perlu
dilakukan? Itu tergantung pada apa yang terjadi berikutnya. Interrupt handler
biasanya sebuah program singkat yang melakukan tugas-tugas dasar yang
berhubungan dengan interrupt. Misalnya, me-reset bendera atau indikator bahwa
sinyal adanya interrupt. Ini dapat mengirim sebuah pengakuan dengan entitas
yang menerbitkan antar-rupt, seperti modul I / O. Dan mungkin melakukan
beberapa rumah tangga dasar yang berhubungan dengan efek dari peristiwa yang
menyebabkan mengganggu. Sebagai contoh, jika mengganggu berkaitan dengan suatu
acara I / O, interrupt handler akan memeriksa kondisi kesalahan. Jika kesalahan
telah terjadi, interrupt handler dapat mengirim sinyal ke proses yang awalnya
kembali quested operasi I / O. Jika interupsi adalah dengan jam, kemudian
pawang akan menyerahkan kontrol ke operator, yang akan ingin lulus kontrol
untuk proses lain menjadi penyebab potongan waktu yang dialokasikan untuk
proses yang sedang berjalan telah kedaluwarsa.
Bagaimana dengan
informasi lain di blok kontrol proses? Jika ini antar-rupt harus diikuti dengan
beralih ke proses lain, maka beberapa pekerjaan perlu dilakukan. Namun, dalam
sebagian besar sistem operasi, terjadinya interrupt tidak berarti switch
proses. Ada kemungkinan bahwa, setelah interrupt handler telah dieksekusi,
proses yang sedang berjalan akan melanjutkan eksekusi. Dalam hal ini, semua
yang diperlukan adalah untuk menyimpan informasi negara prosesor saat interrupt
terjadi dan mengembalikan informasi yang ketika kontrol dikembalikan ke program
yang sedang berjalan. Biasanya, fungsi tabungan dan memulihkan dilakukan di
hardware.
perubahan keadaan
proses itu jelas, maka, bahwa saklar modus adalah
sebuah konsep yang berbeda dari
yang dari saklar proses Sebuah
switch modus dapat terjadi tanpa chang-ing keadaan proses yang saat ini dalam
keadaan Menjalankan. Dalam hal itu, penghematan konteks dan selanjutnya
restoral melibatkan sedikit overhead. Namun, jika rently skr-proses yang
berjalan akan dipindahkan ke negara bagian lain (Siap, Diblokir, dll), maka OS
harus membuat perubahan substansial dalam lingkungannya. Langkah-langkah yang
terlibat dalam sebuah saklar proses penuh adalah sebagai berikut:
1.
Simpan konteks
prosesor, termasuk program counter dan register lainnya.
2.
Update blok kontrol
proses dari proses yang saat ini dalam keadaan Menjalankan.Ini termasuk
mengubah keadaan dari proses tersebut ke salah satu negara-negara lain (Siap,
Diblokir; Siap / Suspend; atau Keluar). Bidang lain yang relevan juga harus
diperbarui, termasuk alasan untuk meninggalkan negara Menjalankan dan informasi
akuntansi.
3.
Pindahkan blok kontrol
proses dari proses ini ke antrian yang sesuai (Siap; Diblokir di Acara i; Siap
/ Suspend).
4.
Pilih proses lain untuk eksekusi, topik ini dibahas di Bagian
Empat.
5.
Update blok kontrol proses dari proses yang dipilih. Ini
termasuk mengubah keadaan dari proses ini ke Running.
6.
Update data struktur manajemen memori. Hal ini mungkin
diperlukan, tergantung pada bagaimana terjemahan alamat dikelola; topik ini dibahas
di Bagian Tiga.
7.
Kembalikan konteks prosesor dengan yang ada pada saat proses
se-lected terakhir beralih keluar dari negara Menjalankan, dengan memuat dalam
sebelumnya nilai-nilai dari program counter dan register lainnya.
Demikian lah proses switch, yang melibatkan
perubahan keadaan, membutuhkan usaha lebih dari satu mode switch.
2.5 EXECUTION
OF THE OPERATING SYSTEM
Dalam
Bab 2, kita menunjukkan dua fakta menarik tentang sistem operasi:
•
OS
fungsi dalam cara yang sama sebagai perangkat lunak komputer biasa,
dalam arti bahwa OS adalah seperangkat
program dieksekusi oleh prosesor.
•
OS sering melepas
kontrol dan tergantung pada prosesor untuk kembali ke kontrol OS.
Jika
OS adalah hanya kumpulan program dan jika dijalankan
oleh prosesor seperti program lain, adalah OS proses? kalau begitu, bagaimana bisa dikendalikan? Ini menarik pertanyaan telah menginspirasi
sejumlah pendekatan desain. Gambar 3.15 ilustrasi
berbagai pendekatan yang ditemukan dalam
berbagai operasi kontemporersistem.
Nonprocess Kernel
Satu
pendekatan tradisional, umum pada
banyak sistem operasi yang lebih tua,
adalah untuk mengeksekusi kernel dari OS luar proses
apapun (Gambar 3.15a) Dengan pendekatan ini,ketika
proses yang sedang berjalan terganggu atau masalah panggilan atasan,
konteks modus dari proses ini disimpan
dan kendali dilewatkan ke kernel. OS memiliki
wilayah sendiri memori untuk menggunakan dan menumpuk sistem sendiri untuk mengendalikan panggilan prosedur dan kembali. OS dapat melakukan
fungsi yang diinginkan dan mengembalikan
konteks mengganggu proses, yang menyebabkan eksekusi untuk melanjutkan dalam proses pengguna terganggu.
Srbagai alternatif, OS dapat
menyelesaikan fungsi menyelamatkan
tempat dari proses dan melanjutkan
jadwal dan pengiriman proses lain. Apakah ini
terjadi tergantung pada alasan untuk
gangguan dan keadaan pada saat itu.
Bagaimanapun juga, titik
kunci di sini adalah bahwa konsep
proses dianggap hanya
berlaku untuk program-program pengguna.
Kode sistem operasi dieksekusi sebagai terpisah
entitas yang beroperasi pada
privileged mode.
Execution
within User Processes(Eksekusi dalam Proses Pengguna)
Yang umum
dengan sistem operasi alternatif pada komputer yang lebih kecil (PC, workstation) adalah
untuk menjalankan hampir semua
perangkat lunak OS dalam konteks
proses pengguna.Melihat adalah bahwa OS adalah terutama
kumpulan rutinitas yang pengguna melakukan panggilan ke berbagai fungsi, dieksekusi dalam lingkungan proses pengguna. Ini diilustrasikan pada Gambar 3.15b. Pada
suatu titik tertentu, OS adalah
mengelola proses n bayangan. Setiap gambar tidak hanya mencakup daerah diilustrasikan pada Gambar 3.13, tetapi juga program, data, dan stack daerah untuk program
kernel.
Gambar
3.16 menunjukkan gambar
struktur proses khas untuk strategi ini. Memisahkan tumpukan kernel digunakan
untuk mengatur panggilan /
kembali sementara proses ini dalam mode kernel. Sistem operasi kode dan data berada dalam ruang alamat
bersama dan dibagi oleh semua
proses pengguna.
Ketika panggilan
interupsi, perangkap, atau pemanggilan terjadi, prosesor ditempatkan dalam modus kernel
dan kontrol dilewatkan ke OS. Untuk lulus kontrol
dari program user ke OS, modus konteks disimpan
dan beralih modus terjadi ke operasi sistem rutin. Namun, eksekusi tetap berada dalam proses pengguna saat ini. Jadi, sebuah saklar proses tidak dilakukan, hanya beralih modus yang sama dalam proses.
Jika OS,
setelah menyelesaikan pekerjaannya,
menentukan bahwa proses saat ini harus terus berjalan, kemudian
beralih modus resume program terganggu dalam
proses saat ini. Ini adalah salah satu keuntungan utama dari pendekatan
ini: Seorang pengguna program telah
terganggu untuk mempekerjakan beberapa
sistem operasi, dan kemudian kembali Diasumsikan,
dan semua ini telah terjadi tanpa menimbulkan dua proses
perubahan. Jika, bagaimanapun, itu ditentukan bahwa sebuah saklar proses
terjadi bukan kembali ke program sebelumnya melaksanakan,
kemudian kontrol dilewatkan ke proses beralih rutin.
kebiasaan ini mungkin atau mungkin tidak
mengeksekusi dalam proses saat ini, tergantung
pada desain sistem. Pada beberapa titik, bagaimanapun, proses saat ini harus
ditempatkan dalam keadaan nonrunning dan proses lain yang ditunjuk sebagai
proses yang berjalan. Selama fase ini, secara logis paling nyaman untuk melihat
eksekusi seperti yang terjadi luar dari semua proses.
Dengan cara,
ini tampilan dari OS yang luar biasa. Sederhananya, pada titik-titik tertentu diwaktu, proses akan menyimpan informasi negara tersebut, memilih
proses lain untuk lari dariantara mereka
yang siap, dan melepaskan kontrol untuk proses tersebut. Alasan ini adalah bukan situasi yang
sewenang-wenang dan memang kacau
adalah bahwa selama waktu kritis,
kode yang dijalankan dalam proses
pengguna berbagi kode
sistem operasi dan tidak pengguna kode. Karena konsep
modus pengguna dan modus kernel, pengguna tidak dapat mengganggu dengan atau mengganggu rutinitas sistem operasi, meskipun mereka melaksanakan di lingkungan
proses pengguna. Hal
ini semakin mengingatkan kita bahwa
ada perbedaan antara konsep proses
dan program dan bahwa hubungan
antara dua tidak 12:59. Dalam proses, baik
program pengguna dan sistem operasi program mungkin mengeksekusi,
dan program sistem operasi yang mengeksekusi dengan variabel proses pengguna
ous adalah identic.
Process-Based Operating System(Proses Berbasis Sistem
Operasi)
Alternatif lain,
diilustrasikan pada Gambar 3.15c, adalah untuk menerapkan
OS sebagai koleksi dari proses sistem. Seperti
pada pilihan lain, perangkat lunak yang merupakan bagian dari kernel mengeksekusi dalam
mode kernel. Dalam kasus ini, bagaimanapun, fungsi kernel utama diselenggarakan sebagai proses terpisah.
Sekali lagi, mungkin ada sejumlah proses
kecil beralih
kode yang dieksekusi di luar proses apapun.
Pendekatan ini memiliki beberapa keunggulan.
Ini membebankan desain
program discipline yang mendorong
penggunaan OS modular
dengan minim, antarmuka bersih diantara modul.
Selain itu, beberapa fungsi operasi
sistem yang tidak kritis mudah diimplementasikan sebagai proses terpisah.
Sebagai contoh, kita sebutkan sebelumnya
program monitor yang mencatat tingkat pemanfaatan berbagai
hasil (prosesor, memori, saluran) dan tingkat kemajuan pengguna
proses dalam sistem. Karena
program ini tidak menyediakan
pelayanan-tertentu wakil untuk setiap proses aktif, hanya dapat dipanggil
oleh OS. Sebagai proses,
fungsi dapat dijalankan pada tingkat
prioritas yang ditugaskan dan interleaved dengan lainnya proses di bawah kendali operator. Akhirnya, menerapkan OS
sebagai satu set proses ini
berguna dalam lingkungan multiprosesor atau multicomputer, di
mana beberapa layanan sistem operasi dapat dikirimkan ke berdedikasi
processors, meningkatkan kinerja.
2.6 SECURITY
ISSUE
Sistem
informasi saat ini merupakan sumber daya penting, mempunyai nilai strategis dan
mempunyai peranan yang sangat penting sebagai daya saing, kompetensi utama dan dalam
keberlangsungan hidup dari suatu organisasi. Kenyamanan, kemudahan dan keuntungan
yang dijanjikan dalam setiap pengembangan dan implementasi suatu sistem informasi,
disadari juga sebagai upaya yang menjadikan atau menempatkan sistem informasi semakin
rentan akan potensi ancaman. Sehingga menjadi suatu prinsip dasar bahwa dalam pengelolaan
sistem informasi juga harus diimbangi dengan perhatian yang serius terhadap keamanan
sistem informasi. Keamanan sistem informasi disadari merupakan salah satu bagian
yang penting dalam melakukan pengelolaan sistem informasi. Prinsip-prinsip kerahasiaan,
integritas dan ketersediaan data dan informasi (confidentiality, integrity and
availability) menjadi taruhan utama dalam setiap upaya-upaya pengamanan terhadap
sistem informasi. Kebijakan, prosedur, teknik dan mekanisme keamanan harus mampu
menjamin sistem informasi dapat terlindungi dari berbagai potensi ancaman yang mungkin
timbul atau setidaknya mampu mengurangi kerugian yang diderita apabila ancaman terhadap
sistem informasi teraktualisasi.
2.6.1 System Acess Threat
Ancaman
keamanan sistem informasi adalah aksi yang terjadi baik dari dalam sistem maupun
dari luar sistem yang dapat mengganggu keseimbangan sistem informasi.
Sumber
Ancaman Keamanan Sistem Informasi
Timbulnya
ancaman dapat dipicu oleh suatu kondisi dari sumber ancaman. Sumber ancaman dapat
muncul dari kegiatan pengolahan informasi yang berasal dari 3 hal utama, yaitu (1)
Ancaman Alam; (2) Ancaman Manusia, dan (3) Ancaman Lingkungan.
Organisasi
yang membutuhkan daftar dari sumber ancaman, perlu melakukan hubungan dengan badan-badan
atau sumber-sumber yang berhubungan dengan keamanan, seperti misalnya sumber ancaman
dari alam diharapkan hubungan dengan BMG yang menangani masalah alam, atau pihak
intelijen atau media massa yang dapat mendeteksi sumber ancaman dari manusia. Hasil
output dari ancaman ini merupakan pernyataan atau daftar yang berisikan sumber ancaman
yang mungkin dapat mengganggu sistem secara keseluruhan.
Ancaman
yang berasal dari manusia memiliki karakteristik tersendiri, serta memiliki alasan
tersendiri dalam melakukan gangguan terhadap sistem informasi yang ada. Adapun alasan
yang timbul dari ancaman manusia ini dapat di definisikan dalam tabel berikut :
Sumber Ancaman
|
Alasan
|
Aksi
yang timbul
|
Hacker, Cracker
|
·
Tantangan
·
Ego
·
Memberontak
|
·
Hacking
·
Social
Engineering
·
Gangguan
sistem
·
Akses
terhadap system
|
Kriminal
|
·
Perusakan
informasi
·
Penyingkapan
informasi secara ilegal
·
Keuntungan
moneter
·
Merubah
data
|
·
Tindak
Kriminal
·
Perbuatan
curang
·
Penyuapan
·
Spoofing
·
Intrusi
atas system
|
Teroris
|
·
Surat
kaleng
·
Perusakan
·
Peledakan
·
Balas
dendam
|
·
Bom/terror
·
Perang
informasi
·
Penyerangan
sistem
·
Penembusan
atas sistem
·
Tampering
system
|
Mata-mata
|
·
Persaingan
usaha
·
Mata-mata
ekonomi
|
·
Pencurian
informasi
·
Social
engineering
·
Penembusan
atas system
|
Orang dalam Organisasi
|
·
Keingintahuan
·
Ego
·
Mata-mata
·
Balas
dendam
·
Kelalaian
kerja
|
·
Surat
kaleng
·
Sabotase
atas sistem
·
Bug
sistem
·
Pencurian/penipuan
·
Perubahan
data
·
Virus,
trojan, dll
·
Penyalahgunaan
komputer
|
2.6.2 Countermeasures
Dalam
konteks keamanan sistem informasi, upaya-upaya yang bersifat pencegahan terhadap
potensi ancaman yang mungkin timbul menjadi penekanan yang sangat penting, selain
upaya pendeteksian kejahatan terhadap sistem informasi dan upaya pemulihan sistem
informasi. Pencegahan menjadi penting karena pencegahan dapat menghindarkan pengelola
atau pemilik sistem informasi dari timbulnya kejahatan, kerugian yang lebih besar
dan upaya atau biaya yang besar dalam upaya melakukan deteksi, atau pun upaya menempuh
proses hukum dan recovery terhadap sistem informasi yang rusak.
Dalam
satu hasil global survey diketahui bentuk pencegahan yang umum dilakukan atau dijalankan
oleh organisasi, Firewall dan software anti
virus merupakan trend keamanan sistem informasi saat ini, masih mendominasi dan
dipercaya oleh banyak organisasi dan para ahli keamanan sebagai pencegahan kejahatan
terhadap sistem informasi yang efektif dan efisien. Lebih dari 95% responden mengimplementasi
firewall dan software anti virus dalm strategi keamanan sistem organisasi mereka.
2.8 UNIX
SVR4 PROCESS MANAGEMENT
Unix
adalah nama sebuah system operasi yang asal mulanya dikembangkan pada laboratorium
Bell, AT dan T. system operasi adalah perangkat lunak computer yang mengatur dan
mengendalikan operasi dasar system computer. Unix terdiri atas sejumlah program
( daftar intruksi untuk memperoleh hasil tertentu ) yang dirancang untuk mengontrol
interaksi antara fungsi-fungsi pada mesin yang beraras rendah dengan program aplikasi.
Tugas dari system operasi diantaranya :
• Melakukan fungsi manajemen system berkas
• Mengendalikan sebagai sesumber pada system
seperti Disk dan Printer
• Membentuk penjadwalan proses-proses di dalam
system beberapa sifat dan keistimewaan
yang terdapat pada unix ditunjukan pada gbr 1.1
Protabilitas
Jenis
system dari notebook microcomputer ( PC ) , hingga main frame. Protabilitas berarti
ketidakbergantungan pada suatu perangkat keras. Berarti pemakai tidak perlu terpaku
pada satu vendor. Untuk beralih dari suatu unix ke unix lainnya.
Multiuser
Multiuser
berarti sejumlah orang dapat menggunakan system secara bersamaan. UNIX mendukung
keperluan :
• Keuntungan dangan adanya sifat multiuser :
1. Penghematan perangkat keras sebab perangkat
keras ( misalnya : Printer, Disk
) dapat dipakai oleh orang banyak
2. Data dapat diakses oleh orang banyak secara
serentak.
Multi tasking
Kemampuan
system operasi yang dapat melaksanakan beberapa tugas pada saat bersamaan dinamakan
Multi Tasking.
Sistem berkas yang Hierarkis
System
berkas yang Hierarkis memungkinkan mengorganisasikan informasi atau data dalam bentuk
yang mudah untuk mengaksesnya informasi-informasi yang dapat diatur.
Shell UNIX
Kemampuan
shell mencakup dua hal :
1. Modus interaktif dan
2. Modus pemrograman
Pada
modus pemrograman dapat menyusun suatu program yang berupa perintah yang biasa disebut
skrip shell. Hal ini bermanfaat untuk menangani pekerjaan yang bersifat rutin.
Utilitas
Pada
UNIX mempunyai tugas bermacam-macam antara lain:
1. Manajemen berkas
2. Penyunting berkas
3. Perndukung pengembanga perangkat lunak
Masyarakat UNIX
Unix digunakan
untuk memecahkan persoalan yang kompleks pada permasalahan statistic dan engineering.
Perkembangan Unix lepas dengan organisasi
yang melakukan standarisasi :
• ANSI
ANSI
( American National Standarts Institute ) Mempunyai peranan dalam dunia UNIX Institusi
ini menyediakan standar pemrogaman C yang dibentuk melalui komite ANSI XJ311.
• POSI X
POSI
X (Portable operating system standart for computer environments) merupakan suatu
komite dari IEEE (Institute of electrical and electronics engineers) yang mengeluarkan
standar 1003.1 pada tahun 1986. standart ini berperan dalam menentukan standart
system operasi yang portabel pada UNIX, terutama mengenal kernel Unix.
• X/Open
X/Open
adalah konsorsium. Internasional non-profit dari sejumlah pabrik computer, seperti
Bull, ICI, Olivetti, Nixdorf. Philips dan Siemens didirikan pada tahun 1984. perusahaan
computer. Pabrik computer Amerika seperti DEC, HP dan UNISYS serta AT dan T menjadi
anggotanya. Tujuan dari kelompok yyang sangat berpengaruh di benua Eropa ini adalah
mendenifisikan lingkungan untuk mendukung portabilitas perangkat lunak. Spesifikasi
system terbuka yang dikeluarkan oleh organisasi ini adalah XPE ( X / Open pertability
guide )
• ISO
ISO
( Internasional Standarts Organization ) ikut mengembangkan beberapa standart terutama
dalam lingkup komunikasi computer.
• X-Consortium
Konsorsium
ini membuat pedoman antar muka yang berdasarkan teknologi X-windows (Teknologi Windows
pada UNIX-semacam Microsoft windows) di PC. Yang dikembangkan di Massachusetts Institute
of Teknology.
• AT Dan T
AT
dan T mengeluarkan standart system V yang bisebut _SVID ( Sistem V Interface Definition
). Standart ini menyebutkan fasilitas-fasilitas pada UNIX yang dijamin tidak bakal
berubah pada rilis-rilis mendatang.
Sejarah unix
Ken
thompson dari laboratorium bell membuat versi awaldari unix dengan nama unics (Uni
plexed information and computing servicess) suatu nama yang di pengaruhi oleh sistem
opersi pendahulunya.MULtTICS (multifexed information and computing services) multics
sendiri juga di ciptakan olek Ken Thompson dengan rekan2xnya versi pertama unix
di selesaikan pada tahun 1969,din tulis dengan bahasab rakitan (assembly) pada komputer
PDR 7 C sebuah komputer pengeluaran digital equipment corporation.
Pada
tahun 1973 Ken Thompson danb Denis Ritche menulis ulang kernel bagian inti dari
sistam v nix denaga bahasa C perkembangan inilah yang membuat unix kini dapat di
terapkan pada berbagai mesi , mengingat (adalah bahasa yang mengingat portabel mudah
di pindahkan).
pemakaian unix pada mesin lain di mulai pada tahun 1976/1977
saat itu Denis Ritce dan Stephen Johnson berhasil memindahkan sistem unix ke sistem
interdata 8/32 hal inilah yang menjasdi tambak sejarah yang menunjukan keportabilitasan
unix.
Sekitar
tahun 1975, laboratorium memberikan unix ke universitas2x dengan imbalan yang sangat
murah , salah satu universitas yang akhirnya melahirkan unix yang sangat populer
adalah universitas catalonia , barkeley versi unixnya terkenal dengan nama BSD (barkeley
software distribution) .
lisensi unix yang bersifat komersial di berikan pertama kalin
oleh at dan t ke system onyx , sebuah perusahaan yangb di dirikan olehBOB mars dan
kypmyers pada tahun 1978 saat itu unix di anggap sebagai sistem operasi yang ampuh
untuk menangani system 16 bit.
Pada
dekade 80 an unix berkembang dengan pesat termasuk pada pc yang terkenal oleh XENIX
(santa cruz operation) yang merupakan sistem mikrosoft. Pada dekade ini pula lahir
sistem v (1984 di kembangkan di computing science reshearce group , bell laboratoris
, new jersey) yang menjadi kiblt proyek yang di sebut GNU LGNU`S not unix yang di
kembangkan oleh yhe free soft ware kondation (FSF) tujuan dari proyek ini adalah
membangun sistem secara unix yang bersifat bebas royalti bagi
pemrogran dan pengembang .Proyek inilah yang kemudian hari mendasari sistem
pemrogran dan pengembang .Proyek inilah yang kemudian hari mendasari sistem
BAB III
PENUTUP
KESIMPULAN
Konsep yang paling
pokok di dalam suatu modern OS adalah proses.Fungsi utama OS adalah
untuk menciptakan,mengatur,dan
mengakhiri proses.Saat proses sedang aktif, OS harus melihat waktu yang
dialokasikan untuk eksekusi oleh processor,mengkoordinir aktivitas
mereka,memanage permintaan yang konflik,
dan mengalokasikan sistem resources ke proses.
Untuk melaksanakan
fungsi manajemen proses nya, OS memaintain uraian dari tiap proses, atau
gambaran proses, yang meliputi ruang alamat di mana melaksanakan proses, dan
PCB. Semua itu ini berisi informasi yang diperlukan oleh OS untuk mengatur proses,
termasuk status sekarang nya, resource yang dialokasikan untuk itu,prioritas,
dan data relevan lain.
Selama hidup nya,suatu
proses berpindah antar beberapa state.Yang paling utama adalah Ready,Running,
dan Blocked.Proses Ready adalah proses yang tidak dieksekusi sekarang
tetapi telah siap untuk dieksekusi sesegera mungkin. Proses Running adalah
proses yang sekarang sedang dieksekusi oleh Processor.Didalam suatu sistem
multiple-processor, proses lebih dari satu dapat berada di state running.Suatu
proses Blocked sedang menantikan penyelesaian beberapa event, seperti sebuah Operasi
I/O.
Sebuah proses Running
dapat disela oleh suatu Interupt,yaitu suatu event yang terjadi di
luar proses itu dan dikenali oleh processor,atau dilakakukan
oleh suatu sepervisor yang memanggil ke
OS.Processor melaksanakan suatu mode switch,memindahkan kendali ke suatu sistem
operasi rutin. Setelah itu OS menyelesaikan pekerjaan yang diperlukan,maka
diperbolehkan memulai lagi proses yang di interupsi tadi atau pindah/ganti mengeksekusi
proses-proses lainnya.
DAFTAR RUJUKAN
http://cahpecel89.wordpress.com/2010/04/11/3-2-status-proses/
http://fairuzelsaid.wordpress.com/2010/08/25/cyberlaw-ancaman-keamanan-sistem-informas/
Stallings, William. 2009.
Operating System: Internal and Design Principles. 6th edition. Prentice
Hall
0 komentar:
Posting Komentar