Minggu, 04 November 2018

Penjelasan dan Ciri dari Sistem Batch Sistem, Critical Section, Prosess COntrol Block, Distributed Processing, Handheld, dan Thread

A. BATCH SYSTEM
Batch system adalah dimana job-job yang mirip dikumpulkan dan dijalankan secara kelompok kemudian setelah kelompok yang dijalankan tadi selesai maka secara otomatis kelompok lain dijalankan. jadi dengan kata lain adalah teknologi proses komputer dari generasi ke-2. yang jika suatu tugas sedang dikerjakan pada 1 rangkaian, akan di eksekusi secara berurutan. Pada komputer generasi ke-2 sistem komputer nya maasih blum dilengkapi oleh sebuah sistem operasi. Tapi, dalam beberapa fungsi sistem operasi, seperti os yang tengah berkembang pada jaman sekarang ini. Contohnya adlah FMS ( Fortarn Monitoring System ) dan IBSYS.
Contoh sebuah Batch System adalah sebuah e-mail dan transaksi batch processing. Dalam suatu sistem batch processing, transaksi secara individual dientri melalui peralatan terminal, dilakukan validasi tertentu, dan ditambahkan ke transaction file yang berisi transaksi lain, dan kemudian dientri ke dalam sistem secara periodik. Di waktu kemudian, selama siklus pengolahan berikutnya, transaction file dapat divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master file yang berkaitan.

Ciri-ciri dari Batch System yaitu

  1. Multi-programming adalah salah satu teknik penjadwalan dimana tugas (task) yang sedang  berjalan tetap berjalan sampai ia melakukan operasi yang membutuhkan waktu untuk menunggu respon dari luar (external event), misalnya membaca data dari disket/CD/dsb, atau sampai komputer memaksa untuk menukar tugas yang sedang berjalan dengan tugas lainnya. Sistem operasi yang yang menggunakan multi-program sebagai scheduler-nya bertujuan untuk memaksimalkan penggunaan CPU. 
  2. Multiprocessing adalah istilah teknologi informasi dalam bahasa Inggris yang merujuk kepada kemampuan pemrosesan komputer yang dilakukan secara serentak. Hal ini dimungkinkan dengan menggunakan dua CPU atau lebih dalam sebuah sistem komputer. Istilah ini juga dapat  merujuk kepada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut.

B. CRITICAL SECTION 


Critical Section adalah bagian dari suatu proses yang akan melakukan akses dan manipulasi data.
Ketika sebuah proses sedang dijalankan dalam critical section nya, tidak ada proses lain yang boleh dijalankan dalam critical section tersebut, karena akan menyebabkan keadaan mutually exclusive.
Mutually exclusive yakni keadaan terjadinya akses resources yang sama di saat yang bersamaan. Mutually exclusive memerlukan kondisi tertentu agar dapat terpenuhi.
Critical section biasanya digunakan saat program multithreading, dimana program tersebut terdiri dari banyak thread, akan mengubah nilai dari variabel. Dalam hal ini critical section diperlukan untuk melindungi variabel dari concurrent access (pengaksesan program di saat yang bersamaan) yang dapat membuat nilai dari variabel tersebut menjadi tidak konsisten.


 Ada dua jenis solusi untuk memecahkan masalah critical section, yaitu.
  1. Solusi Perangkat Lunak. Solusi ini menggunakan algoritma-algoritma untuk mengatasi masalah critical section.
  2. Solusi Perangkat Keras. Solusi ini tergantung pada beberapa instruksi mesin tertentu, misalnya dengan me-non-aktifkan interupsi, mengunci suatu variabel tertentu atau menggunakan instruksi level mesin seperti tes dan set.

C. PROCESS CONTROL BLOCK

PCB (process control block) dalam Sistem Operasi


Sebagai pendahuluan kita harus mengenal dulu apa itu Sistem Operasi,Sistem operasi adalah seperangkat program yang mengelola sumber daya perangkat keras komputer, dan menyediakan layanan umum untuk aplikasi perangkat lunak. Sistem operasi adalah jenis yang paling penting dari perangkat lunak sistem dalam sistem komputer. Tanpa sistem operasi, pengguna tidak dapat menjalankan program aplikasi pada komputer mereka, kecuali program aplikasi booting.
Sistem operasi mempunyai penjadwalan yang sistematis mencakup perhitungan penggunaan memori, pemrosesan data, penyimpanan data, dan sumber daya lainnya.Untuk fungsi-fungsi perangkat keras seperti sebagai masukan dan keluaran dan alokasi memori, sistem operasi bertindak sebagai perantara antara program aplikasi dan perangkat keras komputer,meskipun kode aplikasi biasanya dieksekusi langsung oleh perangkat keras dan seringkali akan menghubungi OS atau terputus oleh itu. Sistem operasi yang ditemukan pada hampir semua perangkat yang berisi komputer-dari ponsel dan konsol permainan video untuk superkomputer dan server web.
Contoh sistem operasi modern adalah Linux, Android, iOS, Mac OS X, dan Microsoft Windows.

D. DISTRIBUTED PROCESSING

Sistem distribusi (distributed system) adalah suatu sistem jaringan komputer yang saling terhubung demikian rupa sehingga seolah-olah menjadi sebuah komputer yang digunakan oleh satu pengguna.
Dengan terintregasinya berbagai komputer sehingga seolah-olah merupakan satu komputer, dengan sendirinya akan menciptakan optimalisasi sumberdaya pengolahan data.
Sistem distribusi menekankan prinsip transparansi jaringan, yaitu bahwa pengguna tidak menyadari bahwa sistem tersebut sebenarnya tersebar diberbagai lokasi.

PERANAN SERVER
Server adalah komputer yang memiliki program serta database terkait yang senantiasa aktif untuk melayani berbagai kebutuhan perangkat lunak atau data bagi komputer lain yang tergabung dalam sistem jaringan distribusi.

Operasi yang dilakukan program server yaitu :
1.Melakukan eksekusi berkelanjutan
2.Melayani permintaan dari lokasi lain

Data dan file disimpan secara otomatis dengan berbagai cara, antara lain:
1.Setiap program database lokal memiliki file sendiri yang memuat unsur-unsur data jaringan yang dianggap relevan.
2.Menggunakan name server, yaitu suatu server khusus yang mengelola suatu directory file secara terpusat.

Dasar dari sistem distribusi adalah naming services. Naming services diterapkan dengan menggunakan sistem file distribusi (distributed file system), yaitu suatu bagian atau tambahan pada operating system yang fungsinya adalah untuk mengendalikan naming service.

E. HANDHELD 

Handheld computer adalah komputer yang cukup kecil sehingga dapat digenggam. Komputer genggam ini dapat bekerja dengan fungsi yang hampir sama dengan komputer biasa. Meskipun sangat mudah untuk dibawa, komputer genggam tidak dapat menggantikan komputer biasa (PC) karena hanya memiliki keyboard dan layar yang kecil. Beberapa produsen mencoba untuk memecahkan masalah keyboard yang terlalu kecil. Keyboard tersebut diganti dengan electronic pen. Bagaimanapun, electronic pen ini masih bergantung pada teknologi pengenalan tulisan tangan yang masih dalam tahap pengembangan.

Kelebihan dari komputer genggam ini adalah pengguna dapat menyimpan serta mengatur data dengan lebih efisien dan akurat. Biasanya komputer genggam dilengkapi dengan teknologi Bluetooth. Bluetooth memang tepat untuk mencetak secara nirkabel, menghubungkan antara komputer genggam dengan mobile printer. Tidak hanya dengan printer tetapi komputer genggam juga dapat dihubungkan dengan alat-alat lain melalui koneksi Bluetooth.

Komputer genggam dapat meningkatkan produktivitas pengguna dan memudahkan mereka untuk bekerja lebih efisien. Komputer genggam yang paling banyak digunakan adalah komputer yang khusus dirancang untuk menyediakan fungsi PIM (Personal Information Manager), seperti kalender, agenda, dan buku alamat

F. THREAD
A. Thread
  • Thread adalah unit terkecil dalam suatu proses yang bisa dijadwalkan oleh sistem operasi.
  • Merupakan sebuah status eksekusi (ready, running, suspend, block, queue, dll)
  • Kadang disebut sebagai proses ringan (lightweight).
  • Unit dasar dari dari sistem utilisasi pada processor (CPU).
  • Dalam thread terdapat: ID Thread, Program Counter, Register dan Stack.
  • Sebuah thread berbagi code section, data section dan resource sistem operasi dengan thread yang lain yang memiliki proses yang sama.
[thread]
B. Single-Threading dan Multi-Threading
Single-Threading adalah sebuah lightweight process (proses sederhana) yang mempunyai thread tunggal yang berfungsi sebagai pengendali/ controller.
Multi-Threading adalah proses dengan thread yang banyak dan mengerjakan lebih dari satu tugas dalam satu waktu.

[single and multithread]
C. Keuntungan Multi-Threading
  1. Responsive; tanggap: Multi-Threading mengizinkan program untuk berjalan terus walau-pun pada bagian program tersebut di block atau sedang dalam keadaan menjalankan operasi yang lama/ panjang. Sebagai contoh, multithread web browser dapat mengizinkan pengguna berinteraksi dengan suatu thread ketika suatu gambar sedang diload oleh thread yang lain.
  2. Pembagian sumber daya: Secara default, thread membagi memori dan sumber daya dari proses. Ketika thread berjalan pada data yang sama, thread tersebut bisa berbagi cache memory.
  3. Ekonomis: Mengalokasikan memori dan sumber daya untuk membuat proses adalah sangat mahal. Alternatifnya, karena thread membagi sumber daya dari proses, ini lebih ekonomis untuk membuat threads.
  4. Pemberdayaan arsitektur multiprosesor: Keuntungan dari multi-threading dapat ditingkatkan dengan arsitektur multiprosesor, dimana setiap thread dapat jalan secara paralel pada prosesor yang berbeda. Pada arsitektur prosesor tunggal, CPU biasanya berpindah-pindah antara setiap thread dengan cepat, sehingga terdapat ilusi paralelisme, tetapi pada kenyataannya hanya satu thread yang berjalan di setiap waktu.
D. Kerugian Multi-Threading
  1. Multiple thread bisa mengganggu satu sama lain saat berbagi hardware resource, misalnya chace memory.
  2. Execution time (waktu proses) dari sebuah single-thread tidak dapat diimprove (ditambah), tapi malah bisa diturunkan. Ini terjadi karena penurunan frequensi yang dibutuhkan ketika terjadi pergantian thread yang berjalan.
  3. Harus ada dukungan dari hardware ataupun software untuk melakukan multi-Threading.
E. Model-Model Threading
    1. Kernel-level threading; thread ini dibuat oleh pengguna yang berkorespondensi 1-1 dengan entitas-entitas yang terjadwalkan yang berada di kernel. Ini merupakan implementasi (penerapaan) paling sederhana dari threading.
      • Thread kernel didukung langsung oleh sistem operasi.
      • Pembuatan, penjadwalan, dan manajemen thread dilakukan oleh kernel pada kernel space.
      • Pengaturan thread dilakukan oleh sistem operasi, sehingga pembuatan dan pengaturan kernel thread lebih lambat dibandingkan user thread.
    2. User-level threading; sebuah pemetaan N-1, yang berarti bahwa semua level aplikasi thread dipetakan ke entitas tunggal yang ada di kernel. Dengan pendekatan ini, switching proses dapat dilakukan dengan sangat cepat.
      • Thread pengguna didukung kernel serta diimplementasikan dengan pustaka (library) thread pada tingkatan pengguna.
      • Pustaka (library) menyediakan fasilitas untuk pembuatan thread, penjadwalan thread, dan manajemen thread tanpa dukungan dari kernel.
      • Semua pembuatan dan penjadwalan thread dilakukan dalam ruang pengguna tanpa campur tangan kernel.
      • Thread pengguna biasanya dapat cepat dibuat dan
        dikendalikan
    3. Hybrid threading; sebuah pemetaan M-N, yang berarti beberapa jumlah N-thread aplikasi dipetakan ke beberapa entitas di kernel.

F. Thread dalam Sistem Operasi
  • Sistem operasi telah mendukung proses multithreading.
  • Setiap sistem operasi memiliki konsep tersendiri dalam pengimplementasiannya.
  • Sistem operasi dapat mendukung thread pada tingkatan kernel maupun tingkatan pengguna.
G. Model Multi-Threading
    1. Many-to-One
      • Memetakan beberapa thread tingkatan pengguna ke sebuah thread tingkatan kernel.
      • Pengaturan thread dilakukan dalam ruang pengguna, sehingga efisien.
      • Hanya satu thread pengguna yang dapat mengakses thread kernel pada satu saat.

    1. One-to-One
      • Memetakan setiap thread tingkatan pengguna ke thread kernel.
      • Model ini menyediakan lebih banyak concurrency dibandingkan model Many-to-One.

  1. Many-to-Many
    • Mengelompokkan banyak thread pengguna untuk dipetakan ke thread kernel yang jumlahnya lebih sedikit atau sama dengan tingkatan pengguna.
    • Mengijinkan sistem operasi untuk membuat sejumlah thread kernel.

H. Thread cancellation
Thread cancellation/ pembatalan thread ialah pemberhentian thread sebelum tugasnya selesai. Misalnya jika dalam program Java hendak mematikan Java Virtual Machine (JVM). Sebelum JVM dimatikan, maka seluruh thread yang berjalan harus dihentikan terlebih dahulu.
Thread yang akan diberhentikan disebut sebagai target thread. Pembatalan Thread terdiri dari 2 jenis:
  1.  Asynchronous cancellation: suatu thread seketika itu juga memberhentikan target thread.
  2. Deffered cancellation: target thread secara perodik memeriksa apakah dia harus berhenti, cara ini memperbolehkan target thread untuk memberhentikan dirinya sendiri secara terurut.
I. Thread Pools
Thread Pools adalah cara kerja dengan membuat beberapa thread pada proses startup dan menempatkan mereka ke pools.
  • Keuntungan menggunakan Thread Pools
    1. Biasanya lebih cepat untuk melayani permintaan dengan thread yang ada dibanding dengan menunggu thread baru dibuat.
    2. Thread pool membatasi jumlah thread yang ada pada suatu waktu. Hal ini penting pada sistem yang tidak dapat mendukung banyak thread yang berjalan secara concurrent.



Referensi :
- http://onepersen4ever.blogspot.com/2014/04/pengertian-batch-system-bentuk-batch.html
- https://mediekaputra.wordpress.com/2011/03/26/critical-section/
- http://femmifirdausahdiat.blogspot.com/2012/09/pcb-process-control-block.html
- https://www.kompasiana.com/sriwandanis/54f8b10fa33311ea168b474d/sistem-distribusi-dan-dss
- https://tintakopi.wordpress.com/2011/10/24/thread-multithread/





Minggu, 21 Oktober 2018

SISTEM OPERASI Dos, Windows, Mac dan Linux

A. Sistem Operasi DOS

Microsoft Disk Operating System, adalah sebuah sistem operasi yang sangat banyak digunakan oleh komputer IBM-PC atau yang kompatibel dengannya. Microsoft membuat MS-DOS sebagai sebuah sistem operasi mainstream, sebelum pada akhirnya menghentikan dukungan MS-DOS secara perlahan ketika mereka membuat sebuah sistem operasi berbasis antarmuka grafis (dikenal juga dengan sebutan GUI) untuk pasar mainstream, yang disebut sebagai Microsoft Windows.

MS-DOS dirilis pertama kali pada tahun 1981, dan seiring dengan waktu, Microsoft pun meluncurkan versi yang lebih baru dari MS-DOS. Tidak kurang hingga delapan kali Microsoft meluncurkan versi-versi baru MS-DOS dari tahun 1981 hingga Microsoft menghentikan dukungan MS-DOS pada tahun 2000. MS-DOS merupakan salah satu kunci keberhasilan Microsoft dalam memproduksi perangkat lunak, dari sebuah perusahaan kecil pembuat bahasa pemrograman saat didirikan hingga menjadi sebuah perusahaan perangkat lunak yang seolah menguasai dunia. 


B. Sistem Operasi Windows 

Mircorost Windows adalah Sistem Operasi yang dikembangkan oleh Microsoft Corporation yang menggunakan antar muka berbasis grafis atau dikenal dengan nama GUI (Graphical User Interface).


C. Sistem Operasi MAC

Jika Anda mencoba menggunakan macOS yang tidak kompatibel, Mac mungkin tidak dapat menyelesaikan proses mulai, atau terhenti secara tiba-tiba.
Jika Anda mencoba untuk memulai Mac dari hard disk, volume jaringan, atau cadangan Time Machine yang berisi versi atau build macOS yang tidak kompatibel, Anda mungkin mengalami satu atau beberapa gejala berikut:
  • Mac tidak menyelesaikan proses mulai, atau menampilkan simbol larangan pada proses mulai.
  • Pesan yang memberitahukan bahwa Anda menggunakan versi sistem operasi Mac yang tidak didukung atau salah ditampilkan.
  • Mac tidak merespons trackpad, mouse, atau keyboard.
  • Aplikasi tiba-tiba tertutup.
  • Mac tidak tidur atau bangun.
  • Tidak terdengar suara apa pun dari Mac.
  • Kipas di Mac mengeluarkan bunyi keras karena berputar secara lebih cepat.
  • Gambar di layar tampak mengecil, muncul bar hitam di sekelilingnya, atau tampak berwarna.
  • Anda tidak dapat menggunakan Bluetooth atau Wi-Fi.

Manakah sistem operasi Mac yang kompatibel?

Versi macOS yang disertakan bersama Mac adalah versi terlama yang kompatibel dengan Mac tersebut. Untuk mengetahui apakah Mac kompatibel dengan macOS versi terbaru, periksa persyaratan sistem:
Jika Mac tidak dapat dimulai dari versi macOS yang kompatibel, Mac Anda mungkin memerlukan build khusus dari versi tersebut. Untuk mendapatkan build yang benar:
  • Gunakan Pemulihan macOS untuk menginstal ulang macOS dari Mac yang terpengaruh.
  • Atau instal macOS versi terbaru.

D. SISTEM OPERASI Linux
 
Adalah software sistem operasi open source yang gratis untuk disebarluaskan di bawah lisensi GNU. Linux merupakan turunan dari unix dan dapat bekerja pada berbagai macam perangkat keras koputer mulai dari inter x86 sampai dengan RISC.

Dengan lisensi GNU (Gnu Not Unix) Anda dapat memperoleh program, lengkap dengan kode sumbernya (source code). Tidak hanya itu, Anda diberikan hak untuk mengkopi sebanyak Anda mau, atau bahkan mengubah kode sumbernya.Dan itu semua legal dibawah lisensi. Meskipun gratis, lisensi GNU memperbolehkan pihak yang ingin menarik biaya untuk penggandaan maupun pengiriman program.
  1. Kelebihan

  • Bersifat open source, bebas dan terbuka. sehingga tidak perlu biaya untuk mendapatkannya. LISENSI FREE  dan boleh di utak atik semaunya.
  • Linux sekarang sudah mudah di operasikan. kalo dulu pengguna linux identik dengan para hacker, tapi sekarang orang awam pun sudah banyak yang menggunakannya.
  • Hampir semua aplikasi yang biasa dijalankan di windows, sudah ada aplikasi linuxnya yang dikembangkan oleh komunitas linux atau bisa juga menggunakan software emulator.
  • Memiliki pengamanan yang lebih unggul karena di desain multiuser sehingga apabila virus menyerang user tertentu, akan sangat sulit menyebar ke user lainnya.
  • Cocok untuk PC yang memiliki spesifikasi minimum karena linux membutuhkan resource yang lebih kecil dibandingkan Windows.
  • Linux dapat berjalan di dua mode.
  • Jarang crash atau nge-hang yang mengharuskan kita untuk merestart komputer karena linux lebih stabil.
  • Memiliki komunitas di berbagai penjuru dunia.
  • Terdapat beragam pilihan seperti Ubuntu, Fedora, Debian, Centos, RedHat, Opensuse, Mandriva, dan sebagainya.

  1. Kekurangan

  • Banyak user yang belum terbiasa menggunakan linux.
  • Dukungan hardware dari vendor-vendor tertentu yang tidak terlalu baik pada linux.
  • Proses instalasinya tidak semudah windows.
  • Aplikasi di linux belum seampuh aplikasi windows.
  • Bagi administrator sistem yang belum terbiasa dengan Unix-like, maka mau gak mau harus belajar dulu.
  • Struktur direktori dan hak akses yang membingungkan bagi user yang terbiasa menggunakan windows.

 E. SISTEM OPERASI PADA ANDROID
Hasil gambar untuk sistem operasi ANDROID
Android adalah software untuk perangkat mobile yang mencakup sistem operasi, middleware dan aplikasi kunci. Pengembangan aplikasi pada platform Android menggunakan bahasa pemrograman Java. Serangkaian aplikasi inti Android antara lain klien email, program SMS, kalender, peta, browser, kontak, dan lain-lain.
Dengan menyediakan sebuah platform pengembangan yang terbuka, pengembang Android menawarkan kemampuan untuk membangun aplikasi yang sangat kaya dan inovatif. Pengembang bebas untuk mengambil keuntungan dari perangkat keras, akses informasi lokasi, menjalankan background services, mengatur alarm, tambahkan pemberitahuan ke status bar, dan banyak lagi.
Android bergantung pada versi Linux 2.6 untuk layanan sistem inti seperti keamanan, manajemen memori, manajemen proses, network stack, dan model driver. Kernel juga bertindak sebagai lapisan abstraksi antara hardware dan seluruh software stack.


Daftar Pustaka
  • https://support.apple.com/id-id/HT201686
  • http://barkahtroox.blogspot.com/2013/02/pengertian-linux-sejarah-linux.html
  • https://newsim.ubaya.ac.id/android-sistem-operasi-pada-smartphone/