• • Konsep dasar sistem operasi, khususnya komponen-komponen pembentuk suatu sistem operasi. Konsep penjadwalan CPU, pengaturan memory, dan sistem I/O http://codex.cs.yale.edu/avi/os-book/OS8/os8c/slide-dir/index.html • • • Sebuah program yang merupakan perantara antara pengguna komputer dan hardware komputer Komputer = tubuh, SO = roh SO digunakan dalam hal: – Mengeksekusi program dan membantu menyediakan lingkungan bagi program yang mudah untuk berinteraksi dengan system resource Tujuan OS • Convenience : user merasakan kemudahan dan kenyamanan dalam penggunaan • Efficiency : resources system harus dapat di utilisasi semaksimal mungkin • Robustness : kehandalan sistem proteksi terhadap kesalahan dari user / sistem • Evolution : memudahkan pengembangan, mendukung sistem baru dan program aplikasi yang berkembang start the computer provide a user interface manage programs administer security manage memory control a network provide file management and other utilities p. 392 Fig. 8-1 monitor performance establish an Internet connection schedule jobs and configure devices File and Folder Management Applications Management Support for built-in utility programs Computer hardware control • • • • • • • • • Menyediakan user interface Menyediakan program execution Menyediakan I/O operations Menyediakan file-system manipulation Menyediakan system communications / networking Mampu melakukan error detection Mampu melakukan resource Sharing Ada fasilitas security Fasilitas accounting system Kernel File Management System User Interface Multiuser Multitasking Multiprocessing Multithreading •when two or more users can work with programs and share peripheral devices (printer, scanner, fax) •multiple applications operated at the same time •more than one CPUs that can be shared •smaller parts of a program are loaded when needed by OS Microcomputers: Unix, Windows, Linux Mainframe: IBM, Unix Supercomputer: IRIX, Linux Workstation, server: Linux, Windows Networking: Linux, Netware, Windows PDA: Blackberry, Linux, Palm, Windows Mobile Smarphone: Symbian, Linux, Windows Mobile, Android, RIM the basic difference is that @ mainframe platform u can run more than one OS at a time on same machine but this feature not available at PC OS. Mainframe OS are targeted to handle hundreds of users at a time whereas PC OS is targeted for a single user. a mainframe operating system will probably need to service many users at the same time, whereas a PC operating system normally only has to worry about one user at a time. Mainframes run multiple operating systems and operate not as a single computer but as a number of virtual machines. They are typically manufactured by large companies for large-scale computing purposes z/OS from IBM While IBM System z™ servers are supported by a number of different operating systems, their most advanced features are powered by z/OS http://www-03.ibm.com/systems/z/os/zos/ Embedded systems are special-purpose systems in which the computer is completely encapsulated by the device it controls. Embedded systems perform pre-defined tasks that have very specific requirements. Real-time operating systems are embedded systems with certain time requirements Symbian, Bada and Android OS for smartphone Cisco IOS for router and switch iPodLinux for ipods Windows CE.Net Windows Mobile 2003 The operating system Unix was developed in 1960 by a group of AT&T employees. Free Unix-like operating systems can be used, studied, modified and redistributed by anyone with no restrictions. It's a diverse group of operating systems with several major sub-categories including BSD, and Linux. Unix like operating systems run on a variety of computers but more frequently on server systems and in academic and engineering environments due to high stability for any kind of processing Ubuntu FreeBSD openSUSE Debian Fedora Apple's Macintosh OS is an operating system with a very innovative and unique design. The history of the company behind it, Apple, that's been around since 1976 is fascinating and so is its cool operating system Mac OS. Leopard merupakan versi Mac OS terbaru (http://www.apple.com/macosx/) Windows Version Year Released Windows 3.x 1990 Windows NT 3.1 1993 Windows 95 1995 Windows NT WS 4.0 1996 Windows 98 1998 Windows ME 2000 Windows 2000 Professional 2000 Windows XP 2001 Windows Vista 2006 Windows 7 2012 Windows 8 2013 Sistem Operasi yang berbasis jaringan A Network Operating System (NOS) is a software program that controls other software and hardware running on a network. It also allows multiple computers, known as networkcomputers, to communicate with one central hub and each other to share resources, run applications, and send messages. Such a system can consist of a wireless network, Local AreaNetwork (LAN), or even two or three computer networks connected together. Administrators running these networks typically have training in different network operating systems. Contoh: ◦ ◦ ◦ ◦ Novell Netware Windows Server 2003 Linux Solaris (Sun) The WebOS (Web Operating System) represent a new form of virtual operating system that runs directly in your browser. The main advantages of a web operating system is that you can access it from anywhere but it's very arguable if it's really an operating system or not because it runs over a browser window and have no relation whatsoever with the hardware and its drivers. You will still need an operating system to run a WebOS. DesktopTwo (http://desktoptwo.com) G.ho.st (http://g.ho.st) YouOS (http://youos.com) BrowserOS (http://oos.cc) eyeOS (http://eyeos.org) Komponen-komponen Sistem Komputer • Perangkat keras • CPU, RAM, storage (harddisk, floppy disk, CDROM, dsb), piranti I/O (printer, scanner, dsb) • Operating System • Mengontrol dan mengkoordinasikan penggunaan hardware dari berbagai program aplikasi dan user • Program-program aplikasi • Pengaturan penggunaan system resources untuk pemecahan problem kebutuhan user (kompiler, sistem basis data, games, dan program-program untuk bisnis) • User • Orang, mesin, atau komputer lain • Process – program dalam mode eksekusi – Eksekusi program harus pada suatu waktu yang sekuensial • Process vs Thread • Process: suatu aplikasi yg running • Thread: beberapa kegiatan dlm 1 proses • Keuntungan: – – – – Responsiveness Resource Sharing Economy Utilization of Multi Processors Architectures • • Memilih proses mana dari memory yang siap diekseskusi dan mengalokasikan resource/CPU kepadanya. Keputusan penjadwalan CPU mungkin terjadi waktu proses: 1. 2. 3. 4. Switches from running to waiting state Switches from running to ready state Switches from waiting to ready Terminates • Scheduling no 1 dan 4 adalah non-preemptive • Selainnya bersifat preemptive • preemption is the act of temporarily interrupting a task being carried out by a computer system, without requiring its cooperation, and with the intention of resuming the task at a later time. • • • Why process synchronization needed? Akses secara konkuren (hampir bersamaan) terhadap data yang bersifat shared, dapat menyebabkan data tidak konsisten Terjadi race condition Banyak algoritma sinkronisasi – FCFS (First Come First Served) – SJF (Shortest Job First) preemptive dan non preemptive – RR (Round Robin) • • • • Pada multiprogramming, beberapa proses hanya memiliki resource yang terbatas. Jika tidak ada resource yang tersedia, process harus menunggu 2 types of resource: – Preempt-able, ex: memory – Non-preempt able, ex: printer Harus menunggu jika resource tidak boleh dipakai – Permintaan proses mungkin diblok – Mungkin bisa gagal dengan kode error tertentu • • • • • • Program harus dibawa (dari disk) ke memory dan ditempatkan pada alamat tertentu agar dapat berjalan Main memory dan registers adalah satu-satunya tempat penyimpanan yang dapat langsung diakses oleh CPU Register mengakses dalam 1 CPU clock (bisa kurang) Main memory mengakses dalam bnyk cycles / clock Cache berada diantara main memory dan CPU registers Protection of memory dibutuhkan untuk menjamin agar operasinya benars • Virtual memory – pemisahan antara memori logis dari memori fisik. – Hanya bagian dari program yang dibutuhkan saja yang harus ada dalam memory untuk dieksekusi – Logical address space dapat lebih besar daripada physical address space – Memperbolehkan address spaces untuk disharing oleh beberapa processes – Menyebabkan pembuatan proses secara lebih efisien • • • • Algoritma Algoritma Algoritma Algoritma FIFO Optimal LRU Perkiraan LRU • • File adalah kumpulan informasi yang berhubungan dan tersimpan dalam secondary storage Tipe: – Data (character, numeric, binary) – Program – Direktori – Device • Sifat: persistance, big size, dan sharability • • • • • • • • Name – disimpan dalam human readable name Identifier – unique tag (number) dalam file system Type – dibutuhkan oleh sistem (ex: .txt) Location – pointer to file location di harddisk Size – current file size Protection – controls siapa yang reading, writing, executing Time, date, and user identification – data untuk protection, security, and usage monitoring Information about files are kept in the directory structure, which is maintained on the disk Perangkat block: ◦ Meliputi berbagai disk drive ◦ Perintah baca, tulis, pencarian data ◦ Dapat digunakan untuk mengakses memory pada disk Perangkat character: ◦ Contoh: keyboard, mouse ◦ Perintah menulis, mengambil ◦ Dapat dibuat library pengakses data per-baris Perangkat jaringan: ◦ Socket: penghubung komputer dengan jaringan. ◦ Komunikasi antar komputer dilakukan melalui socket. What is MS-DOS? MS-DOS stands for Microsoft Disk Operating System. MS-DOS controls the computer’s hardware and provides an environment for programs to run. ◦ Run in single user, stand alone desktop computer ◦ Simple, only have few instructions ◦ For Intel 8086, 8088, 80186, & 80286 Penjadwalan Proses Sinkronisasi Proses Deadlock Manajemen Memori Nyata Manajemen Memori Virtual Manajemen Input / Output Sistem Manajemen File Implementasi Sistem File (Kelompok 1) (Kelompok 2) (Kelompok 3) (Kelompok 4) (Kelompok 5) (Kelompok 6) (Kelompok 7) (Kelompok 8)