Thursday, May 7, 2015

Session 2 | Operating System Overview

What is Operating System?

  • Sebuah program yang mengatur eksekusi dari program aplikasi
  • Sebuah interface antara aplikasi dan hardware
Operating Systems Objective

  • Convenience
    • Membuat komputer lebih mudah untuk digunakan
  • Effeciency
    • Memungkinkan sumber dari sistem komputer untuk digunakan dalam cara yang lebih efesien
  • Ability to evolve
    • ijin pembangunan yang efektif, pengujian, dan pengenalan dari fungsi - fungsi sistem baru tanpa mengganggu layanan
Structure of Computer System

Operating Systems Concepts
  1. Processes
  2. Address spaces
  3. Files
  4. Input/Output
  5. Protection
  6. The shell
  7. Should have the following
    • Large memories
    • Protection hardware
    • Disks
    • Virtual memory
Operating System Structure

Mnolithic structure - basic structure:
  1. Sebuah program utama yang memanggil prosedur pelayanan yang diminta.
  2. Kumpulan dari layanan prosedur - prosedut yang melaksanakan panggilan sistem
  3. Kumpulan dari prosedur - prosedur utilitas yang membantu pelayanan prosedur - prosedur
  • Microkernel is compact
  • Melakukan fungsi - fungsi dasar universal untuk semua komputer. yang didesain untuk diintegrasi dalam operating sistem yang berbeda
  • Bekerja dengan OS-server yang spesifik yang menyediakan tingkat fungsi - fungsi yang lebih tinggi. Struktur berbasis komponen ini meningkatkan portabilitas sistem, tetapi berpotensi dengan mengorbankan performance.
  • Contoh: Mach dan turunan, Tru64 Unix, GNU Hurd, and Mac OS X
The Kernel
  • Bagian dari operating sistem yang berada didalam memori utama
  • Berisi fungsi - fungsi yang sering digunakan
  • Disebut juga nucleus

Evolution of Operating System
  •  Serial Processing
    • Tidak ada operating sistem
    • Mesin dijalankan dari konsol dengan display lights dan toggle switches, perangkat input, dan printer
    • Penjadwalan waktu
    • Pengaturan termasuk memuat kompiler, program sumber, menyimpan program yang dikompilasi,dan memuat dan menghubungkan
  • Simple Batch Systems
    • Monitor
      • Software yang mengontrol program yang berjalan
      • Batch jobs together
      • Program Branches back untuk monitor ketika selesai
      • Resident monitor berada didalam memori utama dan tersedia untuk eksekusi
  • Job Control Language (JCL)
    • Tipe spesial dari bahasa pemrograman
    • Memberikan instruksi ke monitor
      • Kompiler apa yang digunakan
      • Data apa yang digunakan
  • Uniprogramming
    • Processor harus menunggu instruksi I/O untuk menyelesaikan sebelum preceding



  • Multiprogramming
    • Ketika satu pekerjaan butuh untu menunggu I/O, processor dapat beralih kepekerjaan lain

  • Time Sharing
    • Menggunakan multiprogramming untuk mengatasi multiple interactive jobs
    • Processor's time dibagi antara multiple user
    • Multiple user secara bersamaan mengakses sistem melalu terminal
Process
  • Sebuah program eksekusi
  • Contoh dari program yang berjalan dalam komputer
  • Entitas dapat ditugaskan dan dieksekusi dalam processor
  • Unit aktifitas yang dikarakteristikan dengan single sequential thread dari eksekusi, keadaan saat ini, dan kumpulan dari sumber sistem
Memory Management
  • Proses isolasi
  • Alokasi otomatis dan manajemen
  • Mendukung untuk modular programming
  • Protection dan access control
  • Penyimpanan jangka panjang
Virtual Memory
  • Memungkinkan programmer untuk mengatasi alamat memori dari sudut pandang logis
  • Selama satu proses ditulis ke tempat penyimpanan secondary dan proses sucessor membaca didalam sana tidak ada hiatus
Scheduling dan Resource Management
  • Fairmess
    • Memberikan akses yang sama dan adil untuk semua proses
  • Differential responsieveness
    • Membedakan antara class yang berbeda dari jobs
  • Effeciency
    • Memaksimalisasi throughput, meminimaliskan waktu respon dan mengakomodasikan banyak kemungkinan yang akan digunakan

System Calls
  • Pemrograman interface untuk layanan yang disediakan oleh OS
  • Biasanya ditulisa dalam tingkat bahasa yang tinggi (C atau C++)
  • Sebagian besar diakses oleh program melalui tingkat tinggi Application Program Interface (API) daripada menggunakan sistem panggilan langsung
  • Tiga API yang paling umum adalah API Win32 untuk Windows, POSIX API untuk sistem POSIX berbasis (termasuk hampir semua versi UNIX, Linux, dan Mac OS X), dan Jawa API untuk mesin virtual Java (JVM)
Types of System Calls
  • Process control
  • File management
  • Device management
  • Information maintenance
  • Communications
  • Protection

No comments:

Post a Comment