Sistem Berkas (File System)
Untuk mengorganisasi berkas pada Sistem Operasi, diperlukan suatu metode yang disebut dengan Sistem Berkas (File System). File System pada Linux sendiri terdiri dari beberapa macam, seperti ext, ext2, xia, dll. Saat ini ext2 fs adalah filesystem yang banyak digunakan untuk Linux karena terkenal sangat efisien. Meskipun demikian, Red Hat Linux tetap menyediakan dukungan terhadap filesystem lain seperti msdos yang sudah built in di kernel atau dalam bentuk modul seperti vfat (Windows95 native fs), ext,umsdos dan sebagainya.
Ext 2 (2nd Extended)
Ext 2 merupakan tipe file system yang paling tua yang masih ada. File system ini pertama kali dikenalkan pada tahun 1993. Ext 2 adalah file system yang paling ampuh di linux dan menjadi dasar dari segala distribusi linux. Pada Ext 2 file system, file data disimpan sebagai data blok. Data blok ini mempunyai panjang yang sama dan meskipun panjangnya bervariasi di antara Ext 2 file system, besar blok tersebut ditentukan pada saat file system dibuat dengan mk2fs. Jika besar blok adalah 1024 bytes, maka file dengan besar 1025 bytes akan memakai 2 blok. Ext 2 File System menyimpan data secara hirarki standar yang banyak digunakan oleh sistem operasi. Data tersimpan di dalam file, file tersimpan di dalam direktori. Sebuah direktori bisa mencakup file dan direktori lagi di dalamnya yang disebut sub direktori.
Ext 3 (3rd Extended)
Ext 3 merupakan peningkatan dari Ext 2 File System. Beberapa peningkatan yang ada antara lain:
* Journaling
Dengan menggunakan journaling, maka waktu recovery pada shut down yang mendadak tidak akan selama pada Ext 2.
*Integritas Data
Ext 3 menjamin adanya integritas data setelah terjadi kerusakan atau unclean shut down. Ext 3 memungkinkan kita memilih jenis dan tipe proteksi dari data.
* Kecepatan
Daripada menulis data lebih dari sekali, Ext 3 mempunyai throughput yang lebih besar daripada Ext 2 karena Ext 3 memaksimalkan pergerakan head harddisk. Kita bisa memilih tiga jurnal mode untuk memaksimalkan kecepatan, tetapi integritas data tidak terjamin.
* Mudah Dilakukan Migrasi
Kita dapat melakukan migrasi atau konversi dari Ext 2 ke Ext 3 tanpa harus melakukan format ulang pada harddisk.
Di samping keunggulan di atas, Ext 3 juga memiliki kekurangan. Dengan adanya fitur journaling, maka membutuhkan memori yang lebih dan memperlambat operasi I/O.
Ext 4 (4th Extended)
Ext 4 dirilis secara komplit dan stabil berawal dari kernel 2.6.28. Jadi, apabila distro yang secara default memiliki kernel tersebut atau di atasnya secara otomatis system sudah support Ext 4. Apabila masih menggunakan Ext 3, dapat dilakukan konversi ke ext 4 dengan beberapa langkah yang tidak terlalu rumit.
Keuntungan menggunakan Ext 4 ini adalah mempunyai pengalamatan 48-bit blok yang artinya dia akan mempunyai 1 EiB = 1.048.576 TB ukuran maksimum file system dengan ukuran 16 TB untuk maksimum file sizenya, fast fsck, journal checksumming, defragmentation support.
Jenis File pada Linux:
1. User Data
Merupakan file – file yang umumnya diciptakan oleh user untuk menyimpan data misalnya file task, document, dsb.
2. Sistem data
File yang digunakan oleh sistem linux untuk melakukan proses misalnya batch file.
3. File Executetable
Berisi informasi yang dikenal komputer sebagai instruksi – instruksi, dapat dijalankan secara langsung oleh user misalnya finger, ping, dsb.
Yahya's Story
"Tertarik dan antusias lah terhadap mimpi-mimpi Anda sendiri. Ketertarikan ini ibarat kebakaran hutan. Anda dapat mencium, merasakan, dan melihatnya dari kejauhan." -Diane Roger
Senin, 05 Januari 2015
Kamis, 11 Desember 2014
Manajemen Memori dalam Sistem Operasi
Jenis Manajemen Memori
Manajemen memori dalam Sistem Operasi dibagi menjadi dua:
1. Manajemen memori statis
Dengan pemartisian statis, jumlah, lokasi dan ukuran proses di memori tidak beragam sepanjang waktu secara tetap.
2. Manajemen memori dinamis
Dengan pemartisian dinamis, jumlah, lokasi dan ukuran proses memori dapat beragam sepanjang waktu secara dinamis.
Manajemen memori berdasarkan alokasi memori
a. Alokasi memori berturutan
Alokasi memori secara berturutan adalah tiap proses menempati satu blok tunggal memori yang berturutan
* Keunggulan :
- Sederhana
- Tak terbentuk lubang lubang memori bersebaran
- Proses dapat dieksekusi lebih cepat
* Kelemahan:
- Dapat memboroskan memori
- Tidak dapat memuatkan proses jika tidak ada satu blok memori yang mencukupi
b. Alokasi memori tak berturutan
Program dibagi menjadi beberapa blok atau segmen. Blok-blok program ditempatkan di memori dalam potongan-potongan tanpa perlu saling berdekatan. Teknik ini biasa digunakan pada sistem memori maya sebagai alokasi page-page dilakukan secara global.
Manajemen memori dalam Sistem Operasi dibagi menjadi dua:
1. Manajemen memori statis
Dengan pemartisian statis, jumlah, lokasi dan ukuran proses di memori tidak beragam sepanjang waktu secara tetap.
2. Manajemen memori dinamis
Dengan pemartisian dinamis, jumlah, lokasi dan ukuran proses memori dapat beragam sepanjang waktu secara dinamis.
Manajemen memori berdasarkan alokasi memori
a. Alokasi memori berturutan
Alokasi memori secara berturutan adalah tiap proses menempati satu blok tunggal memori yang berturutan
* Keunggulan :
- Sederhana
- Tak terbentuk lubang lubang memori bersebaran
- Proses dapat dieksekusi lebih cepat
* Kelemahan:
- Dapat memboroskan memori
- Tidak dapat memuatkan proses jika tidak ada satu blok memori yang mencukupi
b. Alokasi memori tak berturutan
Program dibagi menjadi beberapa blok atau segmen. Blok-blok program ditempatkan di memori dalam potongan-potongan tanpa perlu saling berdekatan. Teknik ini biasa digunakan pada sistem memori maya sebagai alokasi page-page dilakukan secara global.
Kamis, 04 Desember 2014
"Deadlock" pada Sistem Operasi
Deadlock?
Deadlock adalah keadaan dimana dua atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya. Analoginya seperti pada kondisi jalan raya dimana terjadi kemacetan parah. Deadlock adalah efek samping dari sinkronisasi, dimana satu variabel digunakan oleh dua proses. Deadlock bisa digambarkan sebagai berikut :
Jenis-jenis Deadlock
Ada empat kondisi yang dapat menyebabkan terjadinya deadlock. Keempat kondisi tersebut tidak dapat berdiri sendiri, namun saling mendukung. Kondisi tersebut adalah:
1. Mutual exclusion
Hanya ada satu proses yang boleh memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut.
2. Hold and wait
Proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama.
3. No preemption
Sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh
proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan.
4. Circular wait
Kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang
dipegang proses berikutnya.
Mengatasi Terjadinya Deadlock
Ada beberapa cara untuk mengatasi terjadinya deadlock, diantaranya adalah:
a. Mengabaikan masalah deadlock.
b. Mendeteksi dan memperbaiki
c. Penghindaran yang terus menerus dan pengalokasian yang baik dengan menggunakan protokol untuk memastikan sistem tidak pernah memasuki keadaan deadlock. Yaitu dengan deadlock avoidance sistem untuk mendata informasi tambahan tentang proses mana yang akan meminta dan menggunakan sumber daya.
d. Pencegahan yang secara struktur bertentangan dengan empat kondisi terjadinya deadlock dengan deadlock prevention sistem untuk memastikan bahwa salah satu kondisi yang penting tidak dapat menunggu.
Deadlock adalah keadaan dimana dua atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya. Analoginya seperti pada kondisi jalan raya dimana terjadi kemacetan parah. Deadlock adalah efek samping dari sinkronisasi, dimana satu variabel digunakan oleh dua proses. Deadlock bisa digambarkan sebagai berikut :
Jenis-jenis Deadlock
Ada empat kondisi yang dapat menyebabkan terjadinya deadlock. Keempat kondisi tersebut tidak dapat berdiri sendiri, namun saling mendukung. Kondisi tersebut adalah:
1. Mutual exclusion
Hanya ada satu proses yang boleh memakai sumber daya, dan proses lain yang ingin memakai sumber daya tersebut harus menunggu hingga sumber daya tadi dilepaskan atau tidak ada proses yang memakai sumber daya tersebut.
2. Hold and wait
Proses yang sedang memakai sumber daya boleh meminta sumber daya lagi maksudnya menunggu hingga benar-benar sumber daya yang diminta tidak dipakai oleh proses lain, hal ini dapat menyebabkan kelaparan sumber daya sebab dapat saja sebuah proses tidak mendapat sumber daya dalam waktu yang lama.
3. No preemption
Sumber daya yang ada pada sebuah proses tidak boleh diambil begitu saja oleh
proses lainnya. Untuk mendapatkan sumber daya tersebut, maka harus dilepaskan terlebih dahulu oleh proses yang memegangnya, selain itu seluruh proses menunggu dan mempersilahkan hanya proses yang memiliki sumber daya yang boleh berjalan.
4. Circular wait
Kondisi seperti rantai, yaitu sebuah proses membutuhkan sumber daya yang
dipegang proses berikutnya.
Mengatasi Terjadinya Deadlock
Ada beberapa cara untuk mengatasi terjadinya deadlock, diantaranya adalah:
a. Mengabaikan masalah deadlock.
b. Mendeteksi dan memperbaiki
c. Penghindaran yang terus menerus dan pengalokasian yang baik dengan menggunakan protokol untuk memastikan sistem tidak pernah memasuki keadaan deadlock. Yaitu dengan deadlock avoidance sistem untuk mendata informasi tambahan tentang proses mana yang akan meminta dan menggunakan sumber daya.
d. Pencegahan yang secara struktur bertentangan dengan empat kondisi terjadinya deadlock dengan deadlock prevention sistem untuk memastikan bahwa salah satu kondisi yang penting tidak dapat menunggu.
Kamis, 20 November 2014
Concurrency pada Sistem Operasi
Adalah dua atau lebih hal yang berjalan pada waktu yang bersamaan pada sebuah Sistem Operasi. Masalah yang dihadapi:
1. Atomic Operation
- sebuah operasi yang sifatnya tidak dapat dibagi lagi
- dieksekusi semua atau tidak sama sekali
- bagian program yang tidak dapat di interrupt
2. Critical Section
- bagian tertentu dari code yang membutuhkan akses ke shared resources
- tidak boleh dijalankan ketika ada proses lain yang sedang menjalankan bagian tersebut (tidak boleh ada yang menyela)
3. Race Condition
- hasil eksekusi sebuah program tergantung dari program mana yang berjalan terlebih dahulu
- Bahayanya berbagi global resourcres
- Sulitnya Sistem Operasi mengatur alokasi resources secara optimal
- Sulit untuk mencari kelalahan programming.
1. Atomic Operation
- sebuah operasi yang sifatnya tidak dapat dibagi lagi
- dieksekusi semua atau tidak sama sekali
- bagian program yang tidak dapat di interrupt
2. Critical Section
- bagian tertentu dari code yang membutuhkan akses ke shared resources
- tidak boleh dijalankan ketika ada proses lain yang sedang menjalankan bagian tersebut (tidak boleh ada yang menyela)
3. Race Condition
- hasil eksekusi sebuah program tergantung dari program mana yang berjalan terlebih dahulu
Kamis, 13 November 2014
Thread pada Sistem Operasi Linux
Thread adalah sesuatu yang berjalan di sebuah processor. Perbedaannya dengan proses adalah Thread mempunyai ruang tersendiri di memori pada sebuah Sistem Operasi untuk menampung process image. Sedangkan sebuah proses tidak bisa mengakses ruang lain di memori.
Ciri-ciri sebuah Thread:
Lebih cepat membuat Thread dibandingkan dengan membuat proses
Ciri-ciri sebuah Thread:
- Thread state
- Saved thread context
- Execution stack
- Local variables
- Akses ke memori dan sumber daya yang dimiliki oleh prosesnya.
Rabu, 05 November 2014
"Process Programming" pada Linux
Sebuah Sistem Operasi pasti mempunyai pembeda antar proses satu dengan yang lainnya. Pembeda tersebut dapat kita sebut dengan PID (Process ID). PID berupa sebuah angka (integer) yang membedakan setiap proses berjalan dalam Sistem Operasi tersebut. Pun jika kita ingim menghubungkan dua proses atau lebih, PID disini sangat berperan penting untuk mengidentifikasi sebuah proses yang berjalan pada Sistem Operasi.
Selain itu, PID juga berguna untuk membuat sebuah "Child Process" di dalam Sistem Operasi, terutama Sistem Operasi Linux. Child process harus dibuat oleh sebuah parent secara identik. Karena child process akan memenuh perintah dari superuser sebuah Sistem Operasi. Child process juga dapat mencegah hal-hal yang tidak diinginkan sebuah Sistem Operasi seperti keterbataan penggunaan memori dan lain sebagainya.
Terdapat tiga cara untuk membuat chil process (proses baru) di dalam Sistem Operasi Linux, yaitu :
Selain itu, PID juga berguna untuk membuat sebuah "Child Process" di dalam Sistem Operasi, terutama Sistem Operasi Linux. Child process harus dibuat oleh sebuah parent secara identik. Karena child process akan memenuh perintah dari superuser sebuah Sistem Operasi. Child process juga dapat mencegah hal-hal yang tidak diinginkan sebuah Sistem Operasi seperti keterbataan penggunaan memori dan lain sebagainya.
Terdapat tiga cara untuk membuat chil process (proses baru) di dalam Sistem Operasi Linux, yaitu :
Kamis, 23 Oktober 2014
Sebuah "Proses" pada Linux
Proses adalah sebuah program yang sedang dieksekusi. Setiap kali menjalankan suatu program, sistem UNIX melakukan suatu fork, yaitu melakukan beberapa urutan operasi untuk membuat suatu proses konteks dan kemudian mengeksekusi program tersebut dalam konteks yang sudah dibuat. Oleh karena itu, kita harus menguasai manajemen proses Linux.
Dalam manajemen proses, ada beberapa hal penting yang harus dikuasai :
1. Mengetahui proses yang terjadi Linux
2. Dapat melakukan proses controlling terhadap proses di Linux
3. Menghentikan proses yang tidak dibutuhkan dan mengurangi performa Linux
Untuk itu kita harus mempelajari Manajemen Proses pada Linux. Perintah inti dari proses manajemen proses di Linux adalah :
1. ps
2. kill
Tipe-tipe Proses dalam Linux
Dibagi menjadi tiga bagian:
Interactive : Proses yang diprakarsai oleh sebuah shell dan berjalan dalam foreground dan background. seperti : terminal, software running, dll.
Batch : Sebuah seri dari proses-proses yang dijadwalkan untuk dieksekusi pada suatu waktu tertentu, proses batch ini juga tidak berhubungan dengan terminal, tapi menunggu dieksekusi secara sekuensial.
Daemon : Proses yang diinisialisasi saat booting untuk membentuk suatu fungsi-fungsi sistem yang dibutuhkan, bila tidak ada request maka akan berada pada keadaan idle, seperti : LPD, NFS, dan DNS.
Dalam manajemen proses, ada beberapa hal penting yang harus dikuasai :
1. Mengetahui proses yang terjadi Linux
2. Dapat melakukan proses controlling terhadap proses di Linux
3. Menghentikan proses yang tidak dibutuhkan dan mengurangi performa Linux
Untuk itu kita harus mempelajari Manajemen Proses pada Linux. Perintah inti dari proses manajemen proses di Linux adalah :
1. ps
2. kill
Tipe-tipe Proses dalam Linux
Dibagi menjadi tiga bagian:
Interactive : Proses yang diprakarsai oleh sebuah shell dan berjalan dalam foreground dan background. seperti : terminal, software running, dll.
Batch : Sebuah seri dari proses-proses yang dijadwalkan untuk dieksekusi pada suatu waktu tertentu, proses batch ini juga tidak berhubungan dengan terminal, tapi menunggu dieksekusi secara sekuensial.
Daemon : Proses yang diinisialisasi saat booting untuk membentuk suatu fungsi-fungsi sistem yang dibutuhkan, bila tidak ada request maka akan berada pada keadaan idle, seperti : LPD, NFS, dan DNS.
Kamis, 09 Oktober 2014
User dan Group pada Linux
Terdapat dua macam user pada Linux yaitu root (administrator) dan user biasa. User root hanya bisa satu di dalam suatu Sistem Operasi Linux. Root berlaku sebagai super admin yang memiliki hak penuh di dalam Sistem Operasi Linux, sedangkan user biasa memiliki hak akses terbatas dan bisa lebih dari satu user.
1. Perintah dasar untuk pengaturan User
ADDUSER/USERADD : perintah untuk membuat user account baru yang tidak terdapat pada sistem
oky@oky-unix:~$ adduser [-option] [namauser]
option yang bisa digunakan :
-u : nomor identitas user (UID)
-g : nomor identitas group (GID)
-d : menentukan path home direktori user secara manual
-s : shell yang akan digunakan user
-c : komentar tentang user
option diatas sifatnya optional
contoh :
oky@oky-unix:~$ adduser okey
setelah kita melakukan perintah diatas user okey sudah terdaftar di sistem tapi belom bisa digunakan karena kita blom memberikan password untuk user okey, cara memberikan password
1. Perintah dasar untuk pengaturan User
ADDUSER/USERADD : perintah untuk membuat user account baru yang tidak terdapat pada sistem
oky@oky-unix:~$ adduser [-option] [namauser]
option yang bisa digunakan :
-u : nomor identitas user (UID)
-g : nomor identitas group (GID)
-d : menentukan path home direktori user secara manual
-s : shell yang akan digunakan user
-c : komentar tentang user
option diatas sifatnya optional
contoh :
oky@oky-unix:~$ adduser okey
setelah kita melakukan perintah diatas user okey sudah terdaftar di sistem tapi belom bisa digunakan karena kita blom memberikan password untuk user okey, cara memberikan password
Perintah-perintah Dasar dalam Linux
ls
Melihat isi file dari direktori aktif. Pada linux perintah “dir” hanya berupa alias dari perintah “ls”. Untuk perintah “ls” sendiri sering dibuatkan alias “ls –color”, agar pada waktu di “ls” ditampilkan warna-warna sesuai dengan file-filenya, biasanya hijau untuk execute, dsb.
ls -al
Melihat seluruh isi file pada direktori aktif beserta file hidden + attribute/permission filenya , lalu ditampilkan layar perlayar.
cd (directory)
Change directory. Menggunakan “cd” tanpa nama direktori akan menghantarkan anda ke home direktor. Dan “cd -” akan menghantarkan anda ke direktori sebelumnya.
Minggu, 05 Oktober 2014
Menginstal Sistem Operasi Fedora di dalam Sistem Operasi Ubuntu Menggunakan VirtualBox
VirtualBox merupakan sebuah aplikasi simulasi Sistem Operasi yang bisa berjalan di multi platform seperti Linux, Windows maupun Mac OS. Aplikasi ini mampu membuat simulasi jalannya suatu Sistem Operasi lain didalam Sistem Operasi utama. Contohnya yang akan kita lakukan sekarang adalah menginstal Sistem Operasi Fedora di dalam Sistem Operasi Ubuntu. Sebelum menginstal, pastikan Ubuntu kamu mempunyai kapasitas kosong untuk menginstal Fedora di dalam VirtualBox.
Sebelum melangkah lebih jauh dalam proses instalasi Fedora di dalam Ubuntu, yang harus dipersiapkan:
1. VirtualBox yang sudah terinstal di Ubuntu.
Jika menggunakan Ubuntu versi 12.04 atau versi sebelumnya dan terhubung dengan internet, buka Terminal di Ubuntu (ctrl+alt+T), setelah itu ketik perintah berikut ini:
Jika tidak terhubung dengan internet, VirtualBox dapat diunduh di https://www.virtualbox.org/wiki/Downloads. File yang diunduh harus berekstensi .deb. Kemudian instal VirtualBox dan tunggu sampai proses instalasi selesai.
Sebelum melangkah lebih jauh dalam proses instalasi Fedora di dalam Ubuntu, yang harus dipersiapkan:
1. VirtualBox yang sudah terinstal di Ubuntu.
Jika menggunakan Ubuntu versi 12.04 atau versi sebelumnya dan terhubung dengan internet, buka Terminal di Ubuntu (ctrl+alt+T), setelah itu ketik perintah berikut ini:
$ sudo apt-get update
$ sudo apt-get install virtualbox
Jika tidak terhubung dengan internet, VirtualBox dapat diunduh di https://www.virtualbox.org/wiki/Downloads. File yang diunduh harus berekstensi .deb. Kemudian instal VirtualBox dan tunggu sampai proses instalasi selesai.
Langganan:
Postingan (Atom)