P E N D A H U L U A N

Ukuran: px
Mulai penontonan dengan halaman:

Download "P E N D A H U L U A N"

Transkripsi

1 P E N D A H U L U A N Tanpa perangkat lunak (software) sebuah komputer sebenarnya sekumpulan besi yang tidak berguna. Dengan software sebuah komputer dapat digunakan untuk menyimpan, mengolah data (memproses) dan mendapatkan kembali informasi yang telah disimpan, menemukan kesalahan dalam program, memainkan games dan menggunakan banyak aktivitas lainnya yang bernilai. Pada umumnya program komputer dapat dibagi menjadi dua kategori, yaitu : a. Program sistem (system program). Yang berfungsi untuk mengatur operasi dari komputer itu sendiri. b. Program aplikasi (application program). Yang berfungsi untuk membantu menyelesaikan masalah untuk pemakainya. 1. Blok Diagram Komputer Masukan Control Unit Keluaran Saluran Penghubung Processor Memory Memori Dukung Clock Gambar 1. Diagram Blok Komputer Dasar yang sangat penting dari semua program sistem adalah operating system yang mengontrol semua sumber daya komputer dan menyediakan landasan sehingga sebuah program aplikasi dapat ditulis atau dijalankan. Banyak cara / metode yang menyediakan pelindung (sheild) atau sesuatu yang dapat menyembunyikan programmer dari kekomplekan perangkat keras. Salah satunya dengan menentukan / membuat sebuah lapis (layer) perangkat lunak yang mengendalikan komponen pokok perangkat keras, mengatur semua bagian sistem dan menyediakan pemakai dengan antarmuak (interface) / virtual machine yang memudahkan memahami dan memprogram. Lapisan dari perangkat lunak tersebut adalah operating system. User Banking Word Program Game System Processing Aplikasi Command Compiler Utility Program Interpreter Sistem Operasi (Operating System) Sistem Bahasa Mesin (Machine Language) Pemrograman Mikro (Microprogramming) Perangkat Fisik (Physical Devices) Hardware Gambar 2. Komponen Sistem Komputer

2 Keterangan : - Perangkat keras / hardware membentuk dua atau lebih lapis. Lapis yang paling bawah (physical devices) berisi perangkat fisik, yang terdiri dari integrasi circuit chips, kabel (wires), power supplies, cathode ray tubes (CRT) dan perangkat lainnya yang dibuat dan sistem kerjanya merupakan bagian insinyur elektronik. - Lapis berikutnya, software primitive langsung mengontrol peralatan tersebut (physical devices) dan menyediakan interface (a cleaner interface) untuk layer diatasnya dikenal dengan microprogram yang ditempatkan dalam read-only memory (ROM). Sebenarnya microprogram berfungsi sebagai penerjemah, mengambil (fetching) intruksi bahasa mesin, seperti ADD, MOVE dan JUMP serta melaksanakan proses-proses kecil yang saling terkait. Contohnya apabila melaksanakan instruksi ADD, microprogram harus menentukan dimana angka-angka yang ditambahkan ditempatkan (disimpan sementara), mengambilnya, menambahkannya dan menyimpan hasilnya disuatu tempat tertentu. - Sekumpulan instruksi yang diterjemahkan microprogram disebut machine language (bahasa mesin), yang memilikim 50 sampai 300 instruksi yang kenyataannya bukan bagian dari perangkat mesin semuanya, tetapi pembuat komputer selalu menjelaskannya dalam manualnya (sejenis buku panduan perangkat kerasnya), sehingga banyak orang mengira sebagai mesin sesungguhnya. Dalam lapis ini, perangkat masukan/keluaran mengontrol pemuatan nilai ke dalam register khusus. - Fungsi utama dari Operating System adalah menyembunyikan semua kekomplekan / kerumitan dan memberikan programmer sebuah kenyamanan, kemudahan, kepraktisan dari instruksi yang digunakan untuk bekerja dengannya, contohnya, READ BLOCK FROM FILE adalah konsep / gagasan penyederhanaan daripada harus berpikir tentang bagaimana memindahkan head disk secara rinci, menunggu untuk menjadi tenang (posisi istirahat). - Diatas lapis Operating System (OS) adalah untuk menempatkan software system. Dari sini ditemukan penerjemah perintah (command interpreter/shield), compiler, editor dan application program independent. Adalah penting untuk menyadari/merealisasikan bahwa program-program ini dengan pasti bukan bagian dari SO, walaupun secara khas disediakan oleh pembuat komputer. OS adalah bagian dari software yang dijalankan dalam kernel mode atau supervisor mode. SO memproteksi dari pemakai yang menganggu pemakain hardware - Compiler dan editors dijalankan dalam user mode. Jika seorang tidak suka sebuah compiler khusus, pemakai bebas menulis miliknya jika dapat memilih dan tentunya tidak bebas untuk menangani interrupt disk yang merupakan bagian dari OS dan normalnya akan memproteksi hardware terhadap usaha pemakai untuk memodifikasinya. - Diatas layer system program adalah application program. Program ini ditulis oleh user untuk memecahkan masalah khusus, seperti proses pengolahan data, perhitungan rekayasa atau memainkan sebuah permainan. 2. Sistem Operasi Komputer Pengertian Sistem Operasi Seperangkat program yang memantau dan mengatur pemakaian sumber daya komputer (processor, main memory, file, I/O device, dll). Menjembatani / penghubung antara user (program user) dengan perangkat keras komputer. Fungsi Sistem Operasi Sebagai Resource Manager /pengelola seluruh sumber daya system komputer Mengatur dan mengefisienkan penggunaan selluruh sumber daya komputer (computer resources) Tugas utamanya : memantau penggunaan semua resources; menerapkan aturan (policy); mengalokasikan resources yang diminta; mengambil kembali (dealokasi) resource Sumber daya pada komputer terdiri dari : - Sumber daya fisik, misalnya : Keyboard, bar-code reader, mouse, joystick, light-pen, touch-screen, pointing devices, floppy disk drive, harddisk, tape drive, optical disk, CD ROM drive, CRT, LCD, printer, modem, ethernet card, PCMCIA, RAM, cache memory, register, kamera, sound card, radio, digitizer, scanner, plotter, dan sebagainya. - Sumber daya abstrak, terdiri dari :Data dan Program

3 Sebagai Extended Machine (Virtual Machine), penyedia layanan Menyembunyikan kompleksitas / kerumitan pemrograman hardware dari programmer atau user. Menyajikan fasilitas yang lebih mudah dan sederhana untuk menggunakan hardware. Konsep Sistem Operasi Proses Proses adalah program yang sedang di-eksekusi. Proses terdiri dari : Executable program; program data dan stack; program counter; dll Pada sistem timesharing secara periodik sistem operasi menggilir eksekusi proses-proses yang ada, biasanya berdasarkan porsi waktu CPU. Ketika suatu proses dihentikan untuk sementara, maka proses tersebut harus dimulai kembali pada state yang sama dengan state ketika ia dihentikan. Semua informasi yang berkaitan dengan proses tersebut harus disimpan. Umumnya informasi tersebut disimpan pada tabel proses (array atau linked list), satu tabel untuk setiap proses. Tabel proses (process table) adalah tabel yang berisi informasi tentang semua proses yang dijalankan. Suatu proses terdiri dari : address space (core image) dan atribut / informasi pada tabel proses System call utama dalam pengaturan proses adalah yang berkaitan dengan pembuatan dan pemberhentian suatu proses. Contoh : Command interpreter atau shell akan membaca command yang diketikkan user pada terminal, dan membuat proses yang menjalankan command tersebut. Bila telah selesai, maka proses akan menjalankan system call untuk menghentikan dirinya. Suatu proses dapat men-create proses lainnya yang disebut sebagai child process. Sistem operasi dapat berkomunikasi dengan suatu proses dengan menggunakan signal. Signal juga dapat digunakan untuk komunikasi antar proses. Pada sistem multiprogramming, setiap proses memiliki user identification (uid) yang berasal dari uid pemilik proses. Files Terdiri dari : Pathname; Working directory; rwx (read, write, execute) bits protection code; File descriptor / handle; Special file (block & character); Standard input; Standard output; Standard error; Pipe. SO mendukung konsep direktori. Root Directory Directory File Gambar 3. Model Struktur File System Calls / API (Aplication Programming Interface) Suatu set tata cara pemanggilan di program aplikasi untuk memperoleh layanan system operasi. Berupa extended instructions / perluasan instruksi yang merupakan interface / layanan langsung antara program-program dengan sistem operasi. System calls meng-create, men-delete dan menggunakan objek-objek yang diatur oleh system operasi, antara lain : proses-proses dan file-file. Library procedure meletakkan parameter-parameter system call pada tempat tertentu dan memberikan instruksi trap untuk memulai sistem operasi

4 Trap instruction : ketika diterima oleh sistem operasi, sistem memeriksa apakah parameter tersebut valid atau tidak Return form trap : sistem operasi mengembalikan kontrol ke library procedure Contoh mekanisme system calls untuk READ pada program C. count = read (file, buffer, nbytes) Shell Shell pada Unix merupakan command interpreter yang walaupun bukan merupakan bagian dari sistem operasi, menggunakan banyak feature sistem operasi Prompt : standar input, menandakan bahwa shell siap menerima command Contoh : date date > file sort < file1 > file2 cat file1 file2 file3 sort > /dev/lp Background job : proses yang berjalan sementara user tetap bisa terus bekerja Struktur Sistem Operasi Sistem Monolitik Konsep : Sistem operasi sebagai kumpulan prosedur dimana prosedur dapat saling dipanggil oleh prosedur lain di sistem bila diperlukan. Kernel berisi semua layanan yang disediakan sistem operasi untuk pemakai. Contoh : Sistem Operasi Unix menggunakan konsep kernel loadable modules, yaitu : Bagian-bagian kernel terpenting berada dimemori utama secara tetap. Bagian-bagian esensi lain berupa modul yang dapat ditambahkan ke kernel saat diperlukan dan dicabut begitu tidak digunakan lagi diwaktu jalan (run-time). The big mess Tidak berstruktur Kernel call / supervisor call User mode Kernel mode / supervisor mode User Program User 2 Program Runs in User Program User 1 Mode Kernell Call s servis service 2 procedure Dispatch Table Operating System runs in Kernel Mode Gambar 4. Struktur Sistem Monolithic Sistem Berlapis (Layered System) Konsep : Sistem operasi dibentuk secara hirarki berdasarkan lapisan-lapisan, dimana lapisan-lapisan memberi layanan lapisan lebih atas. Dimaksudkan untuk mengurangi kompleksitas rancangan dan implementasi system operasi. Tiap lapisan mempunyai fungsional dan antarmuka I/O antara dua lapisan bersebelahan. Contoh : Sistem Operasi THE (Technique Hogesschool Endiche), Djikstra, Sistem Operasi MULTICS (menggunakan concentric rings).

5 Tabel 1. Lapisan-lapisan pada Sistem Operasi THE Layer Function Fungsi 5 The Operator Untuk operator 4 User Programs Untuk aplikasi program pemakai 3 I/O Management Untuk menyederhanakan akses I/O pada level atas 2 Operator-Process Communication Untuk mengatur komunikasi antar proses 1 Memory & Drum Management Untuk mengatur alokasi ruang memori / 0 Processor Allocation & Multiprogramming drum magnetic Untuk mengatur aloksi pemroses dan switching multiprogramming dan pengaturan prosesor Keterangan : - Lapisan n memberi layanan untuk lapisan n+1. Proses-proses di lapisan n dapat meminta layanan lapisan n-1 untuk memberikan layanan bagi lapisan n+1. Tetapi lapisan n tidak dapat meminta layanan n+1. Kelanjutan sistem berlapis adalah sistem berstruktur cincin seperti sistem MULTICS yang terdiri 64 lapisan cincin dimana satu lapisan mempunyai fungsi berbeda. Lapisan n-1 mempunyai kewenangan lebih dibanding lapisan n. Untuk meminta layanan lapisan n-1, lapisan n melakukan trap. Kemudian, lapisan n-1 mengambil kendali sepenuhnya untuk melayani lapisan n. Sistem dengan Mesin Maya (Virtual Machines) Konsep : Awalnya struktur ini membuat seolah-olah user mempunyai seluruh komputer dengan simulasi atas pemroses yang digunakan. Sistem operasi melakukan simulasi mesin nyata. Mesin hasil simulasi digunakan user, mesin maya merupakan tiruan 100% atas mesin nyata. Semua user diberi ilusi mempunyai satu mesin yang sama-sama canggih. Contoh : Sistem operasi MS-Windows NT dapat menjalankan aplikasi MS-Dos, OS/2 mode teks, dan Win 16. Pengembang Linux membuat DOSEMU agar aplikasi MS-Dos dapat dijalankan di Linux, WINE agar aplikasi MS-Windows dapat dijalankan di Linux, ibcs agar aplikasi SCO-Unix dapat dijalankan di Linux. CP/CMS VM/370 Virtual Machine Monitor CMS (Conversational Monitor System) Virtual 370s System Call I/O Intruction CMS CMS CMS Trap VM Bare Hardware Gambar 5. Sistem Virtual Mesin Trap Sistem dengan Client-Server Konsep : Server adalah proses yang menyediakan layanan, dan Client adalah proses yang memerlukan / meminta layanan. Proses client yang memerlukan layanan mengirim pesan ke server dan menanti pesan jawaban. Proses server setelah melakukan tugas yang diminta, mengirim hasil dalam bentuk pesan jawaban ke proses client. Server hanya menanggapi permintaan client dan tidak memulai percakapan dengan client.

6 Client Client Process Term. File Mem User Process Process Server Server Server Server Mode Kernel Mode Kernel Client obtains service by sending messages to server processes Gambar 6. Model Client Server Model Client Server pada distributed system Client Client Client Client Kernel Kernel Kernel Kernel Message from client to server NETWORK Gambar 7. Model Client Server pada Distributed System Sistem berorientasi objek Konsep : Layanan diimplementasikan sebagai objek. Model ini terstruktur dan memisahkan antara layanan yang disediakan dan implementasinya. Contoh : Sistem operasi X-kernel Sistem operasi MS-Windows NT telah mengadopsi beberapa teknologi berorientasi objek, tapi belum secara keseluruhan. Layanan Sistem Operasi Komputer Layanan Otomatis : Alokasi sumberdaya; Catatan pemakaian; Proteksi; Penanganan kekeliruan; Pindah baris; Gulung jendela pada monitor Layanan permintaan pemakaian : Loading; Mengolah/run; Menyimpan/save; Menghapus/delete Jenis Sistem Operasi Aspek kegiatan Pemakai tunggal (single user) Pemakai jamak (multiuser) Berdasarkan jenis-jenisnya Linux MS-Dos MS Windows-NT MS Windows Dll 3. Sejarah Perkembangan Sistem Operasi Generasi Sistem Operasi Generasi ke-1 ( ) : Vacuum Tubes dan Plugboards Analytical Engine (Charles Babbage) Calculating Engine menggunakan vacuum tubes (Howard Aitken, John von Neumann, J.P Eckert, Konrad Zuse) Beluam ada bahasa pemrograman Belum ada sistem operasi, system komputer diberi instruksi yang harus dikerjakan langsung. Operasi menggunakan plugboard Pengenalan punched card

7 Generasi Ke-2 ( ) : Transistors dan Batch System Tetap belum dilengkapi system operasi. Tetapi beberapa fungsi dasar SO sudah ada. Pengenalan transistor untuk komputer Pemisahan fungsi personil :Designer, Operator, Programmer dan Maintenance personel Pengenalan job (program atau seperangkat program) Penggunaan bahasa FORTRAN, Assembeler Penerapan Batch System Pengoperasian Off-Line Penggunaan mesin-mesin besar untuk kalkulasi sains dan engineering Typical operating system : FMS (Fortran Monitor System) dan IBSYS (sistem operasi untuk IBM 7094) Generasi Ke-3 ( ) : IC dan Multiprogramming IBM mengenalkan IBM 360 dengan sistem operasi OS/360 Menggunakan Integrated Circuit (IC) Dapat menangani komputasi sains dan komersial Mengadopsi konsep one family Sistem operasi berukuran besar dan kompleks Mengenalkan multiuser, komputer memiliki resource yang dapat digunakan oleh banyak orang sekaligus Mengenalkan multiprogramming, komputer melayani banyak proses sekaligus pada waktu yang bersamaan dengan menerapkan partisi memori menjadi beberapa bagian memori dengan satu bagian memori untuk satu job berbeda. Saat satu job menunggu operasi I/O selesai, job lain dapat menggunakan proses. Partisi Memori Job 3 Job 2 Job 1 Sistem operasi Mengenalkan Time Sharing (berbagi waktu), tiap pemakai mempunyai satu terminal online dengan pemroses hanya memberi layana pada pemakai yang aktif secara bergantian secara cepat. Pemakai akan merasa dilayani terus menerus. Padahal sebenarnya secara bergantian. Mengenalkan SPOOLING (Simultaneous Peripheral Operation On Line), membuat peripheral seolah-olah dapat digunakan bersamaan, dapat diaksis secara simultan yaitu dengan cara menyediakan beberapa partisi memori. Saat terdapat permintaan layanan peripheral, langsung diterima dan data disimpan lebih dulu di memori yang disediakan berupa antrian kemudian dijadwalkan agar secara nyata dilayani peripheral. Sistem time sharing pertama, CTSS, dikembangkan di MIT Usaha pengembangan computer utility mesin yang dapat menunjang ratusan time sharing user Pengembangan komputer MINI (DEC-PDP-1 s/d PDP-11) Ken Thompson mengembangkan versi satu pemakai (single user) dari MULTICS (MULTIplex and Computing Services) UNIX (Uniplexed Information and Computing Services) Generasi Ke-4 ( ) : LSI, VLSI, dan Personal Computer (PC) Pengembangan LSI dan VLSI melahirkan PC dan Workstation Perangkat lunaknya user friendly Dua sistem operasi yang dominan : MS-DOS (pada IBM-PC dengan CPU Intel 8088, 80286, 80386, 80486) UNIX (pada Non-Intel computer dan workstation) RISC Chips Network Operating System Distributed Operating System

8 Generasi Ke-5 (1990-sekarang) : VLSI, ULSI an teknologi Nano Second, Internet, Multimedia Pengembangan VLSI an ULSI melahirkan PC yang berbasis Pentium untuk server maupun workstation Pengembangan sistem operasi windows Pengembangan internet dan multimedia Pengembangan aplikasi yang berbasis Web atau WWW dll. The End But To be continue

9 CONTOH KASUS : Linux MS Dos Sistem operasi MS Dos berisi : Ibmbio.com, yaitu disk dan character I/O System IO.sys, yaitu disk dan file manager MSDOS.sys, yaitu command processor, shellprimitif Sistem operasi kompatibel dengan CP/M, dengan peningkatan alokasi disk, lebih cepat dan mendukung shell script primitif disebut batch files. MS Windows Microsoft Windows 95 merupakan sistem operasi Windows yang terintegrasi dan lengkap mulai dengan fungsi-fungsi dasar yang sekarang ada pada MS Windows, Windows dan Windows for Workgroup. Agar PC lebih mudah dipakai, diberikan shell baru. Plug and Play (PnP) yang terintegrasi kedalam sistem operasi, termasuk wizard untuk memandu para pemakai melalui sistem operasi dan memberikan interface pemakai yang konsisten untuk seluruh komponen sistem operasi dan spasi nama. Kecepatan dan daya tambahan dari sistem operasi 32-bit modern dengan preemptive multitasking, thread dan plaltform untuk generasi baru aplikasi 32-bit. Windows 95 adalah sistem operasi lengkap yang tidak dibatasi oleh MS Dos dan punya semua manfaat dari sistem operasi grafis yang lengkap yang ada pada dirinya. Dalam hal konektivitas baik dalam LAN, WAN maupun nobile dial-up dibuat konektivitas ke sumber daya yang bersifat remote semudah hubungan ke sumber daya lokal. Dan dimasukkan akses ke informasi elektronik untuk surat elektronik dan layanan on-line. Dan juga Windows 95 dibuat kompatibel dengan software dan hardware yang dimiliki pemakai pada saat ini. Walaupun Microsoft mengeluarkan sistem operasi baru dengan format grafis dan ber-arsitektur 32 bit, bukan berarti sistem operasi ini mutlak dipakai. Ini hanya sebagai sistem operasi alternatif yang sudah ada, seperti UNIX, IBM OS2/Warp, Oracle, IBM AS/400, dan lain-lain.

10 PERTANYAAN : 1. Sebutkan dua fungsi utama sistem operasi? 2. Apa yang dimaksud dengan multiprogramming? Berikan dua alasan diadakannya multiprogramming! 3. Apa yang dimaksud dengan spooling? Apakah anda menganggap personal komputer harus memiliki spooling sebagai standar dasar di masa yang akan datang? 4. Pada awal perkembangan komputer, setiap byte data yang dibaca atau yang ditulis ditangani oleh CPU (tidak ada DMA-Direct Memory Access). Apa implikasinya struktur seperti ini terhadap konsep multiprogramming. 5. Mengapa timesharing tidak tersebar luas pada generasi ke-2 komputer? 6. Instruksi-instruksi manakah yang diperbolehkan dalam Mode Kernel : a. Disable all interupts. b. Read the time-of-day clock. c. Set the time-of-day clock. d. Change the memory map. 7. Sebutkan beberapa perbedaan sistem operasi pada personal komputer dengan sistem operasi pada mainframe! 8. Bagaimana secara umum sistem operasi memberitahukan kepada direktori kerja apakah path name untuk sebuah file adalah absolute atau relative? 9. Mengapa shell bukan bagian dari sistem operasi? 10. Berikan sebuah contoh bagaimana mekanisme dan kebijaksanaan bisa terpisah dengan baik dari pejadwalan. Buat sebuah mekanisme yang bisa mengijinkan sebuah parent process untuk mengontrol kebijaksanaan penjadwalan children. 11. Model Client-Server tekenal didalam distributed systems. Dapatkah juga digunakan dalam sistem komputer tunggal? 12. Mengapa proses tabel membutuhkan sistem timesharing? Apakah hal ini juga dibutuhkan dalam system personal computer yang pada suatu saat hanya terdapat satu proses yang sedang bekerja dan mengambil alih mesin sampai proses tersebut selesai? 13. Apa perbedaan mendasar diantara blok special file dan character special file.

11 MANAJEMEN PROSES Proses : Adalah program yang sedang di jalankan atau software yang sedang dilaksanakan termasuk sistem operasi yang disusun menjadi sejumlah proses sequential. Konsep dasar : 1. Multiprogramming Melakukan proses satu persatu secara bergantian dalam waktu yang sangat cepat / bersamaan (hardware level). Setiap proses mempunyai satu virtual CPU. 2. Pseudoparallelism Melakukan lebih dari satu pekerjaan dalam waktu yang bersamaan / pseudoparallelism (user level). Model Proses : 1. Sequential Process / bergantian 2. Multiprogramming 3. CPU Switching peralihan prosedur dalam mengolah 1 proses ke proses lainnya. Secara konsep setiap proses mempunyai 1 virtual CPU, tetapi pada kenyataannya adalah multiprogramming. Maka akan lebih mudah menganggap kumpulan proses yang berjalan secara parallel. Satu Empat Model program counter program counter Proses A B C D A B C D (a) (b) (c) D C B A Proses Waktu Keterangan : a. multiprogramming untuk 4 program di memori b. model konseptual untuk 4 proses independent, sequential c. hanya 1 program yang aktif dalam 1 waktu = pseudoparalel Hirarki Proses Pemanggilan proses oleh proses lain disebut parallel. Sistem operasi menyediakan apa yang dibutuhkan oleh proses. Umumnya proses diciptakan dan dihilangkan selama operasi berlangsung. 1. Create & Destroy Proses Sistem operasi yang mendukung konsep proses, harus menyediakan suatu cara untuk membuat (create) proses dan menghilangkan (destroy) proses. 2. Fork System Call Mekanisme untuk membuat (create) proses yang identik dengan proses yang memanggilnya. Contoh : Parent children children children children

12 Pada UNIX, parent dan child process running secara parallel. Pada DOS, parent dan child process running secara bergantian (sequential). Contohnya : MSDOS sebagai parent dan program aplikasi sebagai child. Process scheduler : untuk pengaturan eksekusi proses 3 Status proses / bagian keadaan proses : 1. Running / kerja, benar-benar menggunakan CPU pada saat itu (sedang mengeksekusi instruksi proses itu). 2. Blocked / terhenti, tidak dapat berjalan sampai kegiatan eksternal terlaksana (proses menunggu kejadian untuk melengkapi tugasnya) Bisa berupa proses menunggu : Selesainya operasi perangkat I/O; Tersedianya memori; Tibanya pesan jawaban 3. Ready / siap, proses siap dikerjakan tetapi menunggu giliran dengan proses lain yang sedang dikerjakan (bisa berjalan, sementara berhenti untuk memungkinkan proses lain dikerjakan) Transisi Status 1 Running / kerja Proses di blok untuk melayani input karena sumber daya yang diminta belum tersedia / meminta layanan I/O sehingga menunggu kejadian muncul. 2. Penjadwalan mengambil proses lain. 3. Penjadwalan mengambil proses ini (baru). 4. Input telah tersedia. Implementasi Proses : Untuk mengimplementasikan model proses, sistem operasi menggunakan suatu tabel / array yang disebut tabel proses dengan 1 entry per-proses. Setiap entry berisi tentang : status proses, program counter, stack pointer, alokasi memori, status file, informasi schedulling / penjadwalan informasi, dll dari status kerja ke status siap. Contoh Tabel Proses : Proses management Memory management File management Register Pointer to text segment UMASK mask Program counter Pointer to data segment Root directoy Program status word Pointer to bss segment Working directory Stack pointer Exit status File descriptiors Process state Signal status Effective uid Time when process started Process id Effective gid CPU time used Parent process System call parameters Children s CPU time Process group Various flag bits Time of next alarm Real uid Message queue pointers Effective uid Pending signal bits Real gid Process id Various flag bits Blocked / terhenti 4 Effective gid Bit maps for signals Various flag bits Ready / siap

13 Interupsi : Kerja prosesor pada suatu proses terhenti oleh pensaklaran konteks. Pensaklaran konteks : perubahan kegiatan prosesor dari proses ke proses yang terjadi diantara proses sistem / proses aplikasi Konteks : kegiatan prosesor terhadap sesuatu hal, berasal dari sistem operasi, sistem bahasa dan sistem utilitas. Blok kendali proses : suatu bagian memori untuk mencatat keadaan proses, yang terbagi atas wilayah dimana setiap wilayah untuk mencatat informasi yang berbeda. 2 cara interupsi pada processor : 1. Interupsi langsung Berasal dari luar prosesor (peripheral / alat mengirim sinyal kepada prosesor untuk meminta pelayanan) 2. Interupsi Tanya / Polling Berasal dari prosesor (prosesor secara bergiliran mengecek apakah ada peripheral yang memerlukan pelayanan atau tidak) Interupsi dapat di-enable dan disable tergantung pada levelnya. Pembangkit interupsi dapat berasal dari : o Program, di dalam program telah dirancang pada bagian tertentu akan terjadi pensaklaran konteks, yang menimbulkan interupsi, contohnya pada saat penggunaan alat / prosesor secara bergantian. o Prosesor, prosesor sendiri dapat membangkitkan interupsi, yang biasa mengolah logika dan aritmatika. Jika melampoi ukuran tampung register di dalam prosesor, maka terjadi kekeliruan yang akan menginterupsi kerjanya sendiri dan menyerahkan kendali prosesor pada sistem operasi. Misalnya pembagian dengan bilangan nol. o Satuan kendali, tugas untuk melaksanakan interupsi terletak pada satuan kendali, sehingga satuan kendali dapat membangkitkan interupsi. Misalnya kekeliruan instruksi o Kunci waktu / clock, menggunakan interupsi berkala. Misalnya pada program looping yang tak terhingga, diinterupsi pada setiap selang waktu 60 detik. o Peripheral I/O, I/O jika akan bekerja memberitahukan pada prosesor dengan interupsi prosesor dan juga ketika pekerjaan selesai atau pada saat terjadi kekeliruan paritas. o Memori, karena terjadi kekeliruan, misalnya ketika prosesor ingin mencapai alamat memori yang terletak di luar bentangan alamat memori yang ada. o Sumber daya lain, misal dibangkitkan oleh operator sistem komputer yang mengerti cara interupsi. Interupsi vector : Berisi alamat prosedur service interupsi Penerimaan interupsi dan interupsi berganda : ada kalanya interupsi ditolak oleh prosesor atau interupsi yang datang tidak hanya satu sehingga diperlukan prioritas. Tindak lanjut interupsi : 1. Penata interupsi / interrupt handler jika terjadi interupsi, maka kendali prosesor diserahkan ke bagian penata interupsi pada sistem operasi, maka penata interupsi inilah yang melaksanakan interupsi. a. Instruksi yang sedang diolah oleh prosesor dibiarkan sampai selesai program. b. Penata interupsi merekam semua informasi proses ke dalam blok kendali proses. c. Penata interupsi mengidentifikasi jenis dan asal interupsi. d. Penata interupsi mengambil tindakan sesuai dengan yang dimaksud interupsi. e. Penata interupsi mempersiapkan segala sesuatu untuk pelanjutan proses yang diinterupsi. 2. Penata keliru / error handler yaitu interupsi karena kekeliruan pada pengolahan proses dan bagian pada sistem operasi yang menata kegiatan akibat kekeliruan adalah penata keliru. a. Pemulihan, komputer telah dilengkapi dengan sandi penemuan dan pemulihan kekeliruan, contohnya telah dilengkapi dengan sandi Hamming sehingga ketika menemukan kekeliruan sandi akan mengoreksi kekeliruan itu, proses pulih ke bentuk semula sebelum terjadi kekeliruan.

14 b. Pengulangan, mengatur agar proses yang membangkitkan interupsi keliru dikerjakan ulang, jika kekeliruan dapat diatasi maka proses akan berlangsung seperti biasa, jika tidak teratasi maka interupsi akan menempuh tindak lanjut keluar dari proses. c. Keluar dari proses, penata keliru menyiapkan tampilan berita keliru dari monitor, setelah itu prosesor keluar dari proses, ini adalah tindakan terakhir jika tidak dapat menolong proses yang keliru tersebut. Tindak lanjut interupsi menurut Peterson & Silberschatz : Interupsi Rekam informasi proses Maksud interupsi? Rampung Keliru Bukan I/O Mulai I/O Rampung I/O Kerja / Perintah Berikutnya Curah Laksanakan Mulai Permintaan Interupsi Tanda Rampung Kembali ke proses sebelum interupsi Keterangan : 1. Rampung Program selesai dilaksanakan oleh prosesor sehingga penyerahan kendali proses ke pekerjaan baru / perintah baru karena proses yang dikerjakan oleh prosesor telah selesai. 2. Keliru Jika menemukan kekeliruan akan ditampilkan, kemudian kendali prosesor diserahkan pada perintah berikutnya. 3. Permintaan bukan dari alat I/O Setelah interupsi selesai dilayani, kendali prosesor dikembalikan pada proses semula, misalnya interupsi berkala. 4. Permintaan dari alat I/O Setelah interupsi selesai dilayani, kendali prosesor dikembalikan pada proses sebelumnya, tetapi ada kalanya prosesor ikut campur dalam kerja alat I/O sehingga pengembalian kendali proses semula, tidak berlangsung segera / tunggu. 5. Rampung dari alat I/O Setelah interupsi selesai dilayani dan tanda rampung dicatat, kendali prosesor dikembalikan ke proses semula. Biasanya untuk alat I/O yang tidak diikut campuri oleh prosesor. Catt: 1 & 2 tidak mengembalikan prosesor ke proses yang terinterupsi, sedangkan 3,4,5 mengembalikan prosesor ke proses yang terinterupsi. Langkah-langkah yang dilakukan sistem operasi pada saat terjadi interupsi : 1. hardware memasukkan program counter, dl.l. memasukkan ke dalam stack pencacah program

15 2. Hardware memuatkan (load) program counter baru dari vector interrupsi 3. Prosedur bahasa rakitan menyimpan isi register 4. Prosedur bahasa rakitan men-set stack yang baru 5. Prosedur C menandai proses servis siap (ready) 6. Scheduler / penjadwalan menentukan proses mana yang akan jalan berikutnya 7. Prosedur C kembali ke modus bahasa rakitan 8. Prosedur bahasa rakitan memulai proses yang sedang dilaksanakan. Komunikasi antar proses (Inter Process Communinication / IPC) : Proses Komunikasi Proses Beberapa proses biasanya berkomunikasi dengan proses lainnya. Contohnya pada shell pipe line : output dari proses pertama harus diberikan kepada proses ke dua dan seterusnya. Pada beberapa sistem operasi, proses-proses yang bekerja bersama sering sharing (berbagi) media penyimpanan, dimana suatu proses dapat membaca dan menulis pada shared storage (main memory atau files) Masalah masalah pada IPC : Race Condition : Suatu kondisi dimana dua atau lebih proses mengakses shared memory / data pada saat yang bersamaan dan hasil akhirnya tidak sesuai dengan yang dikehendaki Contoh rase condition : Print spooler Contoh : berupa kumpulan data-data yang akan di cetak. Spooler directory Mengerjakan proses lain 4 Abc Out = 4 Proses A 5 Program c 6 Program n 7 In = 7 8 Proses B Mengerjakan proses lain > Proses A cek slot input yang kosong (7) untuk mencetak suatu data dan stop > Interupsi > Proses B meletakkan data yang akan di print pada slot kosong tersebut (7) dan stop (slot kosong berikutnya adalah 7+1=8) > : prosesor mengerjakan proses lain > Proses A dilanjutkan meletakkan data yang akan di print di slot (7), sehingga meng-overwrite data proses B yang diletakkan di slot (7) > Maka proses B tidak akan dilaksanakan, dan tidak akan terdeteksi terjadi kesalahan. Untuk menghindari race condition maka harus diatur agar 2 proses yang mempunyai critical section yang sama tidak memasuki critical section pada saat yang bersamaan. Critical Section / seksi kritis : Bagian dari program yang mengakses shared memory, yang dapat menyebabkan terjadinya race condition.

16 4 kondisi untuk mencegah race condition : a. Tidak ada 2 proses yang memasuki critical sectionnya secara bersamaan / simultan b. Tidak ada asumsi yang dibuat yang berhubungan dengan kecepatan dan jumlah CPU c. Tidak ada proses yang berjalan diluar critical section-nya yang dapat memblokir proses-proses lain d. Tidak ada proses yang menunggu selamanya untuk masuk ke critical section-nya. Mutual Exclusion (MuTex) With Busy Waiting : Jika suatu proses sedang mengakses shared memory di critical sectionnya, tidak ada satu prosespun yang dapat memasuki critical section (mutual exclusion) dan menyebabkan masalah. Jenis-jenis mutual exclusion : 1. Disabling interrupt / mematikan interupsi Dengan cara mematikan interupsi yang masuk pada saat proses sedang berada pada critical section-nya. Cara ini kadang cukup berguna untuk kernel tetapi tidak untuk user. Dan cara inipun tidak terlalu baik untuk CPU yang jumlahnya lebih dari satu, dimana disable interrupt hanya mengenai CPU yang sedang menjalankan proses itu dan tidak berpengaruh terhadap CPU lain 2. Lock variables Setiap proses yang akan mengakses ke critical section-nya harus meng-cek lock variable. Jika 0 berarti proses dapat memasuki critical section-nya dan jika 1 maka proses harus menunggu sampai lock variable = 0. Kelemahannya adalah 2 proses masih dapat memasuki critical section-nya pada saat yang bersamaan. Sewaktu satu proses meng-cek lock variable = 0, pada saat akan men-set 1 ada interupsi untuk melaksanakan proses lain yang juga ingin memasuki critical sectionnya, maka akan terjadi race condition. 3. Strict alternation Dengan mengamati variable turn untuk menentukan siapa yang akan memasuki critical section-nya bukanlah ide yang baik jika proses lebih lambat dari yang lain. Contohnya : While (true) { } while (true) { while (turn!= 0) critical_section ( ); turn = 1; noncritical_section ( ); while (turn!= 1) critical_section ( ); turn = 0; noncritical_section ( ); /*wait*/; /*wait*/; } 4. Peterson s Solution Proses tidak akan diteruskan sampai while terpenuhi, bila interested[other] = TRUE, maka proses akan menunggu sampai FALSE. Kelemahannya : jika proses memanggil enter_region-nya secara hampir bersamaan, yang disimpan di turn adalah data yang ditulis terakhir. Contohnya : # include prototype.h # define FALSE 0 # define TRUE 1 # define N 2 /*banyaknya proses*/ int turn; int interested [N]; /*nilai awal di-set = 0 (false)*/ void enter_region(int process) /*proses = 1 atau 0*/

17 { int other; /*jumlah proses lainnya*/ other = 1 process; /*proses lainnya*/ interested[process] = TRUE; /*menunjukkan tertarik*/ turn = process; /*set flag*/ while (turn==process && interested[other] == TRUE) } void leave_region(int process) /*proses yang selesai*/ { interested[process] = FALSE; /*meninggalkan critical region*/ } 5. Test and Set Lock Instruction / Instruksi TSL Dengan bantuan hardware, menentukan siapa yang berhak memasuki critical_region (section) Contoh : Enter_region : Tsl reg,flag copy flag ke reg dan set flag = 1 Cmp reg,#0 apakah flag = 0 Jnz enter_region jika <> 0 loop lagi Ret return ke caller, masuk critical region Leave_region : Mov flag, #0 simpan 0 ke flag Ret return ke caller Proses harus memanggil ini pada saat yang tepat. Kelemahan utama dengan busy waiting adalah menyita banyak waktu CPU dan problem inversi prioritas. 6. Sleep and Wake Up Mekanismenya : proses akan di blok / tidur (sleep) apabila tidak bisa memasuki critical_section-nya dan akan dibangunkan (wake up) / ready apabila resource yang diperlukan telah tersedia. SLEEP : sistem call membuat proses yang memanggil di blok (blocked) WAKE UP : sistem call yang membuat proses yang memanggil menjasi ready Contoh : Procedure-Consumer Problem (bounded buffer) Beberapa proses share buffer dengan ukuran tetap Jika buffer penuh producer sleep Jika buffer kosong consumer sleep Jika buffer mulai kosong producer wake up Jika buffer terisi consumer wake up Masih ada kemungkinan terjadi race condition 7. Semaphore (Dijkstra, 1965) Meng-cek, mengubah dan sleep 1 instruksi yang Mengubah dan wake up tdk dpt dipisahkan Instruksi tersebut sangat berguna untuk sinkronisasi. Dapat diimplementasikan untuk memecahkan producer-consumer problem. Mekanisme-nya menggunakan : - variabel integer untuk menghitung jumlah wake up yang disimpan / tertunda - bernilai 0 bila tidak ada wake up yang disimpan, bernilai positif bila ada wake up yang tertunda Dua macam operasi terhadap semaphore : 1. DOWN(S) : If S >= 0 then S := S-1; Else sleep (S) End;

18 2. UP(S) : S := S + 1; If S <= 0 then wakeup(s) End; Operasi DOWN dan UP merupakan operasi yang bersifat Atomic (Atomic Action). 8. Event Counters (Reed and Kanodia, 1979) Tiga operasi terhadap event counter (E) : 1. Read (E) : return current value of E 2. Advance (E) : Atomically increment E by 1 3. Wait until E has a value of v or more 9. Monitor - Higher level synchronization primitive. - Kumpulan prosedur, variabel dan struktur data yang dipaket menjadi satu modul atau paket. - Proses bisa memanggil prosedur dalam monitor, tetapi tidak dapat mengakses langsung struktur data internal dari monitor. 10. Message Passing Menggunakan 2 primitive : 1. send (destination, &message) 2. receive (source, &message) Beberapa isu pada message passing system : message lost; acknowledgement; domains; authentication; performance Masalah Klasik IPC : The Dining Philosopher Problem - 5 philosophers yang kerjanya hanya makan dan berfikir - tersedia lima piring spaghetti dan lima sumpit - untuk makan dibutuhkan bua buah sumpit - problem-nya bagaimana cara menulis program agar setiap philosopher dapat berfikir dan makan tanpa harus saling menunggu? The Readers and Writers Problem - Model akses database - Banyak proses berkompetisi untuk membaca dan menulis. Contohnya : airline reservation. - Beberapa proses boleh membaca pada saat yang sama - Bila suatu proses sedang menulis, tidak boleh ada proses lain yang mengakses database - Proses membaca mempunyai prioritas yang lebih tinggi daripada proses menulis Proses dalam Sistem Terdistribusi Thread Computer Computer (a) Process Thread Program Counter (b) Gambar (a) : - mempunyai : program counter, stack, register set, address space sendiri - independent satu sama lain dan berkomunikasi lewat IPC yang disediakan sistem, seperti : semaphore, monitor, atau message

19 Gambar (b) : - multiple threads of control (THREAD atau lightweight Process). Thread mirip seperti little-mini process. Setiap thread berjalan sekuensial, yang mempunyai program counter dan stack sendiri. Thread juga men-share CPU seperti proses. - Thread dalam satu proses menempati address space yang sama, tidak ada proteksi penggunaan memori antar thread karena proses dimiliki oleh satu user. - Thread dapat berada pada empat state yang berbeda, seperti process (running, blocked, ready, terminated) Ada 3 model process pada server : 1. thread di ciptakan untuk dapat melakukan paralelisme yang dikombinasikan dengan eksekusi sekuensial dan blocking system calls 2. single treads server, menggunakan blocking system calls, tetapi kinerja sistem tidak baik 3. finite-state machine, kinerja baik dengan melakukan parallelisme, tetapi menggunakan nonblocking calls, sehingga sulit dalam memprogram Status proses terhadap prosesor : 1. Status proses tanpa henti Mulai Kerja Selesai 2. Status proses sambil bekerja dan terhenti Mulai Kerja Selesai 3. Status proses dengan status siap Terhenti Mulai Siap Kerja Terhenti Terhenti

20 TEKNIK PENJADWALAN PROSESOR Istilah-istilah : Pekerjaan / Job User menyerahkan pekerjaan mereka pada komputer. Ada pekerjaan yang panjang, sedang dan pendek. Untuk dapat diolah oleh komputer harus dianalisis dahulu untuk mengetahui bagaimana sebaiknya pekerjaan itu dilakukan. Terobosan / Troughput Pekerjaan dalam komputer dilaksanakan langkah demi langkah, sehingga dapat dikatakan bahwa troughput adalah banyaknya pekerjaan yang dapat diselesaikan oleh sistem komputer dalam satu satuan waktu. Tugas / Task Program yang terdiri dari banyak bagian program dan bagian program yang dikerjakan merupakan tugas bagi sistem operasi. - Tugas yang sedang dilaksanakan, adalah tugas yang menemukan semua sumber daya yang diperlukannya, termasuk prosesor. - Tugas yang siap dilaksanakan, adalah tugas yang menemukan semua sumber daya yang diperlukannya, kecuali prosesor. - Tugas yang belum dilaksanakan, adalah tugas yang belum menemukan sumber daya yang diperlukannya. Proses / Process Tugas yang telah dijadwalkan untuk menemukan prosesor / tugas yang telah diterima oleh penjadwalan. Tugas Penjadwalan Proses Prosesor Gambar suatu contoh prosesor

21 Keterangan : GK = galur kendali / control bus GD = galur data / data bus, tempat informasi data berlalu lintas antar register GA = galur alamat / address bus, tempat informasi alamat memori berlalu lintas antar register karena setiap kali hanya ada 1 informasi dalam galur ini, maka lalu lintas diatur oleh tanda waktu dari kunci waktu. Tanda waktu dibentuk oleh basis waktu A = akumulator, register serba guna yang dapat menerima berbagai informasi SLA = satuan logika dan aritmatika / ALU, tempat pengolahan, contohnya untuk menghitung 3+4=?, maka data 3 diletakkan di register A dan data di register B. proses penjumlahan terjadi di SLA / ALU, hasil = 7 diletakkan kembali di register A B = register, register yang menerima informasi yang akan diolah bersama oleh isi register A PT = pencacah program / program counter, program terletak dalam memori kerja pada alamat memori tertentu. PT menerima alamat memori awal saat diolah oleh prosesor dan juga menyaring dan menentukan alamat memori mana saja yang isinya akan dibawa ke prosesor dan hanya alamat yang sesuai dengan letak program yang sedang diolah yang diperbolehkan PT masuk ke prosesor. PT mencacah dirinya sebesar 1 cacahan dan dengan cara yang sama akan melayani alamat berikutnya sampai alamat terakhir. RI = register instruksi, membawa dan menerima informasi dari memori kerja dan diperiksa. SK = satuan kendali / control unit, menerima informasi instruksi program dan sesuai dengan isi instruksi SK mengendalikan kegiatan dalam prosesor. RA = register alamat / address register, mencatat alamat memori yang isinya akan dicapai alamat itu di memori kerja. Jika pembacaan data dari memori kerja, data / isi dari memori kerja dibaca dan disalin ke RD, tetapi jika pada penulisan data ke memori kerja, maka isi RD disalin ke alamat memori kerja. RD = register data. RD dan RA bekerja sama dalam kegiatan pengambilan dan pengiriman data dari dan ke memori kerja. 2 siklus kerja prosesor : 1. Siklus Jemput a. PT berisi alamat awal program pada memori kerja yang disesuaikan dengan isinya di memori kerja b. RA = PT, alamat memori PT diteruskan ke RA c. RA RD, isi program diambil dari memori kerja dan diletakkan di RD d. RI = RD, dari RD program diteruskan ke RI e. PT= PT + 1, pencacah untuk melanjutkan siklus berikutnya f. Go to point b 2. Siklus Kerja a. RI = SK, isi program di RI akan diteruskan ke SK, RI berisi instruksi untuk melaksanakan sesuatu b. SK seluruh kegiatan di dalam prosesor dikendalikan sehingga kerja yang dimaksud oleh bagian program itu dirampungkan. 2 jenis kerja / proses : 1. Tugas / proses sistem, berasal dari program sistem yaitu dari sistem bahasa, utilitas, operasi, dimana prosesor melayani sistem (prosesor dikuasai sistem / kontek sistem) 2. Tugas / proses aplikasi, berasal dari program aplikasi, dimana prosesor melayani aplikasi (prosesor dikuasai aplikasi / kontek aplikasi) Proses Serentak / Concurrent Process : Yaitu prosesor menghadapi banyak tugas dan proses. a. Multiprogramming, sistem komputer lebih dari 1 program sekaligus dalam pelaksanaan proses. b. Multitasking, banyak bagian program yang dipersiapkan untuk diolah oleh prosesor namun belum sempat dijadwalkan untuk memperoleh prosesor.

22 c. Multiprocessing, sejumlah tugas yang telah dijadwalkan untuk menggunakan prosesor. d. Multiplexing, menggunakan pertukaran kendali dalam selang waktu terpisah-pisah. e. Time sharing / rentang waktu, secara bersamaan sejumlah pemakai dapat menggunakan 1 sistem komputer, sehingga setiap pemakai merasa bahwa seluruh sistem komputer seolah-olah untuk dirinya. Proses Berurutan : Sejumlah proses berlangsung secara berselingan dan tidak ada diantara mereka yang bertumpang tindih waktu, sebelum 1 proses selesai, proses berikutnya belum bekerja. A B C Proses Paralel : - pada proses tunggal, proses serentak bukan proses paralel karena proses tersebut di gali 1 demi 1, sepenggal demi sepenggal. - Pada proses jamak, proses dapat dilaksanakan secara serempak diantara banyak prosesor sehingga disebut proses paralel A B C Proses Serentak Berpenggalan : Ada penggalan dari 1 proses yang berselingan dengan penggalan dari proses lain dan ada penggalan dari proses pertama yang bertumpang tindih waktu dengan penggalan proses kedua. A A1 A2 B B1 B2 C C1 C2 Istilah dalam penjadwalan proses : Scheduler adalah bagian sistem operasi yang mengatur penjadwalan eksekusi proses-proses. Algoritma penjadwalan (scheduling algorithm) adalah algoritma yang digunakan. Penjadwalan Proses o Antrian, karena banyak proses yang muncul secara serentak maka dibuat antrian di depan prosesor, yang berada dalam keadaan siap dan hanya ada 1 proses yang berada dalam status kerja o Prioritas, mendahulukan pada antrian proses karena tidak semua proses sama pentingnya, sehingga dibuat suatu prioritas. Dalam prioritas, pekerjaan pada prosesor diselesaikan dahulu baru proses berprioritas akan di proses o Preempsi, sama dengan prioritas, tetapi pada preempsi jika ada proses yang mendapatkan preempsi maka preemsi akan menghentikan kerja prosesor dan mengeluarkan pekerjaan di dalam prosesor itu, sehingga proses berpreempsi dapat dilayani prosesor. Dan setelah proses berpreempsi selesai dilaksanakan, prosesor akan melaksanakan sisa proses yang dikeluarkan dari pekerjaannya tadi Jangka penjadwalan Semua antrian dan penantian (contohnya yang dikeluarkan karena preempsi. a. Penjadwalan jangka pendek / short term scheduling / low level scheduling, yaitu mengurus masuknya antrian siap ke prosesor serta antrian siap ke alat peripheral I/O, yang mengurus prioritas dan preempsi. b. Penjadwalan jangka media / medium term scheduling / intermediate level scheduling, yaitu mengurus terhadap proses yang dikeluarkan dari prosesor yang belum rampung dikerjakan dan melanjutkan pekerjaan proses tersebut di prosesor. c. Penjadwalan jangka panjang / long term scheduling / high level scheduling, yaitu mengurus masuknya pekerjaan baru berupa penentuan pekerjaan baru mana yang boleh diterima dan tugas disini diubah menjadi proses.

23 Tujuan penjadwalan / kriteria baik tidaknya suatu algoritma penjadwalan : a. Fairness / pelayanan yang adil untuk semua pekerjaan b. Throughput / memaksimumkan throughput c. Efficiency / memaksimumkan pemakaian prosesor d. Overhead / meminimumkan waktu tunggu e. Pemakaian sumber daya seimbang f. Tidak terjadi penundaan waktu tak hingga g. Kegiatan sumber daya dapat dideteksi terlebih dahulu Perhitungan kerja prosesor t adalah lama proses pada prosesor, lama waktu sesungguhnya yang diperlukan untuk mengolah proses dalam prosesor. T adalah lama tanggap pada prosesor, lama waktu yang diperlukan oleh prosesor sejak tiba sampai dengan rampung diolah oleh prosesor, terdapat waktu tunggu dalam antrian / dalam preempsi. o Lama tanggap turn around time, yaitu memperhitungkan lama waktu yang diperlukan oleh o proses untuk keluaran Lama tanggap respon time, yaitu tidak memperhitungkan lama waktu yang diperlukan oleh proses untuk keluaran Tr adalah lama tanggap rata-rata, yaitu perbandingan lama tanggap setiap proses (Ti) dengan jumlah proses serentak yaitu Tr = Σ Ti / N S adalah waktu sia-sia, waktu yang terbuang di dalam antrian / selama terkena preempsi yaitu selisih antara lama tanggap dengan lama proses (T-t) Rt adalah rasio tanggap, perbandingan antara lama proses terhadap lama tanggap, Rt = t / T Rp adalah rasio penalti, perbandingan antara lama tanggap terhadap lama proses, Rp = T/t dan karena t T, maka Rt < 1 dan Rp >1 Penjadwalan Prosesor Penjadwalan satu tingkat a. Pertama Tiba Pertama Dilayani (PTPD) b. Proses Terpendek Dipertamakan (PTD) c. Proses Terpendek Dipertamakan Preempsi (PTDP) d. Rasio Penalti Tertinggi Dipertamakan (RPTD) e. Putar Gelang (PG) f. Putar Gelang Prioritas Berubah (PGPB) Penjadwalan multi tingkat a. Antrian multi tingkat b. Antrian multi tingkat berbalikan Penjadwalan Satu Tingkat Pertama Tiba Pertama Dilayani (PTPD) / First Come First Served (FCFS) Penjadwalan ini murni antrian, tanpa prioritas tanpa preempsi. Nama Proses Saat Tiba Lama Proses Saat Mulai Saat Rampung Lama Tanggap A B C D E Σ Ti 205 serentak Tr 41 Tr cukup besar, jika dibandingkan dengan lama tanggap dari masing-masing proses.

24 Nama Proses Saat Tiba Lama Proses Saat Mulai Saat Rampung Lama Tanggap A B C D Σ Ti 40 Tr 10 Lama tanggap saat rampung karena perbedaan saat tiba. Proses Terpendek Dipertamakan (PTD) / Shortest Job First (SJF) Penjadwalan ini adalah antrian dengan prioritas tanpa preempsi, yang menjadi prioritas adalah proses yang terpendek (tersingkat), makin pendek proses, makin tinggi prioritasnya. Nama Proses Saat Tiba Lama Proses Saat Mulai Saat Rampung Lama Tanggap A 0 11 B 0 8 C 0 10 D 0 3 E 0 5 Nama Proses Saat Tiba Lama Proses Saat Mulai Saat Rampung Lama Tanggap D E B C A Σ Ti 90 serentak prioritas Tr 18 Tr lebih singkat, jika dibandingkan dengan PTPD Nama Proses Saat Tiba Lama Proses Saat Mulai Saat Rampung Lama Tanggap A 0 5 B 3 7 C 5 2 D 6 4 Disusun urutan proses berdasarkan prioritasnya, yaitu CDAB, tetapi pada saat tiba = 0, proses terpendek C belum datang, maka mengerjakan proses A dahulu, setelah selesai pada saat 5, proses C sudah datang, sehingga C dikerjakan dan seterusnya seperti : A B C D Saat Proses A A A A A C C D D D D B B B B B B B Nama Saat Lama Saat Saat Rampung Lama Tanggap Proses Tiba Proses Mulai A C D B Σ=18 Σ Ti 27 Tr 6.75

25 Keuntungan : memperkecil rata-rata lama tanggap Kelemahan : layanan terhadap proses panjang bisa tidak terlayani jika proses pendek datang terus. Nama Proses Saat Tiba Lama Proses A 0 8 B 4 5 C 6 3 D 9 8 E 14 4 Saat Mulai Saat Rampung Lama Tanggap Nama Saat Lama Saat Saat Rampung Lama Tanggap Proses Tiba Proses Mulai A C B E D Σ Ti 50 Tr 10 Proses Terpendek Dipertamakan Preempsi (PTDP) Preemptive Shortest Job First (PSJF) Penjadwalan ini dengan prioritas dengan preempsi, yang menjadi pioritas adalah sisa proses. Proses yang terpendek bisa didahulukan dengan cara membandingkan sisa waktu proses yang sedang dilaksanakan dengan proses yang tiba, dengan preempsi mengeluarkan proses yang sedang diolah untuk melaksanakan proses yang lebih pendek / singkat. Nama Proses Saat Tiba Lama Proses A 0 7 B 2 3 C 4 9 D 5 4 Saat Mulai Saat Rampung Lama Tanggap A B C D S t Pro A A B B B D D D D A A A A A C C C C C C C C C s Pada saat 0, proses A dikerjakan karena A datang pertama Pada saat 2, B datang, B=3, sisa A=5, B<A maka A dikeluarkan dari proses, B dikerjakan Pada saat 4, C datang, C=9, sisa A=5, sisa B=1, B<A<C, maka B dikerjakan Pada saat 5, D datang, D=4, sisa A=5, sisa C=9, D<A<C, maka D dikerjakan sampai selesai karena tidak ada proses yang datang lagi A<C maka A dikerjakan C dikerjakan Selesai

26 Nama Saat Lama Saat Saat Rampung Lama Tanggap Proses Tiba Proses Mulai A B C D Σ=23 Σ Ti 40 Tr 10 Karena preempsi, PTDP lebih baik dari PTD dalam hal kecilnya Tr, tetapi untuk proses panjang lebih lama dibandingkan PTD. Nama Proses Saat Tiba Lama Proses A 0 8 B 2 5 C 4 7 D 5 1 Saat Mulai Saat Rampung Lama Tanggap Nama Saat Lama Saat Saat Rampung Lama Tanggap Proses Tiba Proses Mulai A B C D Σ Ti 38 Tr 9.5 Rasio Penalti Tertinggi Dipertamakan (PTD) / Highest Penalti Ratio Next (HPRN) Penjadwalan dengan prioritas tanpa preempsi. Yang menjadi prioritas adalah besarnya rasio pinalti. Tetap mendahulukan proses pendek ditambah dengan mempertimbangkan rasio penaltinya, yang ditentukan berdasarkan lama waktu antriannya. Sehingga prioritas proses panjang akan turut meningkat melalui peningkatan rasio pinalti, sehingga pada suatu saat proses panjang pada antrian yang telah lama menunggu akan menyusul proses pendek. S = (T-t) ; Rp = T/t = (s+t)/t Nama Proses Saat Tiba Lama Proses A 0 4 B 1 2 C 2 5 D 3 8 E 4 4 Saat Mulai Saat Rampung Lama Tanggap Nama Proses Waktu sia-sia Rasio Penalti B 4-1 = 3 (3 + 2) / 2 = 2,5 Rp>> C 4-2 = 2 (2 + 5) / 5 = 1,4 D 4-3 = 1 (1 + 8) / 8 = 1,125 E 4-4 = 0 (0 + 4) / 4 = 1 Nama Proses Waktu sia-sia Rasio Penalti C 6-2 = 4 (4 + 5) / 5 = 1,8 Rp>>

27 D 6-3 = 3 (3 + 8) / 8 = 1,375 E 6-4 = 2 (2 + 4) / 4 = 1,5 Nama Proses Waktu sia-sia Rasio Penalti D 11-3 = 8 (8 + 8) / 8 = 2 E 11-4 = 7 (7 + 4) / 4 = 2,75 Rp>> A B C D E S t Pro A A A A B B C C C C C E E E E D D D D D D D D s Nama Saat Lama Saat Saat Rampung Lama Tanggap Proses Tiba Proses Mulai A B C D E Σ=23 Σ Ti 49 Tr 9.8 Putar Gelang (PG) / Round Robin (RR) Penjadwalan ini tanpa prioritas, dengan preempsi. Secara bergiliran berdasarkan antrian (tanpa prioritas) prosesor melayani sejenak setiap proses tergantung besarnya quantum waktu. Secara berturut-turut proses yang dilayani prosesor dan belum rampung akan kembali ke akhir antrian yang ada, sehingga pergiliran ini berputar seperti gelang. Dan hanya proses yang telah rampung terlayani yang meninggalkan prosesor dan antrian tersebut. Jadi setiap proses dilayani selama quantum waktu tertentu secara bergiliran. Quantum waktu : waktu sejenak yang digunakan oleh prosesor untuk melayani setiap proses. Perubahan quantum waktu membedakan hasil layanan terhadap antrian yang sama. Contoh dengan Q = 3 Nama Proses Saat Tiba Lama Proses A 0 7 B 0 5 C 0 8 D 0 2 E 0 6 Saat Mulai Saat Rampung Lama Tanggap Saat Proses A A A B B B C C C D D E E E A A A B B C C C E E E A C C Nama Proses Saat Lama Saat Mulai Saat Rampung Lama Tanggap Tiba Proses A C B E

28 D Σ = 28 Σ Ti 109 Tr 21.8 Dengan Q = 2 Nama Proses Saat Tiba Lama Proses A 0 5 B 1 3 C 5 7 D 6 1 E 7 6 Saat Mulai Saat Rampung Lama Tanggap A B C D E S t Pro A A B B A A B C C D E E A C C E E C C E E C s Nama Saat Lama Saat Saat Rampung Lama Tanggap Proses Tiba Proses Mulai A B C D D Σ Ti 54 Tr 10,4 Pada saat 0, A dikerjakan 2x, saat 2, B sudah datang, dikerjakan 2x, saat 4, belum ada yang datang maka kerjakan A dan B lagi. Kemudian kerjakan C, D, E yang sudah datang, tetapi di antrian masih ada A, A dikerjakan kemudian E, sisa C, sisa E dan sisa C sampai selesai. Secara merata, penjadwalan putar gelang memperlambat proses yang tiba dan secara merata pula semua proses dilayani oleh prosesor, sehingga biasanya digunakan pada proses interaktif jika semua proses menuntut dikerjakan segera. Penjadwalan dengan prioritas berubah-ubah Penjadwalan yang menggunakan prioritas dapat diubah-ubah menjadi prioritas lainnya. 1. Penjadwalan tanpa preempsi dengan prioritas berubah-ubah P = f(s,t,u) Dengan : p = prioritas; s = waktu sia sia; t = lama proses u = tarif sewa 2. Penjadwalan dengan preempsi dengan prioritas berubah-ubah (PGPB = putar gelang prioritas berubah-ubah) dimana prioritas tergantung pada proses lama dan proses baru, maka jika : a = koefisien untuk proses lama dan b = koefisien untuk proses baru, b/a = 1 prioritas sama b/a = 0 prioritas lama b/a < 1 prioritas baru < lama b/a > 1 prioritas baru > lama Kesimpulan : Tanpa Dengan Prioritas Prioritas Tanpa PTPD PTD / RPTD

29 Preempsi Dengan Preempsi PG PTDP Penjadwalan Multitingkat Proses dibedakan tingkatnya berdasarkan kepentingannya. Penjadwalan pada tiap tingkat dapat bermacam-macam. Pada antrian multi tingkat berbalikan, tingkat satu dan lainnya saling berhubungan. Antrian Multi Tingkat (Multi level queue) Mengumpulkan proses-proses yang berkepentingan sama dalam 1 tingkat. Proses dikerjakan tingkat demi tingkat dari tingkat tertinggi sampai dengan tingkat terendah dimana setiap tingkat telah rampung dikerjakan Tingkat 1 c/ proses pd sistem operasi Tingkat 2 c/ proses pd prog. Interaktif Tingkat 3 c/ proses pd program edit Tingkat 4 c/ proses pd tumpukan Tingkat 5 c/ proses pd borongan P R O S E S O R Antrian Multi Tingkat Berbalikan / Feedback multi level queue Tingkat 1 P Rampung Preempsi Tingkat 2 P Rampung Preempsi Tingkat 3 P Rampung Preempsi Tingkat n Rampung Metoda Evaluasi Penjadwalan evaluasi analitik a. pemodelan deterministik pekerjaan sudah ditetapkan terlebih dahulu, menerapkan berbagai penjadwalan dan dievaluasi hasilnya.

30 Nama proses Saat tiba Lama proses A 0 12 B 0 30 C 0 2 D 0 8 E 0 10 Dari tabel tersebut dapat kita cari : Macam penjadwalan Rerata lama tanggap Rerata waktu sia-sia PTPD 42,4 30 PTD 29,2 14 PG (Q=8) 38,4 28 Keuntungan : ketepatan untuk menunjukkan rata-rata lama tanggap / rata-rata waktu sia-sia Kelemahan : hasil evaluasi hanya berlaku untuk proses yang telah ditetapkan b. analisis model antrian menganggap sistem komputer sebagai suatu jaringan alat layan, menggunakan rumus distribusi probabilitas untuk memperkirakan bentuk antrian dan bentuk pelaksanaan proses. Sasaran rumus distribusi probabilitas adalah untuk lama proses, saat tiba dan kecepatan layan. Sehingga dapat menentukan analisis jaringan antrian, dengan ditetapkan rumus litte, yaitu : n = u. s, dengan n = rerata panjang antrian, s = rerata waktu sia-sia / waktu tunggu, u = rerata kecepatan tiba proses baru. Kelemahan : Pengambilan model cukup rumit untuk sistem tertentu dan model tidak selalu cocok dengan keadaan yang sebenarnya Metode Simulasi Metode ini berdasarkan sejumlah variabel yang disimulasikan sistem komputer yang digunakan, memerlukan data masukan melalui bilangan acak. Keuntungan : jika ditangani dengan baik maka metode ini cukup baik. Kelemahan : mahal, karena banyak menggunakan jam prosesor dan ruang memori. Metode Implementasi Metode ini bekerja dengan cara mengamati hasil dari implementasi setiap penjadwalan / menerapkan berbagai penjadwalan pada pekerjaan yang sesungguhnya. Keuntungan : cukup cermat. Kelemahan : perubahan macam penjadwalan mengganggu pemakai komputer dan perubahan jenis pekerjaan mengganggu penjadwalan.

31

32 MANAJEMEN MEMORI Memory manager : Salah satu bagian sistem operasi yang mempengaruhi dalam menentukan proses mana yang diletakkan pada antrian. Tanda pengenal untuk pencarian letak memori adalah alamat, lintasan / trek, sector pada suatu disk. Jenis Memori - Memori Kerja Tugas utamanya adalah menampung pekerjaan itu pada saat sebelum dan sesudah pekerjaan itu dilaksanakan oleh prosesor dan menampung berbagai hal yang diperlukan prosesor, contohnya system operasi, system bahasa, catatan. Contoh memori kerja untuk memori tetap adalah : ROM : Read Only Memory memori baca saja PROM : Programmable ROM dapat diprogram tetapi tidak dapat dihapus lagi EPROM : Electrically PROM dapat diisi melalui listrik, dan dapat dihapus EEPROM : Erasable EPROM dapat diisi dan dihapus dengan listrik, maka ciri utamanya adalah isi tetap ada / tidak mudah dihapus meskipun daya listrik computer terputus. Contoh memori kerja untuk memori bebas adalah : RAM : Random Access Memory dapat diisi dan dapat dibaca, maka ciri utamanya adalah mengenal asas pemuktahiran yaitu dapat diisi dengan informasi terbaru dan isi akan hilang jika catu daya padam. Memori kerja terdiri dari sel memori yang berisi 1 kata sandi, misalnya sistem 8 bit menggunakan 8 bit kata sandi, sistem 1 kbyte menggunakan 1024 byte kata sandi. Cache memory Memori berkapasitas kecil tetapi berkecepatan tinggi, yang dipasang diantara prosesor dan memori utama. Instruksi dan data yang sering diakses oleh prosesor ditempatkan dalam chace sehingga dapat lebih cepat diakses oleh prosesor. Hanya bila data / instruksi yang diperlukan tidak tersedia dalam chacce barulah prosesor mencarinya dalam memori utama. - Memori Dukung / backing store Contohnya : Floppy, Harddisk, CD, dll. Untuk mendukung memori kerja, umumnya berbentuk disk sehingga berlaku juga asas pemuktakhiran. Setiap trek dan sektor dapat menyimpan sejumlah byte dari memori kerja. Memori kerja dicapai melalui alamat memori dan register data memori. Dan untuk mencapai informasi di memori dukung, isinya harus dipindahkan dulu ke memori kerja (memori dukung = memori semu = virtual memori). Memori dukung Pindah masuk Pindah keluar Memori kerja 1 pindahan = 1 blok, makin kecil ukuran memori kerja, makin sering terjadi pindahan. Alamat Memori Alamat memori mutlak (alamat fisik) Sel memori pada memori kerja adalah sumber daya berbentuk fisik, sehingga untuk mencapai sel memori ini digunakan kata pengenal. Maka disebutlah alamat fisik dan karena nomor alamat fisik ini bersifat mutlak (nomor setiap sel adalah tetap), maka disebut juga alamat mutlak.

33 Alamat memori relatif (alamat logika) Alamat memori yang digunakan oleh program / data berurutan / berjulat. Jika kita menggunakan alamat 1, maka kitapun menggunakan alamat 2,3, dan untuk 1 informasi jika alamat awalnya 0 dan alamat lainnya relatif terhadap alamat awal 0 ini, maka dinamakan alamat relatif. Dan alamat tersebut adalah logika dari untaian alamat yang menyimpan informasi maka dikenal alamat memori logika. Contoh : alamat awal relatif 0, alamat awal fisik 14726, maka selisihnya = relokasinya = = Alamat relatif Alamat mutlak Relokasi Isi Memori 1. Sistem bahasa pemograman Translator tergantung pada program yang digunakakan dan memiliki run time subroutine yang mengatur program dari bahasa pemogramannya untuk melakukan translator. 2. Sistem utilitas Merupakan bagian dari sistem operasi komputer, biasanya berbentuk berkas dalam memori arsif. 3. Inti sistem operasi Terdiri dari inti, kernel, nucleus adalah system operasi yang menetapkan dalam memori kerja. Contohnya adalah pada saat boot / booting / bootstrap. 4. Sistem operasi Program sistem operasi diletakkan dalam memori, maka banyak kegiatan yang juga terletak dalam memori. 5. Pengendali alat Terdiri dari penggerak alat / device controller dan pelaksana / device driver yang berbentuk program dan menempati ruang memori tertentu. 6. Berkas pemakai Terdiri dari berkas program dan berkas data, yang ditampung dalam memori dan pada waktunya diteruskan ke prosesor untuk diolah. Fungsi manajemen memori : Mengelola informasi yang dipakai dan tidak dipakai. Mengalokasikan memori ke proses yang memerlukan. Mendealokasikan memori dari proses telah selesai. Mengelola swapping atau paging antara memori utama dan disk. Pemuatan informasi ke memori : 1. Pemuat / loader, menyalin informasi ke memori kerja. a. pemuatan mutlak jika 2 macam alamat memori dibuat sama antara yang tercantum dalam program dan yang ditempati dalam memori kerja. Contohnya pada program, alamat awal 5235 dan subroutine = 5468 diletakkan pada alamat fisik yang sama. b. pemuatan relokasi alamat program tidak selalu sama dengan alamat fisik. Contohnya alamat pangkal / fisik = 14200, alamat relative program 327, maka alamat mutlaknya = = R(=p jika A=0) X Y

34 Keterangan: R : relokasi P : alamat pangkal / fisik A : alamat awal / logika Y : alamat fisik dari X X : alamat suatu informasi tertentu (logika) Maka : R = P A Y = X + R = X + P A Jika informasi dengan alamat relative = 0, maka A = 0. Contoh : suatu informasi beralamat awal 2100 dan informasi ini dimuat relokasikan ke alamat pangkal Hitung besar relokasi dan hitung pula pada memori kerja dimana bagian informasi yang beralamat 2453 terletak? Maka : A = 210 P = X = 2453 R = P A = = Y = X + R = = c. pemuatan sambung penyambungan antara informasi yang satu dengan yang lain terjadi pada saat pemuatan. Sehingga membutuhkan informasi sebelum melakukan pemuatan sambung tersebut, contohnya informasi alamat akhir dari bagian informasi yang akan disambung tersebut. d. pemuatan dinamik / tumpang / overlay terjadi pada program tunggal ketika ukuran program melampaui ukuran ruang memori kerja. Dan agar dapat tertampung maka dibagi / dipenggal menjadi beberapa segmen. Sambung / linker akan menyatukan 1 informasi dengan informasi lainnya. 2. Lama muat, ditentukan oleh kecepatan baca pada memori dukung yang berbentuk disk. Pengutipan / pembacaan isi memori : 1. Pengutipan oleh prosesor Untuk melaksanakan pekerjaan yang dalam informasi itu, yang merupakan tugas dan proses dan dilakukan sel memori per sel memori. 2. Pengutipan oleh memori dukung / arsif Untuk menyimpan informasi tersebut di dalam memori dukung / arsif sehingga mereka tidak hilang ketika catu daya dimatikan. Isi memori kerja disimpan ke dalam disk memori dukung / disket memori arsif. Kemudian di dalam disk / disket, informasi direkam ke dalam sector, setelah 1 sektor penuh, maka berpindah ke sektor lainnya. Pengutipan ini dilakukan blok demi blok yang biasanya merupakan kelipatan bulat dari ukuran sektor. 3. Pengutipan oleh pencetak / printer Untuk mencetak isi memori ke atas kertas, pengutipan secara blok demi blok. 4. Pengutipan oleh alat peripheral lainnya Contoh pada komunikasi data melalui jaringan, pengutipan mengikuti suatu protocol tertentu, misalnya protocol OSI (open system Interconnection) dari ISO (international standard organization) yang terdiri dari 7 lapis / layer. Akses memori langsung / DMA (Direct Memory Access) Melakukan pemindahan informasi dari dan ke memori kerja tanpa campur tangan langsung dari prosesor. Prosesor hanya diinterupsi saat akses tersebut dimulai dan selesai. Pemenggalan memori kerja Contohnya alamat pagar untuk pemenggalan memori kerja untuk wilayah program monitor, program dan data user. Pagar pada memori kerja Wilayah memori telah kita penggal menjadi 2 bagian yaitu di atas alamat pagar dan di bawah alamat pagar yang letaknya terpisah. Pemenggalan memori kerja Memenggal memori ke dalam banyak penggalan dan setiap penggalan dibatasi 2 pagar, yaitu batas bawah dan batas atas.

35 Batas Atas BA6 Batas Bawah BB6 Sistem Operasi 6 Batas Atas BA5 5 BA4 BB4 4 BA3 Batas Bawah BB5 BA2 3 BB3 BB2 2 BA1 1 BB1 unused Untuk setiap penggalan memori kerja, memerlukan 2 register yaitu untuk mencatat batas atas dan untuk mencatat batas bawah. Dan setiap alamat memerlukan dua kali perbandingan untuk mencapai penggalan. Relokasi ke penggalan memori kerja Dapat memilih penggalan yang menjadi tujuan relokasi dan harus diperiksa panjang informasi dan ukuran penggalan memorinya. Karena jika masuk pada penggalan yang kecil, informasi tidak dapat tertampung. Contoh : Jika alamat awalnya = 0, alamat pangkal P maka A = 0 dan P = BB. Sehingga R = P A = BB Jika alamat X tidak melampaui batas (BA-BB) maka pemuatan secara relokasi dapat dilaksanakan yaitu dengan menambahkan alamat pangkal (BB) dari penggalan memori kerja. Manajemen Memori Berdasarkan Keberadaan Swapping atau Paging Terbagi dua yaitu : 1. Manajemen tanpa swapping atau paging 2. Manajemen dengan swapping atau paging Memori Tanpa Swapping atau Paging Yaitu manajemen memori tanpa pemindahan citra proses antara memori utama dan disk selama eksekusi. Terdiri dari : Monoprogramming Ciri-ciri : Hanya satu proses pada satu saat Hanya satu proses menggunakan semua memori Pemakai memuatkan program ke seluruh memori dari disk atau tape Program mengambil kendali seluruh mesin Contoh : IBM PC menggunakan cara ketiga di mana device driver ROM ditempatkan pada blok 8K tertinggi dari address space 1M. Program pada ROM disebut BIOS (Basic Input Output System).

36 Sistem Operasi di RAM Sistem Operasi di ROM Sistem Operasi di RAM Program Pemakai di RAM Program Pemakai di RAM Program Pemakai di RAM Memori Tidak Dipakai Memori Tidak Dipakai Memori Tidak Dipakai Device Driver = RAM = ROM Tiga Cara Organisasi Memori Satu Proses Tunggal Multiprogramming Dengan Pemartisian Statis Terbagi dua : 1. Pemartisian menjadi partisi-partisi berukuran sama, yaitu ukuran semua partisi memori adalah sama 2. Pemartisian menjadi partisi-partisi berukuran berbeda, yaitu ukuran semua partisi memori adalah berbeda. Strategi Penempatan Program Ke Partisi Satu Antrian Tunggal Untuk Semua Partisi Keuntungan : Lebih fleksibel serta implementasi dan operasi lebih minimal karena hanya mengelola satu antrian. Kelemahan : Proses dapat ditempatkan di partisi yang banyak diboroskan, yaitu proses kecil ditempatkan di partisi sangat besar. Partisi 1 Partisi 2 50 Kbyte 75 Kbyte Partisi 3 Partisi 4 Partisi Kbyte 200 Kbyte 150 Kbyte Sistem Operasi Multiprogrammning dengan Pemartisian Tetap dengan Satu Antrian

37 Satu Antrian Untuk Tiap Partisi (banyak antrian Untuk Seluruh Partisi) Keuntungan : Meminimalkan pemborosan memori Kelemahan : Dapat terjadi antrian panjang di suatu partisi sementara antrian partisi - partisi lain kosong Partisi 1 50 Kbyte Partisi 2 75 Kbyte Partisi Kbyte Partisi 4 Partisi 5 SSSistem Operasi 200 Kbyte 150 Kbyte 100 Kbyte Multiprogrammning dengan Pemartisian Tetap dengan Banyak Antrian Multiprogramming Dengan Swapping Swapping : pemindahan proses dari memori utama ke disk dan kembali lagi. 1. Multiprogramming dengan Pemartisisan Dinamis Jumlah, lokasi dan ukuran proses di memori dapat beragam sepanjang waktu secara dinamis. Kelemahan: - Dapat terjadi lubang-lubang kecil memori di antara partisi-partisi yang dipakai. - Merumitkan alokasi dan dealokasi memori Solusi: Lubang-lubang kecil di antara blok-blok memori yang digunakan dapat diatasi dengan pemadatan memori yaitu menggabungkan semua lubang kecil menjadi satu lubang besar dengan memindahkan semua proses agar saling berdekatan. MMMemori Untuk Sistem Operasi Proses 0 Bebas Proses 2 Bebas Proses 4 Bebas MMMemori Untuk Sistem Operasi Proses 0 Proses 2 Proses 4 Proses 6 Bebas Proses 6 Lubang-lubang Memori dan Pemadatan Memori

38 2. Pencatatan Pemakaian Memori Pencatatan memakai peta bit (Bit Map) Pencatatan memakai linked list Pencatatan memakai peta bit - Nilai 0 pada peta bit berarti unit masih bebas - Nilai satu berarti unit digunakan / terisi Setelah penggalan memori rampung dipakai, maka keadaan bit akan berubah dari 1 ke 0, begitupun sebaliknya. Jika jumlah penggalan memori kerja benar, maka bit menjadi panjang dan pemeriksaan keadaan penggalan memori kerja akan lama. A B C Pencatatan memakai Linked List P= Proses, H=Hole(lubang) Peta Bit untuk Pengelolaan Pemakaian Memori A B C P 0 5 H 5 3 P 8 6 P 14 4 H 18 2 P 20 3 Hole Panjang=2 Proses Start Di 18 Pengelolaan Pemakaian dengan Linked List 3. Strategi Alokasi Memori Pencocokan / FIT Karena ukuran penggalan memori tidak selalu sama besar, maka dibutuhkan pencocokan ukuran dari memori dukung dengan ukuran penggalan memori di memori kerja. 1. Cocok pertama / First fit algorithm Pencocokan terjadi menurut antrian informasi, informasi yang terdepan dicocokkan terlebih dahulu dan menurut urutan penggalan, penggalan yang terdepan dicocokkan terlebih dahulu. Contoh : Antrian informasi setiap ukuran.

39 5K 3K 1K 2K Urutan Pemenggalan 4K Memori Setiap 3K Ukuran 2K 6K 2. Cocok pertama berdaur / Cyclical first fit Pencocokan tidak harus dimulai dari urutan penggalan memori pertama. Contoh : informasi 2K telah menempati penggalan 4 K, pencocokan cocok pertama berdaur bagi informasi 1K tidak lagi mencoba penggalan 4K tetapi 3K dan karena penggalan memori ini dapat menampung informasi tersebut, maka pada cocok pertama berdaur informasi 1K menempati memori 3K. 3. Cocok terbaik / best fit Mencari penggalan memori yang dapat menampung informasi yang paling pas / tidak ada memori di penggalan yang tersisa / sisanya yang paling kecil. Contohnya informasi pertama 2K mencari penggalan informasi yang terpas yaitu pada penggalan memori 2K juga / tidak ada sisa. 4. Cocok terburuk / worst fit Kebalikan dari cocok terbaik yaitu akan menempati penggalan yang ukurannya terbesar sehingga banyak ruang memori pada penggalan itu yang tidak terpakai. Contohnya informasi 2K akan menempati penggalan berukuran 6K sisa yang tidak terpakai = 4K. Sistem Buddy / Konco Memori di susun dalam senarai blok-blok bebas berukuran 1,2,4,8,16 Kbyte dst, sampai kapasitas memori. Permintaan : A = 70 Kb; B = 35 Kb; C = 80 Kb; D = 60 Kb 1024 A A B A B 64 C B 64 C D C D C C Pengelolaan Memori dengan Sistem Buddy Dari berbagai cara alokasi tersebut di atas, sebuah hole yg ditempati proses akan terbagi menjadi bagian yang dipakai proses dan memori yang tidak terpakai (fragmen). Timbulnya memori yang tidak terpakai disebut fragmentasi. 1. Fragmentasi internal Suatu informasi menempati penggalan yang lebih besar ukurannya akan menyebabkan adanya sisa dalam penggalan memori tersebut. Sisa tersebut dinamakan fragmentasi internal. 2. Fragmentasi eksternal Penggalan memori bebas yang ukurannya terlalu kecil untuk dapat menampung penggalan informasi yang akan dimuat ke penggalan memori itu. Misalnya informasi 5K akan menempati penggalan memori yang belum terisi yaitu 1K dan 2K tetapi karena ukurannya tidak sesuai maka pemuatan

40 informasi ke penggalan memori tidak dapat dilaksanakan, maka penggalan memori 1K dan 2K(=3K) menjadi fragmentasi eksternal. Contoh : 5K 2K Internal eksternal Terisi 2K 1K 2K 3K 1K 2k Alokasi Ruang Swap pada Disk (Penempatan proses pada disk setelah di-swap-out dari memori) - Ruang disk tempat swap dialokasikan begitu diperlukan - Ruang disk tempat swap dialokasikan lebih dahulu. Algoritma untuk pengaturan ruang swap pada disk sama dengan untuk memori utama. Perbedaannya adalah ruang pada disk harus dialokasikan sebagai kelipatan bilangan bulat dari disk block.

41 VIRTUAL MEMORY Overlay : Program dipecah menjadi bagian-bagian yang dapat dimuat memori, jika memori terlalu kecil untuk menampung seluruhnya sekaligus. Overlay disimpan pada disk dan di-keluar-masukkan dari dan ke memori oleh sistem operasi. Pembagian dilakukan oleh programmer. Sistem Operasi Bagian Kode dan data pemakai yang harus selalu tinggal di memori utama selama eksekusi program Daerah Overlay Fase Fase Fase Inisialisasi Pemrosesan Keluaran Struktur Umum Overlay Virtual memory (Memori maya) : sistem operasi menyimpan bagian-bagian proses yang sedang digunakan di memori utama dan sisanya di disk. Virtual memory dapat diimplementasikan dengan tiga cara, yaitu: Paging Segmentasi Kombinasi paging dan segmentasi 1. Paging Sistem paging mengimplementasikan ruang alamat besar pada memori kecil menggunakan index register, base register, segment register, dll. Istilah pada sistem paging: - Alamat virtual = V; Alamat yg dihasilkan dgn perhitungan menggunakan index register, base register, segment reg dsb. - Alamat nyata (real address = R); Alamat yang tesedia di memori utama fisik. - Page; Unit terkecil virtual address space. - Page frame; Unit terkecil memori fisik. - Page fault; Permintaan alokasi page ke memori yang belum dipetakan. - MMU (Memory Management Unit); Chip atau kumpulan chip yang memetakan alamat maya ke alamat fisik.

42 CPU card CPU MMU CPU mengirim alamat virtual ke MMU MEMORI DISK CONTROL LER BUS MMU mengirim alamat fisik ke memori Posisi dan fungsi MMU Alamat 0 4 K 4 K 8 K 8 K 12 K 12 K 16 K 16 K 20 K 20 K 24 K 24 K 28 K 28 K 32 K 32 K 36 K 36 K 40 K 40 K 44 K 44 K 48 K 48 K 52 K 52 K 56 K 56 K 60 K 60 K 64 K X X X 5 X 7 X X X X Mem Virtual Memori 0 4 K 4 K 8 K 8 K 12 K 12 K 16 K 16 K 20 K 20 K 24 K 24 K 28 K 28 K 32 K Page Relasi Antara Alamat Virtual dan Alamat Fisik 2. Tabel Page Alamat virtual dibagi menjadi dua bagian: - Nomer Page (bit-bit awal) - Offset (bit-bit akhir) Secara metematis: tabel page merupakan fungsi dgn nomer page sebagai argumen dan nomer frame sebagai hasil.

43 Nomer page = 2 Offset 12 bit dicopy persis dari input ke output Tabel Page Present/absent bit Cara Kerja Pemetaan oleh MMU Nomer Page Offset Tabel Page Nomer Frame Offset 3. Memori Asosiatif Tabel Page biasanya diletakkan di memori, dengan demikian diperlukan dua kali referensi ke memori : sekali untuk mencari page, dan sekali untuk mencari data yang akan diproses. Solusi: Komputer dilengkapi dengan komponen hardware kecil untuk pemetaan alamat virtual ke alamat fisik tanpa menelusuri seluruh tabel page. Komponen ini disebut memori asosiatif atau translation lookaside buffer, yang biasanya berada di dalam MMU, dan berisi beberapa entri.

44 Valid entry No. page Modified Protection No. frame RW R X RW RW R X R X RW RW 75 Memori asosiatif untuk mempercepat paging Bagian referensi memori yang dapat dipenuhi dari memori asosiatif disebbut hit ratio. Makin tinggi hit ratio, makin baik performance manajemen memori khususnya, dan komputer umumnya. ALGORITMA PENGGANTIAN PAGE Saat terjadi fault berarti harus diputuskan page frame yang harus diganti. 1. Algoritma penggantian page acak: Page yg dikeluarkan untuk memberi tempat ke yang baru ditentukan secara acak tanpa kriteria tertentu. 2. Algoritma penggantian page optimal: Setiap page diberi label untuk menandai berapa instruksi lagi baru dia digunakan. Page dengan label tertinggi (waktu dari sekarang sampai pemakaian berikutnya paling lama) yang akan dikeluarkan. Algoritma Penggantian Page Optimal String Pengacuan Fault F F F F F F 6 Fault 3. Algoritma penggantian page NRU (not recently used): Setiap page diberi status bit R (referenced) dan M (modified). Bit bernilai 0 jika page belum direferensi/dimodifikasi, dan 1 jika sebaliknya. Dari nilai desimalnya didapat 4 kelas: R M Kelas Keterangan not referenced, not modified not referenced, modified referenced, not modified referenced, modified Page dengan kelas terkecillah yang akan dikeluarkan 4. Algoritma penggantian page FIFO (First In First Out): Page yang paling dulu masuk ke memori dari semua page yang ada dikeluarkan. Algoritma Penggantian Page FIFO String Pengacuan Fault F F F F F F F F 8 Fault

45 Anomali pada FIFO (Belady s Anomaly) String Pengacuan Page Termuda Page Tertua Fault F F F F F F F F 9 Fault (a) String Pengacuan Page Termuda Page Tertua Fault F F F F F F F F 10 Fault (b) 5. Algoritma penggantian page Modifikasi FIFO (Second Chance): Mencari page yang berada di memori paling lama, tetapi juga tidak dipakai. Jika sebuah page dipakai (direferensi) bit R diset. Jika sistem menemukan bahwa bit R page yang paling lama ter-set, page tersebut tidak jadi dikeluarkan, tetapi bit R-nya di-reset. Waktu load A B C D E F G H Page yang di-load pertama kali (a) Page dalam urutan FIFO Page yang terakhir di-load. Waktu load B C D E F G H A A dianggap sebagai page yang baru di-load. (b) Daftar page setelah page fault pada waktu 20 dan bit R page A dalam keadaan set. Pada algoritma ini, daftar page bisa juga dibuat berbentuk jam (clock page replacement algorithm) Algoritma penggantian page clock String Pengacuan > >2* 2* 2* 2* >2* >2 >2* >2* >2* > * 5 5 5* 5* > > 1 >1 > Fault F F F F F F 6 Fault Keterangan : * adalah diacu dan > adalah ditunjuk pointer 6. Algoritma penggantian page LRU (Least Recently Used): Yang dikeluarkan ialah page yang sudah tidak terpakai dalam waktu paling lama. Algoritma Penggantian Page LRU String Pengacuan Fault F F F F F F F 7 Fault

46 ISU DISAIN SISTEM PAGING 1. Model Working Set Dalam bentuk paging murni, proses dimulai dengan memori kosong, dan page-page dimasukkan ke dalamnya setelah diminta. Cara ini disebut demand paging. Locality of reference: Kecenderungan proses untuk memakai satu set page yang sama selama beberapa saat. Satu set page tersebut di atas membentuk working set. Dalam hal ini, yang diusahakan oleh sistem operasi adalah agar working set berada utuh di memori pada saat eksekusinya. Jika ukuran memori terlalu kecil untuk working set, akan seringkali terjadi page fault. Hal ini disebut thrashing. Banyak sistem paging yang mengusahakan agar working set sudah ada di memori sebelum proses dimulai. Pendekatan ini disebut model working set. Tujuannya adalah untuk memperkecil jumlah terjadinya page fault (page yang diminta tidak ada di memori). Memasukkan page ke memori sebelum proses dimulai juga disebut prepaging. Untuk pertama kali menentukan working set, dipakai sistem aging untuk mengetahui berapa kali jumlah pemakaian setiap page. 2. Alokasi Global dan Lokal o Pada sistem timesharing, isi memori bisa seperti pada Gambar a. o Misalkan diminta page A6. Jika dikeluarkan A5 untuk memberi tempat ke A6, berarti dilakukan alokasi lokal. Bila yang dikeluarkan adalah B3, dilakukan alokasi global. o Algoritma lokal berhubungan dengan pemberian jumlah frame yang sama untuk setiap proses, sementara algoritma global secara dinamis mengalokasikan frame untuk proses yang berjalan. Age A0 10 A0 A0 A1 7 A1 A1 A2 5 A2 A2 A3 4 A3 A3 A4 6 A4 A4 A5 3 A5 -> A6 A5 B0 9 B0 B0 B1 4 B1 B1 B2 6 B2 B2 B3 2 B3 B3 -> A6 B4 5 B4 B4 B5 6 B5 B5 B6 12 B6 B6 C1 3 C1 C1 C2 5 C2 C2 C3 6 C3 C3 (a) (b) (c) Penggantian page global vs. lokal. (a) Konfigurasi awal. (b) Penggantian page lokal. (c) Penggantian page global. 3. Ukuran Page o Ukuran page merupakan salah satu parameter yang ditentukan oleh perancang sistem operasi. o Penentuan ukuran page yang optimum harus menyeimbangkan beberapa faktor. o Rata-rata, page terakhir hanya akan terisi setengah (fragmentasi internal), berarti page sebaiknya kecil. Tetapi page yang kecil akan menghasilkan tabel page yang panjang. s (byte) = ukuran proses rata-rata p (byte) = ukuran page e (byte) = ukuran setiap page entry s/p = perkiraan jumlah page yang dibutuhkan per-proses se/p (byte) = ruang untuk tabel page

47 p/2 = memori yang terbuang karena fragmentasi overhead = memori yang terpakai untuk tabel page dan fragmen internal. overhead = se/p + p/2 Ukuran tabel page besar jika ukuran page kecil. Fragmen internal besar jika ukuranb page besar. Optimum harus ada di antaranya. Dengan mengambil penurunan pertama terhadap p dan menyemakan dengan nol: -se/p 2 + ½ = 0 Dari persamaan ini, ukuran page optimum adalah: p = (2se) Sebagian besar komputer komersial menggunakan ukuran page antara 512 byte 8K. 4. Isu Implementasi Instruction backup Instruksi yang menyebabkan referensi ke page yang belum ada di memori (menyebabkan page fault) harus diulang ketika page tersebut telah tersedia. Beberapa sistem operasi meng-copy setiap instruksi sebelum dilaksanakan sehingga hal ini tidakmakan waktu terlalu lama. Locking pages in memory Pada saat satu proses menjalani tahap I/O, proses lain bisa dijalankan. Yang mungkin terjadi ialah page proses I/O tersebut digantikan oleh proses yang kedua ini (jika dipakai alokasi global). Jalan keluarnya ialah dengan me-lock page-page proses I/O. Shared pages Dua atau lebih proses bisa memakai bersama page-page yang berasal dari editor yang mereka pakai. Penutupan salah satu proses ini tanpa disengaja bisa mengosongkan juga page yang dipakai bersama tersebut. Diperlukan suatu struktur data khusus untuk memantau page-page yang dipakai bersama ini. Backing Store Pada disk, disediakan area untuk menampung page yang dikeluarkan dari memori (paged out) yang disebut swap area. Setiap proses memiliki swap area di disk. Swap area ada yang statis ada juga yang dinamis. Paging Daemon Untuk meyakinkan tersedianya frame bebas yang cukup banyak, banyak sistem paging yang menggunakan proses background yang disebut paging daemon. Jika jumlah frame bebas terlalu sedikit, paging daemon akan mengosongkan beberapa page setelah menulisnya ke disk jika pernah dimodifikasi. Penanganan Page Fault Urutan langkah-langkah penanganan adalah sebagai berikut: 1. Hardware melakukan trap ke kernel, program counter di-save ke stack. Pada banyak mesin, beberapa informasi tentang status instruksi saat itu di-save di register-register khusus CPU. 2. Rutin kode assembly dimulai untuk men-save register-register umum dan informasi lain yang bisa berubah, agar sistem operasi tidak merusaknya. Rutin ini memanggil sistem operasi sebagai suatu prosedur. 3. Sistem operasi menemukan bahwa terjadi page fault, dan mencoba menemukan page virtual mana yang diperlukan. Seringkali salah satu register hardware berisi informasi ini. Jika tidak, sistem operasi harus menarik program counter, mengambil instruksi, dan melakukan parsing pada software untuk mengetahui apa yang dilakukan sebelum terjadi fault. 4. Begitu alamat virtual yang menyebabkan fault diketahui, sistem operasi memeriksa apakah alamat ini valid dan proteksinya konsisten dengan akses. Jika tidak, proses dikirimi sinyal atau ditutup. Jika alamat valid dan tidak ada pelanggaran proteksi, sistem berusaha untuk mendapatkan frame page dari daftar frame bebas. Jika tidak ada frame yang bebas, dijalankan algoritma penggantian page untuk mencari yang bisa ditukar. 5. Jika frame page yang dipilih telah dimodifikasi, page dijadwalkan untuk ditransfer ke disk, dan terjadi pertukaran proses, menghentikan sementara proses yang fault dan membiarkan yang lainnya berjalan hingga transfer disk selesai. Frame ditandai terpakai untuk mencegah dipakai untuk tujuan lain. 6. Begitu frame page bersih (apakah langsung atau setelah disave ke disk), sistem operasi menelusuri alamat disk di mana page diperlukan, dan menjadwalkan operasi disk untuk memasukkannya.

48 Sementara page dimasukkan, proses yang mengalami fault dihentikan sejenak dan yang lainnya dijalankan, jika ada. 7. Ketika disk interrrupt menandai bahwa page telah ada, tabel page di-update untuk menunjukkan posisinya, dan frame ditandai berada dalam status normal. 8. Instruksi yang menyebabkan fault di-back-up ke status mulainya dan program counter di-reset untuk menunjuk ke instruksi tersebut. 9. Proses yang fault tersebut dijadwalkan, dan sistem operasi kembali ke rutin bahasa assembly yang memanggilnya. 10. Rutin ini mengembalikan register dan informasi lainnya ke keadaan semula, dan kembali ke user untuk melanjutkan eksekusi, seakan-akan tidak ada fault yang terjadi. SEGMENTASI Compiler bisa memiliki beberapa tabel dengan alamat virtual yang terpisah, misalnya terdiri dari tabeltabel untuk: 1. Source text, 2. Tabel simbol, 3. Tabel untuk semua konstanta integer dan floating point, 4. Parse tree, berisi analisis sintaksis program, dan 5. Stack yang digunakan untuk pemanggilan prosedur. Tabel 1 s/d 4 bisa bertambah pada saat kompilasi berjalan, sehingga dengan sistem paging yang berukuran tetap, batas satu page bisa terlampaui. Dengan alasan ini dipakai bagian-bagian dengan alamat yang relatif independen, yang disebut segmen. Setiap segmen mempunyai ukuran yang berbeda dengan yang lain. Panjang segmen juga bisa berubah selama eksekusi. Program harus menyediakan alamat yang terdiri dari dua bagian: - nomer segmen - alamat di dalam segmen Segmentasi juga memberikan fasilitas pemakaian bersama prosedur atau data antar beberapa proses. Contoh umumnya adalah shared library. Segmen Segmen Segmen Segmen Segmen Konstanta 0 0 4K 4K 4K 4K Source Parse Call text tree stack 8K 8K 8K 8K Tabel simbol 12K 12K 12K 12K 16K 16K 20K Memori yang tersegmentasi memungkinkan setiap tabel bertambah atau berkurang.

49 Pertimbangan Paging Segmentasi Apakah programmer harus menyadari bahwa Tidak Ya teknik ini sedang digunakan? Berapa banyak ruang alamat linier yang ada? 1 Banyak Dapatkah ruang alamat total melebihi ukuran Ya Ya memori fisik? Apakah tabel yang ukurannya berubah-ubah Tidak Ya dapat diakomodasi? Dapatkan prosedur dan data dibedakan dan Tidak Ya diproteksi secara terpisah? Adakah fasilitas pemakaian bersama prosedur Tidak Ya antar user? Mengapa teknik ini diciptakan? Untuk mendapatkan ruang alamat linier yang besar tanpa harus membeli memori fisik tambahan Untuk memungkinkan program dan data dibagi menjadi ruang alamat yang secara logik independen dan untuk membantu pemakaian bersama dan proteksi Perbandingan paging dan segmentasi. Checkerboarding: Timbulnya blok-blok memori yang kosong (hole) pada saat isi segmen dikeluarkan. Hal ini diatasi dengan pemampatan (compaction). Segmentasi dengan Paging : Setiap segmen dapat dianggap sebagai satu virtual memori, dan masingmasing dibagi menjadi page-page. Salah satu mesin yang memakai cara ini adalah MULTICS. Setiap program MULTICS memiliki satu tabel segmen, dengan satu descriptor per segmen. Segmen descriptor berisi keterangan apakah segmen yang bersangkutan ada di memori atau tidak. Segmen descriptor Tabel page untuk segmen 0 36 bit Page 0 entry Descriptor segmen 0 Page 1 entry Pointer- Descriptor segmen 1 Page 2 entry pointer Descriptor segmen 2 Page 3 entry ke page Descriptor segmen 3 Descriptor segmen 4 Descriptor segmen 5 Tabel page untuk segmen 1 Descriptor segmen 6 Descriptor segmen 7 Page 0 entry Page 1 entry Page 2 entry Page 3 entry Page 4 entry Page 5 entry Virtual address MULTICS 34-bit: Alamat di dalam segmen Nomer segmen Nomer page Offset di dalam page

50 Nomer segmen Nomer page Offset di dalam page Descriptor Nomer segmen Page frame Nomer page Offset Segmen descriptor Tabel page Word Page Konversi alamat MULTICS menjadi alamat memori utama.

51 SISTEM FILE Pada proses penyimpanan dan pembacaan data bisa timbul masalah: 1. Kapasitas media penyimpanan tidak cukup (terbatas). 2. Ketika proses dihentikan, data hilang. 3. Kebutuhan mengakses data atau sebagiannya dalam waktu bersamaan. Oleh karena itu diperlukan media penyimpanan yang : 1. Mampu menyimpan data yang besar. 2. Mampu menjaga data walaupun proses yang mengaksesnya dihentikan. 3. Proses yang bersamaan dapat mengakses data secara bersama-sama, tanpa ada yang terganggu. Solusi untuk semua masalah tsb adalah dengan menyimpan data pada disk atau media lain dalam bentuk unit-unit yang disebut FILE. Data yang disimpan dalam bentuk file harus tetap tidak berubah ketika proses dibentuk atau dihentikan. File bisa hilang hanya ketika dihapus saja. Sistem File adalah bagian sistem operasi yang menangani masalah file. 1. FILE 1.1 Penamaan File File merupakan bentuk mekanisme abstrak. Karakteristik yang paling penting dari mekanisme abstrak adalah cara pemberian nama suatu obyek. Ketika proses membuat suatu file, proses akan memberi sebuah nama kepada file. Ketika proses selesai, file masih ada dan bisa diakses oleh proses lain dengan menggunakan nama file tsb. Semua sistem operasi menerima bentuk nama file yang terbuat dari 1 sampai 8 karakter. Tetapi ada beberapa sistem operasi yang membedakan huruf besar dan huruf kecil, seperti UNIX. Contoh : BARBARA, BARbara, BarBaRa ----> UNIX membedakannya ----> DOS menganggap sama ----> WINDOWS??? ----> LINUX??? Kebanyakan sistem operasi mampu menangani dua bagian bentuk nama file yang dipisah dengan titik (period), bagian yang terletak setelah tanda titik disebut extension, yang biasanya menggambarkan ciri khusus dari file ybs. Contoh : - DOS nama file ----> [1 sampai 8 karakter].[1 sampai 3] - UNIX ----> [1 sampai? karakter].[1 sampai?].[...].[...]...sampai? Beberapa extension file yang biasa ditemukan tampak pada tabel berikut : Extension *.bak *.bas *.bin *.c *.dat *.doc *.ftn *.hlp *.lib *.man *.obj *.pas *.tex *.txt Artinya File Backup Program source Basic Program executable binary Program source C File Data File Dokumentasi Program source Fortran File Teks untuk HELP command Library dari file.obj yang digunakan linker Online manual page File object Program source Pascal Teks masukan untuk format program TEX File teks umum

52 Pada kasus khusus, extension ini hanya berupa Konvensi, seperti : - data03.txt, menyatakan file dalam bentuk file teks. - program05.c menyatakan file berupa file code bahasa C, C compiler hanya mengcompile extension *.C. 1.2 Struktur File Beberapa kemungkinan bentuk struktur file tampak pada gambar 1. Gambar 1. Tiga macam file. (a) Urutan byte. (b) Urutan record. (c) Tree. a. File dibentuk dari urutan byte yang tidak terstruktur. Akibatnya : Sistem operasi tidak tahu apa yang ada didalamnya. DOS dan UNIX menerapkan bentuk ini, LINUX?, WINDOWS? Cara mengambil isi file dengan program. b. File dibentuk dari urutan record dengan panjang yang sama dan struktur internal didalamnya. Operasi read akan membaca satu record. Operasi write akan overwrite/append satu record. Cocok untuk sistem operasi yang menerapkan Punch Card, karena ukurannya tetap. c. File dibentuk dari struktur organisasi tree record, ukuran record tidak harus sama, setiap record mengandung field Key pada posisi yang sama. Tree record diurutkan berdasarkan Key nya. Operasinya dengan melihat Key. Banyak diterapkan pada sistem operasi Mainframe untuk pemrosesan data komersial. 1.3 Jenis File UNIX dan DOS memiliki jenis file : a. Regular File : jenis file yang mengandung informasi user. Contoh gambar 1. b. Directory : file sistem yang mengatur struktur sistem file. c. Character Special File : File yang berhubungan dengan peralatan I/O dan memodelkan peralatan serial, seperti Terminal, Printer, NIC. d. Block Special File : File yang digunakan untuk memodelkan disk. Regular File bisa berbentuk ASCII maupun binary. Keuntungan bentuk ASCII adalah dapat ditampilkan dan dicetak seperti apa adanya dan dapat diedit menggunakan editor yang biasa dipakai. File Binary memiliki struktur internal sendiri, contoh dalam UNIX pada gambar 2.

53 Gambar 2. (a) File executable. (b) Archive. Magic Number : menyatakan bahwa file berupa file executable. Binary file dalam bentuk archive mengandung kumpulan library procedure (module) yang telah dicompile tapi tidak dilink. Seluruh sistem operasi paling tidak harus mengenal satu jenis file executable, miliknya sendiri. Bahkan jika file source codenya diubah, mampu melakukan compile ulang secara otomatis. Contoh perintah UNIX : make, berada didalam shellnya. 1.4 Pengaksesan File Ada dua cara : a. Sequential Access, proses dapat membaca seluruh byte/record dalam suatu file, mulai dari awal, tidak boleh melompat atau keluar dari urutannya. Cocok untuk file yang disimpan pada media Magnetic Tape. b. Random Access, bisa membaca byte/record untuk berbagai macam urutan pengaksesan. Cocok untuk file yang disimpan pada media Disk. Jenis ini lebih sesuai untuk berbagai aplikasi, seperti sistem database airport. Sistem operasi Mainframe lama banyak menggunakan kedua cara, karena memiliki dua bentuk media penyimpanan tsb. Sedangkan sistem operasi modern tidak membedakannya, otomatis semua file diakses secara acak (Random access). 1.5 Atribut File Jenis-jenis atribut file tampak pada Tabel berikut. Field Protection Password Creator Owner Read Only flag Artinya Who can access the file and in what way Password needed to access the file Id of person who created the file Current owner 0 for read/write, 1 for read only

54 Hidden flag System flag Archive ASCII/binary flag Random access flag Temporary flag Lock flag Record length Key position Key length Creation time Time of last access Time of last change Current size Maximum size 0 for normal, 1 for do not display in listings 0 for normal file, 1 for system file 0 has been backed up, 1 for needs to be backed up 0 for ASCII file, 1 for binary file 0 for sequential access only, 1 for random access 0 for normal, 1 for delete on process exit 0 for unlocked, nonzero for locked Number of bytes in a record Offset of the key within each record Number of bytes in the key field Date and Time file was created Date and Time file was last accessed Date and Time file was last changed Number of bytes in the file Maximum size file may grow ro 1.6 Operasi File Sistem Call yang biasa digunakan dalam hubungan dengan file : a. Create : File dibuat dan tidak berisi data. b. Delete : File dihapus karena tidak diperlukan lagi dan untuk memperbesar ruang disk sisa. Beberapa sistem operasi akan menghapus file jika tidak digunakan dalam jangka waktu tertentu. c. Open : Sebelum menggunakan file, file harus diopen dulu. Open akan menjadikan sistem mengambil atribut dan daftar alamat disk dan meletakkan didalam memori kerja agar diperoleh akses yang cepat. d. Close : Jika akses file selesai, atribut dan alamat disk tidak diperlukan lagi, sehingga harus ditutup dan untuk memperbesar ruang tabel daftar alamat disk internal. e. Read : Data dibaca dari file. Sistem menentukan banyaknya data dan menyediakan buffer untuk menampungnya. f. Write : Data disimpan kedalam file. Jika posisi berada diakhir file, maka ukuran file bertambah. Jika posisi ditengah, data yang ada akan ditimpa. g. Append : Menambah data setelah data terakhir. h. Seek : Mengatur posisi pointer saat itu menuju posisi yang ditentukan. i. Get Attribute : Pada UNIX, program make perlu melihat atribut file, terutama waktu modifikasinya yang terakhir. j. Set Attribute : Mengubah status atribut file. k. Rename : Merubah nama file. 1.7 Memory-Mapped File Sistem operasi melakukan pemetaan file kedalam ruang alamat disk pada alamat virtual. Pemetaan ini sangat cocok pada Segmentasi. Contoh pada gambar 3. Gambar 3 (a) Proses segmentasi sebelum memetakan file ke ruang alamatnya. (b) Proses setelah memetakan file abc ke satu segmen dan membuat segmen baru untuk file xyz.

55 Proses memiliki dua segmen, teks dan data. Proses melakukan sistem call COPY. Pertama, memetakan file sumber (abc) ke sebuah segmen. Kemudian membuat segmen kosong dan memetakannya ke file tujuan (xyz). Proses dapat mengcopy segmen sumber ke dalam segmen tujuan menggunakan loop copy biasa, bukan Read dan Write. Kelebihan Pemetaan File : - Menghilangkan kebutuhan I/O sehingga mempermudah pemrograman. Kekurangan Pemetaan File : - Sistem sulit untuk mengetahui panjang sebenarnya dari file output (xyz). - Hasil pemetaan belum tentu sama dari sumbernya, jika terjadi modifikasi sumber, outputnya belum tentu dimodifikasi juga. - Tidak bisa memetakan ukuran file yang lebih besar dari ukuran segmen. 2. DIRECTORY Untuk menjaga agar file tetap pada jalurnya dan diketahui, maka sistem file menyediakan DIRECTORY. 2.1 Sistem Directory Hirarki Diantara bentuk sistem directory tampak pada gambar 4 Gambar 4. Directory. (a) Atribut pada directory entry. (b) Atribut di tempat lain. Ketika file diopen, sistem operasi mencari directorynya sampai ditemukan nama file ybs, kemudian mengekstrak atribut dan alamat disk langsung dari daftar directory atau dari struktur data yang menunjukkannya, lalu meletakkan kedalam tabel didalam memory kerja. Bentuk disain sistem file tampak pada gambar 5.

56 Gambar 5. Tiga disain sistem file. (a) Satu directory dipakai bersama oleh semua user. (b) Satu directory per user. (c) Sembarang tree per user. Huruf-huruf menyatakan pemilik directory atau file. 2.2 Nama Path Penamaan Path ada dua cara : a. Absolute Path Name : mengandung path dari directory root sampai file. Selalu dimulai dari Root dan bersifat Unik. Di UNIX, directory dipisah dengan tanda /, DOS dengan \. Jika karakter pertama dari nama path dimulai dengan tanda tsb, maka path termasuk jenis absolut ini. Contoh : /usr/ast/mailbox root directory mengandung subdirectory usr, dimana didalamnya ada subdirectory ast, dimana didalamnya lagi ada subdirectory mailbox. b. Relative Path Name : Untuk seluruh kasus path yang tidak dimulai dari root, diambil secara relatif ke directory kerja (working directory/current directory). Contoh : Directory kerja /usr/ast, file yang mempunyai path absolut /usr/ast/mailbox dapat diwakili dengan mailbox saja. Seperti perintah : cp /usr/ast/mailbox /usr/ast/mailbox.bak dan cp mailbox mailbox.bak adalah perintah UNIX yang menghasilkan efek yang sama. Kebanyakan sistem operasi mempunyai dua directory khusus, "." dan "..", dot dan dotdot. Dot menunjukkan directory saat itu dan Dotdot menunjukkan parent directory. Contoh gambar 6

57 Gambar 6. UNIX directory tree Directory kerja /usr/ast, copy file /usr/lib/dictionary ke directorynya sendiri dengan : cp../lib/dictionary. 2.3 Operasi Directory Beberapa operasi directory : a. Create, membuat directory yang kosong kecuali dot dan dotdot yang otomatis dimasukkan oleh sistem. b. Delete, menghapus directory, Hanya directory yang kosong yang dapat dihapus. c. OpenDir, Mendaftar seluruh file yang ada di directory ybs. d. CloseDir, Setelah selesai membaca directory, maka harus ditutup untuk memperbesar ruang tabel internal. e. ReadDir, Menghasilkan daftar directory pada directory yang sedang dibuka. f. Rename, Mengubah nama directory. g. Link, Cara agar file dapat muncul dibeberapa lokasi directory. h. UnLink, Menghilangkan Link. 3. IMPLEMENTASI SISTEM FILE Menjelaskan cara file dan directory disimpan, ruang disk diatur dan membuat segalanya efisien dan reliable. 3.1 Mengimplementasikan File Kunci masalah implementasi penyimpanan file adalah selalu mengetahui perubahan blok disk akibat ada tidaknya file. a. Contiguous Allocation Ini merupakan alokasi paling sederhana dengan menyimpan setiap file kedalam blok data yang berurutan didalam disk. Kelebihannya : - Mudah implementasinya, karena untuk mengetahui letak blok file hanya cukup mengingat satu nomor, blok yang pertama saja. - Kinerjanya sangat bagus, karena seluruh file dapat dibaca dari disk dalam satu operasi saja.

58 Kekurangannya : - Tidak bisa dialokasikan jika ukuran maksimum file tidak diketahui. - Mudah terjadi fragmentasi, sisa blok yang tidak digunakan. b. Linked List Allocation Menyimpan file dalam skema Linked List, seperti tampak pada gambar 7. Gambar 7. Menyimpan file sebagai linked list dari blok-blok disk. Kelebihannya : - Seluruh blok dapat dipakai, tidak terjadi fragmentasi. Kekurangannya : - Pengaksesan file secara acak akan lambat. - Kebutuhan ukuran blok data meningkat karena pointer juga memerlukan beberapa byte. c. Linked List Allocation menggunakan Indeks Caranya sama seperti point b tetapi menambahkan tabel berindeks kedalam memory, seperti pada gambar 8 berikut. Gambar 8. Alokasi linked list dengan menggunakan tabel di main memory. File A menggunakan blok 4,7,2,10 dan 12. Sedangkan file B menggunakan 6,3,11 dan 14. DOS menggunakan metode alokasi ini. Kelebihannya : - Pengaksesan file secara acak akan lebih cepat. Kekurangannya : - Seluruh tabel harus selalu ada didalam memory, sehingga mengurangi kapasitas memory. d. I-node alokasi file dengan menerapkan tabel yang berukuran kecil yang disebut i-node (index-node) yang mendaftar atribut dan alamat disk dari blok file. Tampak pada gambar 9.

59 Gambar 9. I-node. Untuk file-file yang berukuran besar, dipetakan ke blok yang disebut Single Indirect Block (SIB) yang mengandung alamat disk tambahan. Jika masih tidak cukup maka alamat lain dipetakan ke Double Indirect Block (DIB) yang mengandung alamat blok yang mendaftar SIB. Setiap SIB menunjuk ke beberapa ratus blok data. Jika ternyata masih kurang lagi, Triple Indirect Block (TIB) bisa digunakan. - UNIX menggunakan metode alokasi ini. - WINDOWS??? - OS/2??? 3.2 Mengimplementasikan Directory a. Directory pada sistem CP/M Sistem ini hanya memiliki satu directory saja, sehingga semua file harus dicari dan dilihat dari directory ini. Tampak pada gambar 10. Gambar 10. Directory yang berisi nomer blok disk untuk setiap file. - User code digunakan untuk mengetahui nama pemilik file ybs. - Extent akan diperlukan bila ukuran file lebih besar dari 16 blok, sehingga memerlukan beberapa directory. Extent berisi nomor urut. - Block Count menunjukkan jumlah blok yang digunakan dari 16 blok yang disediakan bit terakhir berisi nomor blok disk. b. Directory pada DOS Sistem DOS menggunakan directory seperti tampak pada gambar 11.

60 Gambar 11. Entry directory MS-DOS. Panjangnya 32 bit yang terdiri dari nama, atribut, jam, tanggal, first block number (FBN) dan ukuran. FBN digunakan sebagai indeks tabel seperti pada gambar 11. a. Directory pada UNIX Sistem UNIX menggunakan struktur directory seperti tampak pada gambar 12. Gambar 12. Entry directory UNIX. Informasi tentang jenis, ukuran, waktu, kepemilikan, dan blok disk disimpan didalam i-node. Contohnya : Cara sistem mencari file jika diberikan path /usr/ast/mbox Gambar 13. Langkah-langkah pencarian /usr/ast/ast/mbox. dengan urutan : - sistem meletakkan posisinya pada root. - Permasalahan pada Symbolic Linking diperlukannya overhead. File yang mengandung path harus dibaca, path harus diparse dan diikuti setiap komponen per komponen, sampai i-node dicapai. Sehingga symbolic link memerlukan i-node tambahan. - Symbolic Linking menjadikan file memiliki lebih dari satu path. Operasi copy juga akan melaksanakan lebih dari satu kali. Kelebihannya : - dapat digunakan untuk menghubungkan file-file diseluruh mesin di dunia ini. 3.4 Pengaturan Ruang Disk Dua cara umum menyimpan file n byte : 1. Mengalokasikan ruang disk sebanyak n byte secara berurutan. 2. Memisah file menjadi sejumlah blok yang tidak harus berkesinambungan.

61 Ukuran Blok Ukuran blok berhubungan erat dengan kecepatan pembacaan/penyimpanan file dan pemakaian ruang disk. Contoh : Gambar 16. Kurva yg solid (skala kiri) menggambarkan data rate disk. Garis terputus (skala kanan) menyatakan efisiensi ruang disk. Semua file berukuran 1K. Cara mengetahui Blok yang Bebas Dua cara yang banyak digunakan adalah tampak pada gambar 17. Gambar 17. (a) Daftar blok bebas pada linked list. (b) Bit Map. a. Menggunakan Linked List, setiap blok menahan/memegang sejumlah blok bebas yang cocok dengannya. b. Bit Map. Blok bebas dinyatakan dengan 1, sedangkan blok yang telah dialokasi data dinyatakan dengan 0. Kuota Disk Tujuan : mencegah user agar tidak menggunakan ruang disk terlalu banyak, melampaui batas. Proses jalannya kuota ditampilkan pada gambar 18.

62 Gambar 18. Kuota dicatat per user pada tabel kuota. Terdapat dua tabel yang terletak didalam memory. - Tabel pertama mendaftar atribut dan alamat disk file yang dibuka. Setiap perubahan ukuran file akan dikenakan pada kuota user yang menggunakannya. - Tabel kedua berisi record kuota untuk setiap user dengan file yang sedang dibuka. Ketika user log in, sistem operasi akan mengecek kuota file yang digunakannya, apakah melampaui batas jumlah file atau jumlah blok disk. 3.5 Reliabilitas Sistem File Jika terjadi masalah terhadap sistem file, baik akibat bencana atau rusaknya software dan hardware komputer, maka diperlukan cara penaggulangannya. a. Pengaturan Blok Rusak (Bad Block) - Cara Hardware, menyiapkan blok cadangan. Bila sistem menemukan blok yang rusak, data akan dipetakan kelokasi blok cadangan. - Cara Software, menghapus blok yang rusak sehingga dianggap tidak ada. Pembacaan dan penyimpanan file ke blok rusak tidak akan terjadi, karena dianggap tidak ada blok tsb. b. Backup - Untuk ukuran kecil, floppy, dilakukan dengan copy. - Untuk ukuran besar, akan memerlukan waktu, sehingga perlu strategi seperti pada gambar 19. Gambar 19. Mem-backup setiap drive pada drive yang lainnya menyia-nyiakan setengah media penyimpanan. - melakukan incremental dumping setiap waktu. - DOS menerapkan sebuah atribut yang disebut Archive Bit. Jika sistem file ybs dibackup, maka archive bit dihapus (clear), tetapi bila file sedang diubah, archive bit diset secara otomatis.

63 c. Konsistensi Sistem File Jika sistem crash dan seluruh file yang diedit belum sempat disimpan, maka sistem file berada dalam kondisi tidak konsisten. Solusinya : - Sistem komputer melengkapi program utility untuk mengecek konsistensi sistem file ketika diboot, terutama setelah terjadinya crash. Metode pengecekan konsistensi ini : - Block, Program membuat dua counter untuk setiap blok : - counter pertama mencatat berapa kali blok berada didalam file - counter kedua merekam seberapa sering blok berada di daftar yang bebas (free list table). - Cara ini tampak pada gambar 20. Gambar 20. Status sistem file. (a) Konsisten. (b) Missing block. (c) Duplikasi blok pada daftar bebas. (d) Duplikasi blok data. a. Bentuk konsisten b. Blok 2 tidak muncul pada kedua tabel, dinamakan Missing Block. c. Block 4 muncul dua kali didalam daftar blok bebas (free list). d. Blok data yang sama muncul dalam dua atau lebih file, pada blok Kinerja Sistem File Pengaksesan ke disk jauh lebih lambat dibanding ke memory. Cara menanggulangi dengan menerapkan metode Block Cache atau Buffer Cache. Cara ini tidak dimaksudkan untuk menjaga data menetap lama didalamnya sebelum disimpan ke disk. Contoh : Ingin menulis skripsi, akan lebih cepat diakses bila diletakkan di buffer, tetapi ukuran bukunya sangat besar. Jika crash, semua yang diketik belum sempat disimpan...?? :(( Solusi : - System Call SYNC, diterapkan oleh UNIX. Sistem menjalankan UPDATE (menyimpan blok yang diubah kedalam disk) setiap 30 detik dengan proses background. Tidak cocok bila data disimpan di disket, apalagi berganti-ganti disket. Memang UNIX semula dirancang menggunakan media disk. - Write-Through Cache, diterapkan oleh DOS, menyimpan blok kedalam disk segera setelah ada perubahan. Cukup fleksibel menggunakan disket. - Meletakkan blok pada posisi yang berdekatan ketika diakses, sehingga mempercepat pembacaan.

64 Gambar 21. a. i-node diletakkan diawal disk, rata-rata jarak antara i-node dengan bloknya sekitar setengah jumlah cylinder, yang memerlukan pencarian yang lama. b. i-node diletakkan ditengah disk, akan mengurangi rata-rata pencarian antara i-node dengan bloknya setengah kali. Cara lain, membagi disk kedalam kelompok cylinder, setiap kelompok mempunyai i-node, blok dan daftar bebas sendiri. 4. PENGAMANAN 4.1 Seputar Pengamanan (security) Istilah "security" dan "protection" Security ditujukan untuk keseluruhan masalah sedangkan Protection merupakan mekanisme tertentu dari sistem operasi yang digunakan untuk menjaga informasi didalam komputer. Beberapa hal yang menyebabkan data hilang : 1. Bencana alam 2. Kesalahan Hardware atau Software 3. Kesalahan Manusia dalam menggunakan data. Ketiga hal diatas biasanya dapat diatasi dengan Backup. Masalah penting lainnya yaitu INTRUDER, dibagi dua : 1. Intruder Pasif, hanya melihat file yang sebenarnya bukan haknya. 2. Intruder Aktif, tidak sekedar membaca, tetapi juga merubah (merusak) data. Jenis perilaku intruder : 1. Iseng-iseng/coba sambil lalu saja. Biasa terjadi pada data yang bisa diakses semua user. 2. Snooping dari dalam. Seseorang yang masuk kedalam sistem jaringan komputer berusaha menembus pengamanan. 3. Berusaha cari keuntungan. Programer bank mencoba untuk mencuri uang. 4. Spionase/Militer. Biasanya berhubungan dengan politik. Aspek lain dalam pengamanan adalah PRIVACY : menjaga seseorang dari penyalahgunaan data miliknya. 4.2 Beberapa Pengamanan Terkenal Yang Gagal/Rusak Cara masuk ke UNIX tanpa melalui sistem pengamanannya dengan menghubungkan sebuah file yang disebut core di directory kerja menuju file password. User dapat mengubah file password. Contoh pengamanan jelek yang tidak begitu kelihatan : mkdir foo

MANAJEMEN PROSES. Satu Empat Model program counter program counter Proses

MANAJEMEN PROSES. Satu Empat Model program counter program counter Proses MANAJEMEN PROSES Proses : Adalah program yang sedang di jalankan atau software yang sedang dilaksanakan termasuk sistem operasi yang disusun menjadi sejumlah proses sequential. Konsep dasar : 1. Multiprogramming

Lebih terperinci

BAB II MANAJEMEN PROSES

BAB II MANAJEMEN PROSES BAB II MANAJEMEN PROSES Tujuan : 1. Dapat menjelaskan mengenai alur proses dalam komputer 2. Dapat mamahami algoritma penjadwalan proses 3. Dapat menjelaskan konsep-konsep yang berkaitan dengan penjadwalan

Lebih terperinci

P E N D A H U L U A N. Saluran Penghubung. Gambar 1. Diagram Blok Komputer. Banking Word Program Game System Processing. Aplikasi Compiler Utility

P E N D A H U L U A N. Saluran Penghubung. Gambar 1. Diagram Blok Komputer. Banking Word Program Game System Processing. Aplikasi Compiler Utility P E N D A H U L U A N 1. Blok Diagram Komputer Masukan Keluaran Memori Dukung Saluran Penghubung Control Unit Processor Memory Clock Gambar 1. Diagram Blok Komputer Banking Word Program Game System Processing

Lebih terperinci

Model Proses : 1. Sequential Process / bergantian 2. Multiprogramming 3. CPU Switching peralihan prosedur dalam mengolah 1 proses ke proses lainnya.

Model Proses : 1. Sequential Process / bergantian 2. Multiprogramming 3. CPU Switching peralihan prosedur dalam mengolah 1 proses ke proses lainnya. Nama : Windy Lia Safitri Nim : 1111465649 Tugas Mandiri 2 Interupsi pada system operasi Proses adalah sebuah program yang sedang dieksekusi. Sedangkan program adalah kumpulan instruksi yang ditulis ke

Lebih terperinci

BAB III TEKNIK PENJADWALAN PROSESOR

BAB III TEKNIK PENJADWALAN PROSESOR BAB III TEKNIK PENJADWALAN PROSESOR Tujuan : 1. Mengetahui teknik dalam penjadwalan dalam CPU 2. Mengetahui jenis-jenis penjadwalan CPU 3. Mampu menyelesaikan beberapa algoritma yang termasuk dalam penjadwalan

Lebih terperinci

PERTEMUAN 1 PENGENALAN SISTEM KOMPUTER & SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 1 1

PERTEMUAN 1 PENGENALAN SISTEM KOMPUTER & SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 1 1 PERTEMUAN 1 PENGENALAN SISTEM KOMPUTER & SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 1 1 LAYOUT Sistem Perkuliahan Pengenalan Matakuliah & Silabus Pengenalan

Lebih terperinci

BAB I MANAJEMEN PROSES

BAB I MANAJEMEN PROSES BAB I MANAJEMEN PROSES MATERI 1. Konsep Proses 2. Komunikasi Antar Proses STANDAR KOMPETENSI Mengerti konsep proses dan mengetahui komunikasi antar proses CAPAIAN PEMBELAJARAN Mahasiswa mengerti konsep

Lebih terperinci

Posisi OS thd sistem komputer Sumber daya komputer Pengertian semuakomponen di sistem komputer yang dapatmemberi manfaat Terdiri dari Sumber daya fisi

Posisi OS thd sistem komputer Sumber daya komputer Pengertian semuakomponen di sistem komputer yang dapatmemberi manfaat Terdiri dari Sumber daya fisi SISTEM OPERASI HENDRI SOPRYADI,S.KOM. sopryadi@stmik-mdp.netmdp.net 2008-20092009 Pengenalan sistem operasi Pengertian Tujuan Fungsi dan sasaran Sejarah sistem operasi Konsep sistem operasi Struktur dasar

Lebih terperinci

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan.

PENGATURAN PROSES. Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan. PENGATURAN PROSES Proses adalah program yang sedangdieksekusi atau sofware yang sedang dilaksanakan. 1. Konsep Dasar : Multiprogramming system. Melakukan proses satu persatu secara bergantian dalam waktu

Lebih terperinci

ADA APA DENGAN SISTEM OPERASI

ADA APA DENGAN SISTEM OPERASI KULIAH UMUM : Trend Sistem Operasi Masa Kini Universitas Gunadarma,, 23 Desember 2010 Mohammad Iqbal ADA APA DENGAN SISTEM OPERASI Mohammad Iqbal Menu Spesial Sesi ini SISTEM OPERASI, APA-AN TUH? SEJARAH

Lebih terperinci

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES

Sequential Process. Keterangan SISTEM OPERASI KOMUNIKASI ANTAR PROSES SISTEM OPERASI KOMUNIKASI ANTAR PROSES 1 2 Keterangan Sequential Process Model konseptual untuk empat sequential proses yang independent Multiprogramming dengan empat program Pada kenyataannya hanya satu

Lebih terperinci

Pertemuan 2. Struktur Sistem Operasi

Pertemuan 2. Struktur Sistem Operasi Pertemuan 2 Struktur Sistem Operasi Struktur Sistem Operasi Komponen Sistem Layanan Sistem Operasi System Calls Program System Struktur System Virtual Machines System Design dan Implementation System Generation

Lebih terperinci

2.6. Struktur dasar sistem operasi

2.6. Struktur dasar sistem operasi c. System Call Layanan langsung sisem operasi ke pemogram adalah system call atau API (Application Programming Interface). System call adalah tata cara pemanggilan di program aplikasi untuk memperoleh

Lebih terperinci

Struktur Sistem Komputer

Struktur Sistem Komputer Struktur Sistem Komputer ARSITEKTUR UMUM SISTEM KOMPUTER Sistem Komputer Sistem komputer terdiri atas CPU dan sejumlah perangkat pengendali yang terhubung melalui sebuah bus yang menyediakan akses ke memori

Lebih terperinci

STRUKTUR SISTEM OPERASI

STRUKTUR SISTEM OPERASI STRUKTUR SISTEM OPERASI STRUKTUR SISTEM OPERASI 1. Komponen-Komponen Sistem a. Manajemen Proses Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses membutuhkan beberapa sumber

Lebih terperinci

Sistem Operasi PENGATURAN PROSES

Sistem Operasi PENGATURAN PROSES Sistem Operasi PENGATURAN PROSES Konsep Proses Dalam Sistem Operasi Jenis Proses Subject Penjadwalan Proses Deadlock Concurency Sebuah perangkat lunak yang deprogram sebagai penghubung antara Sistem Operasi

Lebih terperinci

Program Game System Processing Aplikasi

Program Game System Processing Aplikasi BAB I P E N D A H U L U A N Tanpa perangkat lunak (software) sebuah komputer sebenarnya sekumpulan besi yang tidak berguna. Dengan software sebuah komputer dapat digunakan untuk menyimpan, mengolah data

Lebih terperinci

SISTEM KOMPUTER PEMROSES (CPU) Empat komponen Sistem Komputer : Pemroses Memori Utama Perangkat Masukan dan Keluaran Interkoneksi Antar Komponen

SISTEM KOMPUTER PEMROSES (CPU) Empat komponen Sistem Komputer : Pemroses Memori Utama Perangkat Masukan dan Keluaran Interkoneksi Antar Komponen SISTEM KOMPUTER Empat komponen Sistem Komputer : Pemroses Memori Utama Perangkat Masukan dan Keluaran Interkoneksi Antar Komponen PEMROSES (CPU) CPU = Central Processing Unit Pemroses berfungsi mengendalian

Lebih terperinci

Sistem Operasi AGUS PAMUJI. Teknik Informatika

Sistem Operasi AGUS PAMUJI. Teknik Informatika Sistem Operasi AGUS PAMUJI 1 Session 1 Pengenalan Sistem Komputer 2 Sistem Operasi Compiler Basis data Aplikasi bisnis 3 Definisi Sistem Operasi Software yang mengontrol hardware hanya program biasa(contoh

Lebih terperinci

Tipe Sistem Operasi. Stand alone Network Embedded

Tipe Sistem Operasi. Stand alone Network Embedded SISTEM OPERASI Tipe Sistem Operasi Stand alone Network Embedded Versi Windows Sistem Operasi Windows Version Windows 3.x Windows NT 3.1 Windows 95 Windows NT Workstation 4.0 Windows 98 Windows Millennium

Lebih terperinci

Sistem Operasi. Proses dan Thread

Sistem Operasi. Proses dan Thread Sistem Operasi Proses dan Thread Proses Abstraksi paling utama dalam sebuah sistem operasi Proses adalah abstraksi dari sebuah program yang sedang berjalan (running program): lebih detail pada model proses

Lebih terperinci

Struktur Sistem Operasi

Struktur Sistem Operasi Struktur Sistem Operasi Konsep Sistem Operasi resource manager : pengelola seluruh sumber daya yang terdapat pada sistem komputer extended machine : menyediakan sekumpulan layanan ke pemakai sehingga memudahkan

Lebih terperinci

Struktur Sistem Komputer

Struktur Sistem Komputer Struktur Sistem Komputer Pengampu Mata Kuliah Casi Setianingsih (CSI) Hp : 081320001220 (WA Only) Email Tugas : casie.sn@gmail.com Email Tel-U : setiacasie@telkomuniversity.ac.id Komposisi Penilaian Quiz

Lebih terperinci

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES) MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES) 1 PROSES Pengelolaan siklus hidup proses : Penciptaan Proses Penghentian Proses Pengalihan Proses 2 PENCIPTAAN PROSES Kondisi penyebab penciptaan proses

Lebih terperinci

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses

Mahasiswa dapat memahami konsep dasar deskripsi dan kontrol pada proses Deskripsi dan Kontrol Proses (Pertemuan ke-4) Agustus 2014 Pokok Bahasan Pokok Bahasan: Deskripsi dan Kontrol Proses Sub Pokok Bahasan: TIU: TIK: Model proses 7 status Struktur kontrol sistem operasi dan

Lebih terperinci

STRUKTUR SISTEM OPERASI

STRUKTUR SISTEM OPERASI STRUKTUR SISTEM OPERASI 1. Komponen-Komponen Sistem a. Manajemen Proses Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan

Lebih terperinci

Sistem Operasi. Teknologi Informasi

Sistem Operasi. Teknologi Informasi Sistem Operasi Teknologi Informasi Pembahasan Definisi Sistem Operasi. Peran Sistem Operasi dalam Sistem Komputer. Tujuan Sistem Operasi. Sejarah perkembangan Sistem Operasi. Proses Booting Komputer BIOS

Lebih terperinci

Sistem Operasi Terdistribusi

Sistem Operasi Terdistribusi Sistem Operasi Terdistribusi PENDAHULUAN Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana sekumpulan komputer dan prosesor yang heterogen terhubung dalam satu

Lebih terperinci

Bab 2 SISTEM OPERASI

Bab 2 SISTEM OPERASI Bab 2 SISTEM OPERASI 2.1. Pendahuluan Tanpa perangkat lunak (software) sebuah komputer sebenarnya sekumpulan besi yang tidak berguna. Dengan software sebuah komputer dapat digunakan untuk menyimpan, mengolah

Lebih terperinci

MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4

MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4 MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4 1 PROSES Proses adalah sebuah program yang sedang dijalankan(eksekusi).

Lebih terperinci

Operasi pada Sistem Operasi. Avida Endriani Reza Gusty Erlangga D3 TEKNIK INFORMATIKA A

Operasi pada Sistem Operasi. Avida Endriani Reza Gusty Erlangga D3 TEKNIK INFORMATIKA A Operasi pada Sistem Operasi Avida Endriani 2103141003 Reza Gusty Erlangga 2103141020 D3 TEKNIK INFORMATIKA A Definisi dan Bagian dari Sistem Operasi Apa itu sistem operasi? Sistem operasi adalah software

Lebih terperinci

SISTEM OPERASI. Belajar SO?

SISTEM OPERASI. Belajar SO? SISTEM OPERASI Pendahuluan ruliriki@gmail.com http://blogriki.wordpress.com Belajar SO? Sistem Operasi masih menjadi bagian dari inti kurikulum bidang Ilmu Komputer? Mengapa ''hari gini'' (terpaksa) mempelajari

Lebih terperinci

SISTEM OPERASI TERDISTRIBUSI

SISTEM OPERASI TERDISTRIBUSI SISTEM OPERASI TERDISTRIBUSI PENGANTAR DATA TERDISTRIBUSI Materi: 1. Pendahuluan 2. Manfaat Sistem Operasi Terdistribusi 3. Komponen Inti Sistem Operasi Pertemuan: 5 Pendahuluan Sistem operasi terdistribusi

Lebih terperinci

Pertemuan Ke-8 Unit I/O (Unit Masukan dan Keluaran)

Pertemuan Ke-8 Unit I/O (Unit Masukan dan Keluaran) Pertemuan Ke-8 Unit I/O (Unit Masukan dan Keluaran) Sistem komputer memiliki tiga komponen utama, yaitu : CPU, memori (primer dan sekunder), dan peralatan masukan/keluaran (I/O devices) seperti printer,

Lebih terperinci

Bab 3: Proses-Proses. Konsep Proses

Bab 3: Proses-Proses. Konsep Proses Bab 3: Proses-Proses Konsep Proses Penjadwalan Proses Operasi pada Proses Proses yang bekerja sama (Cooperating Processes) Komunikasi antar Proses (Interprocess Communication) Komunikasi pada sistem Client-Server

Lebih terperinci

Dukungan Sistem Operasi :

Dukungan Sistem Operasi : Dukungan Sistem Operasi : Kontrol Program, Penjadwalan dan Manajemen Memory STMIK-AUB SURAKARTA 1 Apa itu Sistem Operasi? Sistem operasi merupakan program yang mengontrol eksekusi program aplikasi dan

Lebih terperinci

MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2

MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2 MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2 1 KOMPONEN SO LAINNYA Jaringan (Sistem Terdistribusi) Sistem terdistribusi adalah sekumpulan

Lebih terperinci

Sus Pokok Bahasan dan Sasaran Belajar

Sus Pokok Bahasan dan Sasaran Belajar SATUAN ACARA PERKULIAHAN Mata Kuliah: SISTEM OPERASI Jurusan/Jenjang/Kode/SKS: TI/S1/KK-045321/3; SI/S1/KK-011314/3; SK/S1/KK-012336/3; MI/D3/KK-013421/4/TK/D3/KK-014413/4 Minggu Pokok Bahasan Ke dan TIU

Lebih terperinci

Danang Puspito Jati A

Danang Puspito Jati A Danang Puspito Jati A11.2007.03625 Sebagai control centre, menkoordinasikan, mengawasi penggunaan hardware ( perangkat keras) untuk berbagai program apliklasi serta berbagai jenis user. Sebagai resource

Lebih terperinci

P10 Media I/O Universitas Mercu Buana Yogyakarta

P10 Media I/O Universitas Mercu Buana Yogyakarta P10 Media I/O Universitas Mercu Buana Yogyakarta A. Sidiq P. 1 Sistem Komputer Komponen utama sistem komputer : CPU Memory (Primary & Secondary) I/O Devices Ex : I Keyboard, Mouse, Modem Ex : O Monitor,

Lebih terperinci

ORGANISASI KOMPUTER 1

ORGANISASI KOMPUTER 1 ORGANISASI KOMPUTER 1 STMIK AUB SURAKARTA Latar Belakang: tentang I/ O Input / Output: bagaimana menangani komunikasi dan transfer data antara periferal dengan CPU dan memory Periferal? Apakah itu periferal?

Lebih terperinci

Struktur Sistem Komputer. Abdullah Sistem Informasi Universitas Binadarma

Struktur Sistem Komputer. Abdullah Sistem Informasi Universitas Binadarma Struktur Sistem Komputer Abdullah Sistem Informasi Universitas Binadarma Pembahasan Operasi Sistem Komputer Struktur I/O Struktur Storage Hirarki Storage Proteksi Perangkat Keras Sistem Arsitektur Umum

Lebih terperinci

STRUKTUR CPU. Arsitektur Komputer

STRUKTUR CPU. Arsitektur Komputer STRUKTUR CPU Arsitektur Komputer Tujuan Mengerti struktur dan fungsi CPU yaitu dapat melakukan Fetch instruksi, interpreter instruksi, Fetch data, eksekusi, dan menyimpan kembali. serta struktur dari register,

Lebih terperinci

Pertemuan ke - 12 Unit Masukan dan Keluaran Riyanto Sigit, ST. Nur Rosyid, S.kom Setiawardhana, ST Hero Yudo M, ST

Pertemuan ke - 12 Unit Masukan dan Keluaran Riyanto Sigit, ST. Nur Rosyid, S.kom Setiawardhana, ST Hero Yudo M, ST Pertemuan ke - 12 Unit Masukan dan Keluaran Riyanto Sigit, ST. Nur Rosyid, S.kom Setiawardhana, ST Hero Yudo M, ST Politeknik Elektronika Negeri Surabaya Tujuan Menjelaskan system komputer unit masukkan/keluaran

Lebih terperinci

Direktori yang diperlihatkan pada gambar 1. tersebut adalah untuk satu unit (mis. disk pack atau tape reel) dari penyimpanan sekunder. Labelnya berisi

Direktori yang diperlihatkan pada gambar 1. tersebut adalah untuk satu unit (mis. disk pack atau tape reel) dari penyimpanan sekunder. Labelnya berisi PENGENALAN KONTROL INPUT/OUTPUT DEFINISI DAN PERSYARATAN KONTROL I/O Sebuah sistem kontrol I/O bertujuan untuk memberikan bantuan kepada user untuk memungkinkan mereka mengakses berkas, tanpa memperhatikan

Lebih terperinci

MANAJEMEN MEMORI SISTEM OPERASI

MANAJEMEN MEMORI SISTEM OPERASI MANAJEMEN MEMORI SISTEM OPERASI Manajemen Memori Memori adalah pusat dari operasi pada sistem komputer modern, berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik baiknya.

Lebih terperinci

Operating System. I/O System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

Operating System. I/O System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si Operating System I/O System Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan Dosen : Caca E. Supriana, S.Si caca_emile@yahoo.co.id Input / Output System Perangkat Keras I/O Aplikasi Antarmuka

Lebih terperinci

Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm 2 Memaksimalkan kinerja CPU melalui multiprogramming CPU-I/O Burst Cycle

Lebih terperinci

1. Istilah-istilah dalam penjadwalan proses

1. Istilah-istilah dalam penjadwalan proses BAB II PENJADWALAN PROSES MATERI 1. Istilah-istilah dalam penjadwalan proses 2. Penjadwalan Satu Tingkat 3. Penjadwalan Multi Tingkat STANDAR KOMPETENSI Mengetahui teknik penjadwalan proses dan mengetahui

Lebih terperinci

1. Setelah kita merakit PC, maka agar hardware dapat berfungsi dan fungsi komputer dapat dijalankan, maka kita harus menginstal... a. BIOS d.

1. Setelah kita merakit PC, maka agar hardware dapat berfungsi dan fungsi komputer dapat dijalankan, maka kita harus menginstal... a. BIOS d. 1. Setelah kita merakit PC, maka agar hardware dapat berfungsi dan fungsi komputer dapat dijalankan, maka kita harus menginstal... a. BIOS d. Anti virus b. Sistem operasi e. Hardware c. Software 2. Sistem

Lebih terperinci

Apa yang akan dipelajari?

Apa yang akan dipelajari? Concurrency: Mutual Exclusion dan Sinkronisasi (Pertemuan ke-8) Pendahuluan Apa yang akan dipelajari? Ruang lingkup concurrency Contoh kasus perlunya concurrency Jenis interaksi antar proses Mekanisme

Lebih terperinci

Pemgantar Teknologi Informasi

Pemgantar Teknologi Informasi Pemgantar Teknologi Informasi Perangkat lunak yang bertindak sebagai perantara antara pemakai komputer dan perangkat keras Pemakai komputer: common user, programmer, aplikasi (program) Tujuan: Menjalankan

Lebih terperinci

Bab 2: Struktur Sistem Operasi. Komponen Sistem Secara Umum

Bab 2: Struktur Sistem Operasi. Komponen Sistem Secara Umum Bab 2: Struktur Sistem Operasi Komponen sistem Layanan sistem operasi System Call System Program Struktur sistem Virtual Machine Desain dan implementasi sistem System Generation 3.1 Komponen Sistem Secara

Lebih terperinci

Nama : Tsani Agustin Aghnia Toibin.S Nim : Prodi : Teknik Informatika Kelas : 21

Nama : Tsani Agustin Aghnia Toibin.S Nim : Prodi : Teknik Informatika Kelas : 21 Nama : Tsani Agustin Aghnia Toibin.S Nim : 14111085 Prodi : Teknik Informatika Kelas : 21 1. Process Control Block dalam istilah lain Task Controlling Block, Task Struct, atau Switchframe. Jelaskan dan

Lebih terperinci

STRUKTUR FUNGSI CPU. Menjelaskan tentang komponen utama CPU. Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register

STRUKTUR FUNGSI CPU. Menjelaskan tentang komponen utama CPU. Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register Organisasi Komputer STRUKTUR FUNGSI CPU 1 Tujuan Menjelaskan tentang komponen utama CPU dan Fungsi CPU Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register Menjelaskan

Lebih terperinci

Sistem Komputer. Tiga komponen utama : CPU

Sistem Komputer. Tiga komponen utama : CPU PERTEMUAN Tiga komponen utama : CPU Sistem Komputer Memori (primer dan sekunder) Peralatan masukan/keluaran (I/O devices) seperti printer, monitor, keyboard, mouse, dan modem 1 Modul I/O Merupakan peralatan

Lebih terperinci

12 Input / Output. Sistem I/O. Hardware I/O. Struktur PC Bus

12 Input / Output. Sistem I/O. Hardware I/O. Struktur PC Bus Mata Kuliah : Sistem Operasi Kode MK : IT-012336 12 Input / Output Tim Teaching Grant Mata Kuliah Sistem Operasi Sistem I/O Hardware I/O Interface Aplikasi I/O Subsystem Kernel I/O Transformasi Permintaan

Lebih terperinci

intruksi kepada CPU untuk mengakses sistem operasi. BIOS tersimpan pada Read Only

intruksi kepada CPU untuk mengakses sistem operasi. BIOS tersimpan pada Read Only 1. Software Komputer adalah sekumpulan komponen-komponen canggih yang dapat melakukan perhitungan kompleks dengan cepat. Kita sangat membutuhkan peranan komputer untuk menyelesaikan permasaahan kita sehari

Lebih terperinci

Organisasi Komputer. Candra Ahmadi, MT

Organisasi Komputer. Candra Ahmadi, MT Organisasi Komputer Candra Ahmadi, MT Tujuan Menjelaskan tentang komponen utama CPU dan Fungsi CPU Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register Menjelaskan

Lebih terperinci

Sistem Operasi. Divais Input/Output 2016

Sistem Operasi. Divais Input/Output 2016 Sistem Operasi Divais Input/Output 2016 Kata Pengantar Salah satu fungsi OS adalah mengendalikan divais Merupakan sebagian besar code (80-90% pada Linux) Diinginkan semua divais digunakan nyaman misal:

Lebih terperinci

Struktur Sistem Operasi

Struktur Sistem Operasi 3 Struktur Sistem Operasi Struktur Sistem Operasi Komponen Sistem Layanan Sistem Operasi System Calls Program System Struktur System Virtual Machines System Design dan Implementation System Generation

Lebih terperinci

Processes. Processes. SISTIM OPERASI (Operating System) IKI-20230

Processes. Processes. SISTIM OPERASI (Operating System) IKI-20230 Processes SISTIM OPERASI (Operating System) IKI-20230 Fakultas Ilmu Komputer Universitas Indonesia Semester 2000/2001 Processes Konsep Proses Penjadwalan Eksekusi Proses Operasi terhadap Proses Lightweight

Lebih terperinci

Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse

Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse Input Output Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse Output: Menampilkan data Contoh: Monitor, printer Unit Input/Output dalam bekerja memerlukan sinyal kontrol

Lebih terperinci

Struktur Sistem Komputer

Struktur Sistem Komputer 2 Struktur Sistem Komputer Review: Struktur Sistem Komputer Operasi Sistem Komputer Struktur I/O Struktur Storage Proteksi Hardware 2 Arsitektur Sistem Komputer 3 Operasi Sistem Komputer CPU devices dan

Lebih terperinci

Kelas: Nilai (Diisi Dosen):... IF

Kelas: Nilai (Diisi Dosen):... IF UTS Sem. I 2012/2013 CSG3E3 (Sistem Operasi) Jum at, 9 November 2012 Pk. 15.45-17.35 (110 menit) Dodi Wisaksono, Endro Ariyanto, Novian Anggis = Ujian bersifat close book dan tidak boleh menggunakan peralatan

Lebih terperinci

Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse

Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse Input Output Input : Memasukkan data dari luar kedalam mikroprosesor Contoh: Keyboard, mouse Output: Menampilkan data Contoh: Monitor, printer Unit Input/Output dalam bekerja memerlukan sinyal kontrol

Lebih terperinci

Bab 3 - Manajemen Proses 3.1

Bab 3 - Manajemen Proses 3.1 Bab 3 - Manajemen Proses 3.1 Konsep Proses Proses sebuah program yg dalam keadaan dieksekusi Sebuah proses meliputi: program counter Tumpukan (stack) Bagian data (data section) 3.2 Analogi Proses 3.3 Beberapa

Lebih terperinci

7. Pengaturan Proses

7. Pengaturan Proses 7. Pengaturan Proses 1. Jelaskan bagaimana Konsep proses dalam Sistem Operasi, sebutkan juga jenisjenis proses yang ada dalam Sistem Operasi. Sistem Operasi (Operating System): merupakan software pertama

Lebih terperinci

Sistem komputer. Tiga komponen utama :

Sistem komputer. Tiga komponen utama : Sistem komputer Tiga komponen utama : CPU, Memori (primer dan sekunder) Peralatan masukan/keluaran (I/O devices) seperti printer, monitor, keyboard, mouse, dan modem Latar Belakang I/O Input / Output:

Lebih terperinci

Sistem Terdistribusi. Sistem Operasi Terdistribusi oleh : Musayyanah, S.ST, MT

Sistem Terdistribusi. Sistem Operasi Terdistribusi oleh : Musayyanah, S.ST, MT Sistem Terdistribusi Sistem Operasi Terdistribusi oleh : Musayyanah, S.ST, MT List Of Content SO Komponen SO DOS Jenis SO Manfaat SO JARINGAN KOMPUTER VS SISTEM TERDISTRIBUSI Pengertian Jarkom : kumpulan

Lebih terperinci

Pengantar Teknologi Informasi. Evangs Mailoa (evangsmailoa.wordpress.com) Fakultas Teknologi Informasi UKSW

Pengantar Teknologi Informasi. Evangs Mailoa (evangsmailoa.wordpress.com) Fakultas Teknologi Informasi UKSW Pengantar Teknologi Informasi Evangs Mailoa (evangsmailoa.wordpress.com) Fakultas Teknologi Informasi UKSW Perangkat lunak yang bertindak sebagai perantara antara pemakai komputer dan perangkat keras.

Lebih terperinci

CPU PERKEMBANGAN ARSITEKTUR CPU. ( Central Processing Unit )

CPU PERKEMBANGAN ARSITEKTUR CPU. ( Central Processing Unit ) CPU ( Central Processing Unit ) PERKEMBANGAN ARSITEKTUR CPU CPU terdiri dari beberapa bagian yang berbeda yang saling berintegrasi dalam membentuk fungsinya secara bersamaan. Pada bagian ini akan dibahas

Lebih terperinci

Bab 3: Proses-Proses. Konsep Proses

Bab 3: Proses-Proses. Konsep Proses Bab 3: Proses-Proses Konsep Proses Penjadwalan Proses Operasi pada Proses Proses yang bekerja sama (Cooperating Processes) Komunikasi antar Proses (Interprocess Communication) Komunikasi pada sistem Client-Server

Lebih terperinci

Struktur Sistem Operasi

Struktur Sistem Operasi Struktur Sistem Operasi SYSTEM CALL System Call adalah suatu kumpulan instruksi extended yang disediakan oleh sistem operasi yang berfungsi sebagai interface antara sistem operasi dengan program pemakai.

Lebih terperinci

Komponen sistem operasi modern : 1. Managemen Proses. 2. Managemen Memori Utama. 3.Managemen

Komponen sistem operasi modern : 1. Managemen Proses. 2. Managemen Memori Utama. 3.Managemen Pada kenyataannya tidak semua sistem operasi mempunyai struktur yang sama. Komponen sistem operasi modern : 1. Managemen Proses. 2. Managemen Memori Utama. 3.Managemen Secondary-Storage Storage. 4. Managemen

Lebih terperinci

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 --

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- Struktur Fungsi CPU Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- This presentation is revised by @hazlindaaziz, STMIK, 2014 Main Material: Acknowledgement

Lebih terperinci

Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS.

Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS. DASAR SISTEM OPERASI Sistem Operasi Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS. Sistem operasi merupakan sebuah penghubung antara pengguna dari komputer

Lebih terperinci

Organisasi & Arsitektur Komputer

Organisasi & Arsitektur Komputer Organisasi & Arsitektur Komputer 1 Unit Input - Output Eko Budi Setiawan, S.Kom., M.T. Eko Budi Setiawan mail@ekobudisetiawan.com www.ekobudisetiawan.com Teknik Informatika - UNIKOM 2013 Flash Back 2 Pengertian

Lebih terperinci

4. SISTEM OPERASI TERDISTRIBUSI

4. SISTEM OPERASI TERDISTRIBUSI 4. SISTEM OPERASI TERDISTRIBUSI APAKAH SISTEM OPERASI TERDISTRIBUSI? Sistem operasi terdistribusi adalah salah satu implementasi dari sistem terdistribusi, di mana sekumpulan komputer dan prosesor yang

Lebih terperinci

Struktur Sistem Operasi

Struktur Sistem Operasi Struktur Sistem Operasi Komponen-komponen Sistem Pada kenyataannya tidak semua sistem operasi mempunyai struktur yang sama. Komponen sistem operasi : 1. Managemen Proses. 2. Managemen Memori Utama. 3.

Lebih terperinci

OPERASI DASAR KOMPUTER

OPERASI DASAR KOMPUTER OPERASI DASAR KOMPUTER Pengertian Komputer adalah alat elektronik yang dikontrol oleh kumpulan instruksi atau program untuk menjalankan beberapa tugas, seperti kalkulasi, atau komunikasi elektronik. Program

Lebih terperinci

Arsitektur Komputer Sistem Operasi

Arsitektur Komputer Sistem Operasi Bab 8 Disusun Oleh : Rini Agustina, S.Kom, M.Pd Arsitektur Komputer 1 adalah program yang berfungsi mengendalikan eksekusi program-program aplikasi serta merupakan interface antara mesin hardware dengan

Lebih terperinci

TI2043 Organisasi dan Arsitektur Komputer Tugas 2 Interrupt Driven I/O

TI2043 Organisasi dan Arsitektur Komputer Tugas 2 Interrupt Driven I/O TI2043 Organisasi dan Arsitektur Komputer Tugas 2 Interrupt Driven I/O Aditya Legowo Pra Utomo 2B 08501039 Tugas ini disusun untuk memenuhi salah satu tugas Mata Kuliah Organisasi dan Arsitektur Komputer

Lebih terperinci

Sistem terdistribusi Processes, Threads and Virtualization pertemuan 3. Albertus Dwi Yoga Widiantoro, M.Kom.

Sistem terdistribusi Processes, Threads and Virtualization pertemuan 3. Albertus Dwi Yoga Widiantoro, M.Kom. Sistem terdistribusi Processes, Threads and Virtualization pertemuan 3 Albertus Dwi Yoga Widiantoro, M.Kom. Komunikasi Sistem Komunikasi: bagaimana komunikasi antara object2 dalam sistem terdistribusi,

Lebih terperinci

1 Tinjau Ulang Sistem Komputer

1 Tinjau Ulang Sistem Komputer 1 Tinjau Ulang Sistem Komputer Overview Sebelum memulai mempelajari sistem operasi penting bagi kita untuk mengetahui komponen-komponen yang menjadi bagian dari sebuah sistem komputer disertai cara kerjanya.

Lebih terperinci

Rencana Perkuliahan Sistem Operasi CSG3E3 2015/2016

Rencana Perkuliahan Sistem Operasi CSG3E3 2015/2016 Rencana Perkuliahan Sistem Operasi CSG3E3 2015/2016 Rencana penyampaian materi perkuliahan Sistem Operasi CSG3E3 ini dibuat berdasarkan metode pengajaran berbasiskan Student Center Learning (SCL), dimana

Lebih terperinci

Bab I Pengenalan Sistem Operasi. Apa yang dimaksud Sistem Operasi?

Bab I Pengenalan Sistem Operasi. Apa yang dimaksud Sistem Operasi? Bab I Pengenalan Sistem Operasi Apa yang dimaksud Sistem Operasi Sistem Mainframe Sistem Desktop Sistem Multiprocessor Sistem Terdistribusi Sistem Tercluster Sistem Real -Time Sistem Handheld 1.1 Apa yang

Lebih terperinci

PROSES. Sistem Terdistribusi

PROSES. Sistem Terdistribusi PROSES PERT 3. Sistem Terdistribusi Konsep Proses Proses : suatu program yang sedang dieksekusi. Eksekusi proses dilakukan secara berurutan Dalam proses terdapat Program counter : menunjukkan instruksi

Lebih terperinci

MODUL 3 STRUKTUR SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2

MODUL 3 STRUKTUR SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2 MODUL 3 STRUKTUR SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2 1 STRUKTUR SO 1. Struktur Sederhana 2. Struktur Berlapis (Layered) 3. Microkernel M. R A J A

Lebih terperinci

Arsitektur Sistem Operasi

Arsitektur Sistem Operasi Arsitektur Sistem Operasi Project Study Sistem Operasi FOR X SMK Copyright by : Rio Widyatmoko Peranan Sistem Operasi Dalam Struktur Sistem Komputer 1) Peranan Sistem Operasi Dalam Struktur Sistem Komputer

Lebih terperinci

SISTEM OPERASI. CSP 2702 Semester/SKS : 4/3 Program Studi : Sistem Komputer Kamis, Ruang : P-22

SISTEM OPERASI. CSP 2702 Semester/SKS : 4/3 Program Studi : Sistem Komputer Kamis, Ruang : P-22 SISTEM OPERASI CSP 2702 Semester/SKS : 4/3 Program Studi : Sistem Komputer Kamis, 13.20 15.00 - Ruang : P-22 Dosen Pengampu : Erfanti Fatkhiyah, ST., M.Cs. SISTEM I/O Hardware I/O Interface Aplikasi I/O

Lebih terperinci

SISTEM OPERASI. Deskripsi Proses. Multiprogramming. Istilah dalam Proses. (multitasking) MANAJEMEN PROSES. Multiprogramming.

SISTEM OPERASI. Deskripsi Proses. Multiprogramming. Istilah dalam Proses. (multitasking) MANAJEMEN PROSES. Multiprogramming. SISTEM OPERASI MANAJEMEN PROSES Deskripsi Proses Program yang sedang dieksekusi yang merupakan unit kerja terkecil dan secara individu memiliki sumber daya yang dijadwalkan sistem operasi sopryadi@stmik-mdp.net

Lebih terperinci

Process Control Block (PCB) Masing-masing proses Direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB),

Process Control Block (PCB) Masing-masing proses Direpresentasikan oleh Sistem Operasi dengan menggunakan Process Control Block (PCB), KONSEP PROSES Proses adalah program yang sedang dieksekusi. Eksekusi proses dilakukan secara berurutan. Dalam suatu proses terdapat program counter, stack dan daerah data Sistem operasi mengeksekusi berbagai

Lebih terperinci

Sistem Operasi Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization

Sistem Operasi Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization Sistem Operasi 2009 Pertemuan 5 Concurrency: Mutual Exclusion & Synchronization H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ. Trunojoyo Ikhtisar Prinsip Mendasar dari Concurrency Mutual

Lebih terperinci

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi. MANAJEMEN PROSES 1. Konsep Proses a. Definisi Proses Aktivitas yang sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor s register. Suatu proses

Lebih terperinci

1. SUDUT PANDANG PENGGUNA

1. SUDUT PANDANG PENGGUNA SISTEM OPERASI Operating System OS (Operating System) merupakan perangkat lunak yang bertindak sebagai perantara atau interface antara pemakai komputer, aplikasi dan perangkat keras Operating System Pengertian

Lebih terperinci

01/08/2017. Pengertian System Calls :

01/08/2017. Pengertian System Calls : Sistem operasi merupakan penghubung antara pengguna komputer dengan perangkat keras komputer. Pengertian sistem operasi secara umum adalah pengelola seluruh sumber daya yang terdapat pada sistem komputer

Lebih terperinci

Penjadualan CPU. Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

Penjadualan CPU. Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm 6 Penjadualan CPU Penjadualan CPU Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm 2 Konsep Dasar Memaksimalkan kinerja CPU

Lebih terperinci

Arsitektur Komputer II AUB SURAKARTA

Arsitektur Komputer II AUB SURAKARTA Arsitektur Komputer II STMIK AUB SURAKARTA Tiga komponen utama dalam sistem komputer: CPU, Memori (primer dan sekunder) Peralatan masukan/keluaran (I/O devices) seperti printer, monitor, keyboard, mouse,

Lebih terperinci

KELOMPOK 1 PERANGKAT LUNAK SISTEM

KELOMPOK 1 PERANGKAT LUNAK SISTEM KELOMPOK 1 PERANGKAT LUNAK SISTEM Disusun Oleh : - Lina Ukhti (20216008) - M. Fakhrudin (20216013) - Yaskur K. (20216019) PERANGKAT LUNAK SISTEM Perangkat lunak sistem merupakan software yang berfungsi

Lebih terperinci