Multiabilities OS Pada pertemuan sebelumnya telah disoalkan mengenai fungsi dari sistem operasi, konsep multi-programming, multi-tasking, multi-user dan time-sharing dari sistem operasi. Pada kesempatan ini kita akan bahas secara singkat. Fungsi utama dari sistem operasi bisa kita simpulkan menjadi dua, yaitu : Pengatur semua sumber daya yang ada pada sistem komputer. Disini SO berperan sebagai ‘manajer’ yang mengatur penggunaan dari perangkat-perangkat yang ada dalam sistem komputer. Penyedia layanan. Berperan sebagai ‘pelayan’ yang menyediakan apa yang diperlukan program lain. Aplikasi melayani Sistem Operasi mengatur Hardware Gambar 1. Visualisasi Fungsi SO Sebagai contoh, saat kita menginstall aplikasi, maka apalikasi itu akan terpasang pada SO, bukan terpasang langsung pada hardware komputer. Karena akan menjadi rumit bagi pengembang/pembuat aplikasi untuk berurusan langsung dengan pengelolaan hardware. Modul 4 “ Multiabilities dan System Call ” 1 Asisten : M Tirta M, Rahman, Dicky R.A Laboratorium Jurusan Teknik Informatika Universitas Pasundan 2007/2008 mtm Multiabilities Multiabilities dalam konsep SO disini mencakup multi-programming, multi-tasking, multi-user, dan time-sharing. SO dibangun untuk memanfaatkan secara efisien kemampuan dari sistem komputer. Awalnya suatu SO dibuat spesifik atau khusus untuk suatu sistem komputer tertentu. Contohnya adalah OS/360 yang digunakan pada komputer System 360 IBM pada tahun 1964 dan UNIX untuk komputer PDP7 pada tahun 1969. Hal ini bisa kita sebut dengan monoprogramming karena SO hanya digunakan untuk melakukan satu tugas khusus saja dan bergantung dengan sistem komputer yang dibuat. Seiring dengan kemajuan di bidang hardware yang cepat dan masalah yang semakin kompleks untuk diselesaikan dengan komputer, maka kemajuan SO juga merupakan suatu keharusan. Sistem operasi dituntut agar bisa digunakan untuk berbagai platform sistem komputer dan juga kemampuan untuk menyelesaikan lebih dari satu permasalahan. Inilah yang kita sebut dengan multi-programming. Bila multi-programming lebih dekat kepada sisi pembuat SO, maka dari sisi pengguna SO kemampuan ini sering disebut dengan multi-tasking. Artinya SO dapat melakukan banyak perintah yang seakan-akan dikerjakan dalam satu waktu/sekaligus. Ini bisa dilakukan karena SO sekarang menerapkan time-sharing. Time-sharing membuat SO mampu melayani proses-proses secara bergiliran dengan prioritas tertentu secara sangat cepat (bergantung dengan clock processor). Satu SO juga bisa digunakan oleh banyak pengguna sekaligus dengan konsep client(terminal) – server. Disini satu komputer yang memiliki SO dijadikan server, dan komputer lainnya sebagai terminal. Komputer terminal ini digunakan tanpas menginstall SO, namun hanya menggunakan floppy atau Cd untuk boot ke SO yang ada di server. Modul 4 “ Multiabilities dan System Call ” 2 Asisten : M Tirta M, Rahman, Dicky R.A Laboratorium Jurusan Teknik Informatika Universitas Pasundan 2007/2008 mtm System Call Di awal telah disinggung mengenai fungsi dari sistem operasi, yaitu sebagai pelayan aplikasi di atasnya. Bagaimana caranya ??? Inilah tugas dari system call. System call adalah layanan dari sistem operasi untuk aplikasi atau program yang berjalan di atas sistem operasi tersebut. Bila diibaratkan SO adalah sebuah restoran dan aplikasi atau program merupakan pengunjung yang datang, maka system call akan berwujud sebagai pelayannya. Pengunjung akan berkomunikasi dengan pelayan untuk memesan yang diinginkannya. Dengan adanya pelayan inilah maka pengunjung tidak harus repot untuk masuk ke dapur memesan makanan ataupun dipusingkan dengan cara pembuatan makanan tersebut. Seperti halnya aplikasi winamp yang memutar file mp3, winamp hanya harus memanggil system call yang berhubungan dengan output audio yang disediakan oleh SO, dan untuk proses pengeluaran suaranya melalui soundcard menjadi urusan sistem operasi. Dalam istilah informatika, systemcall dikatakan sebagai interface / antarmuka. Cara akses system call Kita bisa mengakses system call dengan dua cara, melalui command interpreter dan bahasa pemrograman. Command interpreter ini adalah penterjemah perintah. Di windows kita kenal dengan nama command prompt(cmd) dan di Linux disebut shell atau terminal. Perintah-perintah pada shell inilah yang kita sebut system call. Untuk windows kita telah praktikan pada pertemuan terdahulu. Sekarang kita akan mulai menggunakan shell yang ada pada sistem operasi Linux. Shell Linux memiliki banyak jenis shell dikarenakan banyak pengembangnya. Namun yang paling sering digunakan Modul 4 “ Multiabilities dan System Call ” yaitu C shell, Korn shell, Bourne shell dan 3 Asisten : M Tirta M, Rahman, Dicky R.A Laboratorium Jurusan Teknik Informatika Universitas Pasundan 2007/2008 mtm BASH(Bourne again shell). Berikut ini beberapa perintah dasar di shell yang kita akan sering gunakan. No Perintah Fungsi 1 cp Menyalin file (copy) 2 rm Menghapus file (remove) 3 mkdir Membuat direktori / folder 4 ls Menampilkan informasi berkas 5 more Menampilkan isi file per layar 6 cat Menampilkan isi file 7 man Menampilkan dokumentasi (manual) 8 mv Memindahkan file (move) 9 cd Mengganti direktori kerja 10 rmdir Menghapus direktori (remove dir) 11 Info Menampilkan informasi dari perintah 12 touch Membuat file kosong Tabel 1. System call dasar pada Linux Untuk perintah yang lain, bisa dieksplor sendiri. ☺ Praktik Masuk ke terminal / shell, kemudian cobalah perintah berikut! #touch coba.txt membuat file kosong coba.txt #cd /home pindah ke direktori /home #ls menampilkan isi direktori sekarang #cp coba.txt /home salin file coba.txt ke direktori /home #mkdir folderku membuat direktori dengan nama folderku #man mkdir melihat dokumentasi perintah mkdir #rmdir folderku menghapus direktori folderku Modul 4 “ Multiabilities dan System Call ” 4 Asisten : M Tirta M, Rahman, Dicky R.A Laboratorium Jurusan Teknik Informatika Universitas Pasundan 2007/2008 mtm ☺ Latihan Setiap praktikan wajib mencoba. Harap asisten untuk mengawasi. Buatlah file kosong dengan ekstensi .txt sesuai nama masing-masing. Kemudian salin ke direktori /home/user. Gunakanlah perintah dasar dalam tabel 1. Bahasa pemrograman Kita akan menggunakan bahasa pemrograman C untuk mengakses sistem call di linux. Karena di linux sendiri telah disediakan bahasa pemrograman tersebut. Untuk memanggil system call dengan cara ini, cukup kita panggil fungsi tertentu beserta parameternya. ☺ Praktik Masuk terlebih dahulu ke terminal / console. Kemudian ketikkan perintah pico buatDir.c Perintah diatas artinya buat dan edit file buatDir.c . Setelah itu ketikkan program berikut: #include<stdio.h> #include<unistd.h> Main() { mkdir(“/home/SO”); } Kemudian simpan dengan nama yang sama. Lanjutkan dengan mengetikkan perintah ini pada console : gcc buatDir.c –o buatDir mengkompilasi file buatDir.c dan hasilnya disimpan dalam file buatDir Untuk menjalankannya, ketikkan perintah ./buatDir Modul 4 “ Multiabilities dan System Call ” 5 Asisten : M Tirta M, Rahman, Dicky R.A Laboratorium Jurusan Teknik Informatika Universitas Pasundan 2007/2008 mtm Program di atas digunakan untuk membuat direktori “SO dalam direktori home” mkdir(“/home/SO”); . Perintah gcc adalah perintah untuk kompilasi. Atribut –o menandakan file outputnya, yaitu buatDir LATIHAN Sekarang, coba buatlah program yang menggunakan systemcall rmdir untuk menghapus direktory yang telah dibuat sebelumnya. Simpan dengan nama file hapusDir. Dan lihatlah apakah direktory sebelumnya telah terhapus. TUGAS Buatlah program yang menggunakan systemcall lainnya. Kemudian jelaskan secara rinci. Dikerjakan perkelompok dalam satu meja. Modul 4 “ Multiabilities dan System Call ” 6 Asisten : M Tirta M, Rahman, Dicky R.A Laboratorium Jurusan Teknik Informatika Universitas Pasundan 2007/2008 mtm