1 / 60

Struktur Sistem Operasi

Struktur Sistem Operasi. Ida Nurhaida, ST., MT. Pembahasan. Komponen-komponen Sistem Layanan OS System Calls System Programs System Structure Virtual Machines System Design & Implementasi System Generation. Struktur-struktur OS.

alka
Download Presentation

Struktur Sistem Operasi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. StrukturSistemOperasi Ida Nurhaida, ST., MT.

  2. Pembahasan • Komponen-komponenSistem • Layanan OS • System Calls • System Programs • System Structure • Virtual Machines • System Design & Implementasi • System Generation

  3. Struktur-struktur OS • Tanpaadanyamodularitasmakafungsidanstruktur OS secarakeseluruhanrumit • Dibagidalammoduldenganfungsitertentu, denganakses (input, output) tertentu

  4. Modul/KomponendalamSistem • ModulManajemenProses • ModulManajemenMemori • ModulManajemen Storage/Data • ModulManajemen I/O danBerkas (File) • ModulProteksi • Modul Networking • Modul Interface dengan user (command interpreter)

  5. Manajemen Proses • Prosesadalah program yang dieksekusi, memerlukan resource, CPU time, memory, file, I/O device. • OS bertanggungjawabdalam : • Create & delete ; baikproses user maupunsistem • Suspend & meneruskanproses • Mendukungmekanisme-mekanismesinkronisasiproses • Mendukungmekanismeproses communication • Mendukungmekanismepenanganan deadlock

  6. Manajemen Memori Utama • Memory merupakan array words/byte dalamjumlahbesar. Akses share data secaracepatoleh CPU dan I/O device • Volatile storage device • OS bertanggungjawabdalam : • Keep track bagianmanadarimemori yang sedangdigunakan & olehsiapa • Memutuskanproses-prosesmana yang di-loadkeruangmemorisaatavailable • Alokasi & dealokasiruangmemori

  7. Manajemen Secondary-Storage • Back up main memory, non-volatile • Data dan program disimpandisimpandalam secondary storage (penyimpanansekunder; disk) • OS bertanggungjawabdalam : • Bagaimanamengelolaruang yang kosongdalam storage • Bagaimanamengalokasi storage • Bagaimanamelakukan scheduling penggunaan disk

  8. Manajemen I/O • OS bertanggungjawabdalam : • “menyembunyikan” kekhususanperangkatkerastertentudari user • Melakukanoptimalisasidalamakses • Buffer cache system : menampungsementara data dari/kepiranti I/O • Spooling : melakukanpenjadwalanpemakaian I/O sistemsupayalebihefisien (antrian, dsb) • Interface device-driver : open, read, write, close • Drivers untukspesifikperangkatkeras : • Menyediakan driver untukmelakukanoperasi detail untukperangkatkerastertentu

  9. Manajemen File • Berkas (File) adalahkumpulaninformasi yang berhubungan (sesuaidengantujuanpembuatberkastersebut). Biasanyaberkasmerepresentasikan program dan data • OS bertanggungjawabdalam : • Pembuatandanpenghapusan file • Pembuatandanpenghapusandirektori • Mendukungprimitif-primitifmanipulasi file dandirektori • Pemetaan file dalam secondary storage • Backup file dalam media yang stabil (non-volatile)

  10. Networking (Distributed System) • Distributed system : kumpulanprosesor yang terdistribusi, tidakberbagi (share) memory atau clock. Setiapprosesormemilikimemorilokalmasing-masing • Prosesor-prosesordalamsistemterhubungdalamjaringankomunikasi • Sebagaipengatur (protokol) dalamkomunikasi data • Menentukanstrategi-strategimenanganimasalah-masalahkomunikasi • Mengatur network file system • Denganadanya shared resource : • Peningkatankecepatankomputasi • Peningkatanpenyediaan data • Meningkatkanreliabilitas (kehandalan)

  11. Sistem Proteksi • Mekanismeuntukmengontrolakses yang dilakukanoleh program, prosesoratau user ke resource-resource dalamsistemkomputer • Mekanismeproteksi : • Dapatmembedakanpemakaian yang sah (authorized) & yang tidaksah (unauthorized) • Spesifikasikontrol yang dikenakan • Menyediakanalatuntukpemberlakuansistem

  12. Command Interpreter (1) • Memungkinkansistemberkomunikasidengan user melaluiperintah-perintahmenjalankanproses yang telahdidefinisikandanparameternyasertamelakukanrespon • OS menungguinstruksidari user (command driven) • Control statement berhubungandengan : • process creation and management • I/O handling • secondary-storage management • main-memory management • file-system access • protection • networking

  13. Command Interpreter (2) • Program yang membacainstruksidanmengartikan control statements (keinginanpengguna) umumnyadisebut : • control-card interpreter • command-line interpreter • UNIX Shell • Command-Interpreter System sangatbervariasidarisatusistemoperasikesistemoperasi yang lain dandisesuaikandengantujuandanteknologi I/O peranti yang ada. • Contohnya : CLI, Windows, Pen-based (touch), dll

  14. Layanan Operating System (1) • Eksekusi program : load program user ke memory danmenjalankannya (run) • Operasi-operasi I/O : penggunatidakbisamengontrol I/O secaralangsung (untukefisiensi & keamanan), sistemharusbisamenyediakanmekanismeuntukmelakukanoperasi I/O • Manipulasi file system : read, write, create & delete

  15. Layanan Operating System (2) • Komunikasiantarproses : • Baik yang rundikomputer yang samaatauberlainan via jaringan. Implementasimelaluisharedmemoryataumessagepassing • Error detection • Menjaminkomputasi yang benardenganmendeteksi error : CPU, memori, I/O device, atau user program

  16. Layanan OS Internal • Resource allocation • Alokasi resources bagisejumlah user atau job yang running padasaat yang sama • Accounting • Mencatat user mana, berapabanyak, dan resource komputerapasaja (untuk account billing ataupenghitunganstatistik) • Protection • Menjamin agar semuaakseske resource-resource sistemterkendali

  17. System Call • Suatu bentuk komunikasi antara user dan hardware • SistemOperasimelalui shell-nya akan menangkap perintah dari user yang kemudian akan dikomunikasikan melalui system calls • Shell adalah layer yang berfungsi sebagai interface antara user dan kernel.Shellini merupakan layer yang menerima interaksi dari user secara langsung • Menyediakanantarmukaantaraproses (program yang run) dengan OS • Umumnyadalambentukinstruksibahasa assembly • Bahasauntuk system programming tingkattinggibiasanyamemungkinkan system call dilakukanlangsung • Misal C, C++, Bliss, PL/360 • Tigametodeuntuk passing parameter antara running program danOS: • Pass parameter melalui register • Menyimpanparameter dalamblokatautabelpada memory, danalamattabeldi-passing sebagai parameter dlm register • Menyimpanparameter (push) kedalam stack (oleh program), danpop off parameter pada stack (oleh OS)

  18. Passing Parameter menggunakanTabel

  19. Contoh System Call • Urutan System call untukmeng-copy isi file ke file yang lain

  20. HubunganAPI – System Call – OS (1) • API terdapat fungsi-fungsi/perintah-perintah untuk menggantikan bahasa yang digunakan dalam system calls • System call interface ini akan menerjemahkan perintah dalam API dan kemudian akan memanggil system calls yang diperlukan.

  21. Hubungan API – System Call – OS (2) • Untuk membuka fileuser menggunakan program bantuan API, maka perintah dari user tersebut diterjemahkan dulu oleh program menjadi perintah open(). • Perintah open() tadi diterjemahkan ke dalam bentuk system call oleh system call interface. Implementasi perintah open() tadi bisa bermacam-macam tergantung dari sistem operasi yang kita gunakan.

  22. Standard C Library Example • C program memanggil fungsi printf() library call, yang memanggil write() system call

  23. Jenis-jenis System Call • Process Control • File Manipulation • Device Manipulation • Information Maintenance • Communication

  24. Process Control • Selesai, abort • Load, eksekusi • Membuatdanmengakhiriproses • Mengambildanmengesetatributproses • Menungguwaktu • Wait event, signal event • Alokasidanpengosonganmemori

  25. Eksekusi MS-DOS At System Start-up Running a Program

  26. UNIX Menjalankan Multiple Program

  27. Model Komunikasi • Komunikasidapatdilakukandengancara message passing atau shared memory Shared Memory Message Passing

  28. Pemrograman Sistem • Pemrogramansistemmenyediakanlingkungan yang memungkinkanpengembangan program daneksekusiberjalandenganbaik • Dapatdikategorikan : • ManipulasiBerkas (File) • Informasi Status : tanggal, jam, jumlahmemori, disk, dll • ModifikasiBerkas • Mendukungbahasapemrograman : kompilator, assembly, interpreter • Loading & eksekusi program • Komunikasi : menyediakanmekanismekomunikasiantaraproses, user dansistemkomputer yang berbeda • Dari sisi user, operasionalsistemdilakukandengan system program, bukan system call

  29. Struktur Sistem • StrukturSederhana • MetodePendekatanTerlapis (Layered Approach) • Mikrokernel

  30. Struktur Sederhana • Dimulaidengansistem yang kecil, sederhanadanterbataskemudianberkembangdengancakupan original • Struktursistem MS-DOS : • disusununtukmendukungfungsi yang banyakpadaruang yang kecil

  31. Struktur Lapisan MS-DOS

  32. Struktur Sistem UNIX (1) • Memilikistruktur yang terbatas • Terdiridari 2 bagian : • Kernel : • Beradadibawahantarmuka system call dandiatas hardware • Menyediakansistemberkas, penjadualan CPU, manajemenmemori, device driver, danfungsi OS lainnya • Program Sistem

  33. Struktur Sistem UNIX (2) • Kernel terdiridari • device driver • interface

  34. Pendekatan Terlapis (Layered Approach) (1) • Lapisanadalahimplementasidariobjekabstrak yang merupakanenkapsulasidari data danoperasi yang bisamemanipulasi data tersebut • Lapisan paling bawah : perangkatkeras • Lapisan paling atas : antarmukapengguna

  35. Pendekatan Terlapis (Layered Approach) (2) • Keuntungan : modularitas • Mempermudahdebug danverifikasisistem • Lapisanpertamabisadi-debug tanpamengganggusistem yang lain • Kesulitan : • Hanyabisamenggunakanlapisandibawahnya • Tidakefisiendibandingkantipe yang lain

  36. Lapisan Operating System

  37. System Structure – Layered Approach • Suaturancangan yang pertamadigunakandalam OS, terdiriatas 6 layer : THE Operating System (Dijkstra, 1968) • Level 5 : user program • Level 4 : buffering untuk input & output device • Level 3 : operator-console device driver • Level 2 : memory management • Level 1 : CPU scheduling • Level 0 : hardware THE : TechnischeHogeschool at Eindhoven

  38. Abstraksi Lapisan Operasi OS

  39. Struktur Lapisan OS/2

  40. Kernel • Kategori kernel : • Monolithic kernel. Kernel yang menyediakanabstraksiakseskeperangkatkeras yang kayadanhandal. Semualayanan OS dilakukanpada kernel . • Microkernel. Kernel yang menyediakanhanyasekumpulankecilabstraksiperangkatkerassederhana, danmenggunakanaplikasi-aplikasi yang disebutsebagai server untukmenyediakanfungsi-fungsilainnya. • Hybrid (modifikasidari microkernel). Kernel yang mirip microkernel, tetapiiajugamemasukkanbeberapa service tambahandi kernel (network stack, file system) agar menjadilebihcepat. • Exokernel. Kernel yang tidakmenyediakansamasekaliabstraksi hardware, tapiiamenyediakansekumpulan library yang menyediakanfungsi-fungsiakseskeperangkatkerassecaralangsung.

  41. Diagram Monolithic Kernel • Semua code pada address space yang sama (kernel space) • Meningkatkan performance system • Mudahdalamhal design danimplementasi • Bugs dapatmenyebabkansistemcrash

  42. Diagram Mikrokernel • Banyaklayanan OS yang dijalankanpadauser space untuk me-minimalisasi kernel (seperti networking) • Modularity : mudahdalam me-memaintain code

  43. Diagram Hybrid Kernel • Running beberapalayanan OS (network stack, file system) dalam kernel space untukmengurangiperformance overheaddarimetode microkernel, tetapitetapmenjalankan kernel code (seperti device driver) sebagai server diuser space

  44. Mikrokernel (1) • Menyusunsistemoperasidenganmenghapussemuakomponen yang tidakesensialdarikernel, danmengimplementasikannyasebagaisistem program dan level pengguna • Fungsiutama : mendukungfasilitaskomunikasiantara program kliendanbermacam-macamlayanan yang jugaberjalandiuser-space

  45. Mikrokernel (2) • Keuntungan : • Ketikalayananbaruakanditambahkankeuser-space, kernel tidakperludi-modif • OS lebihmudahditempatkan (porting) padasuatudesainperangkatkeraskedesainperangkatkeraslainnya (asrsitektursistem yang baru) • Mendukungkeamanan & reliabilitaslebih • Contohsistemoperasi : • Tru64 UNIX, MacOSX, QNX

  46. Virtual Machine (VM) (1) • Menggunakan layered approach • Melihat hardware dan kernel OS sebagaisuatu “hardware” • Menyediakan interface yang identikdenganunderlaying bare hardware • OS menyediakan illusion daribanyakproses yang masing-masingberjalanpadaprosesornyasertamemorinya (virtual) sendiri

  47. Virtual Machine (VM) (2) • Resource darikomputerfisiknyadi-share menjadisejumlahmesin-mesin virtual • CPU scheduling yang menciptakanpenampilanseakan-akan user memilikiprosesorsendiri • Spooling & file system menyediakanvirtual card readers danvirtual line printers • Sebuahtime-sharing terminal userberlakusebagai virtual console • VM software membutuhkanruangdidalam disk untukmenyediakanmemori virtual danspooling, yaitusebuah disk virtual

  48. Perbandingan Model Sistem Virtual Machine Non-virtual Machine

  49. Windows Vista Host Operating System

  50. Keuntungan & Kerugian VM (1) • Memberikanproteksiterhadap system resources karenasetiap VM terisolasidari yang lainnya • Isolasiinitidakmemungkinkandirect sharingdari resources • Merupakanalatresearch & developmentdalam OS

More Related