01/08/2017 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 dan menyediakan sekumpulan layanan (system calls) ke pengguna untuk memudahkan dan menyamankan penggunaan serta pemanfaatan sumber daya sistem komputer. Terdapat 2 jenis sistem operasi berdasarkan tampilan antarmuka kepada penggunanya, yaitu : 1. Sistem Operasi berbasis CUI (Character User Interface). Contohnya : - DOS (Disk Operating Sistem), - Sistem Operasi UNIX dan - Sistem Operasi Linux pada mode terminal/konsol. 2. Sistem Operasi berbaris GUI (Graphical User Interface) Contohnya : - Microsoft Windows 9x, - Microsoft Windows 2000, - Microsoft Windows NT, - Microsoft Windows XP, - Sistem operasi UNIX dan Linux yang telah mendukung GUI. Pengertian dan Tujuan System Call System call adalah merupakan suatu kumpulan instruksi extended yang disediakan oleh system operasi yang berfungsi sebagai interface antara system operasi dengan program pemakai Tujuan system call : a.)System Calls For Signaling, Pemanggilan sinyal interupsi yang digunakan untuk menghentikan suatu proses jika terdapat kesalahan atau jika ada proses lainnya yang perlu didahulukan. b) System Calls for File Management, Sistem untuk manajemen file baik untuk membuat, membaca, membatasi pemakai memanipulasi file, dsb. Pengertian System Calls : Komputer digunakan untuk melakukan suatu proses yang dikehendaki user. Oleh karena itu harus ada suatu bentuk komunikasi antara user dan hardware. Komunikasi itu terjadi dalam bentuk system calls. SO melalui shell-nya akan menangkap perintah dari user yang kemudian akan dikomunikasikan melalui system calls. Disinilah peran SO sebagai jembatan komunikasi antara user dan hardware itu terjadi. System calls itu sendiri umumnya ditulis dalam bahasa C dan C++. Mengenai shell, shell itu sendiri secara umum adalah layer yang berfungsi sebagai interface antara user dan inti dalam sistem operasi (kernel). Melalui shell, user dapat memberi perintah-perintah yang akan dikirim ke sistem operasi, sehingga shell ini merupakan layer yang menerima interaksi dari user secara langsung. Shell dalam SO secara umum dibagi menjadi 2, Command Line(CLI) dan Graphical(GUI). Jadi dengan kata lain, system calls berperan sebagai interface dalam layanan-layanan yang disediakan oleh sistem operasi. Untuk lebih jelasnya lihat gambar berikut. 01/08/2017 Jenis-jenis dan Fungsi Syst 1. System Calls Manajemen Proses System Call untuk manajemen proses diperlukan untuk mengatur proses-proses yang sedang berjalan. Kita dapat melihat penggunaan system calls untuk manajemen proses pada Sistem Operasi Unix. Contoh yang paling baik untuk melihat bagaimana system call bekerja untuk manajemen proses adalah Fork. Fork adalah satu satunya cara untuk membuat sebuah proses baru pada sistem Unix. Fork membuat duplikasi yang mirip dengan proses aslinya, termasuk file descriptor, register, dan lainnya. Setelah perintah Fork, child akan mengeksekusi kode yang berbeda dengan parentnya. Bayangkan yang terjadi pada shell. Shell akan membaca command dari terminal, melakukan fork pada child, menunggu child untuk mengeksekusi command tersebut, dan membaca command lainnya ketika child terminate. Contoh di atas adalah sytem calls di dalam program yang membaca data dari satu file lalu meng- copy-nya ke file lain. Untuk menunggu child selesai, parent akan mengeksekusi system call waitpid, yang hanya akan menunggu sampai child selesai. Proses child harus mengeksekusi command yang dimasukkan oleh user (pada kasus shell). Proses child melakukannya dengan menggunakan system call exec. Dari ilustrasi tersebut kita dapat mengetahui bagaimana system call dipakai untuk manajemen proses. Kasus lainnya bukan hanya pada Fork, tetapi hampir setiap proses memerlukan system call untuk melakukan manajement proses. 4. System Calls Informasi/Pemeliharaan 2. System Calls Manajemen Berkas System calls yang berhubungan dengan berkas sangat diperlukan. Seperti ketika kita ingin membuat atau menghapus suatu berkas. Atau ketika ingin membuka atau menutup suatu berkas yang telah ada, membaca berkas tersebut, dan menulis berkas itu. System calls juga diperlukan ketika kita ingin mengetahui atribut dari suatu berkas atau ketika kita juga ingin merubah atribut tersebut. Yang termasuk atribut berkas adalah nama berkas, jenis berkas, dan lain-lain. Ada juga system calls yang menyediakan mekanisme lain yang berhubungan dengan direktori atau sistim berkas secara keseluruhan. Jadi bukan hanya berhubungan dengan satu spesifik berkas. Contohnya membuat atau menghapus suatu direktori, dan lain-lain. 3. System Calls Manajemen Peranti Program yang sedang dijalankan kadang kala memerlukan tambahan sumber daya. Jika banyak pengguna yang menggunakan sistem, maka jika memerlukan tambahan sumber daya maka harus meminta peranti terlebih dahulu. Dan setelah selesai penggunakannnya harus dilepaskan kembali. Ketika sebuah peranti telah diminta dan dialokasikan maka peranti tersebut bisa dibaca, ditulis, atau direposisi. Beberapa system calls disediakan untuk membantu pertukaran informasi antara pengguna dan sistem operasi. Contohnya system calls untuk meminta dan mengatur waktu dan tanggal. Atau meminta informasi tentang sistem itu sendiri, seperti jumlah pengguna, jumlah memori dan disk yang masih bisa digunakan, dan lain-lain. Ada juga system calls untuk meminta informasi tentang proses yang disimpan oleh sistem dan system calls untuk merubah (reset) informasi tersebut. 5. System Calls Komunikasi Dua model komunikasi: Message-passing. Pertukaran informasi dilakukan melalui fasilitas komunikasi antar proses yang disediakan oleh sistem operasi. Shared-memory. Proses menggunakan memori yang bisa digunakan oleh berbagai proses untuk pertukaran informasi dengan membaca dan menulis data pada memori tersebut. Dalam message-passing, sebelum komunikasi dapat dilakukan harus dibangun dulu sebuah koneksi. Untuk itu diperlukan suatu system calls dalam pengaturan koneksi tersebut, baik dalam menghubungkan koneksi tersebut maupun dalam memutuskan koneksi tersebut ketika komunikasi sudah selesai dilakukan. Juga diperlukan suatu system calls untuk membaca dan menulis pesan (message) agar pertukaran informasi dapat dilakukan. 01/08/2017 DESKRIPSI PROSES Definisi : Adalah program yang sedang dieksekusi MANAJEMEN PROSES Unit terkecil yang secara individu memiliki sumber daya-sumber daya dan dijadwalkan oleh Sistem Operasi (SO) SO mengelola semua proses di sistem dan mengalokasikan sumber daya ke proses-proses sesuai dengan kebijaksanaan untuk memenuhi sasaran sistem Hal-hal berkaitan proses Multiprogramming (Multitasking) Multiprocessing Distributed processing MULTIPROGRAMMING Definisi : Manajemen banyak proses pada satu pemroses Banyak proses yang dijalankan bersamaan, masing-masing proses mendapat bagian memori dan kendali sendiri Program yang dijalankan bersifat Tidak bergantung (Independent) Proses terpisah satu dari lainnya & tidak berpengaruh Satu program pada satu saat (one program at any instant) Pada satu waktu hanya satu proses yang dilayani pemroses, menggunakan interleave bukan overlap diantara program-program Oleh karena perpindahan dari satu proses ke proses dilakukan secara cepat bagi bagi pemakai seolaholah bekerja secara paralel. Hal ini dikenal dengan paralel semu (pseudoparallelism) MULTIPROCESSING Definisi : Manajemen banyak proses di komputer multiprocessor Dengan kata lain komputer dengan banyak pemroses di satu sistem komputer dengan masing-masing pemroses melakukan pemrosesan secara independen Contoh SO yang mendukung : Windows NT, UNIX, LINUX DISTRIBUTED PROCESSING Manajemen banyak proses yang dieksekusi di banyak sistem komputer yang tersebar (terdistribusi). Contoh : MACH, AMOEBA 01/08/2017 PEMROSES Kebutuhan utama pengendalian proses oleh SO dapat dinyatakan dengan mengacu ke proses yaitu : Saling melanjutkan (interleave) Mengikuti kebijaksanaan tertentu Mendukung komunikasi antar proses dan penciptaan proses INTERLEAVE Dikatakan interleave (bersambung/ melanjutkan) maksudnya pemroses mengeksekusi satu proses setiap saat dan secara cepat beralih ke proses lainnya secara bergiliran. SO harus interleave (saling melanjutkan) eksekusi proses-proses agar memaksimumkan penggunaan pemroses sambil masih memberi waktu tanggap yang memadai DIAGRAM STATE DASAR Running : pemroses sedang mengeksekusi innstruksi proses tersebut Ready : proses siap dieksekusi, tapi pemroses tidak tersedia untuk eksekusi proses ini Blocked : proses menunggu kejadian (event) untuk melengkapi tugasnya STATE DASAR MENDUKUNG KOMUNIKASI ANTAR PROSES & PENCIPTAAN PROSES SO harus mendukung komunikasi antar proses dan penciptaan proses oleh pemakai sehingga membantu menstrukturkan aplikasi. Jadi pada sistem dengan banyak proses aktif, proses-proses pada satu saat berada dalam beragam tahap eksekusinya. Proses mengalami beragam state selama siklus hidupnya sebelum berakhir dan keluar dari sistem. SO harus mengetahui state masing-masing proses dan merekam semua perubahan yang terjadi secara dinamis. Informasi ini untuk penjadwalan dan memutuskan alokasi sumber daya KETERANGAN GAMBAR Proses baru diciptakan berada pada state ready Proses dari running menjadi blocked karena sumberdaya yang diminta belum tersedia atau meminta layanan perangkat masukan/ keluaran (I/O) sehingga menunggu kejadian yang muncul. Proses ini dikenal dengan event wait. Proses dari running jadi ready karena penjadwal memutuskan eksekusi proses lain oleh karena jatah waktu telah habis (timeout). Proses dari blocked jadi ready karena sumber daya yang diminta tersedia atau layanan I/O selesai/ terpenuhi. Proses ini dikenal event occur Proses dari ready jadi running karena penjadwal memutuskan untuk mengeksekusi proses tersebut. 01/08/2017 INFORMASI IDENTIFIKASI PROSES PCB (PROGRAM CONTROL BLOCK) Berkaitan dengan identitas proses yang unik Dengan identifier ini proses dikaitkan ke tabel-tabel lain Identifiernya adalah numerik yang meliputi SO memerlukan banyak informasi mengenai proses guna pengelolaan proses Informasi ini ada di PCB Struktur datanya menyimpan informasi lengkap mengenai proses sehingga dapat terjadi siklus hidup proses Informasi di PCB dikelompokkan Informasi identifikasi proses Informasi status proses Informasi kendali proses Identifier proses Identifier proses yang menciptakan Identifier pemakai INFORMASI STATUS PROSES Informasi ini esensinya terdiri dari register-register pemroses. Saat proses berstatus running, informasi-informasi ini berada di register-register. Ketika proses diinterupsi semua informasi register harus disimpan agar dapat dikembalikan saat proses dieksekusi kembali Jumlah dan ragam register bergantung pada arsitektur komputernya INFORMASI STATUS PROSES ELEMEN-ELEMEN PCB Informasi ini esensinya terdiri dari register-register pemroses. Saat proses berstatus running informasi-informasi ini berada di register-register. Identifikasi Proses Saat proses diinterupsi semua informasi register harus disimpan agar dapat dikembalikan saat proses dieksekusi kembali Identifier Jumlah dan ragam register yang terlibat bergantung pada arsitektur komputer Identifier numerik yang meliputi Identifier proses Identifier proses yang menciptakan Identifier pemakai INFORMASI KENDALI PROSES Adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif 01/08/2017 ELEMEN-ELEMEN PCB (Lanjut) Informasi Status Pemroses Register-register yang terlihat pemakai Register-register yang dapat ditunjuk instruksi bahasa assembly untuk diproses pemroses Register-register kendali dan status Register-register yang digunakan untuk mengendalikan operasi pemroses, a.l.: Program counter PSW, dsb. Pointer stack Tiap proses mempunyai satu stack atau lebih. Stack digunakan untuk parameter atau alamat prosedur pemanggil dan system call. Pointer stack menunjuk posisi paling atas dari stack ELEMEN-ELEMEN PCB (Lanjut) Informasi Kendali Pemroses Informasi penjadwalan dan status Informasi-informasi yang dipakai untuk menjalankan fungsi penjadwalan a.l : Status proses. Mendefinisikan status proses (running,ready,block, dsb) Prioritas. Menjelaskan prioritas proses Informasi berkaitan penjadwalan. Informasi ini seperti lama menunggu, lama proses terakhir dieksekusi dsb. Kejadian (Event). Identitas kejadian yang ditunggu proses Penstrukturan data Suatu proses dapat dikaitkan dengan proses lain dalam satu antrian atau ring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini. Komunikasi antar proses Beragam flag, sinyal dan pesan dapat diasosiasikan dengan komunikasi antara dua proses yang terpisah. Informasi ini disimpan dalam PCB ELEMEN-ELEMEN PCB (Lanjut) Informasi Kendali Pemroses (lanjut) Kewenangan proses Proses dapat mempunyai kewenangan berkaitan dengan memori dan tipe instruksi yang dapat dijalankan Manajemen memori Bagian ini berisi pointer ke tabel segmen atau page yang menyatakan memori virtual proses Kepemilikan dan utilisasi sumber daya Sumber daya yang dikendalikan proses harus diberi tanda, misalnya : Berkas yang dibuka Pemakaian pemroses Pemakaian sumberdaya lainnya Informasi ini diperlukan oleh penjadwal MANAJEMEN FILE 01/08/2017 Sistem Berkas/File Definisi berkas/file Berkas adalah sebuah koleksi informasi berkaitan yang diberi nama dan disimpan di dalam secondary storage. Biasanya sebuah berkas merepresentasikan data atau program. Ada pun jenis-jenis dari berkas: kumpulan berkas (masing-masing menyimpan data yang berkaitan) atau struktur direktori (mengatur dan menyediakan informasi mengenai semua berkas yang berada di sistem) Manajemen file Text file: yaitu urutan dari karakter-karakter yang diatur menjadi barisan dan mungkin halaman. Source file: yaitu urutan dari berbagai subroutine dan fungsi yang masingmasing kemudian diatur sebagai deklarasi-deklarasi diikuti oleh pernyataan-pernyataan yang dapat diexecute. Object file: yaitu urutan dari byte-byte yang diatur menjadi blok-blok yang dapat dipahami oleh penghubung system. Metode dan struktur data yang digunakan sistem operasi untuk mengatur dan mengorganisir file pada disk atau partisi (bagian-bagian memori). Sistem file berfungsi untuk menyimpan file-file tertentu. Executable file: adalah kumpulan dari bagian-bagian kode yang dapat dibawa ke memori dan dijalankan oleh loader. Cara memasukkan sistem file ke disk atau partisi adalah dengan cara di format. Mengapa dibutuhkan Manajemen File? Fungsi Manajemen File/Berkas Penciptaan, modifikasi, dan penghapusan file Mekanisme pemakaian file bersamaan Kemampuan backup dan recovery Informasi tersimpan aman dan rahasia Menyediakan interface user-friendly Tugas Manajemen File/Berkas VS Untuk memenuhi kebutuhan manajemen data dan kebutuhan user dalam hal penyimpanan data dan melakukan operasi terhadap file Untuk menjamin data di dalam file valid Untuk mengoptimalkan performansi dari sisi sistem (throughput) dan dari sisi user (response time) Untuk memberikan dukungan I/O terhadap berbagai macam device penyimpan data Untuk meminimalkan atau menghilangkan kemungkinan terjadinya data hilang atau rusak Untuk memberikan routine antarmuka I/O yang standar bagi proses user Untuk memberikan dukungan I/O bagi banyak user 01/08/2017 Metode Akses Berkas menyimpan informasi. Apabila sedang digunakan informasi ini harus diakses dan dibaca melalui memori komputer. Informasi dalam berkas dapat diakses dengan beberapa cara. Berikut adalah beberapa caranya: Tipe File Akses Sekuensial : Akses ini merupakan yang paling sederhana dan paling umum digunakan. Informasi di dalam berkas diproses secara berurutan. Sebagai contoh, editor dan kompilator biasanya mengakses berkas dengan cara ini. Akses Langsung : Metode berikutnya adalah akses langsung atau dapat disebut relative access. Sebuah berkas dibuat dari rekamanrekaman logical yang panjangnya sudah ditentukan, yang mengizinkan program untuk membaca dan menulis rekaman secara cepat tanpa urutan tertentu. Operation File Create (buat) Delete (hapus) Open (buka) Close (tutup) Read (baca) Write (tulis) Struktur File Field Record File Database Elemen File Manajemen 01/08/2017 Urutan Pembacaan Pada Sistem File DIREKTORI (Pengelompokan File) DIRECTORY OPERASI DIREKTORI • MERUPAKAN SEBUAH FILE YANG DIMILIKI OLEH SISTEM OPERASI. • MEMBUKA DIREKTORI • DARI SISI USER DIREKTORI MEMETAKAN ANTARA NAMA FILE DENGAN FILE. • MENUTUP DIREKTORI • MENAMBAH DIREKTORI ISI DIREKTORI • INFORMASI DASAR (NAMA, TIPE, DAN ORGANISASI FILE) • MENGUBAH NAMA DIREKTORI • MENGHUBUNGKAN BERKAS-BERKAS DI DIREKTORI BERBEDA. • MENGHAPUS HUBUNGAN BERKAS-BERKAS DI DIREKTORI BERBEDA. • INFORMASI ALAMAT FILE(VOLUME, ALAMAT AWAL, UKURAN YANG DIGUNAKAN, UKURAN YANG DIALOKASIKAN) • INFORMASI KONTROL AKSES (PEMILIK FILE, INFORMASI AKSES, AKSI YANG DIIJINKAN) • INFORMASI PENGGUNAAN FILE (TANGGAL DIBUAT, IDENTITAS PEMBUAT, TANGGAL TERAKHIR KALI DIAKSES TERAKHIR TERAKHIR DIAKSES, IDENTITAS PEMBACA TERAKHIR, TANGGAL DIMODIFIKASI, IDENTITAS PEMODIFIKASI TERAKHIR, TANGGAL TERAKHIR DI-BACKUP, STATUS FILE SAAT INI) JENIS DIREKTORI • DIREKTORI SATU TINGKAT • DIREKTORI DUA TINGKAT • DIREKTORI DENGAN STRUKTUR TREE 01/08/2017 STRUKTUR SATU DIREKTORI • MERUPAKAN SINGLE LEVEL YANG PALING SEDERHANA. DIRECTORY • SEMUA BERKAS DISIMPAN DALAM DIREKTORI YANG SAMA. • MEMILIKI KETERBATASAN : BILA BERKAS BERTAMBAH BANYAK ATAU BILA SISTEM MEMILIKI LEBIH DARI SATU PENGGUNA, DISEBABKAN KARENA TIAP BERKAS HARUS MEMILIKI NAMA YANG UNIK. STRUKTUR DUA DIREKTORI • (TWO LEVEL DIRECTORY) MEMBUAT DIREKTORI YANG TERPISAH UNTUK TIAP PENGGUNA, YANG DISEBUT USER FILE DIRECTORY (UFD). • KETIKA PENGGUNA LOGIN, MASTER DIRECTORY BERKAS DIPANGGIL. • MFD MEMILIKI INDEKS BERDASARKAN NAMA PENGGUNA DAN SETIAP ENTRI MENUNJUK PADA UFD PENGGUNA TERSEBUT. • PENGGUNA BOLEH MEMILIKI NAMA BERKAS YANG SAMA DENGAN BERKAS LAIN. DIRECTORY DENGAN STRUKTUR TREE • PADA DIREKTORI DENGAN STRUKTUR TREE (TREE-STRUCTURED DIRECTORY), SETIAP PENGGUNA DAPAT MEMBUAT SUBDIREKTORI SENDIRI DAN MENGORGANISASIKAN BERKAS-BERKASNYA. DIRECTORY DENGAN STRUKTUR TREE 01/08/2017 CONTOH PARTISI PARTISI FOLDER SUB FOLDER FILE FILE FILE Ada 4 Partisi SUB – SUB FOLDER FILE FOLDER DAN FILE SUB FOLDER 01/08/2017 Struktur Sistem Operasi : Windows merupakan sistem operasi yang paling banyak di gunakan oleh pengguna komputer di seluruh dunia. Mengapa? tentu saja tampilannya yang user friendly sangat mudah di gunakan oleh user. Selain itu Windows juga membuat struktur direktori yang mudah di gunakan. STRUKTUR SISTEM OPERASI Ada 3 Sistem File yang terdapat di dalam sistem operasi ini: 1. FAT 16 Sistem file ini di perkenalkan pada tahun 1981 melalui MS-DOS. Pada saat mendesainnya sistem ini hanya di peruntukan untuk mengatur file pada floopy drive saja, namun semakin di kembangkan sehingga dapat juga untuk mengatur file pada harddisk. Sistem file ini juga compatible untuk semua OS yang ada pada saat itu, seperti Windows 95/98/me, OS/2, bahkan juga Unix. Namun kekurangan dari sistem file ini, tidak adanya dukungan untuk kompresi, enkripsi dan kontrol akses dalam partisi. 2. FAT 32 merupakan pengembangan dari FAT 16 sehingga kemampuan harddisk menjadi lebih baik lagi. Seperti kebalikannya dari FAT 16, FAT 32 tidak dapat di gunankan oleh sembarang sistem operasi dengan kata lain tidak semua OS dapat menggunakan sistem file ini. 3. NTFS merupakan terobosan baru yang benar-benar berbeda dari teknologi sebelumnya, seperti sebuah gebrakan sistem file ini sudah mendukung untuk kompresi file, enkripsi data dan cluster serta peningkatan security yang jauh lebih baik. New Technologi File System merupakan kepanjangan dari NTFS, yang dapat di gunakan hanya pada Windows NT dan semua keluarganya. 01/08/2017 Dari gambar di atas sudah cukup jelas menjelaskan pembagian direktori file pada sistem operasi windows. Sedangkan My Computer sendiri adalah sebagai root nya, yang terdiri dari C:, D:, dan E: yang penggunaannya dapat di sesuaikan oleh user. kecuali untuk C: yang otomatis untuk tempat menyimpan file Sistem operasi nya itu sendiri. Penjelasan berikut, merupakan direktori yang secara otomatis akan terbentuk saat instalasi Windows. Direktori C:\Windows : pada direktori ini terdapat semua sistem dari Windows. Seperti Device Driver, Registry dan program-program lain yang di gunakan oleh windows untuk dapat bekerja dengan baik. Direktori C:\Program Files : direktori ini menyimpan program-program yang di telah di install pada sistem operasi Windows. Direktori C:\My Document : direktori ini berisi semua data maupun dokumen yang di miliki oleh user REFERENSI • WILLIAM STALLINGS. HAK CIPTA © 2001. OPERATING SYSTEMS. PRENTICE HALL. • ANDREW S. TANENBAUM. HAK CIPTA © 1992. MODERN OPERATING SYSTEMS. PRENTICE-HALL INC. • AVI SILBERSCHATZ, PETER GALVIN, DAN GRAG GAGNE. HAK CIPTA © 2000. OPERATING SYSTEMS CONCEPTS • WILLIAM STALLINGS. THE LINUX OPERATING SYSTEM • FRANK G FIAMINGO. INTRODUCTION TO UNIX • WEB • FTP://FTP.PRENHALL.COM/PUB/ESM/COMPUTER SCIENCE.S41/STALLINGS/SLIDES/OS5E-PPT-SLIDES/ • HTTP://WWW.STTTELKOM.AC.ID/STAF/END