1. KOMPONEN SISTEM OPERASI Pada kenyataannya tidak semua sistem operasi mempunyai struktur yang sama, umumnya sebuah sistem operasi modern mempunyai komponen sebagai berikut : Managemen Proses. Managemen Memori Utama. Managemen Secondary-Storage. Managemen Sistem I/O. Managemen Berkas. Sistem Proteksi. Jaringan. Command-Interpreter system. MANAJEMEN PROSES Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. Sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O. Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen proses seperti : Pelaksanaan dan penghapusan proses yang diinginkan user atau sistem. Menunda atau melanjutkan proses. Menyediakan mekanisme untuk proses sinkronisasi. Menyediakan mekanisme untuk proses komunikasi. Menyediakan mekanisme untuk penanganan deadlock. MANAGEMEN MEMORI UTAMA Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan byte. Setiap word atau byte mempunyai alamat tersendiri. Memori Utama berfungsi sebagai tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O. Memori utama termasuk tempat penyimpanan data yang sementara (volatile), artinya data dapat hilang begitu sistem dimatikan. Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen memori seperti: Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya. Memilih program yang akan di-load ke memori. Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan. MANAJEMEN SECONDARY-STORAGE Data yang disimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil. Oleh karena itu, untuk meyimpankeseluruhan data dan program komputer dibutuhkan secondary-storage yangbersifat permanen dan mampu menampung banyak data. Contoh dari secondary-storage adalah harddisk, flashdisk, CD-ROM, disket, dll. MANAJEMEN SISTEM I/O Sering disebut device manager. Menyediakan "device driver" yang umum sehingga operasi I/O dapat seragam (seperti kegiatan untuk membuka, membaca, menulis, menjalankan dan menutup file atau program). Komponen Sistem Operasi untuk sistem I/O: Buffer: menampung sementara data dari dan ke perangkat I/O. Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efektif dan efisien (pengaturan antrian). Menyediakan driver untuk dapat melakukan operasi "rinci" untuk perangkat keras I/O tertentu. MANAJEMEN BERKAS Berkas adalah kumpulan informasi yang berhubungan sesuai dengan tujuan pembuat berkas tersebut. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll). Sistem operasi bertanggung-jawab terhadap : Pembuatan dan penghapusan berkas. Pembuatan dan penghapusan direktori. Mendukung manipulasi berkas dan direktori. Memetakan berkas ke secondary storage. Mem-backup berkas ke media penyimpanan yang permanen (non-volatile). SISTEM PROTEKSI Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya. Mekanisme proteksi harus: membedakan antara penggunaan yang sudah diberi izin dan yang belum. specify the controls to be imposed (menetapkan sistem pengaturan yang digunakan). provide a means of enforcement (menyiapkan alat yang digunakan). JARINGAN Dukungan terhadap komunikasi data antar perangkat komputer mutlak diperlukan. Pada model sistem terdistribusi, dimana sistem operasi mengatur mekanisme penjadualan penggunaan resource komputer dalam jaringan, maka sekumpulan prosesor yang tidak berbagi memori atau clock diatur oleh sistem operasi komputer host untuk pengunaan prosesor dan alokasi tempat penyimpanan serta mekanisme pendistribusian data maupun proses yang dilakukan. Tiap prosesor mempunyai memori sendiri. Prosesor-prosesor tersebut terhubung melalui jaringan komunikasi, Sistem terdistribusi menyediakan akses pengguna ke bermacam sumber-daya sistem. Akses tersebut menyebabkan: Computation speed-up (proses komputasi semakin cepat). Increased data availability (peningkatan ketersediaan data). Enhanced reliability (peningkatan kemampuan). COMMAND INTERPRETER SYSTEM Sistem Operasi menunggu instruksi dari user (commanddriven). Program yang dapat membaca instruksi dan mengartikan control statements berdasarkan masukan dari user umumnya disebut : control-card interpreter, ataucommand-line interpreter. Pada sistem UNIX sering disebut juga shell atau console. CommandInterpreter System sangat bervariasi dari satu sistem operasi ke sistemoperasi yang lain dan disesuaikan dengan tujuan dan teknologi I/Odevices yang ada. 2. LAYANAN SISTEM OPERASI Sebuah sistem operasi yang baik menurut Tanen baumharus memiliki layanan sebagai berikut: Pembuatan Program Eksekusi program. Operasi I/O (pengaksesan I/O Device) Sistem manipulasi berkas Komunikasi Deteksi error Deteksi dan Pemberian tanggapan pada kesalahan Efesiensi penggunaan sistem Accounting LAYANAN SISTEM OPERASI Pembuatan program, yaitu sistem operasi menyediakan fasilitas dan layanan untuk membantu para pemrogram untuk menulis program Eksekusi program adalah kemampuan sistem untuk "load" program ke memori dan menjalankan program yang dikehendaki user maupun sistem. Operasi I/O merupakan kegiatan dimana pengguna tidak dapat secara langsung mengakses sumber daya perangkat keras, sehingga sistem operasi harus menyediakan mekanisme untuk melakukan operasi I/O atas nama pengguna. Sistem manipulasi berkas adalah kemampuan program untuk operasi pada berkas (membaca, menulis, membuat, dan menghapus berkas yang berupa file atau direktori). Komunikasi adalah pertukaran data/ informasi antar dua atau lebih proses yang berada pada satu komputer (atau lebih). Deteksi error adalah kegiatan untuk menjaga kestabilan sistem dengan mendeteksi "error", perangkat keras maupun operasi yang dilakukan. LAYANAN SISTEM OPERASI Deteksi dan Pemberian tanggapan pada kesalahan, jika muncul permasalahan pada sistem komputer maka sistem operasi harus memberikan tanggapan yang menjelaskan kesalahan yang terjadi serta dampaknya terhadap aplikasi yang sedang berjalan. Efesisensi penggunaan sistem, diantaranya: Resource allocator, yakni: mengalokasikan sumber-daya hardware maupun software ke beberapa pengguna atau mengalokasikan job yang jalan pada saat yang bersamaan ke beberapa komputer dalam jaringan. Proteksi sistem untuk menjamin akses ke sistem sumber daya yang aman, dikendalikan oleh sistem sehingga pengguna dikontrol aksesnya ke sistem). Accounting adalah kegiatan merekam aktifitas pengguna, report pemakaian sumber daya. Sistem Operasi yang bagus harus mampu mengumpulkan data statistik penggunaan beragam sumber-daya dan memonitor parameter kinerja. 3. SYSTEM CALL System call menyediakan interface antara program (program pengguna yang berjalan) dan bagian OS. System call menjadi jembatan antara proses dan sistem operasi. System call ditulis dalam bahasa assembly atau bahasa tingkat tinggi yang dapat mengendalikan mesin Contoh: UNIX menyediakan system call: read, write operasi I/O untuk berkas. Sering pengguna program harus memberikan data (parameter) ke OS yang akan dipanggil. Contoh pada UNIX: read(buffer, max_size, file_id); Tiga cara memberikan parameter dari program ke sistem operasi: Melalui registers (sumber daya di CPU). Menyimpan parameter pada data struktur (table) di memori, dan alamat table tsb ditunjuk oleh pointer yang disimpan di register. Push (store) melalui "stack" pada memori dan OS mengambilnya melalui pop pada stack tsb. 4. MESIN VIRTUAL Program sistem diatas kernel dapat menggunakan system call atau instuksi-instruksi hardware. Dalam beberapa hal, program sistem tidak membedakan kedua lapisan tersebut. Program sistem memperlakukan system call dan hardware dilapisan yang sama. Beberapa sistem mengadopsi teknik ini supaya program sistem dapat dipanggil secara mudah oleh program-program aplikasi. Meskipun program sistem berada ditingkat yang lebih tinggi dari rutin-rutin program aplikasi yang lain, program-program aplikasi akan melihat semua yang berada dibawahnya (didalam hirarki). MODEL MESIN VIRTUAL Proses Proses Proses Proses Kernel Kernel Kernel Programming interface Kernel Mesin virtual Hardware Hardware 5. PERANCANGAN SISTEM DAN IMPLEMENTASI Target untuk pengguna: sistem operasi harus nyaman digunakan, mudah dipelajari, dapat diandalkan, aman dan cepat. Target untuk sistem: sistem operasi harus gampang dirancang, diimplementasi, dan dipelihara, sebagaimana fleksibel, error, dan efisien. Mekanisme dan Kebijaksanaan : Mekanisme menjelaskan bagaimana melakukan sesuatu kebijaksanaan memutuskan apa yang akan dilakukan. Pemisahan kebijaksanaan dari mekanisme merupakan hal yang sangat penting; ini mengizinkan fleksibilitas yang tinggi bila kebijaksanaan akan diubah nanti. Kebijaksanaan memutuskan apa yang akan dilakukan. 6. SYSTEM GENERATION (SYSGEN) Sistem operasi dirancang untuk dapat dijalankan di berbagai jenis mesin, sistemnya harus di konfigurasi untuk tiap tipekomputer. Program SYSGEN mendapatkan informasi mengenai konfigurasi khusus ini dari sistem perangkat keras, ketika melakukan: Booting, yakni memulai komputer dengan me-load kernel. Bootstrap program, yakni kode yang disimpan di code ROM yang dapat menempatkan kernel, memasukkannya kedalam memori, dan memulai eksekusinya. SEJARAH SISTEM OPERASI 1. Sistem Operasi Generasi Awal dan Penting Menurut Sejarah : CTSS (The Compatible TimeShare System, dibuat di MIT oleh Corbato cs) Incompatible Timesharing System (The Incompatible TimeShare System, dibangun di MIT untuk mainframe DEC 10/20) Sistem operasi THE (oleh Dijkstra cs) Multics (proyek gabungan Bell Labs, GE dan MIT) Master programme, dibangun oleh Leo Computers, Leo III pada tahun 1962 2. Sistem Operasi Berhak Milik Generasi Awal Apple Computer Business Operating System (BOS) Commodore PET, Commodore 64, dan Commodore VIC-20 IBM PC awal (UCSD p-System, CPM-86, PC-DOS) Sinclair Micro dan QS TRS-DOS, ROM OS TI99-4 Flex FLEX9 mini-FLEX 3. Sistem Operasi Berlisensi Acorn Arthur ARX RISC OS RISCiX Amiga AmigaOS Atari ST TOS MultiTOS MiNT Be Incorporated BeOS BeIA Zeta ICT/ICL GEORGE VME DME TME Novell o Novell Netware v.1.0, 2.0, 3.0, 3.1, 3.12 o Novell Netware v.4.11, 5.0, 5.1, 6.0 o Novell SuSE 9.0,9.1,9.2, 9.3 IBSYS OS/2 AIX OS/40 0 DOS/3 60 DOS/V SE OS/36 0 MFT MVT SVS MVS TPF ALCS OS/39 0 paq/HP o Windows for AIS Workstation / Stand OS-8 alone ITS (untuk Windows 1.0 PDP-6 dan Windows 2.0 PDP-10) (u/ 80286) TOPS-10 Windows 3.0, (untuk 3.1 PDP-10) Windows 95 WAITS Windows TENEX 98/98se/98pl TOPS-20 us Windows ME RSTS/E (Millenium) RSX-11 Windows 2000 RT-11 Profesional VMS Windows XP Apple (eXPerience) Macintos Home h PDA (Personal Digital Assistant) Palm OS Pocket PC EPOC, Symbian OS Windows CE Linux Sharp Zaurus Router IOS MikroTik RouterOS Smartphones Windows CE Linux Symbian OS Microcontroller, Real-Time OS, Embedded Contiki eCos OSEK Nuclues QNX VxWorks ITRON uCLinux TRON OS ThreadX INTEGRITY Montavista Linux OS berhak milik lainnya, Unix-like & POSIXcompliant o Aegis/OS o Cromix o Coherent o DNIX o Digital UNIX o HP-UX o Idris o IRIX o Mac OS X o Menuet o NeXTSTEP o OS-9 o OS-9/68k o OS-9000 o OSF/1 o OPENSTEP o Plan 9 o Plan 9, Inferno o Rhapshody o RiscOS o SCO UNIX o System V 4. Sistem Operasi Open Source Linux distronya antara lain : Debian Slackware Redhat/Fedora Mandrake/Mandr iva Gentoo YellowDog Ubuntu Trustix Knoppix Blank-on Xnuxer, dll. BSD (Berkley Software Development) FreeBSD, OpenBSD, NetBSD, dll. Sun Microsystems Solaris - Unix-like SunOS - Unixlike (menjadi Solaris) Java Desktop System (JDS) PERTANYAAN 1. 2. 3. 4. 5. 6. 7. 8. Sebutkan lima kegiatan utama dari sistem operasi yang berhubungan dengan managemen proses! Sebutkan tiga kegiatan utama dari sistem operasi yang berhubungan dengan managemen memori utama! Sebutkan tiga kegiatan utama dari sistem operasi yang berhubungan dengan managemen secondary-storage! Sebutkan lima kegiatan utama dari sistem operasi yang berhubungan dengan managemen berkas! Jelaskan hal-hal yang termasuk dalam layanan sistem operasi Dimana letak virtual memory dalam hardware komputer Sebutkan Sistem Operasi Router Sebutkan Sistem Operasi Open Source