Sistem Operasi 1 “Struktur Struktur Sistem Komputer Sistem Komputer” Komponen Dasar Sistem Komputer Komponen Dasar Sistem Komputer • Hardware / Peripheral H d /P i h l – Penyedia sumber daya untuk komputasi dasar • Memory, CPU, I/O y, , / • Software – Operating system • Mengkontrol dan mengkoordinasi penggunaan hardware antara berbagai aplikasi dan pengguna – Application programs – mendefinisikan cara penggunaan sumber daya sistem dan persoalan komputasi yang dialami pengguna i d l k i di l i • Word processors, compilers, web browsers, database systems, video games – Pengguna • orang, mesin, dan komputer lain 4 komponen dari Sistem Komputer 4 komponen dari Sistem Komputer Kelas kelas komputer Kelas‐kelas komputer • Menurut Ukuran M Uk K Komputer: – – – – – – – – – Grid Computer/ Super Computer M i f Mainframe/ Enterprise System /E i S Minicomputer Workstation ‐‐‐‐‐‐|| Desktop Computer |‐‐‐> Personal Computer | Desknote | Laptop / Notebook p p ‐‐‐‐‐‐|| Handheld Computer Embedded System Menurut Karakteristik Menurut Karakteristik • Single Si l processor – Komputer yang hanya memiliki satu prosesor • Multiprocessor l – Komputer yang memiliki lebih dari satu prosesor • Personal Computer – Komputer yang digunakan oleh hanya satu orang dalam satu waktu (umumnya) satu waktu (umumnya) • Distributed System – Komputasi yang dikerjakan dengan beberapa prosesor K t i dik j k d b b Menurut karakteristiknya Menurut karakteristiknya • Clustered System – Gabungan dari beberapa sistem individu yang g p y g saling berbagi tempat penyimpanan data (storage / / SAN) dan saling terhubung dalam jaringan lokal ) g g j g • Real Time System – Sebuah sistem yang mengutamakan ketepatan S b h i k k waktu dalam eksekusi satu buah tugas Mainframe System Mainframe System • K Kumpulan dari device‐device & CPU yang berfungsi sama atau l d i d i d i & CPU b f i bermacam‐macam yang disatukan dalam sebuah sistem yang saling berbagi g g • Mengumpulkan job‐job yang mirip • Secara otomatis berpindah dari satu job ke job yang lain Grid Computer/Super Computer Grid Computer/Super Computer • Kumpulan dari banyak komputer yang dikembangkan dalam sebuah computer‐farm • Pengembangan dari Mainframe dan Desktop Pengembangan dari Mainframe dan Desktop • Menggunakan banyak CPU untuk menghasilkan output maksimal • Kumpulan cluster system, bisa tidak dalam 1 lokasi Tipe alokasi job Tipe alokasi job • Batch System B hS – Job yang mempunyai kesamaan kebutuhan sumber daya dikumpulkan – Ketika komputer dalam keadaan siap maka CPU menjalankan masing‐masing p j g kumpulan job tersebut sebagai sebuah kelompok. – Dieksekusi secara bergantian – User yang mengoperasikan User yang mengoperasikan – Tidak real‐time Tipe alokasi job Tipe alokasi job • Multiprogramming Multiprogramming: – Job/process disimpan di main memory pada waktu yang sama – CPU dipergunakan bergantian oleh job CPU dipergunakan bergantian oleh job‐ job/process tersebut – Dikerjakan oleh OS – Berupa background proses – Lebih cepat drpd Batch • Dibutuhkan Kemampuan OS: – Penyediaan I/O routine – Pengaturan memory, untuk mengalokasikan memory untuk masing2 Job – Penjadwalan CPU, untuk memilih job mana yang akan dijalankan yang akan dijalankan – Pengalokasian untuk hardware lain Tipe alokasi job Tipe alokasi job • Time‐Sharing System/Multitasking Ti Sh i S /M l i ki ‐ Interactive Computing I i C i – CPU digunakan bergantian oleh job‐job di memori dan di disk – Waktu dibatasi Waktu dibatasi • Response time harus < 1 detik – CPU dialokasikan hanya pada job yg ada di memory = CPU scheduling – Job dipindahkan dari dan ke disk (konsep J b di i d hk d i d k di k (k swapping i dan virtual d it l memory) – Terjadi komunikasi antara user dan sistem operasi • Setelah sistem operasi menyelesaikan satu perintah ia menunggu perintah berikutnya dari user Berdasarkan Hubungan Sistem Berdasarkan Hubungan Sistem • Single Process i l – Sistem hanya memiliki satu CPU • Multi Process: – Sistem memiliki lebih dari satu CPU untuk Sistem memiliki lebih dari satu CPU untuk memproses satu atau lebih program – Resource digunakan bersama Resource digunakan bersama‐sama sama – Sering disebut Tightly Coupling System Distributed System Distributed System • M Melaksanakan komputasi secara terdistribusi diantara l k k k i di ib i di beberapa prosesor, tidak digunakan bersamaan. Loosely coupling system – setiap prosesor mempunyai local setiap prosesor mempunyai local • Loosely coupling system memory / resource. – Komunikasi terjadi melalui bus atau jalur telepon / LAN • Keunggulan: – Pembagian sumber daya – Komputasi lebih cepat Komputasi lebih cepat • Model – Client‐Server Systems y – Peer‐to‐peer (P2P) System Peer to Peer vs Client Server Peer to Peer vs Client Server • P2P tidak membedakan client dan server – Semua node yang terhubung disebut dengan peer – Satu node bersifat sebagai client dan sekaligus sebagai server – Node harus terhubung dalam jaringan P2P • Menggunakan service melalui discovery protocol – Contoh: C h Napster and N d Gnutella, Torrent, JXTA G ll JX A Real time system Real time system • Si Sistem yang mampu menyelesaikan proses dalam l ik d l interval waktu tertentu. Jika tidak selesai maka sistem gagal sistem gagal. • Sering digunakan dengan device pengendali dalam sebuah penggunaan khusus sebuah penggunaan khusus – misal: eksperimen ilmiah, industri, medis • Model : Model : – Hard Real Time – Soft Real Time Soft Real Time Hard vs Soft Hard vs Soft • Hard Real Time • Soft Real Time – Menjamin proses yang paling penting selesai dalam interval waktu yang benar dan tertentu benar dan tertentu – Tidak dapat dipadukan dengan sistem jenis lain dengan sistem jenis lain – Critical – Menjamin j p proses yang paling penting mendapat prioritas t ti tertinggi i untuk t k diselesaikan. – Dapat dipadukan dengan sistem lain. Computer System Organization Computer System Organization • Operasi‐operasi Sistem Komputer – Satu atau lebih CPU, device controllers terhubung dalam jalur bus untuk mengakses shared memory – Concurrent execution Concurrent execution dari CPU dan adanya kebutuhan devices dari CPU dan adanya kebutuhan devices berebut mendapatkan resource PC Modern Architecture PC Modern Architecture Siklus Instruksi Siklus Instruksi • Instruction fetch, dari main memory – Sistem bisa tidak menemukan instruksi tersebut ‐> memory fault • Instruction Execution Instruction Execution Pengoperasian Sistem Komputer Pengoperasian Sistem Komputer • P Perangkat I/O dan CPU dapat berjalan secara secara k t I/O d CPU d t b j l konkuren. • Setiap device controller bertanggung jawab atas Setiap device controller bertanggung jawab atas device tertentu. • Setiap device controller memiliki buffer. Setiap device controller memiliki buffer. • CPU memindahkan data dari/ke memori utama ke/dari buffer controller. • Operasi I/O adalah pemindahan data dari device ke buffer controller. • Device controller memberitahu CPU bahwa operasi I/O selesai melalui interrupt. Interrupt • Berfungsi memindahkan kontrol ke interrupt service routine, melalui interrupt vector yang mengandung seluruh alamat service routine. service routine. • Interrupt harus mencatat alamat dari instruksi yang di‐ interrupt. • Interrupt akan diabaikan jika ada interrupt lain yang sedang diproses pada suatu proses yg sama. • Trap T adalah interrupt yang disebabkan oleh software, baik d l hi t t di b bk l h ft b ik yang disebabkan karena error atau permintaan user. Sistem operasi bekerja berdasarkan model interrupt driven • Sistem operasi bekerja berdasarkan model interrupt driven. Penanganan interrupt Penanganan interrupt • Sistem operasi menjaga keadaan CPU dengan i i j k d d menyimpan isi register & program counter. • Tipe interrupt : – Polling (Programmable I/O Polling (Programmable I/O – PIO) • Software: system call – Vectored interrupt system (Interrupt Driven) Vectored interrupt system (Interrupt Driven) • Hardware: oleh hardware seperti penekanan keyboard Operasi IO Operasi IO • Dua macam tindakan jika ada operasi I/O: Dua macam tindakan jika ada operasi I/O: – Setelah proses I/O dimulai, kendali akan kembali ke user program saat proses I/O selesai (Synchronous) program saat proses I/O selesai (Synchronous). • Instruksi wait menyebabkan CPU idle sampai interrupt berikutnya. – Wait loop ‐ untuk menunggu akses berikutnya • Paling banyak satu proses I/O yang berjalan dalam satu waktu. – Setelah proses I/O dimulai, kendali akan kembali ke user program tanpa menunggu proses I/O selesai I/O l i (Asynchronous). Direct Memory Access Direct Memory Access • Di Digunakan untuk I/O device yang dapat memindahkan data k t k I/O d i d t i d hk d t dengan kecepatan tinggi (mendekati frekuensi bus memori) • Device controller memindahkan data secara blok‐blok dari buffer, langsung ke memory utama / sebaliknya tanpa campur tangan prosesor – Dulu per karakter, 2 ms per kar + 2 untuk interrupt p , p p – Interrupt hanya terjadi tiap blok bukan tiap word / byte • Seluruh proses DMA dikendalikan oleh sebuah controller bernama DMA Controller (DMAC) bernama DMA Controller (DMAC) • Ada 2 DMA: – Third party: ada di motherboard – First party: di bagian logic di interface card per device Sistem BUS Sistem BUS • SSuatu jalur transfer data yang menghubungkan t j l t f d t h b k setiap device pada komputer • Hanya 1 device yang boleh mengirimkan data, Hanya 1 device yang boleh mengirimkan data • Boleh > 1 device yang membaca data • Terdiri dari dua buah model: Terdiri dari dua buah model: – Synchronous bus • Berkecepatan tinggi, hanya untuk device berkecepatan tinggi juga – Asynchronous bus • Berkecepatan rendah, dapat digunakan untuk berbagai macam device Storage‐Device Storage Device Hierarchy Hierarchy Storage • Prinsip : program adalah bagian dari data Pi i d l hb i d id • Register – Tempat penyimpanan volatile yang akan diolah langsung di prosesor. Tempat penyimpanan volatile yang akan diolah langsung di prosesor – Berkecepatan sangat tinggi. • Cache Memory – Tempat penyimpanan sementara yg volatile sejumlah kecil data untuk meningkatkan kecepatan pengambilan atau penyimpanan data di p memori oleh prosesor. – Berkecepatan tinggi. • Random Access Memory (RAM) ‐ Main Memory – Tempat penyimpanan sementara yg volatile yang dapat diakses langsung oleh prosesor Storage (2) Storage (2) • Extension Memory – Tambahan memory yang digunakan untuk yy g g membantu proses‐proses dalam komputer, biasanya berupa buffer y p • Secondary Storage – Media penyimpanan data yang non‐volatile M di i d l il – Dapat berupa Flash Drive ,Optical Disc, Magnetic Disk, Magnetic Tape Storage Management Storage Management • OS OS menyediakan keseragaman dan logical view terhadap di k k d l i l i h d information storage – Abstracts physical properties to logical storage unit Abstracts physical properties to logical storage unit ‐ file – Each medium is controlled by device (i.e., disk drive, tape drive) • File‐System management – Files usually organized into directories – Access control: who can access what – OS activities include OS activities include • • • • Creating and deleting files and directories Primitives to manipulate files and dirs Mapping files onto secondary storage Mapping files onto secondary storage Backup files onto stable (non‐volatile) storage media Performance of Various Levels of Storage Performance of Various Levels of Storage • can be explicit or implicit Caching • M Menyalin informasi ke storage media yang lebih li i f ik t di l bih cepat; • Main memory dapat dilihat sebagai cache terakhir Main memory dapat dilihat sebagai cache terakhir untuk secondary storage – Menggunakan memory berkecepatan tinggi untuk gg y p gg menyimpan data yang diakses terakhir • Cara: – Jik Jika ada di cache, gunakan yang dari cache (cepat) d di h k d i h ( ) – Jika tidak ada di cache, data dikopikan ke cache dan g gunakan Cache & DMA Cache & DMA Dual Mode Operation of OS Dual Mode Operation of OS • M Membagi sumber daya sistem yang memerlukan b i b d i l k sistem operasi untuk menjamin bahwa program yang salah tidak menyebabkan program lain berjalan salah salah tidak menyebabkan program lain berjalan salah juga • User Mode User Mode – Eksekusi dikendalikan oleh user Eksekusi dikendalikan oleh user • Kernel Mode – Eksekusi dikendalikan oleh sistem operasi. operasi – Instruksi tertentu hanya berjalan di mode ini. (Privileged Instruction) Dual mode operation of OS Dual mode operation of OS • Ditambahkan sebuah bit penanda operasi • Jika terjadi interrupt, make hardware Jika terjadi interrupt, make hardware berpindah ke kernel mode. Protection and Security Protection and Security • • Protection – mekanisme untuk menkontrol akses dari proses atau user Protection mekanisme untuk menkontrol akses dari proses atau user terhadap resources yang didefinisikan oleh OS Security – penjagaan sistem dari ancaman internal dan eksternal – including denial‐of‐service, worms, viruses, identity theft, theft of service including denial of service worms viruses identity theft theft of service • Pengaturan user: who can do what – User identities (user IDs, security IDs) include name and associated number, one per user one per user – User ID then associated with all files, processes of that user to determine access control – Group identifier (group ID) allows set of users to be defined and controls managed, then also associated with each process, file – Privilege escalation allows user to change to effective ID with more rights