Author Archive
Virtualisasi
by D'cahyo on Dec.05, 2022, under artikel sistem operasi
A. Pengertian Virtualisasi
Virtualisasi merupakan suatu fenomena tentang pengembangan atau penggantian sebuah kondisi atau interface suatu sistem sehinggamenyerupai perilaku sistem lainnya. Contoh dari virtualisasi adalah virtual private network (VPN), Virtual
Memory, virtual storage, virtual machine, dan masih banyak lainnya. Metode ini dianggap sebagai metode yang terbaik dalam meningkatkan efisiensi pekerjaan dan kegiatan lainnya.
Misal dalam sebuah ruang terdapat tigaserver berbentuk fisik dan setiap server mempunyai fungsi yang berbeda-beda. Melalui virtualisasi, setiap server bisa melakukan tugasnya sendiri tanpa bergantung dengan server aplikasi. Kapasitas server juga bisa ditingkatkan dari 30% menjadi 60% atau 90%.
B. Manfaat Virtualisasi
Virtualisasi sendiri memiliki banyak manfaat yang dapat kita ambil, baik dari sisi teknologi, praktisi, dan biaya. Berikut ini beberapa manfaat dari virtualisasi:
1. Kemudahan backup dan recovery
Virtualisasi memudahkan kegiatan perlindungan serta backup data, user hanya perlu menyiapkan perangkat komputer saja untuk menjalankan tugas tersebut;
2. Mengemat biaya hardware
Dengan cara kerja virtualisasi yang memunculkan beberapa fungsi utama dan menyembunyikan fungsi-fungsi teknis, hal ini akan lebih hemat biaya karena dengan satu komputer saja user dapat menjalankan berbagai sistem sekaligus;
3. Mengurangi hardware panas dan biaya listrik
Agar tidak mudah mengalami kerusakan, dibutuhkan yang namanya mesin pendingin, namun berkat virtualisasi, kita dapat mengurangi penggunaan mesin tersebut di ruang. Dengan hal ini akan sekaligus menghemat biaya listrik;
4. Mempermudah monitoring sistem
Virtualisasi mengubah server yang sebelumnya tidak terpusat menjadi terpusat, sehingga monitoring dan troubleshooting akan lebih mudah;
5. Memudahkan kloning sistem
Saat menggunakan perangka baru, instalasi sistem tidak perlu lagi dijalankan karena sudah divirtualisasi.
C. Tipe-Tipe Virtualisasi
Perubahan dan perkembangan terus terjadi di dalam dunia teknologi, terutama virtualisasi. Terdapat beberapa tipe dari virtualisasi, yaitu:
1. Virtualisasi aplikasi
Sistem virtualisasi aplikasi merupakan teknologi yang bermanfaat untuk memvirtualkaan aplikasi tertentu dalam sistem operasi. Dengan ini kita bisa menjalankan aplikasi tanpa harus bergantung padad sistem operasi komputer seperti Windows ke Linux atau sebaliknya;
2. Virtualisasi jaringan
Merupakan suatu teknologi yang memiliki fungsi dalam membuat suatu rancangan konfigurasi pada jaringan internet. Saat kita menerapkannya, maka kita hanya perlu membuat tiruan serta memasukkannya pada teknologi jaringan nyata;
3. Virtualisasi server
Biasanya diimplementasikan dalam mengubah resource server yang rumit menjadi lebih sederhana agar mudah dipahami, selain itu juga untuk meningkatkan kapasitas dan sistem pembagian jaringan;
4. Virtualisasi desktop
Dengan menggunakannya, kita akan mendapat kemudahan dalam membuka akses pada suatu desktop dari jarak jauh atau secara remote dengan mudah;
5. Virtualisasi data
Merupakan suatu teknologi yang bermanfaat untuk memanipulasi dan merubah data tanpa teknis yang rumit dari data itu sendiri. Contohnya bagaimana data itu terformat atau tempat serta lokasi penyimpanan fisiknya;
6. Virtualisasi penyimpanan
Merupakan teknologi yag berfungsi unutuk menyimpan data dalam bentuk virtual yang dapat diakses dari mana saja.
D. Pengelompokan Virtualisasi
Virtualisasi sendiri bisa kita klasifikasikan menjadi dua kelompok, yaitu virtualisasi sistem dan virtualisasi proses:
1. Virtualisasi sistem
Merupakan suatu teknologi yang memvirtualisasi sumberdaya perangkat keras misalnya CPU, Input/Output, GUI, memori, peralatan jaringgan, dan lain sebagainya. Perangkat lunak yang menjalankan virtualisasi sistem ini disebut VMM (Virtual Machine Monitor) atau hypervisor;
2. Virtualisasi proses
Meruupakan sebuah platform virtual dimana ia mampu melakukan eksekusi sebuah proses, misalnya saja JVM yang membaca kode byte/ program serta menginterpretasikannya dalam format native sistem.
E. Mesin VirtualMesin virtual merupakan suatu duplikat dengan tingkat efisiensi tnggi yang terisolasi dari sebuah sistem mesin fisik/nyata. Istilah-istilah umum pada mesin virtual diantaranya:
1. Hypervisor/virtualizer, merupakan suatu perangkat lunak dimana ia melakukan virtualisasi sistem serta monitoring resource komputasi yang bersifat abstraction layer dari hardware;
2. Host, merupakan sebuah komputer atau server fisik yang diinstalkan software virtualisasi/hypervisor;
3. Guest, merupakan suatu sistem virtual yang berjalan di atas sebuah sistem virtualisasi;
4. Emulasi, merupakan teknik konversi perintah atau instruksi melalui software yang menciptakan overhead dimana semakin komplek perintah yang diberikan dan diiemulasikan, maka semakin besar juga overheadnya.
F. Jenis Virtualisasi Mesin
Virtualisasi mesin sendiri dibagi jenisnya menjadi tiga, yaitu partial virtualization, full virtualization, paravirtualization. Berikut ini penjelasan lebih lengkapnya:
1. Partial Virtualization
Merupakan suatu Teknik virtualisasi perangkat keras yang dimana tidak semua bagian perangkat keras tersebut divirtualisasi, sehingga membutuhkan adanya modifikasi sebagian dalam sistem operasii atau perangkat lunak guest. Contohnya adalah Compatible Time-Sharing System (CTTS) dalam IBM M44/44X;
2. Full Virtualization
Merupakan suatu Teknik virtualisasi dimana semua perangkat keras yang digunakan guest divirtualisasi lengkap. Contohnya adalah Vmware, paralel dektop, virtualbox, dan lain sebagainya. Sistem pada guest dapat berjalan tanpa adanya modifikasi. Semua guest memperoleh virtual hardware yang dikelola oleh hypervisor;
3. Paravirtualization
Merupakan sebuah Teknik virtualisasii dengan eksekusi permintaan dari sistem operasi (Guest) sehingga meniruu perilaku kerja sebuah sistem perangkat keras yang berbeda. Misalnya saja Xen. Paravirtualization tidak dilakukan virtualisasi secara lengkap, tetapi permintaan guest dilayani melalui API. Guests juga perlu dipersiapkan atau dimodifikasi agar berjalan dalam lingkup ini. Beberapa istilah yang ada di paravirtualization yaitu:
• Dom0, merupakan guest sistem operasi utama yang ditumpangkan pada host untuk mengelola serta melayani guest lain. Dom0 sendiri dapat mengakses hardwae pada host secara langsung;
• DomU merupakan guest sistem operasi yang dikelola oleh Dom0 yang dapat mengakses hardware melalui para API pada Dom0.
G. Perangkat Lunak Virtualisasi
1. Virtualisasi segmen desktop
Merupakan sebuah sisteem virtualisasi dipasang ke sistem operasi host yang disertai toold pengelolaannya sehingga sumber daya komputasi yang berbagi dengan sistem operasi host dapat dikelola. Pengelolaa sistem dan mesin virtual dilakukan melalui tool yang dipasang pada sistem operasi host;
2. Virtualisasi server/enterprise
Merupakan hypervisor yang berjalan pada perangkat server nyata dan mempunyai kendali penuh atas pengelolaan dan pemetaan sumber daya komputasi yang disediakan
H. Kelebihan Virtualisasi
Beberapa kelebihan dari virtualisasi yang dapat kita rasakan yaitu:
1. Konsolidasi server sehingga menghasilkan efisiensi dan kehematan biaya hardware dan software;
2. Pengurangan tingkat kompleksi;
3. Isolasi;
4. Keseragaman platform;
5. Dukungan legacy;
6. Portabilitas;
7. Manajemen beban kerja server menjadi lebih efektif;
8. Memberikan infrastruktur pengujian yang lebih baik;
9. Menyediakan atau membangun serta instalasi yang lebih cepat.
I. Hardware Assisted Virtualization
Merupakan metode virtualisasi dengan kemampuan dalam memberikan kemungkinan akses penuh peralatan dengan bantuan dari sistem/modul perangkat keras khusus pada host. Contoh dari hardware assisted virtualization adalah Intel VT-x atau AMD-V dan Intel VT-d.
J. Perbandingan Antara Full Virtualization dan Paravirtualization
1. Full Virtualization
Merupakan suatu Teknik virtualisasi dimana semua perangkat keras yang digunakan guest divirtualisasi lengkap. Contohnya adalah Vmware, paralel dektop, virtualbox, dan lain sebagainya. Sistem pada guest dapat berjalan tanpa adanya modifikasi. Semua guest memperoleh virtual hardware yang dikelola oleh hypervisor
2. Paravirtualization
Merupakan sebuah Teknik virtualisasii dengan eksekusi permintaan dari sistem operasi (Guest) sehingga meniruu perilaku kerja sebuah sistem perangkat keras yang berbeda. Misalnya saja Xen. Paravirtualization tidak dilakukan virtualisasi secara lengkap, tetapi permintaan guest dilayani melalui API. Guests juga perlu dipersiapkan atau dimodifikasi agar berjalan dalam lingkup ini.
K. (Intel VT-x/AMD-V) dengan (VT-d/AMD-Vi)
Pada tahun 2006, AMD memroduksi AMD Virtyualization atau AMD-V yang merupakan prosesor bermulakan kodean ”pacifica” yang diklaim sebagai prosesor pertama pendukung virtualisasi. Pada Intel sendiri prosesor yang mendukung virtualisasi dimulai dengan diperkenalkannya ”Vanderpool”. Brand tersebut dinamai VT-x yang rilis tahun 2006. Teknologi virtualisasi pada intel (vt-d) memperlebar ranah teknologi dari virtualisasi intel (vt) yang menyediakan bantuan hardware untuk solusi virtualisasi. Intel (vt-d) juga bisa membantu user dalam meningkatkan keamanan dan kemampuan sistem serta meningkatkan kinerja piranti i/o dalam virtualisasi. Yang menjadi perbedaan AMD-V/Intel VT-x yaitu kemampuannya merupakan suatu kebutuhan yang bersifat sementara. Tanpa itu user tidak bisa menjalankan 64 –bit OS guest di bawah ESX dan bahkan tidak bisa menginstal Hyper-V. AMD-V/VT-x memberikan kemungkinan suatu mesin virtual guest dapat berjalan pada suatu tingkat perlakuan dalam prosesor yang memungkinkan adanya suatu operasi yang tepat.
Sedangkkan AMD-Vi/VT-d merupakan fitur prosesor yang memungkinkan virtualisasi I/O sumber daya (diarahkan I/O).L. Teknologi pendukung virtualisasi
Dalam sebuah teknologi virtualisasi, suatu server dipecah kedalam virtual environment, yang masing-masing dapat diinstal SO yang berbeda dari SO fisik atau SO virtual environment lainnya. Saat virtual environment berjalan ia tidak tahu tentang sumber daya yang digunakan sehingga pada teknologi virtualisasi butuh hypervisor sebagai kooordinator komunikasi dan instruksi antara virtual environment dengan
sumber daya fisik. Hypervisor ini dipegang oleh administrator dari server yang menerapkan teknologi virtualisasi untuk mendukung virtual environmet. Virtualisasi teknologi mendukung banyak perubahan dalam meningkatkan software yang diinstal pada server dan meningkatkan software solusi tradisional berbasis teknologi. Teknologi pendukung virtualisasi berbentk sebuah softwaare. Software tersebut kemudian dijalankan pada sebuah sistem operasi, ada yang dapat berjalan dalam berbagai macam OS namun ada juga yang hanya bisa berjalan di sebagian OS saja. Berikut adalah macam-macam software pendukung virtualisasi yaituMicrosoft Virtual PC, GXEMUL, Herculer, Mac-On Linux, Parallels Workstation, Pear PC, Qemu, Virtual Box, Vmware Workstation.
M. Arsitektur Virtualisasi
Teknologi virtualisasi sejatinya memakai resource infrastruktur fisik yang resourcenya dibagi-bagi dan dengan virtualisasi ini user bisa menjalankan beberapa mesin secra virtual dalam suatu resource atau mesin tunggal dalam waktu bersamaan dan simultan.
N. Bagaimana Membangun Infrastruktur Virtualisasi
Kita membutuhkan beberapa komponen untuk membangun infrastruktur virtualisasi agar berjalan optimal. Komponen-komponen tersebut diantaranya yaitu:
• Perangkat keras;
• Alat virtualisasi;
• Storage;
• Sumber daya jaringan.
Layaknya sebuah tembok, dimana kita tidak hanya butuh satu bahan saja, tetapi banyak bahan yang saling melengkapi. Dalam virtualisasi kita butuh mengekstraksi resource pada komputer fisik. Jika semua komponen sudah digabungkan maka sistem akan berjalan dengan baik.
O. Greet IT dengan Virtualisasi
Green IT merupakan sebuah metode baru dalam memakai resource komputasi secara efisien dengan memaksimalkan energi, memperpanjang masa penggunaan hardware serta mendaur ulang. Dengan virtualisasi tentunya kita bisa mengurangi jumlah hardware, komsumsi listrik, waktu yang digunakan sehingga meningkatkan efisiensi dan efektivitas. Virtualisasi juga mengurangi energi panas yang ditimbulkanjumlah hardware yang terinstal sehingga membantu mengurangi efek global warming yang salah satunya disebabkan panas dari hardware.
P. Keuntungan dan Kerugian Virtualisasi
Keuntungan dari pemakaian teknologi virtualisasi
1. Optimalisasi server
Apabila kita amemiliki server fisik dengan kapasitas yang cukup besar sedangkan aplikasi server yang akan kita gunakan membutuhkan resource kecil lebih baik yang akan kita gunakan tersebut dimasukkan dalam sebuah Virtual environment dan mengatur resource virtual environment sesuai kebutuhan aplikasi server yang akan kita gunakan.
2. Snapshot
Snapshot yang memungkinkan kita mengembalikan virtual environment ke dalam kondisi saat snapshot diambil apabila terjadi kesalahan konfigurasi sangat didukung oleh virtualisasi. Snapshot menyimpan kondisi dari virtual environment dan kita bisa merestore kapanpun kita mau.
3. Migrasi mudah
Hypervisor saat ini telah mendukung live migration dimana user dapat memindahkan VE server yang sedang berjalan ke server fisik lain tanpa mengalami server down.
4. Instan fail over
Kebanyakan hypervisor telah mendukung adanya clustering yang bisa mengotomatisasi clustering dan fail over.
5. Fleksibel
Dengan virtualisasi pengolahan server akan lebih mudah ketika kita ingin memindah, mengganti resource, atau memindahkan sever dalam keadaan hidup tanpa down.
6. Hemat Listrik dan Hardware
Dengan virtualisasi cukup satu perangkat server besar dan penggunaan sumber daya dapat disesuaikan dengan kebutuhan.
7. Backup dan recovery mudah
Pada setiap container VE hypervisor menyediakan auto backup sehingga jika terjadi kerusakan kita bisa merestore backup ke virtual server yang sudah disediakan tanpa memakan waktu lama.
8. Lebih aman
Apabila server dihack dan data penting server dirusak maka kita bisa mengembalikannya dengan mudah. Meski hacker masuk ke sistem tapi ia tidak bisa menembus resource fisik dari server yang kita kelola.
Kerugiann dari virtualisasi:
1. Satu masalah pusat
Apabila server induk mengalami masalah maka semua sistem virtual akan mengalami kerusakan sehingga tidak bisa digunakan. Kita bisa mengatasinya dengan fasilitas auto backup atau menerapkan fail over/clustering.
2. Spesifikasi hardware
Virtualisasi memerlukan spesifikasi hardware yang cukup tinggi agar bisa menjalankan server induk dan mesin virtual di dalamnya.
3. Satu pusat serangan
Apabila hacker menerobos masuk ke sistem induk, ada kemungkinan ia bisa menyusup ke dalam server-server virtual dengan menggunakan informasi yang ada pada server induk.
Sistem Manajemen File
by D'cahyo on Dec.05, 2022, under artikel sistem operasi
A. Pengertian Manajemen File
Manajemen file merupakan sebuah metode dan struktur data dalam mengelola serta mengorganisir file pada sebuah partisi atau disk yang dipakai dalam sebuah sistem operasi. Dalam implementasi di kehidupan, manajemen file ini menjadi suatu aspek yang sangat penting, mengapa demikian? Suatu organisasi tentunya suatu saat pasti memerlukan manajemen file tujuannya adalah ketika file dicari, ia mudah untuk ditemukan dan tidak hilang.
B. Sifat File
Sebuah file mempunya sifat-sifat sebagai berikut:
1. Persistence, artinya sebuah data atau informasi yang disimpan dapat bertahan walaupun proses yang membangkitkannya sudah berakhir ataupun catu dayanya hilang;
2. Size, artinya sebuah file umumnya memiliki ukuran yang besar dan memungkinkan untuk menyiman sebuah data yang sangat besar;
3. Shareability, artinya sebuah file dapat dipakai dalam banyak proses untuk mengakses data yang disimpan secara kongruen.
C. Manfaat Manajemen File
Terdapat beberapa manfaat yang dapat kita rasakan dalam manajemen file, diantaranya adalah seperti mengurangi resiko terhapusnya file secara tidak sengaja, tertimpa file baru, tersimpan dimana saja, dan hal-hal lain yang tidak kita inginkan, untuk lebih jelasnya adalah sebagai berikut:
1. Memudahkan kita menemukan file
Apabila suatu file yang tersimpan pada komputer terlihat rapi dan teratur, maka hal itu akan memudahkan kita dalam mencari dan menemukan file. Dengan demikian kita tidak perlu membuang waktu lama saat proses pencarian sehingga kita punya lebih banyak waktu untuk melakukann hal-hal lain yang lebih bermanfaat;
2. Menggurangi resiko kehilangan file
Suatu file bisa saja hilang ataupun terhapus, baik itu secara sadar atau disengaja maupun tidak disengaja. Namun, apabila kita melakukan manajemen file dengan baik, maka secara tidak langsung kita akan meminimalisir hal-hal yang merugikan diri kita sendiri;
3. Mengetahui file yang kadaluarsa
Sebuah file pada komputer memiliiki kemungkinan file tersebut tidak lagi dipakai oleh pengguna. Biasanya file tersebut hanya akan memenuhi memori komputer kita. Dengan manajemen file, kita bisa tahu mana file yang masih kita perlukan, dan file mana yang sekiranya sudah tidak kita perlukan sehingga kita bisa menghapusnya.
D. Fungsi Manajemen File
Beberapa fungsi dari manajemen sistem file yang harus kita ketahui adalah sebagai berikut:
1. Memepermudahh pekerjaan;
2. Mempermudah dalam menemukan file;
3. Mempermudah dalam mengubah, mengedit, serta menghapus file;
4. File terlihat lebih rapi;
5. Tingkat keamanan data meningkat;
6. Mempermudah dalam melakukan recovery.
Beberapa fungsi yang menjadi sasaran dari adanya manajemen file adalah dari beberapa aspek sebagai berikut:
1. Sebagai pengelolaan file dimana ia sebagai kumpulan dari perangkat lunak sistem yang menyediakan layanan yang berhubungan dengan pemakaian file ke pengguna dan/atau aplikasi;
2. Biasanya sistem file menjadi satu-satunya akses pengguna atau aplikasi mengakses file;
3. Pengguna tidak perlu mengembangkan perangkat lunak khusus dalam mengakses data di setiap aplikasi;
4. Sebagai validator yang menjamin data pada sebuah file;
5. Mengoptimalkan kinerja file baik menurut sistem maupun menurut pemakai,
➢ Menurut sistem manajemen file mampu meningkatkan jumlah throughtput secara keseluruhan;
➢ Menurut pemakai, manajemen file mamiliki kemampuan ketanggapan yang cepat.
6. Menyediakan support terhadap input dan output;
7. Meminimalisir atau meniadakan adanya potensi kehilangan atau kerusakan pada data;
8. Mendukung adanya input/output terhadap system multiuser;
9. Memenuhi kebutuhan pengolahan data bagi pengguna, termasuk penyimpanan data serta kemampuan dalam melakukan berbagai operasi, diantaranya adalah sebagai berikut:
➢ Retrieve all, artinya ia mampu menampilkan semua record informasi ataupun data;
➢ Retrieve one, artinya ia mampu menampilkan satu secord informasi tertentu;
➢ Retrieve next, artinya ia mampu menampilkan satu record informasi selanjutnya;
➢ Retrieve previous, artinya ia mapu menampilkan satu record informasi sebelumnya;
➢ Insert one, artinya ia mampu melakukan penyisipan satu record informasi;
➢ Delete one, artinya ia mampu menghapus satu record informasi tertentu;
➢ Update one, artinya ia mampu melakukan pembaruan terhadap satu record informasi tertentu;
➢ Update few, artinya ia mampu melakukan pembaruan beberapa record informasi tertentu sesuai dengan kriteria.
10. Mampu melakukan berbagai fungsi yang sudah diharapkan, beberapa daintaranya adalah sebagai berikut:
➢ Mampu menciptakan, melakukan modifikasi, serta menghapus file;
➢ Memungkinkan adanya pemakaian file secara bersamaan;
➢ Kemampuan back up dan recovery dalam rangka mencegah kehilangan karena suatu ketidaksengajaan ataupun dari upaya penghancuran
informasi;
➢ Memiliki kemampuan menyediakan antarmuka pengguna yang bersahabat;
➢ Menjamin informasi tersimpan secara aman dan rahasia terutama pada lingkungan yang seensitif.
E. Tipe File
Berbagai tipe file yang kita jumpai adalah:
1. Regular file
Regular file merupakan sebuah file yang terdiri dari file teks atau file ASCIIdan file binner. Pada file ASCII berisi sebuah teks dalam format txt, sementara file binesr berisi sebuah program aplikasi;
2. Special file
Special file ini merupakan nama logika perangkat input yang dianggap sebagai sebuah file, seperti terminal, printer, modem, port jaringan, dan lain-lain;
3. Directory file
Directory file yaitu sebuah file yang berisi sebuah informasi terkait daftar file yang berada dalam folder atau direktori pada sebuah komputer. Biasanya file ini dimiliki oleh sistem operasi komputer.
F. Manipulasi File
Merupakan sekumpulan perintah-perintah yang dapat diberikan oleh pengguna pada baris perintah terhadap shell atau command interpreter, beberapa tindakan manipulasi file yaitu:
1. Create, merupakan suatu perintah untuk menciptakan sebuah berkas;
2. Dellete, merupakan suatu perintah untuk menghapus sebuah berkas;
3. Open, merupakan perintah untuk membuka berkas agar dapat dipersiapkan ke proses selanjutnya;
4. Close, merupakan instruksi menutup berkas untuk menyimpan semua informasi ke berkas dan mendealokasikan resource yang dipakai;
5. Read, merupakan perintah membaca informasi pada berkas;
6. Write, merupakan perintah modifikasi data pada berkas yaitu pada posisi yang ditunjuk;
7. Append, merupakan instruksi menambah informasi pada sebuah berkas;
8. Seek, perintah untuk mencari lokasi tertentu, terutama pada berkas-berkas yang acak;
9. Reposition, merupakan perintah mengubah posisi dari berkas;
10. Truncate, merupakan perintah yang hampir sama dengan menghapus file, kecuali entry tidak dihapuskan tetapi ukuran file diisi 0;
11. Get attributes, merupakan perintah membaca atribut-atribut pada berkas;
12. Set attributes, perintah untuk menulis atau memodifikasi atribut-atribut pada berkas;
13. Rename, merupakan perintah untuk mengganti nama berkas.
G. Atribut File
Merupakan informasi tambahan mengenai file dalam memperjelas serta memberi batas operasi yang dapat diterapkan pada file, pada umumnya terdapat beberapa atribut file yang digunakan dalam manajemen file, beberapa diantaranya adalah sebagai berikut:
1. Protection, mampu melindungi dengan menentukan siapa saja yang dapat mengakses file serta mennggunakan cara apa saja;
2. Password, merupakan kata kunci yang dibutuhkan untuk mengakses file;
3. Creator, merupakan Id dari pencipta file;
4. Owner, merupakan pemilik dari file pada saat itu;
5. Read only flag, 0 untuk read/write dan 1 untuk read only;
6. Hidden flag, 0 untuk normal dan 1 untuk disembunyikan dari listing;
7. System flag, 0 untuk normal dan 1 untuk file sistem;
8. Archive flag, 0 telah dibackup dan 1 untuk perlu diback up;
9. ASCII/binary flag, 0 untuk file ASCII dan 1 untuk biner file;
10. Random acces flag, 0 untuk sequential acces only dan 1 untuk random acces;
11. Temporary flag, 0 untuk normal dan 1 untuk dihapus saat keluar (exit);
12. Lock flag, 0 untuk tak terkunci dan 1 untuk terkunci;
13. Record length, merupakan jumlah byte pad a1 record;
14. Key position, merupakan offset kunci yang ada di setiap record;
15. Creation time, merupakan tanggal dan waktu file diciptakan;
16. Time of last acces, merupakan tanggal dan waktu file diakses terakhir kali;
17. Time of last change, merupakan tangal dan waktu diubah terakhir kali;
18. Current size, merupakan jumlah byte dalam sebuah file;
19. Maximum size, merupakan maksimum ukuran yang boleh tumbuh pada file.
H. Struktur Direktory
Direktori merupakan suatu kumpulan node yang berisi sebuah informasi dari semua file yang dapat dibackup kemudian disimpan pada tape. Struktur direktori maupun struktur file sama-sama terletak pada sebuah disk. Pada direktori sendiri memuatt beberapa direktori, diantaranya yaitu:
• Nama;
• Type;
• Alamat;
• Current length;
• Panjang maksimum;
• Tanggal akses terakhir (pada asrsip);
• Tanggal update terakhir (untuk dump);
• Id pemilik (terhadap siapa yang membayar);
• Proteksi informasi.
Organisasi direktori, berdasarkan logika organisasi direktori ada tiga, diantaranya adalah sebagai berikut:
1. Efficiency, artinya direktori mampu menempatkan file secara tepat;
2. Naming, artinya direktori menunjang kenyamanan pengguna dengan cara:
• Dua pengguna dapat memberi nama yang sama untuk file yang berbeda;
• File yang sama dapat memiliki beberapa nama yang berbeda.
3. Grouping, artinya direktori mampu mengelompokkan file secara logik berdasarkan properti contohnya seperti semua program java, games, dan lain sebagainya.
Direktori sendiri dapat diklasifikasikan atau dibagi menjadi beberapa jenis, diantaranya yaitu:
1. Direktori satu tingkat
Pada direktori ini, hanya ada satu tingkatan direktori untuk semua pengguna. Pada direktori ini hanya mendukung adanya naming problem dan grouping problem di dalamnya;
2. Direktori tingkat dua
Pada direktori ini terdapat pemisahan direktori untuk setiap pengguna. Berbeda dengan sebelumnya, pada direktori ini terdapat lebih banyak kemampuan, diantaranya yaitu kemampuan path name, mampu memiliki nama yang sama untuk pengguna yang berbeda, mampu melakukan pencarian yang efisien, serta tidak memerlukan adanya pengelompokan;
3. Direktori struktur tree (pohon)
Pada direktori tree ini pencarian akan jauh lebih efisien, menyediakan grouping, memiliki current dirrectory atau working directory;
4. Direktori acylic-graph
Pada direktori ini file yang terdapat di dalamnya dapat saling dibagikan diantara subdirektori dan file, ia juga memiliki dua nama yang berbeda (aliasing), apabila direktori dihapus dari list, kita dapat mengatasinya dengan cara:
• Backpointer, kita dapat menghapus semua pointer, namun ukuran recordnya akan bervariasi;
• Backpointer menggunakan organisasi chain;
• Solusi yang dapat kita gunakan adalah: Entry-hold-count.
5. Direktori general graph
Pada direktori biasanya akan terjadi beberapa hal yaitu:
• Mengijinkan link hanya pada berkas dan tidak pada subdirektori;
• Mengumpulkan sampah;
• Setiap kali terdapat link baru akan ditambahkan menggunakan algoritma
penghapusan siklus apakah OK. Pada direktori general graph ini akan meminimalisir, bagaimana kita mampu menjamin agar tidak terjadi siklus tersebut.
I. File Sistem Security
Pada sebuah system file terdapat sebuah mekanisme proteksi pada ide sistem operasi yaitu:
1. Protection domain:
• Objek dan hak operasi
• UNIX: user id dan group id, semua objek file dikaitkan dengan id untuk hak operasi yaitu read, write, dan execute.
• Pada proses dengan user id dan group id yang sama mempunyai hak yang sama setiap objek dalam domain sistem operasi UNIX.
2. Proses:
• Pada proses, kode user dan kode kernel akan dieksekusi.
• SETUID akan memproses untuk mendapatkan previlage sementara, efektif user id, group id berubah.
3. Proteksi: dalam bentuk ring dan gate
J. Perbedaan File Sistem Windows dan Linux
Pada dasarnya semua system operasi mempunyai file sistem untuk memanajamen file, namun antara satu sistem operasi dan sistem operasi lainnya memiliki beberapa perbedaan dalam file sistemnya, berikut ini perbedaan file sistem pada windows dan linux:
1. File system pada windows
System operasi windows memiliki tiga penanaman file system, yaitu FAT16, FAT32, NTFS. File Alocation Table (FAT) didesain untuk mengatur file pada floopy drive. FAT sendiri mengalami beberapa kali perubahan sehingga memungkinkan untuk digunakan mengatur file di hardisk. New Technology File System (NTFS) sendiri baru diluncurkan pertama kali padanwindows NT, dibandingkan dengan FAT, NT ini sangat berbeda jauh. NTFS bekerja berdasarkan prinsip BTree serta memakai full indexing. Dengan alasan tersebut fragmentation dapat ditekan semaksimal mungkin. Apabila suatu saat NTFS mengalami masalah, setiap file akan diperbaiki karena pada NTFS semua file memiliki checksum.Windows tidak menggunakan penggunaan nama file dengan huruf besar dan huruf kecil atau case issensitive. Pada windows juga mengenal istilah drive untuk device dan partisi. Windows mempunyai MyComputer sebagai root, di dalam MyComputer berbagai drive dan device. Windows tidak bisa membaca file system dari linux tanpa memanfaatkan program terpisah. Pada sistem file di windows, keberadaan nama file mempunyai peranan penting.
2. File sistem pada linux
Berbeda dengan file sistem pada windows, linux memiliki file sistem yang bernama Extended File System yang terdiri dari beberapa jenis EXT2, EXT3, EXT4. EXT dikembangkan serta diintegrasikan pada kernel linux. Saat ini EXT juga sedang dikembangkan pada sistem operasi lainnya. Tujuannya adalah untuk membuat suatu file sistem yang powerfull, yang dapat mengimplementasikan file-file semantic dari UNIX dan memiliki pelayanan advance features.
File system dapat membaca dan menulis ke FAT32, ia juga dapat membaca serta menulis di NTFS secara eksperimental dan memanfaatkan
proyek terpisah. Linux membedakan pemakaian huruf besar dan huruf kecil dalam berbagai aspek pemakaian sistem operasi. Istilah drive ini tidak dipakai dalam sistem linux, namun memakai istilah direktori biasa. Dibandingkan dengan windows, linux mengenal direktori root yang didalamnya terdapat berbagai direktori dan device. Eksistensi nama file juga tidak berperan penting di linux.
Computational Thinking
by D'cahyo on Dec.05, 2022, under artikel sistem operasi
Dalam dunia industri saat ini kita dituntut untuk memiliki pemikiran yang komputasional. Lantas apasih yang dimaksud dengan computational thinking dan seberapa penting sih computational thinking ini sehingga penerapannya menjadi sangat penting di dunia
industri saat ini. Mari kita bahas bersama.
A. Definisi Computational Thinking
Computational thinking atau berfikir komputasional merupakan pola pikir seseorang dalam menyelesaikan adanya problematika dengan metode penguraian setiap masalah menjadi beberapa bagian atau step-step yang sistematis. Bisa disebut juga dengan sebuah cara penyelesaian problematika dengan rancangan penyelesaian yang dilakukan oleh manusia atau sistem atau bahkan keduanya.
Dalam berfikir komputasional, kita harus memiliki beberapa konsep yang terdiri dari empat tahapan utamma, diantaranya adalah sebagai berikut:
1. Dekomposisi
Nah, di tahapan yang pertama ini adalah dekomposi. Dekomposi ini merupakan teknik memecahkan problematika yang kita anggap kompleks menjadi beberapa bagian-bagian yang lebih sederhana dengan maksud agar kita dapat menemukan problelmatika yang sedang dihadapi dengan menyelesaikannya satu persatu;
2. Pengenalan pola
Pengenalan pola atau bisa disebut pattern recognition ini ditujukan untuk membantu kita dalam menghadapi permasalahan kita dengan teknik pencarian pola atau sebuah persamaan tertentu dalam permasalahan yang kita hadapi dengan permasalahan-permasalahan yang terjadi sebelumnya;
3. Abstraksi
Tahapan abstraksi ini menempati urutan ketiga dalam berfikir komputasional,dimana pada tahap ini kita akan melihat suatu masalah kemudian melakukan suatu gereralisasi lalu kita mengidentifikasi informasi dengan tujuan aga kita dapat melihatt adanya infromasi informasi penting serta mengesampingkan atau mengabaikan informasi-informasi yang tidak berkesinambungan dengan problematika yang kita hadapi;
4. Algoritma
Kata algoritma sendiri sudahlah tidak asing, apalagi bagi orang-orang ilmu komputer. Algoritma disini merupakan suatu tahapan dimana kita akan mengembangkan sebuah sistem kemudian menyusun daftar petunjuk serta tahapan-tahapan untuk mengefektifkan dan mengefisiensi dalam memecahkan masalah. Di bidang komputasi sendiri dibutuhkan dalam memformulasikan permasalahan dan penyelesaiannya. Dengan demikian penyelesaian tersebut dapat dilaksanakan secara efektif oleh manusia ataupun sistem.
B. Karakteristik Computational Thinking
Seseorang dapat dikatakan memiliki keterampilan berpikir komputasional apabbila ia mempunyai beberapa karakteristik berikut:
1. Dapat membuat rumusan serta penyelesaian atas problematika memakai peranti komputer ataupun piranti digital;
2. Dapat memecah, menyederhanakan, dan menganalisa data;
3. Melalui penggunaan simulasi, ia mampu merepresentasikan data secara abstrak;
4. Memiliki kemampuan analisa solusi melalui tahapan yang sistematis;
5. Mampu melakukan generalisasi penyelesaian untuk permasalahanpermasalahan yang berbeda.
C. Kelebihan Computational Thingking
Computational thinking sendiri tentunya memiliki kelebihan yang manfaatnya akan kita rasakan dalam kehidupan sehari-hari, diantaranya adalah sebagai berikut:
1. Dapat mengasah pola pikir yang logis, inovatif, dan sistematis;
2. Dapat membuat rumusan masalah dengan uraian bagian-bagian yang telah disederhanakan;
3. Mampu mengatasi berbagai masalah yang tergolong kompleks dengan seefektif dan sesederhana mungkin.
D. Implementasi Computational Thinking
Computational thinking sendiri dapat diterapkan dalam kekhidupan sehari-hari kita, dimana dengan metode ini kita akan mampu menyelesaikan masalah-masalah baik masalah yang sederhaan maupun masalah yang rumit sekalipun dengan sistematis. Untuk mengimplementasikan pola ini, kita harus melakukan langkah-langkah berikut ini:
1. Perincian masalah
Dalam menghadapi masalah, kita harus menganalisis masalah tersebut dan setelah itu menjabarkan masalah sedetai mungkin. Kemudian kita dapat menetapkan solusi seperti apa yang cocok untuk mengatasi masalah tersebut. Tindakan penjabaran ini bisa kita lakukan dengan metode pembagian masalah yang kompleks menjadi masalah-masalah yang sederhana untuk mempermudah proses pengelolaan. Buat beberapa hipotesis tentang jabaran solusi-solusi yang memungkinkan untuk mengatasi masalah tersebut;
2. Menyusun algoritma yang sistematis
Ketika langkah pertama telah kita lalui, selanjutnya yang harus kita lakukan adalah menemukan algoritma yang sesuai. Dimana hal ini berhubungan dengan bagaimana tahapan-tahapan yang cocok dalam pemecahan permasalahan yang dihadapi berdasarkan berbagai informasi yang telah dicari dan dikumpulkan sebelumnya;
3. Penerapan, solusi, dan penilaian
Pada tahapan yang terakhir, kita harus menyusun solusi yang sesuai serta melakukan penilaian secara sistematis tentang kebenaran dari hipotesa solusi yang kita rancang sebelumnya. ketika solusi ini dinilai kurang efektif kita dapat melakukan modifikasi terhadap hipotesis hingga mencapai solusi yang dinilai sudah sempurna sehingga penyelesaian yang dihasilkan suda merupakan keputusan terbaik yang kita ambil.
E. Kesimpulan
Computational thinking adalah sebuah pola atau cara penyelesaian permasalahan yang kompleks dengan cara yang sederhana dimana di dalam dunia industri saat ini, hal ini sangatlah dibutuhkan. Mengingat semakin majunya teknologi saat ini, kita harus dapat berfikir sekreativ mungkin agar kemajuan zaman ini sejalan dengan kemajuan pola pikir manusia. Kita dapat menerapkan pola berfikir ini sejak dini, mulai dengan menyelesaikan masalah-masalah yang sederhana sehingga akan terbiasa untuk menyelesaikan masalah-masalah yang kompleks atau rumit. Dengan demikian strukturisasi dari solusi permasalahan akan tersusun dengan baik dan dapat digunakan sebagai suatu acuan untuk menghadapi berbagai masalah-maslaah yang akan terjadi kedepannya.
Virtual Memori
by D'cahyo on Nov.07, 2022, under artikel sistem operasi
A. Pengertian Virtual Memori
Virtual memori merupakan pemisahan memori logika pengguna dari memori fisik dimana sistem penyimpanan sementara dari suatu data akan melibatkan harddisk sebagai komponen penyimpannya. Dalam sistem operasi windows kita biasa menyebutnya sebagai paging file. Hanya beberapa program yang perlu dieksekusi di dalam memori. Sehingga ruang dalam alamat logika dapat jauh lebih besar daripada ruang alamat fisik sehinngga dapat digunakan secara bersamaan oleh beberapa proses dalam ruang alamat dan memungkinkan efisiensi pembuatan proses karena dapat memuat lebih banyak program yang berjalan secara bersamaan dan lebih sedikit input/output yang dibutuhkan dalam pemuatan atau penukaran proses.
Ruang alamat virtual merupakan pandangan logis tentang bagaimana memori memnyimpan suatu proses. Biasanya hal ini dimulai dari alamat 0, alamat yang saling berdekatan hingga spasi terakhir. Sementara memori fisik diorginized dalam suatu bingkai halaman dan memory management unit (MMU) yang akan memetakan memori logika ke dalam memori fisik. Memori virtual dapat diimplementasikan melalui dua hal yaitu demand paging dan demand segmentation.
B. Fungsi Virtual Memori
Beberapa fungsi dari virtual memori yaitu:
• Dapat digunakan untuk menanngani beban RAM yang berlebihan;
• Dapat digunakan sebagai cadangan RAM, namun ia tidak bisa menggantikan fungsi serta keberadaan RAM sepenuhnya;
• Dapat menjadi penyimpanan sementara dari data yang disimpan di RAM, sayangnya ia tidak dapat meneruskan data tersebut ke prosesor.
C. Tujuan Virtual Memori
Virtual memori ini bertujuan untuk menciptakan file khusus yang bias akita sebut dengan nama swap file, dimana Ketika sistem operasi sedang kehabisan memori maka data terakhir yang diakses akan dipindahkan ke dalam hard disk. Hal ini bertujuan untuk menciptakan ruang kosong di memori agar dapat menjalankan perintah selanjutnya. Penyimpanan data sementara akan terus dilakukan oleh sistem operasi ketika RAM menerima data-data baru yang masuk. Ketika data pada swap file tersebut dibutuhkan oleh komputer maka akan terjadi pertukaran antara data tersebut dengan data terakhri yang sudah diproses pada RAM.
D. Ruang Alamat Virtual
Ruang alamat virtual atau virtual-adress space biasanya mendesain ruangg alamat logika untuk tumpukan agar dimulai pada alamat logika max dan tumbuh (grow) “turun” sementara ”naik” untuk tumpukan tumbuh (heap). Hal ini bertujuan untuk memaksimalkan ruang alamat yang tidak digunakan. Memori fisik tidak dibutuhkan hingga heap atau hingga tumpukan tersebut diberikan halaman baru. Memungkinkan ruang alamat yang jarang digunakan dengan space yang tersisa untuk pertumbuhan. Pustaka sistem dibagikan melalui pemetaan ke dalam ruang alamat virtual, bersamaan dengan pemetaan halaman read-write oleh memori ke dalam runag alamat virtual. Halaman akan dapat dibagikan selama fork(), mempercepat proses pembuatan.
E. Permintaan Halaman (Demand Paging)
Demand paging dapat membawa seluruh proses ke dalam memori pada saat load atau membawa halam ke dalam memori Ketika halaman dibutuhkan. Hal ini akan mengakibatkan beberapa hal:
• Lebih sedikit input/output yang dibutuhkan;
• Minimalisasi kebutuhan memori;
• Lebih cepatnya respon;
• Memungkinkan pengguna yang lebih banyak.
Hal ini serupa dengan sistem paging dengan swaping (diagram kanan) dimana halaman akan diperlukan untuk itu, membatalkan referensi tidak valid, membawanya ke memori jika tidak ada di memori, lazy swaper tidak pernah menukan halaman ke dalam memori kecuali halamab akan dibutuhkan sementara sweaper yang berhubungan dengan halaman adalah pager.
Konsep dasar dari demand paging yaitu dengan menggunakan swaping, pager akan menebak halaman mana yang akan dipakai sebelum dilakukan pertukaran lagi, pager hanya akan membawa halaman-halaman tersebut ke dalam memori, untuk menentukan kumpulan halaman-halaman itu diperlukan MMU baru sehingga demand paging dapat diimplementasikan. Apabila halaman yang diperlukan telah menjadi penghuni memori, tidak akan ada perbedaan dengan non demand-paging. Sehingga apabila halaman yang diperlukan bukan merupakan penghuni memori, butuh pendeteksian dan memuat halaman tersebut ke memori penyimpanan tanpa mengubah perilaku program dan kode program.
F. Page Fault
Apabila terdapat referensi ke halaman, referensi pertama yang ke halaman tersebut akan terperangkap ke dalam sistem operasi, untuk lebih jelasnya berikut adalah cara kerja dari page fault secara umum:
• Sistem operasi akan melihat tabel lain untuk mengambil keputusan apakan referensi tersebut harus dibataalkan atau tidak. Apabila referensi terseut tidak valid maka akan dibatalkan;
• Mencari frame yang masih kosong;
• Menukar halaman ke dalam frame melalui operasi disk yang dijadwalkan;;
• Mengatur ulang tabel untuk menunjukkan bahwasanya halaman tersebut sekarang berada di dalam memori dengan memnebri simbol (v) pada set validasi bit;
• Memulai ulang (restart) instruksi-instruksi yang menjadi penyebab dari page fault atau kesalahan halaman.
G. Aspek dari Demand Paging
1. Kasus extreme (extreme case)
• Pada kasus extreme proses dapat dimulai dengan tanpa adanya halaman yang ada di memori. Sistem opeerasi akan menetapkan instruction pointer ke instruksis proses pertama:
Non-penghuni memori page fault.
• Pada setiap halaman proses lainnya pada akses pertama:
Pure demand paging
2. Actually
Instruksi yang diberikan dapat mengakses banyak halaman serta hanyak page fault. Dilakukan pertimbangan pengambilan dan pengkodean instruksi yang menambahkan dua angka dari memori serta menyimpan hasilnya kembali ke dalam memori. Kerusakan akan berkurang karena lokalitas dari referensi.
3. Hardware support
Dukungan perangkat keras yang diperlukan dalam demand paging
• Tabel halaman dengan bit yang valid atau tidak valid
• Memori sekunder dimana akan dilakukan swaping perangkat dengan ruang swap
• Instruksi restart (mulai ulang).
H. Cara Kerja Demand Paging
Tahapan dalam demand paging (worse case atau kasus buruk):
1. Trap halaman yang akan diproses ke dalam sistem operasi;
2. Simpan registrasi pengguna dan status dari proses;
3. Tentukan bahwasanya interupsi tersebut merupakan page fault;
4. Periksa apakah referensi halaman tersebut legal serta menentukan lokasi dari halaman pada disk;
5. Melakukan pembacaan dari disk ke dalam frame yang sedang kosong:
• Menunggu antrean hingga permintaan read dilayani;
• Menunggu pencarian perangkat dan/atau waktu latensi;;
• Mulai melakukan transfer halaman ke dalam frame yang kosong.
6. Alokasi CPU ke dalam beberapa pengguna lain dilakukan sambil menunggu transfer halaman;
7. Menerima interupsi dari subsistem input/output disk (I/O selesai);
8. Menyimpan register serta status dari proses untuk pengguna lain;
9. Menentukan bahwasanya interupsi berasal dari disk;
10. Memperbaiki tabel halaman serta tabel lain guna menunjukkan halaman sekarang berada di memori;
11. Tunggu CPU dialokasikan untuk proses ini kembali;
12. Pemulihan register pengguna, status proses, serta tabel halamn baru, kemudian melanjutkan kembali instruksi yang terputus.
I. Copy-on-Write (COW)
Copy-on-Write memungkinkan proses induk serta subproses untuk awalnya berbagi halaman yang sama pada memori jika salah satu proses memodifikasi halaman secara bersamaan, baru kemudian halaman tersebut akan disalin COW agar dapat membuat proses secara lebih efisien karena hanya halaman yang dimodifikasi yang disalin.
Secara umum, halaman yang kosong akan dialokasikan dari kumpulan halaman zero-fill-on-demand. Pool harus senantiasa mempunyai frame kosong untuk dieksekusi oleh halaman permintaan secara cepat. Jangan mengosongkan frame serta pemrosesan lainnnya pada page fault.
Penghapusan halaman sebelum pengalokasian bertujuan karena variasi vfork () mempunyai penangguhan induk proses serta subproses menggunakan ruang alamat parent’s COW yang dirancang untuk memiliki panggilan anak exec () dengan sangat efisien.
Manajemen Memori
by D'cahyo on Nov.07, 2022, under artikel sistem operasi
A. Pengertian Manajemen memori
Sesuai dengan namanya, manajemen memori berarti tindakan yang bertujuan untuk mengelola pengalokasian memori perangkat (komputer). Hal ini dimaksudkan agar memori utama komputer dapat:
• Memaksimalkan kemampuan dan penggunaan CPU
• Efisienisasi transfer data dari main memori ke CPU atau dari CPU ke main memori
• Mempercepat CPU dalam mengakses perintah dan data
• Efisienisasi penggunaan main memori
Jadi manajemen memori ini berhubungan dengan pengalokasian sumber daya yang digunakan secara bersamaan oleh proses yang masih berjalan di dalam main memori dan usaha dalam mencegah pembatasan kapasitas memori fisik dari system computer.
B. Fungsi Manajemen Memori
• Agar memori dialokasikan ke proses yang membutuhkan
• Melakukan dealokasi memori dari proses yang sudah tidak berjalan
• Melakukan pengelolaan informasi memori yang sedang digunakan dan tidak digunakan
• Melakukan pengelolaan swaping disk dan main memori
C. Jenis Memori
Memori system computer diklasifikasikan menjadi dua, yaitu:
1. Memori kerja. Yaitu memori yang bertugas menampung hal-hal yang dibutuhkan prosesor dan menimpan pekerjaan ketika sebelum dan setelah pelaksanaan pekerjaan tersebut dilakukan prosesor. Misalnya sajasistemm operasi dan system Bahasa. Memori ini sendiri dibagi menjadi dua yaitu :
a. Memori kerja untuk memori tetap
• Read Only Memory, dimana memori ini hanya memiliki kemampuan membaca saja
• Programmable ROM, disini kita bisa menuliskan sebuah program namun tidak bisa menghapusnya Kembali
• Electrically PROM, jenis ini memungkinkan kita untuk mengisinya menggunakan listrik, dan dapat menghapusnya.
• Erasable EPROM, hampir sama dengan sebelumnya, namun yang membedakan adalah dimana ketika computer tidak dialiri arus listrik, isi pada memori ini akan tetap ada
• Register Microposesor, merupakan memori yang durasi aksesnya paling cepat meskipun ukurannya paling kecil
b. Memori kerja untuk memori bebas
• Random Acces Memory, merupakan memori yang memiliki kemampuan read and write, namun Ketika catu daya padam, maka isi akan hilang
• Cache memori, biasanya dipasang diantara main memori dan prosesor
2. Memori dukung. Merupakan memori computer dengan kecepatan yang relative lebih rendah, namun kemampaun penyimpanan data utamanya lebih kecil dari kemampuan simpannya. Contoh dari jenis memori ini adalah Floppy, Harddisk, CD.
D. Swaping
Merupakan sebuah metode untuk mengalihkan proses sementara dari memori utama ke sebuah penyimpanan kemudian dikembalikan lagi ke memori saat hendak dieksekusi. Tujuannya adalah agar kinerja system time sharing bekerja optimal saaat multiprogramming. Dalam metode ini kita harus memerhatikan strategi dalam manipulasi memori bebas dan penempatan ruang swaping pada suatu penyimpanan.
E. Jenis Manajemen Memori
1. Monoprogramming
Merupakan jenis manajemen dimana hanya satu program yang diproses dalam satu waktu pada system dari computer. Disini proses yang dijalankan tersebut menguasai seluruh sumber daya. Alokasi memori dari jenis ini juga dilakukan dengan urut. Terdapat empat kekhasan jenis manajemen ini yaitu:
• Dalam satu waktu terdapat satu proses
• Semua memori digunakan oleh satu proses saja
• Seluruh kendali mesin diambil alih oleh program
• Pengguna mengunggah program ke semua memori disk
2. Multiprogramming
a) Pemartisian statis.
Pada jenis ini di memori utama terdapat banyak proses di waktu yang sama. Dengan menggunakan jenis ini maka pengguna dapat membagi program jadi dua atau lebih proses, secara bersamaan dapat memberi layanan interaktif, sumber daya yang digunakan menjadi
lebih efisien Memori dipecah menjadi beberapa partisi tetap dimana ditempatkannya proses-proses. Penempatannya sendiri berdasarkan
ukurannya dapat dibedakan menjadi dua yaitu pemecahan dengan ukuran partisi yang sama dan pemecahan dengan ukuran partisi yang
tidak sama. Partisi dengan ukuran sama memiliki kekurangan yaitu jika ukuran program lebih besar dari partisi yang ada maka tidak akan
dijalankan, dalam artian tidak semua program yang dieksekusi ke memori utama. Kemudian kekurangannya yang lain adalaah jika
ukuran program lebih kecil dari partisi yang ada maka disana aka nada sebuah ruang yang kosong sehingga terjadi pemborosan penyimpanan.
b) Partisi dinamis
Masalah yang dihadapi pada partisi statis akan diatasi di sini karena jumlah, ukuran, dan banyaknya proses di memori dapat beragam
selama durasi secara dinamis. Kegunaan memori mejadi lebih maksimal karena setiap proses yang akan dijalankan diberi partisi yang
seusai keeperrluaanya. Kelemahan dari jenis ini adalah akan mempersulit alokasi serta dealokasi penyimpanan, serta timbulnya lubang kecil di antara partis yang sedang digunakan.
F. Strategi Alokasi Memori
1) Algoritma First Fit
Dalam hal ini mula-mula pencarian akan dilakukan dari awal, apabila menemukan lokasi besar pertama maka pencarian akan berhenti. Misalnya saja ada partisi kosong dengan rentetan kapasitasnya adalah: 6, 2, 4, 3. Jika terdapat sebuah data dengan ukuran 3 maka data tersebut akan ditempatkan di partisi dengan kapasitas 6.
2) Algoritma Next Fit
Hampir sama dengan sebeliumnya, namun disini mula-mula pencarian dimulai dari lokasi terakhir ditemukannya segmen bukan dari awal, dan kemudian akan stop di partisi yang kapasitasnya cukup.
3) Algoritma Best Fit
Berbeda dengan sebelumnya dimana pencarian akan dihentikan Ketika data menemukan lokasi besar pertama, disini pencarian akan
berhenti apabila data telah menemukan tempat terkecil pertama yang bisa ia tempati.
4) Algoritma Worst Fit
Sesuai dengan Namanya, berbanding terbalik dengan sebelumnya. Algoritma ini memulai pencariannya dari awal kemudian menghentikan
pencariannya saat menemukan lokasi paling besar untuk ditempati.
Jadi dalam strategi alokasi memori, strategi yang paling bagus adalah best fit. Kenapa? Karena dengan algoritma tersebut maka akan lebih mengefisiensi partisi, dimana partisi yang digunakan cenderung lebih sesuai dengan ukuran datanya jadi tidak akan ada pemborosan memori
Pengantar Sistem Operasi
by D'cahyo on Nov.07, 2022, under artikel sistem operasi
A. Definisi Sistem Operasi
Secara umum sistem operasi dapat diartikan sebagai sebuah software dari sistem yang dapat melakukan pengolahan terhadap sumber daya (resources) dari perangkat lunak dan perangkat keras sehingga pengguna dapat berinteraksi dengan mudah. Singkatnya sistem operasi merupakan interface atau antarmuka yang menghubungkan antara pengguna dengan sebuah sistem komputer.
B. Tujuan sistem operasi
Tujuan dari sebuah sistem operasi pada dasarnya ada tiga, diantaranya yaiitu
1. Untuk mengeksekusi program oengguna dan mempermudah pengguna dalam mengatasi permasalahan atau kejadian.
2. Sistem operasi bertujuan untk membuat sistem komputer dapat bekerja secara efektif dan efisien sehingga pengguna mendapatkan kepuasan
3. Membuat sebuah sistem komputer memiliki penggunaan yang tepat guna.
C. Sistem Operasi
Secara garis besar sistem operasi memiliki fungsi sebagai berikut :
• Sistem Operasi sebagai resource allocator
Dalam perannya sebagai resource allocator, sistem operasi berperan dalam mengatur semua resources atau sumber daya. Selain itu sistem operasi juga berperan dalam melakukan pengambilan keputusan ketika terjadi pertentangan permintaan untuk dapat menggunakan sumber daya yang efisien dan adil. Jadi ketika pengguna sedang melakukan banyak tugas, atau membuka banyak tab kemudian sistem operasi akan
menutup beberapa tab atau aplikasi yang sekiranya sedang tidak dibutuhkan untuk lebih mengefisiensi penggunaan komputer sehingga komputer dapat bekerja dengan baik dan efisien.
• Sistem Operasi sebagai control program
Dalam menjalankan perannya, sistem operasi juga melakukan controlling eksekusi dari sebuah program yang dijalankan sehingga dapat meminimalisir adanya kesalahan dan penggunaan komputer yang tidak benar.
Selain kedua hal tersebut, setidaknya sistem operasi memiliki 4 fungsi dalam sebuah proses pada sistem komputer, diantaranya yaitu :
a) manajemen memori
Manajemen memori berfokus pada dua hal, yaitu memori primer yang merupakan kebutuhan penyimpanan yang diutamakan seperti RAM. Dan main memory yang berupa penyimpanan yang dapat diakses secara langsung melalui CPU.
b) manajemen perangkat
Sistem operasi juga ikut ambil peran dalam melakukan manajemen perangkat dimana sistem operasi mengatur komunikasi antar perangkat melalui setiap driver. Pada umumnya I/O Controller lah yang berperan dalam proses ini.
c) manajemen file
Sistem operasi juga dapat melakukan konfigurasi pada sebuah dokumen, biasanya disebut dengan file system dimana biasanya ini dimasukkan ke dalam direktori pencarian sehingga dapat mempermudah pengguna dalam melakukan pencarian.
d) manajemen prosesor
Pada fungsi ini, sistem operasi dapat menentukan fase mana yang menggunakan prosesor dengan jangka waktu terntentu untuk mendukung proses multiprogramming.
D. Apa yang dapat dilakukan sistem operasi
1. Bergantung pada sudut pandang masing-masing Karena sistem operasi memiliki banyak fungsi, jadi hal yang dapat dilakukan oleh sistem operasi itu bergantung pada user atau penggunanya, akan dijadikan seperti apa dan akan difungsikan untuk apa sistem operasi ini.
2. Pengguna mengingkan performa dari komputer yang bagus, untuk itu pengguna butuh kenyamanan, kemudahan penggunaan, dan kinerja yang baik. Untuk itu sistem operasi akan melakukan beberapa hal yang nantinya akan memberikan kenyamanan kepada user atau pengguna tersebut.
3. Menjaga pengguna agar tetap bahagia. Pada penggunaan mainframe maupun minicomputer tentunya pengguna akan tetap mengingikan performa yang bagus. Sistem operasi akan melakukan tindakan agar pengguna selalu merasa bahagia.
4. Pengguna sistem khusus seperti workstation memiliki sumber daya khusus tetapi biasanya pengguna menggunakan sumber daya bersMa dari server. Hal ini akan menurunkan performa dan untuk mengatasi hal tersebut sistem operasi akan membatasi dan mengutamakan sumber daya pada sistem khusus tersebut.
5. Pada umumnya komputer genggam mempunyai sumber daya yang cukup buruk, hal ini akan dioptimalkan penggunaannya dan disesuaikan dengan masa pakai baterai.
6. Beberapa komputer memiliki sedikit atau bahkan tidak ada interface seperti embedded computer di perangkat.
E. Komponen sistem komputer
Sistem komputer memiliki empat komponen utama, yaitu :
1. Perangkat Keras Komputer Perangkat keras komputer merupakan sebuah perangkat yang dapat dilihat wujud dan dapat berinteraksi secara langsung dengan penggunanya.
2. Sistem Operasi
Sistem operasi merupakan penghubung antara perangkat keras komputer dengan sistem dan program aplikasi. Dalam mesin komputer tidak semua bahasa dapat dimengerti, sedangkan oengguna sering memasukkan input yang random. Untuk itu komputer membutuhkan penerjemah yang menerjemahkan bahasa input user ke dalam bahasa yang dapat dimengerti oleh sistem atau mesin komputer dalam waktu sepersekian detik sehingga dapat memunculkan hasil yang sesuai dengan keinginan pengguna. Suatu sistem dapat dikatakan sistem yang baik apabila dapat melakukan apa yang user inginkan dengan secepat mungkin dan hasil yang seakurat mungkin. Misal dalam kegiatan penghitungan, sistem yang akan bekerja adalah ALU (Arithmetic Logical Unit) yang merupakan sistem yang dapat mengoperasikan penghitungan baik arimatika maupun logika.
3. Sistem dan program aplikasi
Komponen ini juga dapat dilihat langsung oleh penggunanya, sistem dan program aplikasi ini dapat berupa compiler, assembler, text editor, database sistem, dan masih banyak lagi
4. Pengguna
Pengguna ini merupakan komponen yang memegang kendali penuh atas berjalannya sistem komputer. Akan seperti apa proses dan tindakan yang akan dilakukan itu bergantung pada perintah atau masukan dari pengguna ini. Misal pengguna ingin melakukan operasi penjumlahan, perkalian, operasi and, or, nand, melakukan compiler program, mengedit teks, dan masih banyak lagi.
Hello world!
by D'cahyo on Oct.25, 2022, under Uncategorized
Welcome to Jejaring Blog Unnes Sites. This is your first post. Edit or delete it, then start blogging!