Friday 12 December 2014

STURUKTUR SISTEM OPRASI (OS)




Struktur-struktur OS
Tanpa adanya modularitas maka fungsi dan struktur OS secara keseluruhan rumit
Dibagi dalam modul dengan fungsi tertentu, dengan akses (input, output) tertentu

Komponen dalam Sistem operasi
  • Manajemen Proses
  • Manajemen Memori
  • Manajemen Storage/Data
  • Manajemen I/O dan Berkas (File)
  • Proteksi
  • Networking
  • Interface dengan user (command interpreter)

Manajemen Proses

Proses adalah program yang dieksekusi, memerlukan resource, CPU time, memory, file, I/O device.
OS bertanggung jawab dalam :
  • Create & delete ; baik proses user maupun sistem
  • Suspend & meneruskan proses
  • Mendukung mekanisme-mekanisme sinkronisasi proses
  • Mendukung mekanisme proses communication
  • Mendukung mekanisme penanganan deadlock

Manajemen Memori Utama

Memory merupakan array words/byte dalam jumlah besar. Akses share data secara cepat oleh CPU dan I/O device
Volatile storage device
OS bertanggung jawab dalam :
  • Keep track bagian mana dari memori yang sedang digunakan & oleh siapa
  • Memutuskan proses-proses mana yang di-load ke ruang memori saat available
  • Alokasi & dealokasi ruang memori

Manajemen Secondary-Storage
Back up main memory, non-volatile
Data dan program disimpan disimpan dalam secondary storage (penyimpanan sekunder; disk)
OS bertanggung jawab dalam :
  • Bagaimana mengelola ruang yang kosong dalam storage
  • Bagaimana mengalokasi storage
  • Bagaimana melakukan scheduling penggunaan disk

Manajemen I/O

    OS bertanggung jawab dalam :
    “menyembunyikan” kekhususan perangkat keras tertentu dari user
    Melakukan optimalisasi dalam akses
    Buffer cache system : menampung sementara data dari/ke piranti I/O
    Spooling : melakukan penjadwalan pemakaian I/O sistem supaya lebih efisien (antrian, dsb)
    Interface device-driver : open, read, write, close
    Drivers untuk spesifik perangkat keras :
    Menyediakan driver untuk melakukan operasi detail untuk perangkat keras tertentu

    Manajemen File

    Berkas (File) adalah kumpulan informasi yang berhubungan (sesuai dengan tujuan pembuat berkas tersebut). Biasanya berkas merepresentasikan program dan data
    OS bertanggung jawab dalam :
    • Pembuatan dan penghapusan file
    • Pembuatan dan penghapusan direktori
    • Mendukung primitif-primitif manipulasi file dan direktori
    • Pemetaan file dalam secondary storage
    • Backup file dalam media yang stabil (non-volatile)

    Networking (Distributed System)
    Distributed system : kumpulan prosesor yang terdistribusi, tidak berbagi (share) memory atau clock. Setiap prosesor memiliki memori lokal masing-masing
    Prosesor-prosesor dalam sistem terhubung dalam jaringan komunikasi
    Sebagai pengatur (protokol) dalam komunikasi data
    Menentukan strategi-strategi menangani masalah-masalah komunikasi
    Mengatur network file system
    Dengan adanya shared resource :
    1. Peningkatan kecepatan komputasi
    2. Peningkatan penyediaan data
    3. Meningkatkan reliabilitas (kehandalan)

    Sistem Proteksi
    Mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor atau user ke resource-resource dalam sistem komputer
    Mekanisme proteksi :
    Dapat membedakan pemakaian yang sah (authorized) & yang tidak sah (unauthorized)
    Spesifikasi kontrol yang dikenakan
    Menyediakan alat untuk pemberlakuan sistem

    Command Interpreter :
    Memungkinkan sistem berkomunikasi dengan user melalui perintah-perintah menjalankan proses yang telah didefinisikan dan parameternya serta melakukan respon
    OS menunggu instruksi dari user (command driven)
    Control statement berhubungan dengan :
    process creation and management
    I/O handling
    secondary-storage management
    main-memory management
    file-system access
    protection
    networking

    Program yang membaca instruksi dan mengartikan control statements (keinginan pengguna) umumnya disebut :
    control-card interpreter
     command-line interpreter
     UNIX Shell
    Command-Interpreter System sangat bervariasi dari satu sistem operasi ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi I/O peranti yang ada.
    Contohnya : CLI, Windows, Pen-based (touch), dll

    Layanan Operating System
    Eksekusi program : load program user ke memory dan menjalankannya (run)
    Operasi-operasi I/O : pengguna tidak bisa mengontrol I/O secara langsung (untuk efisiensi & keamanan), sistem harus bisa menyediakan mekanisme untuk melakukan operasi I/O
    Manipulasi file system : read, write, create & delete
    System Call
    Menyediakan antarmuka antara proses (program yang run) dengan OS
    Umumnya dalam bentuk instruksi bahasa assembly
    Bahasa untuk system programming tingkat tinggi biasanya memungkinkan system call dilakukan langsung
    Misal C, C++, Bliss, PL/360
    Tiga metode untuk passing parameter antara running program dan OS :
    Pass parameter melalui register
    Meyimpan parameter dalam blok atau tabel pada memory, dan alamat tabel di-passing sebagai parameter dlm register
    Mmenyimpan parameter (push) ke dalam stack (oleh program), dan pop off parameter pada stack (oleh OS)


    Jenis-jenis System Call
    1. Process Control
    2. File Manipulation
    3. Device Manipulation
    4. Information Maintenance
    5. Communication
    Model Komunikasi
    Komunikasi dapat dilakukan dengan cara message passing atau shared memory

    Pemrograman Sistem
    Pemrograman sistem menyediakan lingkungan yang memungkinkan pengembangan program dan eksekusi berjalan dengan baik
    Dapat dikategorikan :
    Manipulasi Berkas (File)
    Informasi Status : tanggal, jam, jumlah memori, disk, dll
    Modifikasi Berkas
    Mendukung bahasa pemrograman : kompilator, assembly, interpreter
    Loading & eksekusi program
    Komunikasi : menyediakan mekanisme komunikasi antara proses, user dan sistem komputer yang berbeda
    Dari sisi user, operasional sistem dilakukan dengan system program, bukan system call

    Struktur Sistem

    • Struktur Sederhana : Dimulai dengan sistem yang kecil, sederhana dan terbatas kemudian berkembang dengan cakupan original
    • Struktur sistem MS-DOS : disusun untuk mendukung fungsi yang banyak pada ruang yang kecil
    • Struktur Lapisan MS-DOS
    • Struktur Sistem UNIX 

    Memiliki struktur yang terbatas
    Terdiri dari 2 bagian :
    • Kernel : Berada dibawah antarmuka system call dan diatas hardware Menyediakan sistem berkas, penjadualan CPU, manajemen memori, device driver, dan fungsi OS lainnya
    • Program Sistem
    Kernel
    Kategori kernel :
    Monolithic kernel. Kernel yang menyediakan abstraksi akses ke perangkat keras yang kaya dan handal. Semua layanan OS dilakukan pada kernel
    Semua code pada address space yang sama (kernel space) Meningkatkan performance system
    Mudah dalam hal design dan implementasi Bugs dapat menyebabkan sistem crash


    Microkernel adalah Kernel yang menyediakan hanya sekumpulan kecil abstraksi perangkat keras sederhana, dan menggunakan aplikasi-aplikasi yang disebut sebagai server untuk menyediakan fungsi-fungsi lainnya.
    Banyak layanan OS yang run pada user space untuk me-minimalisasi kernel (seperti networking)
    Modularity  : mudah dalam me-memaintain code


    Hybrid (modifikasi dari microkernel). Kernel yang mirip microkernel, tetapi ia juga memasukkan beberapa service tambahan di kernel (network stackfile system) agar menjadi lebih cepat.

    Running beberapa layanan OS (network stack, file system) dalam kernel space untuk mengurangi performance overhead dari metode microkernel, tetapi tetap menjalankan kernel code (seperti device driver) sebagai server di user space



    Exokernel. Kernel yang tidak menyediakan sama sekali abstraksi hardware, tapi ia menyediakan sekumpulan library yang menyediakan fungsi-fungsi akses ke perangkat keras secara langsung.

    Mikrokernel
    Menyusun sistem operasi dengan menghapus semua komponen yang tidak esensial darikernel, dan mengimplementasikannya sebagai sistem program dan level pengguna
    Fungsi utama : mendukung fasilitas komunikasi antara program klien dan bermacam-macam layanan yang juga berjalan di user-space
    Keuntungan :
    Ketika layanan baru akan ditambahkan ke user-spacekernel tidak perlu di-modif
    OS lebih mudah ditempatkan (porting) pada suatu desain perangkat keras ke desain perangkat keras lainnya (asrsitektur sistem yang baru)
    Mendukung keamanan & reliabilitas lebih
     Contoh sistem operasi :
    Tru64 UNIX, MacOSX, QNX


    Virtual Machine (VM)

    Menggunakan layered approach
    Melihat hardware dan kernel OS sebagai suatu “hardware”
    Menyediakan interface yang identik dengan underlaying bare hardware
    OS menyediakan illusion dari banyak proses yang masing-masing berjalan pada prosesornya serta memorinya (virtual) sendiri

    Resource dari komputer fisiknya di-share menjadi sejumlah mesin-mesin virtual
    CPU scheduling yang menciptakan penampilan seakan-akan user memiliki prosesor sendiri
    Spooling & file system menyediakan virtual card readers dan virtual line printers
    Sebuah time-sharing terminal user berlaku sebagai virtual console
    VM software membutuhkan ruang di dalam disk untuk menyediakan memori virtual danspooling, yaitu sebuah disk virtual

    No comments:

    Post a Comment