Minggu, 05 Oktober 2014

Session 2 - Operating Systems Overview

Pertama mengulas materi sebelumnya,  Operating sistem adalah program yang mengontrol eksekusi dari program lain dan merupakan sebuah interface antara kita , aplikasi , dan hardware.


Tujuan dibuatnya sistem operasi adalah agar menggunakan komputer lebih mudah, pemakaian sumber daya yang efisien, dan pengetesan untuk suatu program tertentu.

layer dari sistem komputer :
1. : application program : end user
2. : utilities / peralatan / programnya : programmer
3. : operating system : programmer
4. : hardware komputer : desainer sistem operasi

apa itu " Monolithic Structure " struktur monolithic : (ada 3 artian)
1. sebuah program yang meminta prosedur request.
2. kumpulan dari prosedur yang melakukan system calls / pemanggilan sistem.
3. sekumpulan prosedur utilitas yang membantu prosedur service.

Jika dilukiskan monolithic structure ada 3 tingkatan :
main procedure  (lapisan terdalam / root) > service procedure > utility procedure (lapisan terluar)

Layered system : (semakin kebawah semakin kompleks)

  • layer 5 = operator
    • Sistem operator / penjalannya
  • layer 4 = user program
    • Program yang dijalankan oleh user
  • layer 3 = input / output management
    • mengatur I/O device dan buffering aliran informasi I/O
  • layer 2 = operator process communication
    • Menangani komunikasi dgn operator console
  • layer 1 = memory and drum management
    • untuk alokasi space ke memory utama, dan drum untuk menyimpan proses yang tidak bisa diterima oleh memory utama.
  • layer 0 = Processor allocation and multiprogramming
    • berhubungan dengan alokasi procesor, switching procesor , (berkaitan dgn banyaknya proses yg berjalan)
Apa itu mikrokernel ??
memindahkan code ke dari layer bawahnya ke layer yang lebih tinggi.
melakukan fungsi dasar umum untuk semua komputer dan untuk integrasi dgn OS yang berbeda.

Client Server ???
Client : meminta request (membaca block file di server)
Server : menerima request, dan menjalankan perintah client , lalu mengirim reply kepada client.

Kelebihan Client Server ??
sistemnya terdistribusi / menyebar , mekanisme kernel minimalis , dan pengaturan (Policy) hanya terjadi pada server, tidak ada akses direct ke database.

Kernel ??
ada di main memory , dikenal sebagai nukleus , berisi fungsi yang sering dipakai.

~~~ Evolusi OS ~~~
  • Serial Processing
    • tidak ada OS
    • pemprosesan sesuai jadwal / berurutan
    • dijalankan dgn console
    • menyimpan semua yang sudah di compile
  • Batch System
    • pemprosesan berdasar batch / grup
    • dijalankan oleh software
JCL = Job Control Language : tipe spesial bahasa pemrograman, memberi instruksi ke monitor (compiler mana, data apa yg dipakai)

UniProgramming = intruksi dijalankan 1 per 1 sebelumlanjut ke instruksi berikutnya.
RUN A > Selesai > RUN B

MultiProgramming = instruksi dapat disela, jadi kalau 1 lagi nunggu request, intruksi kedua bisa dijalankan.
RUN A > Waiting I/O for A > RUN B

Time Sharing
  • memakai multiprogramming
  • waktu processor digunakan bersama
  • akses melalui terminal
Proses ??
  • dikenal dgn program yang sedang dijalankan.
  • Adalah unit aktivitas dengan karakter urutan single thread dari eksekusi, state saat ini , asosiasi resource.
  • Merupakan entitas yang diberikan dan dieksekusi di processor.
  • Instan : bagian rogram yang berjalan saat running
lainnya : 
  • address space = daftar lokasi memory dari min s/d max. (terjadi proses write)
  • Proses = dapat di suspend , tapi sebelum di suspend , informasi harus disimpan.
  • Process table = array / linkedlist dari proses yang sedang dieksekusi
  • Suspended process = memiliki address space , attribute/ informasi (pada process table)
  • Proses = saling berhubungan, tersinkronisasi , dan bekerjasama. (disebut IPC = Inter Process Communication)
  • Acknowledgement = menyampaikan nahwa message telah diterima / sampai.
  • Signal Alarm = signal yang dikirimkan S/O untuk menunggu proses
Memory Management
mengatur memory untuk multiprocess agar proses dapat berjalan secara efisien. (proses akan dipadatakan pada memory)
  • cache : memory kecil , cepat , mahal
  • main memory : lumayan cepat , harga normal
  • HDD : kapasitas besar , pelan, harga relatif murah
Yang dilakukan pada manajemen memory : 
  • Isolasi Proses
  • Alokasi otomatis
  • Dukungan modular programming
  • Proteksi dan access control
  • Penyimpanan jangka panjang
Virtual Memory
  • Mengijinkan Programmer mengakses memory
  • Menampung data yang melebihi memory
  • Pembagian memory dipecah2
Proses : 
  • akan berebut CPU
  • pemilihan proses oleh scheduler
Mekanisme Scheduler
  • adil : akses sama / fair
  • pembedaan kelas dari job
  • memaksimalkan throuhput, meminimalkan waktu respon, akomodasi sebanyak mungkin.
Istilah lainnya : 
  • CPU utilization = penggunaan waktu CPU
  • Thoughput = proses pengerjaan eksekusi per unit
  • Turn Around Time = total waktu eksekusi
  • Waiting Time = waktu menunggu antrian proses
  • Response Time = waktu respon (dihitung dari pengiriman request)
System Call
  • interface pemrograman
  • ditulis dgn C/ C++
  • diakses via application Program Interface (API) , selain ini akan di akses secara direct via system call
  • cth API : Win32 API (windows), POSIX API (UNIX , Linux , Mac OS), Java API (JVM)
  • user application akan berhubungan dengan system call, system call akan menghubugkannya dgn kernel.
Tipe sytem call
  • Kontrol Proses
  • Manajemen File , device
  • Maintenance Informasi / Data
  • Komunikasi
  • Proteksi
--------------------------------------------------------------------------------------------------------------------------
1601210682 - Anthony Kalyana
binus.ac.id
www.skyconnectiva.com


EmoticonEmoticon