Operating Systems 2021-1 (OS211)

Home

TOP 10 LIST WEEK 05

  1. What is virtual memory?
    Virtual memory adalah skema alokasi penyimpanan dimana secondary memory dapat dihandle seolah-olah itu adalah bagian dari memori utama. Ukuran dari virtual storage limited by skema addressing dari sistem komputer dan besarnya secondary memory yang tersedia. Penjelasan lebih lanjut mengenai virtual memory dapat dilihat pada link yang tertera.
  2. Memory hierarchy
    Memory hierarchy adalah suatu enhancement untuk mengorganisir memory sehingga dapat meminimalisir access timenya. Memory hierarchy di develop berdasarkan sifat program yang dikenal sebagai locality of references. Memory hierarchy memiliki beberapa level, pada level 0 terdapat CPU registers, pada level 1 terdapat cache memory atau SRAM, pada level 2 terdapat main memory atau DRAM, pada level 3 terdapat disk storage dan pada level terakhir terdapat optical disk dan magnetic tape.
  3. Demand paging
    Menggunakna konsep virtual memory, untuk mengeksekusi suatu proses hanya sebuah bagian dari proses diperlukan untuk present pada main memory, berarti hanya beberapa page yang dibutuhkan untuk present pada main memory. Namun, untuk memilih mana yang harus disimpan pada main memory dan mana yang harus disimpan pada secondary memory adalah hal yang sulit. Untuk mengatasi masalah ini, demand paging akan men-suggest untuk menyimpan semua pages of frames pada secondary memory hingga mereka diperlukan di main memory.
  4. Copy on Write
    Copy on write adalag suatu teknik resource management. Copy on write biasa digunakan untuk implementasi fork system call dimana dia men-share virtual memory (pages) dari OS. penjelasan mengenai copy on write dapat dibaca pada link.
  5. Allocation of frames
    Algoritma frame allocation akan digunakan jika kita memiliki beberapa proses, algoritma tersebut dapat membantu kita untuk mendecide berapa banyak frame yang harus dialokasikan pada setiap prosesnya. Ada 2 algoritma yang biasa digunakan untuk mengalokasikan frame to a process, antara lain equal allocation dan proportional allocation. Lalu ada juga 2 tipe allocation, yaitu local allocation dan global allocation. Untuk mengetahui apa itu equal allocation, proportional allocation serta local dan global allocation dapat dibaca pada link yang tersedia.
  6. Page fault handling
    Page fault dapat terjadi ketika suatu program ingin mengakses suatu data atau code yang berasa pada address space namun data tersebut sedang tidak terletak pada RAM. Penjelasan lebih lanjut mengenai apa yang akan terjadi setelah page fault dapat dibaca pada link yang tertera.
  7. What is cache memory?
    Cache memory adalah SRAM berkeceparan tinggi yang dapat diakses oleh mikroprosesor komputer lebih cepat dibanding mikroprosesor mengakses RAM. Cache memory terintegrasi langsung ke dalam chip CPU atau bisa juga ditempatkan pada chip terpisah yang memiliki interkoneksi bus yang terpisah dengan CPU. Tujuan dari cache memory sendiri adalah untuk menyimpan instruksi dann data yang akan digunakan berulang kali dalam pengoperasian program. Untuk penjelasan lebih lanjut dapat dilihat pada link.
  8. How to handle thrashing?
    Thrashing adalah suatu kondisi ketika sistem spend banyak waktu untuk service page faults tetapi pemrosesan yang dilakuakn sebenarnya sangat kecil. Lalu bagaimana cara menghandle thrashing?. Terdapat beberapa teknik yang dapat digunakan utnuk menghandle thrashing, antara lain ada working set model dan page fault frequency. Untuk penjelasan lebih lanjut mengenai kedua teknik diatas, keterangannya dapat dibaca pada web yang tertera.
  9. What is the difference between paging and swapping?
    Perbedaan pada swapping dan paging yang pertama adalah swapping merupakan suatu prosedur untuk meng copy out semua proses, sedangkan paging merupakan suatu teknik dari memory allocation. Perbedaan kedua adalah kapan terjadinya swapping dan paging, swapping terjadi ketika seluruh proses ditransfer ke suatu disk, sedangkan paging terjadi ketika suatu part dari proses ditransfer ke suatu disk. Perbedaan ketiga adalah swapping dapat diselesaikan dengan menggunakan inactive process, sedangkan pada paging, paging hanya dapat dilakukan oleh active process. Untuk melihat perbedaan swapping dan paging lainnya dapat dilihat pada link.
  10. uniform memory access vs non-uniform memory access
    Pada uniform memory access hanya single memory controller yang digunakan, sedangkan pada non-uniform memory access digunakan beberapa memory controller yang berbeda. Karena hal itu pula uniform memory access lebih lambat dibandingkan dengan non-uniform memory access. Uniform memory access juga memiliki bandwidth yang terbatas, sedangkan non-uniform memory access memiliki bandwidth lebih banyak dibanding uniform memory access. Perbedaan selanjutnya adalah uniform memory access biasa digunakan untuk general purpose application dan time-sharing application, sedangkan untuk non-uniform memory access biasanya digunakan untuk real-time application dan time-critical application. Perbedaan lainnya dapat dilihat pada web.