Welcome to my website

Saya Adalah Mahasiswa Jurusan Teknik Informatika

Selamat Datang di Blog saya... selamat membaca..

coding is my hoby

..........................................................................

Bahasa Pemrograman itu...

c++, java, pascal, perl, vb, phyton, dll

syukuri apa yang ada, hidup adalah anugerah

hidup adalah perjuangan yang tiada henti-hentinya

semangat......

=====================================================================.

Rabu, 29 Oktober 2014

Sistem Operasi Dalam Sistem Perangkat Keras Komputer



Sistem Operasi Dalam Sistem Perangkat Keras Komputer

Secara umum, Sistem Operasi adalah perangkat lunak pada lapisan pertama yang ditempatkan pada memori komputer pada saat komputer dinyalakan booting. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti untuk software-software itu. Layanan inti tersebut seperti akses ke disk, manajemen memori, penjadwalan tugas schedule task, dan antar-muka user GUI/CLI. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi.

Fungsi sistem operasi komputer secara umum adalah sebagai berikut:
1. Sistem Operasi Sebagai Kordinator.
Dalam hal ini sistem operasi berfungsi untuk mengatur semua aktivitas yang kompleks dari perangkat lunak sistem/perangkat lunak aplikasi yang sedang dijalankan agar dapat berjalan sesuai dengan urutan yang benar. Selain mengatur semua aktivitas perangkat lunak, sistem operasi juga bertugas mengatur/mengelola semua aktivitas yang berhubungan dengan hardware, baik input device ataupun output device.
2. Sistem Operasi Sebagai Penghubung.
Sistem operasi komputer berfungsi untuk menyiapkan serta menghubungkan program aplikasi agar dapat berinteraksi dengan perangkat keras secara konsisten dan stabil.
3. Sistem Operasi Sebagai Pelindung.
Hal ini dimaksudkan bahwa salah satu fungsi atau tugas dari sistem operasi adalah untuk memegang kendali proses, melindungi file dan memberi batasan pada pembacaan dan penulisan serta eksekusi data dan program. Sistem operasi juga dapat berfungsi sebagai pengatur tentang siapa saja yang dapat mengakses file, program dan sistem yang ada di komputer kita.
4. Sistem Operasi Sebagai Interpretasi (penerjemah).
Sistem Operasi berfungsi sebagai penerjemah perintah-perintah dan instruksi-instruksi antara User dan Sistem. Sebagai fasilitas komunikasi yang mudah antara sistem komputer dan User (pengguna).
Hal ini 5. Sistem Operasi Sebagai Server (Pelayan).
berarti fungsi dari sistem operasi komputer adalah untuk melayani segala sesuatu yang dibutuhkan oleh seorang user (pengguna).
Teknik Penjadwalan Sistem Operasi

 A.     Pengertian
Penjadwalan atau scheduling adalah sebuah metode dalam sistem operasi yang mengatur proses-proses yang akan berjalan dalam suatu sistem operasi. Hal ini sangat diperlukan karena pada saat ini komputer berbasiskan multiprogramming. Sehingga dalam suatu waktu akan berlangsung dua atau lebih pemrosesan. Tanenbaum menyebutkan, bagian dari sistem operasi yang membuat pilihan dinamakan scheduller, sedangkan algoritma yang digunakan dinamakan schedulling algorithm.

Secara garis besar penjadwalan dibedakan menjadi dua kelompok besar, yaitu:
1. Non-preemptive
Pada metode ini jika suatu proses telah berjalan maka sistem operasi maupun operasi lain tidak dapat mengambil alih eksekusi prosesor. Pengalihan prosesor hanya dapat dilakukan jika proses yang sedang berjalan tadi telah berhenti. Metode ini digunakan pada sistem batch dan sekuensial
2. Preemptive
Metode ini lebih canggih dari pada non-preemptive, karena sistem operasi dan operasi lain dapat mengambil alih eksekusi prosesor tanpa harus menunggu proses lain yang sedang running berhenti. Metode ini digunakan pada sistem real time.

Proses penjadwalan yang dilakukan oleh sistem operasi sebenarnya dipicu dari beberapa hal yaitu:
1. Proses berubah dari status running ke blocked, hal ini dapat terjadi ketika suatu proses melakukan system call untuk meminta operasi I/O
2. Proses berubah dari status running ke ready, hal ini dapat terjadi ketika suatu proses yang berstatus running telah habis time slice-nya.
3. Proses berubah dari status blocked ke ready, dalam hal ini merupakan kelanjutan dari pemicu nomor 1 diatas, ketika permintaan terhadap I/O telah terpenuhi maka proses yang tadinya berstatus blocked berubah menjadi ready
4. Ketika suatu proses berhenti atau terminated. Hal ini berarti suatu proses telah selesai dijalankan sehingga system operasi kemudian akan menjalankan proses yang telah ready.




Penjadwalan merupakan  salah  satu  fungsi  dasar  dari  sistem  operasi. Hampir  semua sumber  daya komputer dijadwalkan sebelum digunakan.

•    CPU-I/O Burst Cycle
Kesuksesan penjadwalan CPU tergantung dari observasi proses-proses. Pengeksekusian proses terdiri putaran ekseskusi CPU dan penungguan  I/O. Eksekusi   proses dimulai dari CPU burst,  yaitu diikuti oleh I/O burst kemudian diikuti CPU burst lainnya lalu I/O burst lainnya dan begitu seterusnya.

•    Penjadwalan CPU
Ketika  CPU   mengalami waktu  idle,  sistem  operasi  harus memilih  salah  satu  proses  untuk masuk kedalam  antrian  yang  akan  untuk  dieksekusi.  Pemilihan  tersebut  dilakukan  oleh  penjadwal  jangka pendek  atau  penjadwal  CPU. Penjadwalan memilih proses  yang ada di memori  serta  siap untuk dieksekusi, dan mengalokasikan CPU untuk mengeksekusinya.

Penjadwalan CPU mungkin akan dijalankan ketika proses dalam keadaan:
1.    Berubah dari running ke waiting state.
2.    Berubah dari running ke ready state.
3.    Berubah dari waiting ke ready.
4.    Terminates.
Penjadwalan nomor 1 dan 4 bersifat non-preemptive atau cooperative sedangkan lainnya preemptive. Dalam penjadwalan non-preemptive sekali CPU  telah dialokasikan untuk sebuah proses, maka  tidak dapat  di  ganggu,  penjadwalan  model  seperti  ini  digunakan  oleh Windows  3.x; Windows  95  telah menggunakan  penjadwalan  preemptive  yaitu  saat  suatu  proses  sedang  dieksekusi,  CPU  dapat diambil alih oleh proses lain sehingga proses di tunda dan dilanjutkan kembali hingga proses selesai.

•    Kriteria Penjadwalan
Setiap algoritma penjadwalan dapat berbeda dengan nilai yang berbeda dan  sistem komputer yang berbeda. Dalam penjadwalan CPU diperlukan beberapa kriteria diantaranya adalah:
  • CPU Utilization. Kita menginginkan kerja CPU sesibuk mungkin. Konsepnya pemanfaatan
  • CPU mempunyai  jangkauan  dari  0  sampai  100  persen.  Di  sistem  yang  sebenarnya mungkin  hanya mempunyai  jangkauan  dari  40  (untuk  pemanggilan  ringan  sistem)  sampai  90  persen (pemanggilan berat sistem).
  • Throughput. Pengukuran  kinerja CPU  adalah banyaknya  proses  yang  diselesaikan  per  satuan waktu.  Jika  kita  mempunyai  beberapa  proses  yang  sama  dan  memiliki  beberapa  algoritma penjadwalan  yang  berbeda,  hasil  kinerja  bisa  menjadi  salah  satu  kriteria  penilaian,  dimana algoritma yang menyelesaikan proses terbanyak mungkin yang terbaik.
  • Turnaround Time. Dari sudut pandang proses tertentu, kriteria yang penting adalah berapa lama untuk  mengeksekusi  proses  tersebut.  Memang,  lama  pengeksekusian  sebuah  proses  sangat tergantung dari hardware yang dipakai, namun kontribusi algoritma penjadwalan tetap ada dalam lama  waktu  yang  dipakai  untuk  menyelesaikan  sebuah  proses.  Misal,  kita  memilki  sistem komputer yang identik dan proses-proses yang identik pula, namun kita memakai algoritma yang berbeda,  algoritma  yang  mampu  menyelesaikan  proses  yang  sama  dengan  waktu  yang  lebih singkat mungkin  lebih baik dari algoritma  yang  lain.  Interval waktu  yang diijinkan dengan waktu yang dibutuhkan untuk menyelesaikan  sebuah  proses  disebut  turnaround  time. Turnaround  time adalah jumlah periode tunggu untuk dapat ke memori, menunggu di ready queue, eksekusi CPU, dan melakukan operasi  I/O atau waktu yang dihabiskan dari saat program atau job mulai masuk sistem sampai proses diselesaikan sistem.
  • Turnaround = waktu eksekusi + waktu menunggu
  • Waiting  Time.  Algoritma  penjadwalan  CPU  tidak  mempengaruhi  waktu  untuk  melaksanakan proses  tersebut  atau  I/O,  karena  hanya mempengaruhi  jumlah  waktu  yang  dibutuhkan  proses diantrian ready. Waiting time adalah jumlah waktu yang dbutuhkan proses di antrian ready.
  • Response  time. Di  sistem  yang  interaktif,  turnaround  time mungkin  bukan waktu  yang  terbaik untuk kriteria. Sering sebuah proses dapat memproduksi output di awal, dan dapat meneruskan hasil  yang  baru  sementara  hasil  yang  sebelumnya  telah  diberikan  ke  pengguna.  ukuran  lain adalah waktu dari pengiriman permintaan sampai respon yang pertama diberikan. Hal ini disebut response  time, yaitu waktu untuk memulai memberikan respon,  tetapi bukan waktu yang dipakai output  untuk  respon  tersebut.  Turnround  time  umumnya  dibatasi  oleh  kecepatan  peralatan keluaran.
Ada dua  jenis  response  time  berdasarkan penggunaannya pada  sistem  interaktif dan sistem waktu nyata (real time), yaitu:
1.   Terminal  response  time  merupakan  response  time  pada  sistem  interaktif  sebagai  waktu yang dihabiskan dari  saat  karakter  terakhir dari perintah dimasukkan atau  transaksi  sampai hasil pertama muncul di layar.
2.    Event response time merupakan response time pada sistem waktu nyata sebagai waktu dan kejadian (internal/eksternal) sampai instruksi pertama rutin layanan yang dimaksud dieksekusi. Sebaiknya ketika kita akan membuat algoritma penjadwalan yang dilakukan adalah memaksimalkan penggunaan CPU dan  throughput,  dan meminimalkan  turnaround  time, waiting  time,  dan  response time.

Algoritma Penjadwalan
Masalah penjadwalan CPU adalah memutuskan proses mana yang berada di dalam antrian ready akan dialokasikan  ke  CPU.  Ada  beberapa  algoritma  penjadwalan  CPU  beberapa  diantaranya  akan  di jelaskan pada bagian berikut ini.
o    First-Come First-Served (FCFS)
          Algoritma ini merupakan algoritma penjadwalan yang paling sederhana yang digunakan CPU. Dengan menggunakan algoritma ini setiap proses yang berada pada status ready dimasukkan ke dalam antrian FIFO  sesuai dengan waktu  kedatangannya. Proses yang  tiba  terlebih dahulu  yang akan dieksekusi terlebih dahulu.
o    Shortest-Job First (SJF)
          Algoritma  ini mempunyai cara penjadwalan yang berbeda dengan FCFS. Dengan algoritma  ini maka setiap  proses  yang  ada  di  antrian  ready  akan  dieksekusi  berdasarkan  burst  time  terkecil.  Hal  ini mengakibatkan waiting  time yang pendek untuk setiap proses dan karena hal  tersebut maka waiting time  rata-ratanya  juga  menjadi  pendek,  sehingga  dapat  dikatakan  bahwa  algoritma  ini  adalah algoritma yang optimal.
o    Penjadwalan dengan Prioritas
          Priority  Scheduling  merupakan  algoritma  penjadwalan  yang  mendahulukan  proses  dengan  nilai prioritas  tertinggi.  Setiap  proses memiliki  prioritasnya masing-masing.  Prioritas  suatu  proses  dapat ditentukan melalui beberapa karakteristik antara lain:
a.    Batas waktu
b.    Kebutuhan Memori
c.    Akses file                  
d.    Perbandingan antara I/O Burst dengan CPU Burst
e.    Tingkat kepentingan proses

o    Round Robin
Algoritma  ini didesin untuk sistem  time-sharing. Proses akan mendapat  jatah sebesar  time quantum dengan nilai quantum umumnya sebesar 10-100 ms. Jika time quantum-nya habis atau proses sudah selesai  CPU  akan  dialokasikan  ke  proses  berikutnya.  Tentu  proses  ini  cukup  adil  karena  tak  ada proses yang diprioritaskan, semua proses mendapat  jatah waktu yang sama dari CPU (1/n), dan  tak akan menunggu lebih lama dari (n-1)/q.
o    Antrian Multilevel (Multilevel Queue)
Ide dasar dari algoritma  ini adalah berdasarkan pada sistem prioritas proses. Prinsipnya adalah,  jika setiap proses dapat dikelompokkan berdasarkan prioritasnya.
o    Multilevel Feedback Queue
Algoritma  ini  mirip  sekali  dengan  algoritma  Multilevel  Queue.  Perbedaannya  ialah  algoritma  ini mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU  terlalu  lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Ini menguntungkan proses interaksi, karena proses ini  hanya memakai waktu CPU  yang  sedikit. Demikian  pula  dengan  proses  yang menunggu  terlalu lama. Proses ini akan dinaikkan tingkatannya.

Share:

Manajemen Memori



Manajemen Memori


         Memori adalah pusat dari operasi pada sistem komputer modern, berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik-baiknya. Memori adalah array besar dari word atau byte, yang disebut alamat. CPU mengambil instruksi dari memory berdasarkan nilai dari program counter.
          Sedangkan manajemen memori adalah suatu kegiatan untuk mengelola memori komputer. Proses ini menyediakan cara mengalokasikan memori untuk proses atas permintaan mereka, membebaskan untuk digunakan kembali ketika tidak lagi diperlukan serta menjaga alokasi ruang memori bagi proses. Pengelolaan memori utama sangat penting untuk sistem komputer, penting untuk memproses dan fasilitas masukan/keluaran secara efisien, sehingga memori dapat menampung sebanyak mungkin proses dan sebagai upaya agar pemogram atau proses tidak dibatasi kapasitas memori fisik di sistem komputer.

a. Jenis Memori
    * Memori Kerja
       - ROM/PROM/EPROM/EEPROM 
       - RAM 
       - Cache memory 

   * Memori Dukung 
      - Floppy
      - Harddisk
      - CD

b. Fungsi Manajemen Memori : 
     Manajemen memori merupakan salah satu bagian terpenting dalam sistem operasi. Memori perlu dikelola sebaik-baiknya agar :
     1. Utilitas CPU meningkat.
     2. Data dan instruksi dapat diakses dengan cepat oleh CPU.
     3. Tercapai efisiensi dalam pemakaian memori yang terbatas.
     4. Transfer data dari/ke memori utama ke/dari CPU dapat lebih efisien.

     5. Mengelola informasi yang dipakai dan tidak dipakai. 
     6. Mengalokasikan memori ke proses yang memerlukan. 
     7. Mendealokasikan memori dari proses telah selesai. 
     8. Mengelola swapping atau paging antara memori utama dan disk.

Manajemen Memori Berdasarkan Keberadaan Swapping Atau Paging
Terbagi dua yaitu :
     1. Manajemen tanpa swapping atau paging
     2. Manajemen dengan swapping atau paging
Kondisi tanpa swapping, bisa dikondisikan sebagai berikut :
1. Monoprogramming.
          Merupakan manajemen memori paling sederhana, sistem komputer hanya mengijinkan satu program/pemakai berjalan pada satu waktu. Semua sumber daya sepenuhnya dikuasi proses yang sedang berjalan.
2. Multiprogramming dengan pemartisian statis
         Multiprogramming dapat dilakukan dengan pemartisian statis, yaitu memori dibagi menjadi beberapa sejumlah partisi tetap. Pada partisi-partisi tersebut proses-proses ditempatkan.
Ciri-ciri :
     • Hanya satu proses pada satu saat
     • Hanya satu proses menggunakan semua memori
     • Pemakai memuatkan program ke seluruh memori dari disk atau tape
     • Program mengambil kendali seluruh mesin


Manajemen Memori Utama
Sistem operasi memiliki tugas untuk mengatur bagian memori yang sedang digunakan dan mengalokasikan jumlah dan alamat memori yang diperlukan, baik untuk program yang akan berjalan maupun untuk sistem operasi itu sendiri. Tujuan dari manajemen memori utama adalah agar utilitas CPU meningkat dan untuk meningkatkan efisiensi pemakaian memori.
Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari word atau byte yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan.  Setiap word atau byte mempunyai alamat tersendiri. Memori utama berfungsi sebagai tempat penyimpanan instruksi/data yang akses datanya digunakan oleh CPU dan perangkat M/K. Memori utama termasuk tempat penyimpanan data yang yang bersifat volatile (tidak permanen), yaitu data akan hilang kalau komputer dimatikan.
Sistem komputer modern memiliki sistem hirarki memori, artinya memori yang ada di komputer disusun dengan tingkatan kecepatan dan kapasitas yang berbeda. Memori yang memiliki kecepatan sama dengan kecepatan prosesor memiliki kapasitas yang kecil, berkisar hanya dari ratusan KB hingga 4 MB dengan harga yang sangat mahal. Sedangkan memori utama yang kecepatannya jauh di bawah kecepatan prosesor memiliki kapasitas yang lebih besar, berkisar dari 128 MB hingga 4 GB dengan harga yang jauh lebih murah. Sistem hirarki memori ini memiliki tujuan agar kinerja komputer yang maksimal bisa didapat dengan harga yang terjangkau.

Manajemen Memori Sekunder
Penyimpanan sekunder ( secondary storage) adalah sarana penyimpanan yang berada satu tingkat di bawah memori utama sebuah komputer dalam hirarki memori. Tidak seperti memori utama komputer, penyimpanan sekunder  tidak memiliki hubungan langsung dengan prosesor melalui bus, sehingga harus melewati M/K.
Sarana penyimpanan sekunder memiliki ciri-ciri umum sebagai berikut:
1. Non volatile(tahan lama). Walaupun komputer dimatikan, data-data yang disimpan di sarana penyimpanan sekunder tidak hilang. Data disimpan dalam piringan-piringan magnetik.

2. Tidak berhubungan langsung dengan bus CPU.  Dalam struktur organisasi   komputer modern, sarana penyimpanan sekunder terhubung dengan northbridgeNorthbridge yang menghubungkan sarana penyimpanan sekunder pada M/K dengan bus CPU.

3. Lambat. Data yang berada di sarana penyimpanan sekunder memiliki waktu yang lebih lama untuk diakses ( read/write) dibandingkan dengan mengakses di memori utama. Selain disebabkan oleh bandwidth bus yang lebih rendah, hal ini juga dikarenakan adanya mekanisme perputaran head dan piringan magnetik yang memakan waktu.

4. Harganya murah. Perbandingan harga yang dibayar oleh pengguna per byte data jauh lebih murah dibandingkan dengan harga memori utama.

Sarana penyimpanan sekunder memiliki fungsi-fungsi sebagai berikut:
1.    Menyimpan berkas secara permanen. Data atau berkas diletakkan secara fisik pada piringan magnet dari disk, yang tidak hilang walaupun komputer dimatikan ( non volatile)
2. Menyimpan program yang belum dieksekusi prosesor. Jika sebuah program ingin dieksekusi oleh prosesor, program tersebut dibaca dari disk, lalu diletakkan di memori utama komputer untuk selanjutnya dieksekusi oleh prosesor menjadi proses.
3. Memori virtual. Adalah mekanisme sistem operasi untuk menjadikan beberapa ruang kosong dari disk menjadi alamat-alamat memori virtual, sehingga prosesor bisa menggunakan memorivirtual ini seolah-olah sebagai memori utama. Akan tetapi, karena letaknya di penyimpanan sekunder, akses prosesor ke memori virtual menjadi jauh lebih lambat dan menghambat kinerja komputer.

Sistem operasi memiliki peran penting dalam manajemen penyimpanan sekunder. Tujuan penting dari manajemen ini adalah untuk keamanan, efisiensi, dan optimalisasi penggunaan sarana penyimpanan sekunder.
Share:

Anda Mau Cari Apa?

programmer itu?

assalamualaikum...

mbah wiki

Hasil penelusuran