Tugas 2

Manajemen Proses

1. Batch System

Pengertian Batch System

Image result for 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 masih 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.

Bentuk Batch Sytem

a). Sistem Batch

Pada tahun 1950-an yaitu saat munculnya komputer generasi pertama,muncul konsep ini yaitu dengan menggunakan job-job dalam satu angkatan,konsep ini merupakan cikal bakal dari sistem operasi selanjutnya,tujuan dari konsep ini adalah untuk meningkatkan utilitas CPU dalam menangani job-job yang ada. Batch sistem terdapat dua cara:

1. Resident Monitor

Image result for Resident Monitor

Dalam komputasi, monitor penduduk adalah jenis program perangkat lunak sistem yang digunakan di banyak komputer awal dari tahun 1950 hingga 1970-an. Ini bisa dianggap sebagai pendahulu sistem operasi. [1] Nama ini berasal dari program yang selalu ada dalam memori komputer sehingga menjadi “resident”. [2] Karena memori sangat terbatas pada sistem ini, monitor residen sering sedikit lebih dari sebuah rintisan yang akan mendapatkan kontrol di akhir pekerjaan dan memuat bagian non-residen untuk melakukan pembersihan pekerjaan yang diperlukan dan tugas pengaturan.

2. Overlap Operasi Antara I/O dengan CPU

Overlap Operasi antara I/O dengan CPU di lakukan dengan cara :

a). Off Line Processing

Image result for Off Line Processing

Data yang di baca dari card reader di simpan dulu dalam tape drivers sebelum di bawa menuju CPU, demikian juga dengan informasi yang di keluarkan tetapi belum di cetak di simpan dulu dalam tape drivers.Keuntungan Off Line Processing adalah proses tidak membutuhkan card reader dan line printer dengan kecepatan tinggi.

b). Spooling

Image result for Spooling

Pada dasarnya kerja dari tape drivers adalah sequensial, untuk mengatur hal ini digunakan sebuah disk sehingga proses dapat di kerjakan secara random dan dengan cara ini data dapat di baca secara langsung dari card reader ke disk.

Sistem Batch Pertama. Dengan mengeluarkan biaya yg tinggi,manusia bisa mengatasi waktu dalam melakukan komputasi solusi yg di lakukan adalah dengan mengadopsi sistem batch. Ide dasarnya adalah dengan mengumpulkan semua job yg akan di kerjakan dan memasukannya ke dalam magnetik tape.

b). Multiprogramming System

Image result for Multiprogramming System

Multi programming adalah suatu metode yang memungkinkan dua buah program atau lebih dijalankan secara serentak dalam sebuah komputer dan berbagai sumber daya dalam waktu yang berlainan.Konsep multiprogramming bisa diibaratkan sebagai pekerja yang tak hanya menangani satu pekerjaan,tetapi juga menangani pekerjaan lain,sehingga tak ada waktu yang terbuang.

Konsep dasar dari multi programming ini adalah: suatu proses akan menggunakan CPU sampai proses tersebut dalam status wait (misalnya meminta I/O) atau selesai. Pada saat wait , maka CPU akan nganggur (idle). Untuk mengatasi hal ini, maka CPU dialihkan ke proses lain pada saat suatu proses sedang dalam wait, demikian seterusnya.

c). Time sharing system

Image result for time sharing adalah

Time sharing system Sering juga di sebut dengan ” Multitasking ” , teknik sama dengan “Multiprogramming system”,hanya saja waktu bagi proses untuk menggunakan CPU di batasi,waktu mksimum penggunaan CPU oleh proses ini disebut dengan “Quantum”. suatu teknik penggunaan online system oleh beberapa pemakai secara bergantian menurut waktu yang diperlukan pemakai. Disebabkan waktu perkembangan proses CPU semakin cepat, sedangkan alat Input/Output tidak dapat mengimbangi kecepatan dari CPU, maka kecepatan dari CPU dapat digunakan secara efisien dengan melayani beberapa alat I/O secara bergantian. Proses TSS mulai nampak perpaduan teknologi komputer dan teknologi telekomunikasi yang pada awalnya berkembang sendiri- sendiri. Pada sistem TSS beberapa terminal terhubung secara seri ke sebuah host computer.

d). Multiproccessing System

Related image

Multiproccessing System istilah teknologi informasi 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.

Multiproccessing System merupkan ssuatu system yg lebih dari satu CPU(prosessor) pekerjaan sebuah job di lakukan dengan dua cara:

1. Pararel System

Image result for Parallel System adalah

Salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Untuk melakukan berbagai jenis komputasi paralel diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. Pemrograman Paralel sendiri adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan.

2. Distributed System

Image result for Distributed System

Suatu sistem jaringan komputer yang saling terhubung demikian rupa sehingga seolah-olah menjadi sebuah komputer yang digunakan oleh satu pengguna.

e) Real Time System

Image result for Real Time System adalah

Pada awalnya, istilah real time digunakan dalam simulasi. Memang sekarang lazim dimengerti bahwa real time adalah “cepat”, namun sebenarnya yang dimaksud adalah simulasi yang bisa menyamai dengan proses sebenarnya (di dunia nyata) yang sedang disimulasikan. Suatu sistem dikatakan real time jika dia tidak hanya mengutamakan ketepatan pelaksanaan instruksi/tugas, tapi juga interval waktu tugas tersebut dilakukan. Dengan kata lain, sistem real timeadalah sistem yang menggunakan deadline, yaitu pekerjaan harus selesai jangka waktu tertentu. Sementara itu, sistem yang tidak real time adalah sistem dimana tidak ada deadline, walaupun tentunya respons yang cepat atau performa yang tinggi tetap diharapkan.

SYARAT REAL TIME SYSTEM

Related image

Suatu sistem komputasi dinamakan real-time jika sistem tersebut dapat mendukung eksekusi program / aplikasi dengan waktu yang memiliki batasan, atau dengan kata lain suatu sistem real-time harus memiliki :

  • Batasan waktu dan memenuhi deadline, artinya bahwa aplikasi harus menyelesaikan tugasnya dalam waktu yang telah dibatasi atau ditentukan.
  • Dapat diprediksi, artinya bahwa sistem harus bereaksi terhadap semua kemungkinan kejadian selama kejadian tersebut dapat diprediksi.
  • Proses bersamaan, artinya jika ada beberapa proses yang terjadi bersamaan, maka semua deadline nya harus terpenuhi.
  • Dapat mengerjakan hal-hal yang penting saja, mengatur strategi task-task mana yang harus dikerjakan lebih dahulu.
  • Membuat processor agar bekerja lebih cepat, sehingga dapat ditingkatkan jumlah taskyang diselesaikan.
  • Menemukan tingkat effisiensi waktu.
  • Waktu proses merupakan sesuatu yang vital dan dianggap penting.
  • Suatu sistem dimana respon tepat waktu oleh komputer merupakan hal yangdianggap vital.

Real Time System di gunakan jika satu operasi melakukan kecepatan waktu dari prosesor atau aturan data dan sering di gunakan sebagai pengontrol terhadap aplikasi-aplikasi tersebut terdapat dua bentuk real time sistem yaitu:

  • Hard real time,menjamin critical task selesai tepat waktu
  • Soft real time,memberikan prioritas pada critical task di banding dengan task lainnya sampai critical task tersebut selesai di kerjakan

f). Sistem operasi terpusat dan terdisistribusi

Istilah sistem operasi terpusat dan terdistribusi terdapat pada system multiprocessing. System operasi terpusat adalah system operasi yg dapat menangani multiprosesor di mana semua prosesor menggunakan satu memori utama. Sebuah proses bertindak sebagai master dan yg lainnya sebagai slave.System operasi terdestribusi adalah system operasi yg dapat menangani multiprosessor di mana masing-masing prosesor memiliki memory utama tersendiri.

  • Pengaturan sumber daya
  • Keuntungan dari dua sistem
  • Kerugian dari sebuah system
Contoh Batch System

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.

Kesimpulan Batch System

Dapat saya simpulkan, jika Batch System merupakan salah satu kondisi di mana kita bisa berbagi penggunaan komputer secara bersama – sama dan tujuannya jelas yakni kita bisa berbagi data dan file dalam kurun waktu yang sama. Namun, tidak semua job bisa langsung di eksekusi. job-job yang mirip dikumpulkan dan dijalankan secara kelompok kemudian setelah kelompok yang dijalankan tadi selesai maka secara otomatis kelompok lain dijalankan.

2. Critical Section

Image result for Critical Section

Critical Section adalah sebuah segmen kode dari sebuah proses yang mana sumber daya diakses bersamaan. Terdiri dari: 

  • Entry Section: kode yang digunakan untuk masuk ke dalam critical section
  • Critical Section: Kode di mana hanya ada satu proses yang dapat dieksekusi pada satu waktu
  • Exit Section: akhir dari critical section, mengizinkan proses lain
  • Remainder Section: kode istirahat setelah masuk ke critical section

Solusi untuk mengatasi masalah Critical Section, yaitu:

a). Mutual exclution : Jika proses pi sedang mengeksekusi critical section-nya maka tidak ada proses lain yang dapat mengeksekusi dalam critical section mereka.

b). Progress : Jika tidak ada proses yang sedang dieksekusi dalam critical section dan ada beberapa proses yang ingin masuk ke critical section mereka, maka pemilihan proses yang akan masuk ke critical section berikutnya tidak bias ditunda

c). Bounded Waiting :Suatu keterikatan harus ada pada sejumlah proses yang diijinkan masuk ke critical section mereka, setelah adanya proses yang meminta masuk ke critical section dan sebelum permintaan itu diterima.

Contoh pada algoritma

Cara-cara memecahkan masalah

  • Hanya dua proses, Po dan P1
  • Struktur umum dari proses adalah Pi (proses lain Pj)

do {

critical section

remainder section

} while(1);

Algoritma 1

Disini kita akan mencoba membuat sebuah rangkaian solusi-solusi dari permasalahan yang makin meningkat kerumitannya.

Pada semua contoh, i adalah proses yang sedang berjalan, j adalah proses yang lain. Pada contoh ini code.

i. Shared variables  

• int turn

           Initially turn=0

  • turn = i, Pi can enter its critical section
ii. Process Pi

do {

        while(turn!=1);

         critical section

         turn=j;

         remainder section

        } while(1);

iii. Memenuhi mutual exclusion, tapi bukan progress.

Algoritma 2

FLAG untuk setiap proses yang memberi STATE:

Setiap proses memantau suatu flag yang mengindikasikan ia ingin memasuki critical section. Dia memeriksa flag poses lain dan tidak akan memasuki critical section bila ada proses lain yang sedang masuk.

i. Shared variables

       • boolean flag[2];

             initially flag [0] = flag [1] = false
       • flag [i] = true , Pi ready to enter its critical section

ii. Process Pi

do {

        flag[i]:=true;

        while(turn!=1);

        critical section

        turn=j;

        remainder section

         } while(1);

iii. Memenuhi mutual exclusion, tapi tidak memenuhi progess.

Algoritma 3

FLAG untuk meminta izin masuk:

Setiap proses mengeset sebuah flag untuk meminta izin masuk. Lalu setiap proses mentoggle bit untuk mengizinkan yang lain untuk yang pertama

Kode ini dijalankan untuk setiap proses i

Shared variables

F boolean flag[2];

      initially flag[0] = flag[1] = false

F flag[i] = true;

Pi ready to enter its critical section

  • Gabungan shared variables dari algorima 1 dan 2
  • Process Pi

do {

       flag[i]:=true;

        turn = j;

        while(flag[j] and turn = j);

        critical section

         flag[i] = false;

         remainder section

          } while(1);

  • Memenuhi ketiga persyaratan, memecahkan persoalan critical section untuk kedua proses

Algoritma Bakery

Critical Section untuk n buah proses:

Sebelum memasukkan proses ke critical section, proses menerima sebuah nomor. Pemegang nomor terkecil masuk ke critical section. Jika ada dua proses atau lebih menerima nomor sama, maka proses dengan indeks terkecil yang dilayani terlebih dahulu untuk masuk ke critical section. Skema penomoran selalu naik secara berurut contoh: 1, 2, 3, 3, 3, 3, 4, 5,…


boolean choosing [n];

long long long int number [n];

/* 64 bit maybe okay for about 600 years */

Array structure elements are initiallized to false and 0 respectivelywhile (true) {

           choosing[i] = true;

           number[i] = max(number[0], … [n-1]) + 1;

            choosing[i] = false;

            for (j = 0; j < n; j ++) {

            while (choosing[j]) {}

            while ((number[j] !=0) && ((number[j], j) < (number[i], i))) {}

}number[i] = 0

}Solves the critical-section problem

for n process

Kesimpulan Critical Section

Jadi dapat saya simpulkan jika Critical Section adalah sebuah segmen kode dari sebuah proses yang mana sumber daya diakses bersamaan. Jika Batch System bisa mengaskses Sumber daya secara bergantian sedangkan Critical Section berupa Segmen Kodenya saja.

3. Process Control Block

Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif, termasuk ini:

  • Keadaan proses: Keadaan mungkin, new ,ready ,running, waiting, halted, dan juga banyak lagi.
  • Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk ditambah code information pada kondisi apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
  • Informasi manajemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasardan batas register. tabel page/ halaman, atau tabel segmen tergantung pada sistem memori yangdigunakan oleh sistem operasi (ch 9).
  • Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan bataswaktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
  • Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini,suatu daftar open file dan banyak lagi.
  • PCB hanya berfungsi sebagai tempat menyimpan/gudang untuk informasi apapun yang dapatbervariasi dari prose ke proses.proses ini.
  • CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer.Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register,

Element-elemen PCB antara lain:

Identifikasi Proses yaitu Identifier numerik yang meliputi

  1. Identifier proses
  2. Identifier proses yang menciptakan
  3. Identifier pemakai

Informasi Status Pemroses yang meliputi

  • Register-register yang terlihat pemakai yaitu Register-register yang dapat ditunjuk instruksi bahasa assembly untuk diproses pemroses
  • Register-register kendali dan status yaitu Register-register yang digunakan untuk mengendalikan operasi pemroses, a.l.:
  1. Program counter
  2. PSW, dsb.
  • Pointer stack yaitu Tiap proses mempunyai satu stack atau lebih. Stack digunakan untuk parameter atau alamat prosedur pemanggil dan system call. Pointer stack menunjuk posisi paling atas dari stack

Informasi Kendali Pemroses meliputi

  • Informasi penjadwalan dan status yaitu Informasi-informasi yang dipakai untuk menjalankan fungsi penjadwalan a.l :
  1. Status proses. Mendefinisikan status proses (running,ready,block, dsb)
  2. Prioritas. Menjelaskan prioritas proses
  3. Informasi berkaitan penjadwalan. Informasi ini seperti lama menunggu, lama proses terakhir dieksekusi dsb.
  4. Kejadian (Event). Identitas kejadian yang ditunggu proses
  • Penstrukturan data yaitu Suatu proses dapat dikaitkan dengan proses lain dalam satu antrian atau ring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini.
  • Komunikasi antar proses yaitu Beragam flag, sinyal dan pesan dapat diasosiasikan dengan komunikasi antara dua proses yang terpisah. Informasi ini disimpan dalam PCB
  • Kewenangan proses yaitu Proses dapat mempunyai kewenangan berkaitan dengan memori dan tipe instruksi yang dapat dijalankan
  • Manajemen memori Bagian ini berisi pointer ke tabel segmen atau page yang menyatakan memori virtual proses
  • Kepemilikan dan utilisasi sumber daya yaitu Sumber daya yang dikendalikan proses harus diberi tanda, misalnya :
  1. Berkas yang dibuka
  2. Pemakaian pemroses
  3. Pemakaian sumberdaya lainnya

Informasi yang terdapat pada setiap proses meliputi :

  1. Status Proses = New, ready, running, waiting  dan terminated.
  2. Program Counter = Menunjukkan alamat berikutnya yang akan dieksekusi oleh proses tersebut.
  3. CPU Registers = Register bervariasi tipe dan jumlahnya tergantung arsitektur komputer yang bersangkutan.  Register-register tersebut terdiri-atas:  accumulator, index register, stack pointer, dan register serbaguna dan beberapa informasi tentang kode kondisi. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. Gambar 3-3 menunjukkan  switching proses dari satu proses ke proses berikutnya.
  4. Informasi Penjadwalan CPU = Informasi tersebut berisi  prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.
  5. Informasi Manajemen Memori = Informasi tersebut berisi nilai (basis) dan limit register, page table, atau segment table tergantung pada sistem memory yang digunakan oleh SO.
  6. Informasi Accounting = Informasi tersebut berisi jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah job atau proses, dll
  7. Informasi Status I/O = Informasi tersebut berisi deretan I/O device (seperti tape driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dll.

Kesimpulan Process Control Block

Jadi dapat saya simpulkan jika tugas dari Process Control Block adalah memberikan informasi kepada Sistem Operasi mengenai hal hal yang di Butuhkan oleh sistem operasi serta informasi yang nantinya di butuhkan oleh Sistem Operasi.

4. Distributed Processing

Image result for distributed processing adalah

Komputasi terdistribusi adalah suatu sistem pada jaringan komputer yang dihubungkan dengan cara tertentu sehingga tampak seperti satu komputer bagi pemakai individual. Komputasi terdistribusi menggunakan sumber data komputer yang ada dan melibatkan banyak komputer yang terdistribusi dan terpisah secara geografis yang bertujuan untuk memecahkan berbagai macam persoalan komputasi dalam skala besar.Komputasi terdistribusi mentransformasikan banyak komputer dalam satu jaringan yang dapat digunakan secara efektif seperti halnya sebuah komputer saja, sehingga memaksimalkan penggunaan sumber daya komputasi. Hal ini berarti bahwa setiap klien dalam jaringan dapat mengakses setiap file data yang terdapat dalam jaringan, menjalankan program komputer yang ada dalam jaringan (baik yang ada dalam server maupun yang ada dalam klien).

Image result for distributed processing fb

Sistem pengolahan data terdistribusi dapat diakses oleh pengguna dengan menggunakan dua aplikasi yaitu berupa aplikasi lokal dan aplikasi global, sehingga distributed data processing system memiliki karakteristik yaitu :

  • Kumpulan dari data logik yang digunakan bersama-sama.
  • Data di bagi menjadi beberapa fragment.
  • Fragment mungkin mempunyai copy ( replika ).
  • Fragment / replika nya di alokasikan pada yang digunakan.
  • Setiap site berhubungan dengan jaringan komunikasi.
  • Data pada masing-masing site dibawah pengawasan DBMS.
  • DBMS pada masing-masing site dapat mengatasi aplikasi lokal, secara otonomi.
  • Masing-masing DBMS berpastisipasi paling tidak satu global aplikasi

Pengaruh Distributed Data Processing System Pada Organisasi :

  1. Meningkatkan kemampuan komputasi
  2. Meningkatkan kemampuan Data Storage
  3. Memungkinkan kerja lebih efisien
  4. Meningkatkan End-user, manajemen punya otoritas lebih

Contoh Sistem Pengolahan Data terdistribusi :

a). Internet

  •   Jaringan komputer dan aplikasi yang heterogen.
  •   Mengimplementasikan protokol internet.

b). Intranet

  •  Jaringan yang teradminitrasi secara lokal.
  •  Terhubung ke internet melalui feriwall.
  •  Menyediakan layanan internet dan eksternal.

c). Mobile Computing ( Sistem Komunikasi telepon seluler)

  •  Menggunakan frekuensi radio sebagai media transmisi
  •  Perangkat dapat bergerak kemanapun asal masih terjangkau dengan frekuensinya
  •  Dapat menghandle/dihububngkan dengan perangkat lain

d). Sistem Telepon

  • ISDN atau yang biasa disebut jaringan telpon tetap (dengan kabel).
  • PSTN jaringan telepon/telekomunikasi yang semuanya digital.

e). Network File System (NTFS)

  •  WWW

f). Arsitektur client server yang diterpakan dalam infrastruktur internet

Contoh Impementasi Distributed Data Processing System

Aplikasi facebook.com yang biasa anda gunakan untuk bersosialisai dengan saudara, kawan dan orang di seluruh dunia melalui internet.

Kesimpulan Distributed Processing

Jadi distributed processing adalah sebuah sistem pada jaringan Komputer yang terhubung satu sama lain. Distributed Processing menggunakan sumber data komputer yang ada dan melibatkan banyak komputer yang terdistribusi sehingga terlihat hanya seperti memakai 1 komputer saja.

5. Handheld

Handheld adalah perangkat portabel apa pun yang dapat dibawa dan dipegang di telapak tangan seseorang. Handheld dapat berupa komputer atau perangkat elektronik yang cukup ringkas dan portabel untuk dipegang dan digunakan dalam satu atau kedua tangan. Handheld mungkin berisi komunikasi seluler, tetapi kategori ini juga dapat menyertakan perangkat komputasi lainnya.

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.

Contoh system handheld adalah Android, Symbian.

Kesimpulan Handheld

Jadi Handheld System adalah sebuah system operasi yang bisa gunakan hanya dengan gengaman tangan.

6. Thread

Image result for thread in operating system

Thread adalah potongan kode yg independent (dari sebuah proses) yang di ekseskusi oleh CPU yang penjadwalanya di lakukan oleh Operating sytem . Thread dibuat oleh programmer, bagian mana saja yg akan dijadikan thread ditentukan oleh programmer. Setiap thread mendapat jatah waktu dikerjakan CPU yg disebut quantum.

Proses itu ada 2 macem :

1. Proses berat (heavyweight) disebut proses tradisional

2. Proses ringan (lightweight) disebut THREAD

Thread adalah unit dasar dari utilitas CPU. Di dalamnya terdapat ID thread, program counter, register, dan stack. Dan saling berbagi dengan thread lain dalam proses yang sama.

Keuntungan memakai Thread:

  • Tanggap: Multi-threading mengizinkan program untuk terus berjalan walaupun pada bagian program tersebut diblock atau sedang dalam keadaan menjalankan operasi yang lama/panjang. Contohnya multithread web browser dapat mengizinkan pengguna berinteraksi dengan suatu thread ketika suatu gambar sedang diload oleh thread yang lain.
  • Pembagian sumber daya: Secara default, thread membagi memori dan sumber daya dari proses. Keuntungan dari pembagian kode adalah aplikasi mempunyai perbedaan aktifitas thread dengan alokasi.
  • Ekonomis: Mengalokasikan memori dan sumber daya untuk membuat proses itu sangat mahal. Alternatifnya thread membagi sumber daya dari proses, Jadi lebih ekonomis.
  • Pemberdayaan arsitektur multiprosesor: Keuntungann dari multithreading dapat ditingkatkan dengan arsitektur multiprosesor, dimana setiap thread dapat berjalan secara parallel 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.

Selain itu lo juga musti tau:

1. User thread adalah pengelolaan thread yang dilakukan oleh user level (pengguna)

2. Kernel thread adalah pengelolaan thread yang dilakukan oleh kernel komputer sehingga user tidak dapat menginterupsi.

Macem-macem Thread :

  • Single threading : proses hanya mengeksekusi satu thread dalam satu waktu.
  • Multi-threading : proses dapat mengeksekusi sejumlah thread dalam satu waktu.Model MultiTrading:One to one: Memetakan setiap user thread ke dalam 1 kernel threa.

Kelebihan:

Model one-to-one lebih sinkron daripada model many-to-one karena mengizinkan thread lain untuk berjalan ketika suatu thread membuat pemblokingan terhadap sistem pemanggilan, hal ini juga membuat multiple thread bisa berjalan secara parallel dalam multiprosesor

Kekurangan: 

Dalam pembuatan user thread diperlukan pembuatan korespondensi thread pengguna. Karena dalam proses pembuatan kernel thread dapat mempengaruhi kinerja dari aplikasi, maka kebanyakan dari implementasi model ini membatasi jumlah thread yang didukung oleh sistem.Model ini ada pada Windows NT dan OS/2.

One to Many : Memetakan beberapa tingkatan thread user hanya ke satu buah kernel thread.

Kelebihan: Managemen proses thread dilakukan oleh (di ruang) pengguna, sehingga menjadi lebih efisien.

Kekurangan: multi thread tidak dapat berjalan atau bekerja secara paralel di dalam multiprosesor karena hanya satu thread saja yang bisa mengakses kernel dalam suatu waktu.

Model ini ada pada Solaris Green dan GNU Portable.

Many to Many : Membolehkan setiap tingkatan user thread dipetakan ke banyak kernel thread.

Kelebihan: 

  • Developer dapat membuat user thread sebanyak yang diperlukan dan kernel thread yang bersangkutan dapat berjalan secara parallel pada multiprocessor.
  • Dan ketika suatu thread menjalankan blocking system call maka kernel dapat menjadwalkan thread lain untuk melakukan eksekusi

Kekurangan:

  • Developer dapat membuat user thread sebanyak mungkin, tetapi konkurensi tidak dapat diperoleh karena hanya satu thread yang dapat dijadwalkan oleh kernel pada suatu waktu.Model ini ada pada Solaris, IRIX, dan Digital UNIX.

Kesimpulan Thread

Jadi Dapat saya simulkan jika thread adalah sebuah potongan kode yg independent (dari sebuah proses) yang di ekseskusi oleh CPU yang penjadwalanya di lakukan oleh Operating sytem.

Sumber Materi :

http://rahmawatydirah.blogspot.com/2015/03/pengertian-batch-system-dan-2-bentuk.html

https://en.wikipedia.org/wiki/Resident_monitor

https://slideplayer.info/slide/3625745/

https://blog.ub.ac.id/prayogadwiyunata/2010/12/12/time-sharing-system/

http://fauzania5.blogspot.com/2017/11/sistem-waktu-nyata-real-time-system.html

http://muhammadmiftahpratama.blogspot.com/p/criticalsection-adalah-segmen-kode-d.html

https://cahpecel89.wordpress.com/2010/03/27/elemen-elemen-dari-process-control-block-pcb/

https://maungampus.blogspot.com/2013/09/pengertian-thread-dan-macam-macamnya.html

Rancang situs seperti ini dengan WordPress.com
Mulai