All about operating system

All About Operating System

 

A. Pengertian Sistem Operasi

 

Operating system (OS) atau yang sering di sebut sistem operasiadalah sekumpulan perintah dasar yang berperan untuk menjalankan dan mengoperasikan komputer .Sekarang ini banyak sekali macam-macamsistem operasi di pasaran baik yang asli ataupun yang bajakan. Ada beberapa sistem operasi yang biasa kita jumpai di pasaran diantranya Windows, Unix, Linux Dan masih banyak lagi yang lainya.Dari sekian banyak sistem operasi Yang beredar, sistem operasi milik perusahaan microsoft lah yang paling populer untuk para pengguna pc notebook,bahkan ponsel dan PDA sekalipun Dengan sistem operasi berbasis mobilenya .

Dari beberapa sistem operasi tersebut,Sistem operasi yang dapat digunakan secara bebas alias open sourc Adalah linux.

            Adapun pengertian lainnya, Dalam Ilmu komputer, Sistem operasi atau dalam bahasa Inggris : operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol eksekusi program aplikasi dan manajemenperangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web. Sistem Operasi juga bertindak sebagai antar-muka antara pengguna dengan perangkat keras komputer. 

           
 

Perkembangan Sistem Operasi

Perkembangan sistem operasi Berawal dari altair,yaitu perangkat komputer pertama pada tahun 1975 yang menggunakan sistem operasi CP/M dan kemudian oleh perusahaan microsoft dirilis menjadi MS-DOS Dan berkembang dari MS-DOS versi 1.0 Pada tahun 1981 sampai MS-DOS versi 5.0 pada tahun 1991 dan sampai sekarang ini microsoft telah mengeluarkan beberapa sistem operasi mulai dari Ms-windows, windows97, windows98, windows98Me, Windows2000.Windows ME,Windows XP dan yang paling terbaru adalah windows vista yang terkenal dengan tatatp mukanya . Akan dijelaskan lebih pada halaman selanjutnya.

 

B. Sejarah Sistem Operasi

            Perkembangan sistem operasi dipengaruhi oleh perkembangan hardware. Sistem operasi mulai dikembangkan sejak ±40 tahun lalu, yaitu:

1.    Generasi ke-nol (1940).

      Komponen utama tabung hampa udara;

      Sistem komputer belum menggunakan sistem operasi;

      Sistem operasi komputer dilakukan secara manual melalui plugboard, dan hanya bisa digunakan untuk menghitung (+,-, dan *).

 

2.    Generasi pertama (1950).

      Komponen utama transistor;

      Sistem operasi berfungsi terutama sebagai pengatur pergantian antarjob agar waktu instalasi job berikutnya lebih efisien. Dalam masa ini muncul konsep batch system (semua job sejenis dikumpulkan jadi satu);

      Input pemakai punch card.

 

3.    Generasi kedua (1960).

      Komponen utama IC;

      Berkembang konsep-konsep:

      Multiprogramming, satu prosesor mengerjakan banyak program yang ada di memori utama;

      Multiprosesing, satu job dikerjakan oleh banyak prosesor berguna untuk meningkatkan utilitas;

      Spooling Simultaneous Peripheral Operation On Line, bertindak sebagai buffer (penyangga) saja, dan mampu menerima pesanan meskipun belum akan dikerjakan;

      Device Indipendence, masing-masing komponen memiliki sifat yang saling berbeda (misal: tiap-tiap printer memiliki driver);

      Time Sharing atau Multitasking, sistem bagi waktu yang diberikan oleh CPU terhadap berbagai job yang sedang dijalankan.

      Real-time system, berguna sebagai kontrol bagi mesin-mesin.

 

4.    Generasi ketiga (1970)

      Komponen utama VLSI (Very Large Scale Integrated Circuit);

      Ditandai dengan berkembangnya konsep general purpose system, sehingga sistem operasi menjadi sangat kompleks, mahal dan sulit untuk dipelajari;

 

5.    Generasi keempat (pertengahan 1970-an hingga sekarang).

      PC makin populer;

      Ditandai dengan berkembangnya sistem operasi untuk jaringan komputer dengan tujuan: data sharing, hardware sharing, dan program sharing;

      User interface semakin user friendly tanpa harus mengorbankan unjuk kerja.

 

Lapisan Dalam Siatem Operasi

5

Operator

4

User programs

3

Input/output management

2

Operator process communication

1

Memory and drum management

0

Processor allocation and multiprogramming

Lapisan 0 (nol) ; Penempatan prosessor dan multi programming

Lapisan 1 (satu);Memanajemen memory.

Lapisan 2 Menangani komunikasi antar proses dan operator console.

Lapisan 3 Memanajemen peralatan Input/Output.

Lapisan 4 Dimana user menemukan program

Lapisan 5 Tempat proses dari operator sistem

 

C. Tujuan dan Fungsi Sistem Operasi

Fungsi Sistem Operasi

                System operasi memiliki tiga fungsi utama yaitu manajemen proses, manajemen sumber daya dan manajemen data.

   Manajemen proses

 mencakup penyiapan, penjadwalan dan pemantauan proses pada computer. Proses adalah program yang sedang dijalankan.

   Manajemen sumber daya

berkaitan dengan pengendalian terhadap pemakaian sumber daya dalam system computer yang dilakukan oleh perangkat lunak system maupun pereangkat lunak aplikasi yang sedang dijalankan oleh computer. Yang dimaksudkan sumber daya disini adalah komponen perangkat keras dalam computer seperti CPU, memori utama dan peranti masukan/keluaran.

   Manajemen data

berupa pengendalian terhadap data masukan/keluaran, termasuk dalam hal pengalokasian dalam peranti penyimpan sekunder maupun memori utama.

 

Selain diatas sistem operasi mempunyai fungsi seperti dibawah ini

1.      Mengelola sumber daya terkait dengan pengendalian perangkat lunak sistem/perangkat lunak aplikasi yang sedang dijalankan. Sebagai contoh komponen perangkat keras pada komputer yaitu CPU, memori utama, alat input/output.

2.      Mempersiapkan agar program aplikasi dapat berinteraksi dengan perangkat keras secara konsisten dan stabil tanpa harus mengetahui secara detil perangkat keras.

3.      melakukan pengelolaan proses mencakup penyiapan, penjadwalan, dan pemantauan proses program yang sedang dijalankan.

4.      melakukan pengelolaan data pengendalian terhadap data masukan/keluaran.

 

 

D. Jenis Sistem Operasi

Sistem operasi personal komputer terbagi menjadi 3 kelompok  seperti di bawah ini.

  • Keluarga Microsoft, antara lain terdiri atas Windows Desktop Environment (versi 1.x hingga versi 3.x),Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, dan Windows Vista yang dirilis pada tahun 2007)).
  • Keluarga Unix, menggunakan antarmuka sistem operasi POSIX, antara lain SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.
  • Keluarga Mac OS adalah sistem operasi komputer keluaran Apple yang biasa disebut Mac atau Macintosh. Sistem operasi yang terbaru adalah Mac OS X versi 10.4 (Tiger). Awal tahun 2007 direncanakan peluncuran versi 10.5 (Leopard).
  • Keluarga komputer Mainframe, dan Super komputer menggunakan sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dan lain-lain.

 

Walau kita mengenal berbagai jenis sistem operasi di atas,  secara garis besar semua sistem operasi yang ada berdasarkan jenis komputer yang dikendalikan maupun bentuk aplikasi yang didukung dapat dibagi menjadi empat golongan :

  1. Real-time operating system (RTOS)

    Sistem operasi golongan ini dipakai untuk mengendalikan perangkat keras  untuk tugas spesifik, seperti instrumen ilmiah dan mesin-mesin industri. RTOS memiliki kemampuan antarmuka yang terbatas dan tidak mendukung aplikasi level end-user. Bagian terpenting RTOS adalah mengatur penggunaan sumber daya komputer untuk menjalankan serangkaian operasi secara berulang-ulang dalam periode tertentu.

     

  2. Single-user, single task

    Sesuai dengan namanya, tipe sistem operasi ini dirancang untuk memudahkan menangani pengoperasian komputer sehingga pengguna dapat menjalankan satu pekerjaan pada saat yang bersamaan. Sistem operasi DOS adalah contoh klasik dari jenis ini. Sistem operasi yang lain dari keluarga ini adalah Palm OS, yaitu untuk komputer genggam (handheld) Palm.

     

  3. Single-user, multi tasking

    Sistem operasi ini memungkinkan seorang pengguna dapat menjalankan beberapa aplikasi terpisah secara bersamaan. Inilah tipe sistem operasi yang paling umum digunakan sekarang. Sistem operasi ini (Windows, Linux, dsb.) sangat populer  digunakan untuk komputer pribadi.

 

  1. Multi-user

    Sistem operasi multi-user memungkinkan lebih dari satu pengguna bersama-sama menggunakan sumber daya komputer secara simultan. Sistem operasi dapat menjamin masing-masing pengguna yang memiliki kebutuhan (requirement) yang berimbang. Setiap program yang dijalankan oleh para pengguna menggunakan sumber daya yang cukup dan terpisah sehingga masalah pada satu pengguna tidak berimbas pada pengguna yang lain. Contoh sistem  multi-user adalah operasi Unix, VMS, dan MVS untuk mainframe.

 

E. Penjadwalan Proses

            Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O.

            Penjadwalan proses merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer.

            Tujuan dari multiprogramming adalah untuk memiliki sejumlah proses yang berjalan pada sepanjang waktu, untuk memaksimalkan penggunaan CPU. Tujuan dari pembagian waktu adalah untuk mengganti CPU diantara proses-proses yang begitu sering sehingga user dapat berinteraksi dengan setiap program sambil CPU bekerja. Untuk sistem uniprosesor, tidak akan ada lebih dari satu proses berjalan. Jika ada proses yang lebih dari itu, yang lainnya akan harus menunggu sampai CPU bebas dan dapat dijadwalkan kembali.

 

 Terdapat empat jenis penjadwalan pada sistem operasi:

         Penjadwalan Jangka-Panjang

            Penjadwalan jangka-panjang merupkan keputusan untuk menambahkan program yang akan dieksekusi ke pool. Penjadwalan jangka-panjang menentukan program yang mana diakui sebagai sistem untuk diproses. Jadi, penjadwalan jangka-panjang mengontrol derajat multiprogramming (jumlah proses yang berada di dalam memori). Sekali diakui, sebuah tugas atau program pengguna menjadi proses dan ditambahkan ke antrian untuk penjadwalan-pendek. Dalam beberapa sistem, proses diciptakan baru saja dimulai pada kondisi swapped-out, dakan kasus dimana proses ditambahkan ke antrian untuk penjadwalan jangka-menengah.

 

         Penjadwalan Jangka-Menengah

            Penjadwalan jangka-menengah merupakan suatu keputusan untuk menambah banyaknya proses-proses itu secara parsial atau secar penuh didalam memori utama. Penjadwalan jangka-menengah menjadi bagian dari pertukaran fungsi. Umumnya, keputusan swapping-in didasarkan pada kebutuhan untuk mengatur derajat multiprogramming. Pada sisetm yang tidak menggunakan memori sebetulnya, manajemen memori adalah juga merupakan suatu masalah. Jadi keputusan swapping-in akan memperlihatkan persyaratan memori dari proses swapped-out.

 

         Penjadwalan Jangka-Pendek

            Penjadwalan Jangka-Pendek merupakan keputusan sebagai proses tersedia yang mana yang akan dieksekusi oleh prosesor. Penjadwalan tingkat tinggi mengeksekusi relatif jarang dan membuat keputusan secar garis besar saja tnentang diambilnya atau tidaknya suatu proses baru, dan mana yang akan diambil. Penjadwalan jangka-pendek ayng juga mengenal sebagai dispatcher sering kali mengeksekusi dan membuat keputusan yang lebih detail tentang tugas yang akan dieksekusi berikutnya.

 

Terdapat juga beberapa sistem operasi yang bisa digunakan dalam sebuah handphone atau mobile phone.

Sebagai contoh :

• Sistem operasi Symbian

• Windows Mobile

• Sistem operasi Palm

• Mobile Linux

• Sistem operasi Blackberry

 

E. Manajement Memori

             
 

MANAJEMEN MEMORI

A. Berdasarkan keberadaan swapping :

     1. Manajemen tanpa swapping.

         Manajemen memori tanpa pemindahan citra proses antara memori    

         utama dan disk selama ekseskusi.

     2. Manajemen dengan swapping.

         Manajemen memori dengan pemindahan citra proses antara        

         memori utama dan disk selama ekseskusi.

B. Manajemen Memori Berdasarkan Alokasi Memori

terdapat dua cara menempatkan informasi ke dalam memori kerja

 

     1. Alokasi Memori Berurutan (contigouos Allocation)

         – Pada alokasi memori berurutan, setiap proses

menempati satu blok  

           tunggal lokasi memori yang berurutan.

         – Kelebihan : sederhana, tidak ada rongga memory

           bersebaran, proses berurutan dapat dieksekusi secara cepat.

         – Kekurangan : memori boros, tidak dapat disisip apabila tidak ada

           satu blok memori yang mencukupi.

 

     2. Alokasi Memori Tak Berurutan (Non Contiguous Allocation)

         – Program / proses ditempatkan pada beberapa

sagmen berserakan,  

           tidak perlu saling berdekatan atau berurutan. biasanya digunakan 

           untuk lokasi memori maya sebagai lokasi page-page.

        – Kelebihan : sistem dapat memanfaatkan memori utama secara lebih

           efisien, dan system operasi masih dapat menyisip protes bila  

           jumlah lubang-lubang memori cukup untuk memuat proses yang   

           akan dieksekusi.

         – Kekurangan : memerlukan pengendalian  yang lebih rumit dan    

           memori jadi banyak berserakan tidak terpakai.

 

Terdapat 2 manajemen memori:

 

a. manajemen memori statis

Dengan pemartisian statis, jumlah, lokasi, dan ukuran prosesdi memori tidak beragam sepanjang waktu secara tetap.

 

b. manajemen memori dinamis

Dengan pemartisian dinamis, jumlah, lokasi, dan ukuran proses di memori dapat berseragam sepanjang waktu secara dinamis.

 

MANAJEMEN MEMORI PEMARTISIAN STATIS

Kondisi tanpa swapping :

 

a. 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. 

 

b. 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.

 

*MONOPROGRAMMING :

1. Hanya terdapat satu proses pada satu saat, sehingga proses baru akan    

    menimpa proses lama yang sudah selesai eksekusi.

2. Hanya satu proses mengunakan semua memori.

3. Pemakai memusatkan program keseluruh memori dari disk atau tape.

4. Program mengambil kendali seluruh mesin.

 

 

MONOPROGRAMMING :

– Masih dipakai untuk sistem kecil yaitu sistem tempelan (embedded system) yang

   menempel atau terdapat disistem lain.

– Sistem-sistem tempelan menggunakan mikroprosesor kecil, seperti Intel 8051,   

  dan sebagainya.

– Sistem ini biasanya untuk mengendalikan satu alat sehingga menjadi bersifat

   intelejen (intelegent devices) dalam menyediakan satu fungsi spesifik. Karena  

   hanya satu fungsi spesifik, dapat diprogram di mikroprosesor dengan memori  

   kecil (1-64 Kb).

 

 

MASALAH PROTEKSI DI MONOPROGRAMMING

Merupakan cara memproteksi rutin sistem operasi dari penghancuran program pemakai. Program pemakai dapat tersesat sehingga memanipulasi atau menempati ruang memori rutin sistem operasi. Aktivitas program pemakai ini dapat merusak sistem operasi. Untuk mengatasinya Sistem operasi harus diproteksi dari modifikasi program pemakai.

Proteksi ini diimplementasikan menggunakan satu register batas (boundary register) dipemroses.Setiap kali 

program pemakai mengacu alamat memori dibandingkan register batas untuk memastikan proses pemakai tidak merusak sistem operasi, yaitu tidak melewati nilai register batas.

 

MANAJEMEN MEMORI MULTIPROGRAMMING

 

Melibatkan banyak pemakai secara simultan sehingga di memori akan terdapat lebih dari satu proses bersamaan. Oleh karena itu dibutuhkan sistem operasi yang mampu mendukung dua kebutuhan tersebut.

 

Melakukan dua aktivitas :

1. Proteksi memori dengan isolasi ruang-ruang alamat secara disjoint (terpisah).

2. Pemakaian bersama memori.

Memungkinkan proses-proses bekerja sama mengakses daerah memori bersama. Ketika konsep multiprogramming digunakan, pemakaian CPU dapat ditingkatkan.

MULTIPROGRAMMING pemartisian statis,

 

Terdapat beberapa alasan :

  1. Mempermudah pemogram.

    Pemrogram dapat memecah program menjadi dua proses atau lebih.

  2. Agar dapat memberi layanan interaktif ke beberapa orang secara simultan.Untuk itu diperlukan kemampuan mempunyai lebih dari satu proses dimemoriagar memperoleh kinerja yang baik.
  3. Efisiensi penggunaan sumber daya.

    Bila pada multiprogramming maka proses tersebut diblocked (hanya DMA    yang bekerja) dan proses lain mendapat jatah waktu pemroses, maka DMAdapat meningkatkan efisiensi sistem.

  4. Eksekusi lebih murah jika proses besar dipecah menjadi beberapa proses kecil.
  5. Dapat mengerjakan sejumlah job secara simultan.

 

PEMARTISIAN STATIS BERDASARKAN UKURAN

Partisi-partisinya terbagi dua :

1. Pemartisian menjadi partisi berukuran sama (ukuran semua partisi   

    memori sama), yaitu:

    Beberapa proses yang ukurannya kurang atau sama dengan ukuran partisi  

   dimasukkan ke sembarang 

    partisi yang tersedia.

    Kelemahan :

– Bila program berukuran lebih besar dibanding partisi yang tersedia, maka  

   tidak dapat dimuatkan, tidak dapat dijalankan. Pemogram harus

   mempersiapkan overlay sehingga hanya bagian program yang benar-  

   benar dieksekusi yang dimasukkan ke memori utama dan saling  

   bergantian. Untuk overlay diperlukan sistem operasi yang mendukung   

   swapping.

– Untuk program yang sangat kecil dibanding ukuran partisi yang

  ditetapkan, maka banyak ruang yang tak dipakai yang diboroskan,    

  disebut fragmentasi internal. Kelemahan ini dapat dikurangi dengan   

   partisi-partisi tetap berukuran berbeda.

 

2. Pemartisian menjadi partisi-partisi berukuran berbeda, yaitu ukuran semua partisi memori adalah berbeda

 

Strategi penempatan program ke partisi

DESKRIPSI :

a. Strategi penempatan pada pemartisian menjadi partisi-partisi berukuran sama. Penempatan proses ke memori dilakukan secara mudah karena dapat dipilih sembarang partisi yang kosong.

b. Strategi penempatan pada pemartisian menjadi partisi-partisi berukuran berbeda.

 

Satu antrian untuk tiap partisi (banyak antrian untuk seluruh partisi).

Proses ditempatkan ke partisi paling kecil yang dapat memuatnya.

 

Keuntungan :

 teknik ini adalah meminimalkan pemborosan memori.

Kelemahan :

dapat terjadi antrian panjang disuatu partisi sementara antrian partisi-partisi lain kosong.

 

Satu antrian untuk seluruh partisi.

Proses-proses diantrikan di satu antrian tunggal untuk semua partisi. Proses segera ditempatkan di partisi bebas paling kecil yang dapat memuat.

 

Keunggulan :

Lebih fleksibel serta implementasi dan operasi lebih minimal karena hanya mengelola satu antrian.

Kelemahan :

Proses dapat ditempatkan di partisi yang banyak diboroskan, yaitu proses kecil ditempatkan di partisi sangat besar.

Fragmentasi pada pemartisian statis

 

Fragmentasi yaitu :

Penyiaan/pemborosan memori akan terjadi pada setiap organisasi penyimpanan.

 

Fragmentasi pada pemartisian tetap terdiri dari:

a. Fragmentasi internal.

    Proses tidak mengisi penuh partisi yang telah ditetapkan untuk proses.

b. Fragmentasi ekstenal.

Partisi dapat tidak digunakan karena ukuran partisi lebih kecil dibanding ukuran proses yang menunggu di antrian, sehingga tidak digunakan

 

Fungsi Manajemen memori:

1. Mengelola informasi memori yang dipakai dan tidak dipakai.

2. Mengalokasikan memori ke proses yang memerlukan.

3. Mendealokasikan memori dari proses yang telah selesai.

4. Mengelola swapping antara memori utama dan disk.

 

Deskripsi Hirarki memori :

1. Pemakaian memori dua tingkat, menggunakan cache memory yang dapat meningkatkan          kinerja dan utilisasi memori secara dinamik.

2. Chace memory merupakan penyimpan berkecepatan tinggi lebih cepat dibanding memori utama.

3. Chace memory lebih mahal dibanding memori utama, sehingga kapasitas cache relatif kecil. 

 

Address Binding

– Sebelum eksekusi, program/proses berada di dalam disk, dan pada saat  

  dieksekusi ia perlu berada pada suatu lokasi dalam memori fisik.

 

– Address binding adalah menempatkan address relatif program/proses ke

  dalam address fisik meori (real memory address). Dapat berlangsung   

  dalam salah satu tahapan :   kompilasi, load atau eksekusi

 

Tahapan Running Program

1. Tahapan Kompilasi : source program (source code) dikompilasi menjadi  

    object module (object code).

2. Tahapan link & load : object module di-link dengan object module lain   

    menjadi load module (execution code) kemudian di-load ke memori   

    untuk dieksekusi.

3. Tahapan eksekusi : mungkin juga dilakukan dynamic

    linking dengan resident library.

 

Address Binding Saat Kompilasi

1. Jika lokasi dari proses sudah diketahui sebelumnya maka saat      

    kompilasi address-address instruksi dan data ditentukan dengan alamat

    fisik.

2. Jika terjadi perubahan pada lokasi tersebut maka harus di rekompilasi.

 

Address Binding Saat Load

1. Code hasil kompilasi masih menunjuk address-address secara relatif,                     

    saat di-load address-address disubstitusi dengan alamat fisik berdasar

    relokasi proses yang diterima.

2. Jika terjadi perubahan relokasi maka code di-load ulang.

 

Address Binding Saat Eksekusi

1. Binding (ikatan) bisa dilakukan ulang selama proses

     –Hal ini untuk memungkinkan pemindahan proses dari satu lokasi  

       ke lokasi lain selama run.

2. Perlu adanya dukungan hardware untuk pemetaan address

     – Contoh : base register dan limit register

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s