Minggu, 04 April 2021

THREAD AND MULTITHREAD

 A.   Thread

Thread(lightweight) adalah unit terkecil dalam suatu proses yang bisa dijadwalkan oleh sistem operasi. Thread merupakan sebuah status eksekusi (ready, running, suspend, block, queue, dll) dan unit dasar 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.

B.   Single-Threading dan Multi-Threading

                                 1.        Single-Threading

Single-Threading adalah sebuah lightweight process (proses sederhana) yang mempunyai thread tunggal yang berfungsi sebagai pengendali/ controller.

                                 2.        Multi-Threading

Multi-Threading adalah proses dengan thread yang banyak dan mengerjakan lebih dari satu tugas dalam satu waktu.

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

1.     Sistem operasi telah mendukung proses multithreading.

2.     Setiap sistem operasi memiliki konsep tersendiri dalam pengimplementasiannya.

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

2.     One-to-One

·        Memetakan setiap thread tingkatan pengguna ke thread kernel.

·        Model ini menyediakan lebih banyak concurrency dibandingkan model Many-to-One.

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

1.     Keuntungan menggunakan Thread Pools

·        Biasanya lebih cepat untuk melayani permintaan dengan thread yang ada dibanding dengan menunggu thread baru dibuat.

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

Komenta

Sabtu, 27 Maret 2021

Sistem Operasi

 Sistem Operasi

Pada awal perkembangan komputer belum terdapat sistem operasi karena komputer yang pertama kali hanya digunakan untuk melakukan komputasi - komputasi ringan. Namun demikian dari perkembangannya cikal bakal dari sistem operasi pun dikembangkan sehingga dikenal dengan beberapa sistem operasi yang disebut dengan Sistem Batch.

Berikut macam - macam  Sistem Operasi :

1. System Batch.

2. Multiprogramming System.

3. Time Sharing System.

4. Multi Processing System.

5. Real Time System.

6. Sistem operasi terpusat dan terdistribusi.


1. Sistem Batch

    Pada tahun 1950-an yaitu munculnya komputer generasi pertama .Konsep ini digunakan yaitu dengan cara mengumpulkan job-job dalam satu angkatan atau satu perintah konsep inilah yang menjadi cikal bakal komputasi atau sistem operasi berikutnya.

Tujuan dari sistem atau mengumpulkan cap dalam satu angkat ini adalah untuk meningkatkan utility atau utilitas CPU yang ada.Dalam menangani job-job yang ada kemudian sistem ini dibagi menjadi 2 :

A. Sistem Residen Monitor

Sistem Residen Monitor adalah Jenis program perangkat lunak sistem yang digunakan di banyak komputer awal dari tahun 1950-an hingga 1970-an. Ini dapat dianggap sebagai pendahulu sistem operasi. Resident Monitor adalah alat yang berguna untuk mengatur CPU agar tidak menganggur lama.

B. Overlap System Operasi input output dengan CPU

Dilakukan dengan 2 cara :

1.  off line processing

                Card reader akan membaca data dan simpan dalam tape driver sebelum dibawa ke CPU.

            2. Spooling

                Pekerjaan tape driver secara sequential.


2. Multiprogramming System

  •  beberapa jam di eksekusi dikumpulkan dalam.
  •  sebuah pool sistem operasi mengambil objek tersebut dan meletakkannya di memori dalam bentuk antrian.

jika suatu job yang sedang dieksekusi menunggu input output maka zat tersebut sementara dapat digantikan oleh job berikut yang pertama adalah dengan membagi memori menjadi beberapa partisi.


3. Time Sharing System

    Sering juga disebut dengan multitasking, jadi teknik yang sama sebenarnya dengan multiprogramming sistem namun berbeda di waktu bagi proses yang dibatasi dalam penggunaan cpu-nya waktu maksimum penggunaan CPU oleh proses ini yang disebut dengan Quantum.Ada beberapa keuntungan dan kerugian dalam Time sharing system :

  • keuntungan dari Teknik ini adalah tingkat kebersamaan semua proses dalam penggunaan CPU semakin tinggi sehingga semua proses itu bisa dikerjakan secara bergantian.
  • kerugiannya sendiri jika proses yang pertama itu belum Iagi dari batas waktunya atau Quantum maka proses yang pertama ini akan dibagi menjadi proses 1 proses 2 Proses tiga Proses 4 sampai dengan proses yang ke n sehingga tingkat switchipnya antar proses atau antar job ini menjadi besar jika kuantum dari suatu proses selesai maka ia harus keluar dengan dari CPU dan segera digantikan oleh proses berikutnya.

4. Multiprocessing sistem

    Multi processing System merupakan suatu sistem yang memiliki lebih dari 1 CPU(prosessor). Di dalam multi processing sistem, job akan dikerjakan dengan dua cara, yaitu.

      1. Paralel system

          Dalam pengerjaannya paralel system menggunakan bus, clock, memori dan peralatan lainnya secara bersama-sama. Setiap processor mengerjakan jenis job yang berbeda. Paralel system memiliki 2 sifat, yaitu

a. Symmetric multiprocessing

Masing – masing processor memiliki sistem operasi yang sama.

b. Asymmetric multiprocessing

Sebuah processor berfungsi sebagai master dan yang lain sebagai slave.

  • Keuntungan :
- proses lebih cepat
- biaya lebih murah

  • Kerugian :
jika proses berbeda, maka pocessor akan sibuk dan lainnya menganggur

        2. Distributed System

            Distributed System (Loosely Coupled System) adalah kumpula processor yang masing – masing mempunyai memory atau clock sendiri dan semua processor dapat mengerjakan semua jenis proses. 

  • Keuntungan : resource digunakan bersama, meningkatkan kecepatan komputasi, jika suatu processor gagal maka akan digantikan dengan processor lainnya.
  • Kerugian : Masing-masing prosesor mengerjakan jenis proses yang berbeda jika sebuah proses lebih banyak memiliki jenis proses tertentu saja maka hanya satu jenis prosesor yang akan sibuk sementara yang lainnya akan banyak menganggur.

 5. Real Time System

    Real time system digunakan untuk operasi yang memerukan letepatan waktu dari processor atau aturan data dan sering digunkan pengontrolan terhadap aplikasi- aplikasi tertentu. Real time system mempunyai 2 bentuk, diantaranya.

        1. Hard real time

            Menjamin critical task slesai tepat waktu

        2. Soft real time

            Memberikan prioritas pada critical task dibanding task lainnya sampai task tersebut selesai dikerjakan.


6. System Operasi Terpusat dan Terdistribusi

    Berikut Tabel Perbedaan System Operasi Terpusat dan Terdistribusi :

SO Terpusat

SO Terdistribusi

 

  • Dapat menangani multiprosesor.
  • Semua prosesor menggunakan suatu memori utama.
  • Sebuah processor nanti bertindak sebagai Master dan yang lain yang bertindak sebagai slave.

 

 

  • Dapat menangani multiprocessor.  
  • Masing-masing proses memiliki memori utama tersendiri.

 

Pengaturan Sumber Daya

 

Jika proses dalam sebuah slave memerlukan panggilan input output maka proses tersebut harus mengirimkan permintaan kepada Master dan menunggu layanan tersebut diberikan

 

 

Dimungkinkan pemakaian sumber daya bersama-sama dan pelayanan input-output yang diperlukan oleh sebuah prosesor dapat langsung dilakukan pada input output yang bersangkutan selama tersebut tidak sedang menjalani prosesnya/menganggur

 

Keuntungan

 

·       Hanya memerlukan sedikit perbaikan pada sistem operasi multi Processing atau simple processor.

·       Cara mengatasi konflik lebih mudah karena prosesor memiliki kontrol atau seluruh atas seluruh sumber daya dan juga memiliki memori input dan output.


 

·       kecepatan komputasi.

·       Reabilitas.

·       Memungkinkan adanya transfer data suatu program ke program lainnya.

Kerugian

 

·       Kegagalan master dapat menyebabkan kinerja system menurun

·       Master dapat menjadi penyebab utama terjadinya “bottleneck”.


 

·       SO menjadi bertambah kompleks karena operasi menjamin bahwa 2 prosesor tidak memiliki proses yang sama dan proses proses tidak hilang dari antrian.


  

 

 


Komenta

Minggu, 07 Januari 2018

Hero Baru Season 7

Assalamualaikum wr.wb
              Inilah 4 Hero Baru yang akan dirilis pada season 7 ini :

Halo gaiys! kembali lagi bersama saya "wahyu ramadhan". kali ini saya akan meberi tahukan Hero-Hero  baru yang akan dirilis pada Mobile Legend. Sebelum itu komen dan share my bolg.

Inilah 4 Hero Baru yang akan dirilis pada season 7 ini :
1. Hero : Angela
    Tipe  : Support

2. Hero : Lesley
    Tipe  : Marksman

3. Hero : Gossen
    Tipe  : Assasin 

4. Hero : Jawhead
    Tipe  : Fighter


Itulah tadi 4 hero baru yang akan dirilis pada season 7 ini 
Jangan lupa komen dan share ya


Assalamualaikum Wr.Wb

SELAMAT MENCOBA




   



Minggu, 15 Oktober 2017

5 Aplikasi untuk membuat animasi

5 APLIKASI  UNTUK MEMBUAT ANIMASI

Assalamu'alaikum wr.wb

kali ini saya akan menyarankan aplikasi-aplikasi yang cocok untuk membuat animasi,dalam membuat animasi ada banyak aplikasi yang menyediakan layanan membuat animasi,sebagai contoh saya akan memberikan 5 Aplikasi untuk membuat animasi!


1.photoshop






2.video scribe





3.Aurora 3D Animasi maker









4.Corel Draw







5.Blender







Ok,itulah tadi 5 Aplikasi pembuat Animasi,silahkan Download aplikasi pembuat Animasi diatas yang sudah saya beri Link!tinggal pencet Link tersebut!sekian dari saya Wahyu Ramadhan!


Wassalamu'alaikum WR WB



kunjungi juga : Rikikindama