30
Diktat Kuliah Sistem Operasi PRINSIP PERANGKAT LUNAK INPUT/OUTPUT Goals of I / O Software Device independence Uniform naming Error handling Synchronous vs. asynchronous transfer Buffering Sharable vs. dedicated devices Programmed I/O Mencetak string ke printer, dengan programmed I/O Interrupt driven I/O Mencetak string ke printer dengan interrupt-driven I/O - Code dieksekusi saat print system call dibuat. - Interrupt service procedure I/O Using DMA - Code dieksekusi saat print system call dibuat - Interrupt service procedure Teknik Informatika Unindra Versi 1.0 30

Modul_SO-2

Embed Size (px)

Citation preview

Page 1: Modul_SO-2

Diktat Kuliah Sistem Operasi

PRINSIP PERANGKAT LUNAK INPUT/OUTPUT

Goals of I / O Software • Device independence• Uniform naming• Error handling• Synchronous vs. asynchronous transfer• Buffering• Sharable vs. dedicated devices

Programmed I/O• Mencetak string ke printer, dengan programmed I/O

Interrupt driven I/O• Mencetak string ke printer dengan interrupt-driven I/O

- Code dieksekusi saat print system call dibuat.- Interrupt service procedure

I/O Using DMA- Code dieksekusi saat print system call dibuat- Interrupt service procedure

Teknik Informatika Unindra Versi 1.0

30

Page 2: Modul_SO-2

Diktat Kuliah Sistem Operasi

I/O SOFTWARE LAYER

I/O Software diatur dalam 4 layer. Setiap layer memiliki fungsi tertentu dan inter-face ke layer didekatnya.

Layers of I/O Software system

Interrupt Handlers

• Interrupt Handler biasanya Hidden.Driver melakukan block operasi I/O sampai interupsi selesai• Prosedur interupsi melakukan tugas ini, kemudian Unblock Driver yang

memblock operasi I/O tadi• Langkah langkah yang dilakukan dalam Software, setelah interupsi selesai :

Menyimpan isi Register yang belum disimpan oleh interrupt hardware Set up context untuk Prosedur pelayanan interupsi Set up stack untuk Prosedur pelayanan interupsi Ack interrupt controller, reenable interrupt Copy isi register dari tempat penyimpanannya Jalankan Service procedure Set up MMU Context Proses yang akan Run berikutnya Load isi register untuk Proses yang baru Start running proses yang baru

Device drivers Komunikasi drivers dengan device controllers, melalui bus Setiap device – driver, menangani satu jenis I/O device

Teknik Informatika Unindra Versi 1.0

31

Page 3: Modul_SO-2

Diktat Kuliah Sistem Operasi

Gambaran posisi logikal dari device drivers Device – Independent I / O Software

Fungsi dari Device – independent I/O software : Interface yang seragam untuk device drivers Buffering Error reporting Alokasi/dealokasi dedicated device Memberikan ukuran block untuk suatu device – independent

Interface yang digunakan antara device drivers dan sistem operasi : Interface driver tidak standard Interface driver standard

Beberapa jenis buffering data, baik untuk Block maupun Character devices : Unbuffered inputBuffering in user space Buffering in kernel followed by copying to user space Double buffering in the kernel

User space I / O software• Melakukan I/O call, format I/O, spooling• Kebanyakan I/O software ada dalam sistem operasi• Bagian kecil I/O software terdiri dari Liberaries yang terhubung bersama

dengan program user• System call, juga I/O system call, umumnya berupa prosedur liberary• Dan sebagian dari user – level I/O software berupa Spooling system• Spooling adalah cara penjadwalan dengan dedicated I/O device dalam

sistem multiprogramming

Teknik Informatika Unindra Versi 1.0

32

Page 4: Modul_SO-2

Diktat Kuliah Sistem Operasi

Gambaran hubungan antar layer dalam menangani interupsi I/O

CLOCK (TIMER)

Merupakan I/O devicesClock sangat diperlukan untuk mengatur operasi dalam sistem multiprogramming

• Clock HardwareKomponen Clock Hardware: Crystal Oscilator Counter Holding Register

• Clock SoftwareBeberapa pemakaian dari Clock driver bervariasi tergantung sistem operasi, tapi biasanya adalah berikut ini : Memelihara waktu harian Mencegah suatu proses run melebihi kwantum waktu CPU Menghitung pemakaian waktu CPU Menangani alarm system call yang dibuat oleh User Watchdog timer untuk sistem Profiling, monitoring, statistic

Soft TimerKebanyakan komputer memiliki Timer khusus, Programmable Clock, yang dapat di Set sehingga menyebabkan timer interrupt, saat diperlukan dalam program. Beberapa hal yang menye-babkan soft timer digunakan dalam kernel :

System Call TLB Page Fault I/O interrupt CPU idle

Teknik Informatika Unindra Versi 1.0

33

Page 5: Modul_SO-2

Diktat Kuliah Sistem Operasi

D I S K

Beberapa Jenis Disk : Magnetic Disk RAID CD-ROM CD-Recordable CD-Rewriteable DVD

1. Magnetic Disk

Parameter disk untuk floppy disk IBM PC dan hard disk Western Digital WD 18300

Teknik Informatika Unindra Versi 1.0

34

Page 6: Modul_SO-2

Diktat Kuliah Sistem Operasi

2. RAID (Redundant Array of Inexpensive Disk)

Beberapa jenis RAID :RAID level 0, level 1, level 2, level 3, level 4, dan level 5.

3. CD-ROM (Compact Disk Read Only Memory)

Struktur perekaman pada CD-ROM

Teknik Informatika Unindra Versi 1.0

35

Page 7: Modul_SO-2

Diktat Kuliah Sistem Operasi

Logical data Layout pada CD-ROM

CD-Recordables

CD-Rewritables

DVD (Digital VersatileDisk/Digital Video Disk)

Empat Jenis Format DVD : Single-sided, single-layer(4.7GB) Single-sided, dual-layer(8.5GB) Double-sided, single-layer(9.4GB) Double-sided, dual-layer(17GB)

Disk Formatting

Gambaran suatu sektor disk

Teknik Informatika Unindra Versi 1.0

36

Page 8: Modul_SO-2

Diktat Kuliah Sistem Operasi

Ilustrasi dari Cylinder skew

Kapasitas penyimpanan data di cylinder luar, sama dengan di cylinder yang lebih dalam. Data yang tersimpan di cylinder luar jarang sementara dicylinder dalam lebih rapat.

Interleaving

Pelompatan block untuk memberi waktu atau kesempatan pada controller mentransfer data ke memory.

No interleaving(a)Single interleaving(b)Double interleaving(c)

Teknik Informatika Unindra Versi 1.0

37

Page 9: Modul_SO-2

Diktat Kuliah Sistem Operasi

Disk Arm Scheduling Algorithms

Waktu yang diperlukan untuk read / write suatu block disk ditentukan oleh tiga faktor : Seek time, Rotation delay, dan Actual transfer time.Diantara ketiga faktor tersebut, yang paling dominan adalah Seek time.Error checking dilakukan oleh Controller

Disk Arm Scheduling Algorithms

• Shortest seek first (SSF)

• Elefator algorithms

• First come first served (FCFS)

Teknik Informatika Unindra Versi 1.0

38

Page 10: Modul_SO-2

Diktat Kuliah Sistem Operasi

TERMINAL

Beberapa Jenis terminal, yang biasa digunakan saat ini :

Standalone terminals dengan RS-232 interface untuk digunakan pada mainframe. Personal computer dispalys dengan graphical user interface Network terminals

1. RS-232 TERMINAL• RS-232 terminal berkomunikasi dengan komputer 1 bit setiap saat• Disebut Serial line – bits go out in series, 1 bit at a time• Windows menggunakan port COM1 dan COM2 • Komputer dan Terminal saling independent

Input SoftwareDua cara buffering data :Central buffer pool• Dedicated Buffer untuk tiap terminal

Teknik Informatika Unindra Versi 1.0

39

Page 11: Modul_SO-2

Diktat Kuliah Sistem Operasi

Karakter ditangani secara khusus

Output SoftwareThe ASCII escape sequence• Accepted by terminal driver on output• ESC in ASCII character • n,m, dan s merupakan parameter numerik (Optional)

2. GRAPHIC USER INTERFACE

Teknik Informatika Unindra Versi 1.0

40

Page 12: Modul_SO-2

Diktat Kuliah Sistem Operasi

Memory - Mapped displays• Driver menulis secara langsung ke Video RAM

Keterangan :a. Video RAM image for a simple monochrome display in character modeb. Corresponding screen, X meng-gambarkan attribute byte

Input Software• Keyboard driver mengirim bilangan• Driver mengubah menjadi karakter• Menggunakan tabel ASCII• Pengecualian, adaptasi diperlukan untuk bahasa selain inggris• Banyak OS menyediakan Loadable keymaps atau code pages

Output Software for Windows

Skeleton windows Main Program

Teknik Informatika Unindra Versi 1.0

41

Page 13: Modul_SO-2

Diktat Kuliah Sistem Operasi

Bit MapContoh gambar Segi empat memakai Rectangle, Setiap box menggambar-kan satu pixel

• Copy bitmaps menggunakan BitBlta. sebelumb. setelah copy

3. NETWORK TERMINAL

The X Windows System

Teknik Informatika Unindra Versi 1.0

42

Page 14: Modul_SO-2

Diktat Kuliah Sistem Operasi

Empat jenis messages :• Drawing command from the program to the Workstation• Replies by the workstation to prog. queries• Keyboard, mouse, and other event announcements• Error message

The SLIM Network Terminal

Arsitektur dari SLIM terminal system

Message yang digunakan dalam SLIM protocol dari Server ke Terminal

Message Maksud

SET Update a rectangle with new pixelsFILL Fill a rectangle with one pixel valueBITMAP Expand a bitmap to fill a rectangle

COPY Copy a rectangle from one part of the frame buffer to another

CSCS Convert a rectangle from televisioncolor(YUV) to RGB

Teknik Informatika Unindra Versi 1.0

43

Page 15: Modul_SO-2

Diktat Kuliah Sistem Operasi

SISTEM FILE

• FILES• DIRECTORIES• IMPLEMENTASI SISTEM FILE

1. FILES

• PENAMAAN FILE

EXTENSION DIFINISIfile.bak File Back upfile.c File Source Program dalam bahasa Cfile.gif File Image Graphical Interchange Formatfile.hlp File Helpfile.html File World Wide Web Hypertext MarkUp

Languagefile.jpg File Gambar Standar JPEGfile.mp3 File Music Format MPEG Layer3 Audio file.mpg File Movie Standar MPEGfile.o File Object (Output Compiler)file.pdf File Portable Document Formatfile.ps File PostSCriptfile.tex File Program Format TEXfile.txt File Textfile.zip File Archive Compress

• STRUKTUR FILE

a. Byte Sequenceb. Record Sequencec. Tree

Teknik Informatika Unindra Versi 1.0

44

Page 16: Modul_SO-2

Diktat Kuliah Sistem Operasi

• TIPE FILE

a. Executable Fileb. Archive File

• PENGAKSESAN FILE

a. Sequential Aksesb. Random Akses

• ATTRIBUTE FILE

Teknik Informatika Unindra Versi 1.0

45

Page 17: Modul_SO-2

Diktat Kuliah Sistem Operasi

Teknik Informatika Unindra Versi 1.0

46

Page 18: Modul_SO-2

Diktat Kuliah Sistem Operasi

• OPERASI PADA FILE

a. Create g. Appendb. Delete h. Seekc. Open i. Get Attributesd. Close j. Set Attributese. Read k. Renamef. Write

• DIRECTORIES

• Single-Level Sistem Directory

• Two-Level Sistem Directory

Teknik Informatika Unindra Versi 1.0

47

Page 19: Modul_SO-2

Diktat Kuliah Sistem Operasi

• Hierarchical Sistem Directory

• JALUR NAMA

A UNIX directory tree

Teknik Informatika Unindra Versi 1.0

48

Page 20: Modul_SO-2

Diktat Kuliah Sistem Operasi

• OPERASI PADA DIRECTORY

a. Create e. Linkb. Delete f. Unlinkc. Opendir g. Readdird. Closedir h. Rename

IMPLEMENTASI SISTEM FILE

• Layout Sistem File

Contiguous Allocation

Teknik Informatika Unindra Versi 1.0

49

Page 21: Modul_SO-2

Diktat Kuliah Sistem Operasi

Link List Allocation

• Link List Allocation Using A Table in Memory

Teknik Informatika Unindra Versi 1.0

50

Page 22: Modul_SO-2

Diktat Kuliah Sistem Operasi

I-nodes

• Implementasi Directory

• Shared Files

Teknik Informatika Unindra Versi 1.0

51

Page 23: Modul_SO-2

Diktat Kuliah Sistem Operasi

• Disk Space Management Block Size

Block size

• Reliability Sistem File• Backups• Incremental Dumps• Physical Dumps• Logical Dumps

• Consistency Sistem File• Missing Blocks

• File system states(a) consistent(b) missing block(c) duplicate block in free list(d) duplicate data block

• Performance Sistem File Caching Block Read Ahead Reducing Disk Arm Motion

Teknik Informatika Unindra Versi 1.0

52

Page 24: Modul_SO-2

Diktat Kuliah Sistem Operasi

• Log-Structured Sistem File

SISTEM KEAMANAN I. Lingkup securiti

threatintruderaccident

II. Dasar-dasar kriptografikunci rahasiakunci umumtandatangan digital

III. Otentifikasi user passwordphisikbiometrikcountermeasure

IV. Serangan dari dalamtrojan horselogin spoofingbom logikpintu jebakanbuffer overflow

V. Contoh Masalah Keamanan UNIX : Mkdir fooTENEX : password

VI. Serangan dari luar1. virus

• memori resident• boot sector• device driver• macro

2. internet worm3. mobile code

• sandboxing• interpretation• code signing

VII. Mekanisme proteksiProteksi domainAcces control listCapabilities list

VIII. Prinsip-prinsip perancangan 1. rancangan system harus umum2. secara default tidak ada akses3. periksa otoritas yang sekaarang4. berikan setiap proses dengan prioritas yang paling kecil5. mekanisme proteksi harus simple, seragam dan dibuat sampai ke lapisan yang

paling bawah

Teknik Informatika Unindra Versi 1.0

53

Page 25: Modul_SO-2

Diktat Kuliah Sistem Operasi

6. skema yang dipilih harus dapat diterima secara psikologis

LINUX I. Sejarah UNIX

• UNICS• PDP 11 UNIX• Portable UNIX• Berkeley UNIX• Standar UNIX• MINIX• LINUX

II. Overview UNIX• Tujuan• Interface

Teknik Informatika Unindra Versi 1.0

54

Page 26: Modul_SO-2

Diktat Kuliah Sistem Operasi

Loggin

III. Shell• Program Login• Prompt• Command• Argument• Redirect• Pipe• Shell Script • Background Process

contoh:cp src desthead -20 filels x.c y.c z.csort < in > outsort < in > temp ; head -30 < temp ; rm tempsort < in | head -30grep ter *.t | sort | head -20 | tail -5 > foowc -l < a > b &sort <x | head &

IV. Program utiliti 6 kategori

1. manipulasi file dan direktori2. filter3. tool untuk pengembangan program4. text prosesing5. sistem administrator6. dll

V. Proses pada UNIX • sistem multiprogramming• daemonds

Teknik Informatika Unindra Versi 1.0

55

Page 27: Modul_SO-2

Diktat Kuliah Sistem Operasi

• cron daemons• system fork• proses parent• PID(Proses identifier)• Pohon proses• signal• group proses• UID(User identification)• Superuser (root)

VI. System call untuk pengaturan proses

Teknik Informatika Unindra Versi 1.0

56

Page 28: Modul_SO-2

Diktat Kuliah Sistem Operasi

VI. Implementasi proses 1. Tabel proses

• parameter scheduling• peta memori• signal• dll

Struktur user• register-register mesin• keadaan sistem call• tabel file descriptor• akuntansi• stack kernel

Teknik Informatika Unindra Versi 1.0

57

Page 29: Modul_SO-2

Diktat Kuliah Sistem Operasi

SISTEM MEMORI DAN I/O PADA UNIX

I. Konsep dasar1. Address space

File yang dipetakan ke memori

II. Implementasi managemen memori1. Swapping

Teknik Informatika Unindra Versi 1.0

58

Page 30: Modul_SO-2

Diktat Kuliah Sistem Operasi

Tiga hal yang menyebabkan swapping ke disk

2. Paging• page daemon• core map

3. Algoritma pergantian page• two handed clock

Teknik Informatika Unindra Versi 1.0

59