Halaman

Kamis, 25 Oktober 2018

BATCH SYSTEM


      A.   Batch system 
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.
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.

BENTUK DARI BATCH SYSTEM
ada 2 cara dalam 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. 
 A.Sistem Operasi Komputer PC 
Berikut Jenis-Jenis Sistem Operasi pada Komputer Pc     
1.      DOS     
2.      Unix    
3.      Linux     
4.      Windows     
5.      Mac OS     
6.      Ubuntu      

B.  Sistem Operasi Hadphone, dllSedagkan untuk Jenis Sistem Operasi pada Handphone, dll adalah Sbb:     
1.      Symbian     
2.      Windows Mobile     
3.      Mobile Linux     
4.      OS BlackBerry     
5.      Palm    
 6.     Java     
7.      Android 



CRITICAL SECTION


A.   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.
Seperti yang telah kita ketahui bahwa proses dapat bekerja sendiri (independent process) dan juga dapat bekerja bersama proses-proses yang lain (cooperating process). Pada umumnya ketika proses saling bekerjasama (cooperating process) maka proses-proses tersebut akan saling berbagi data. Pada saat proses-proses berbagi data, ada kemungkinan bahwa data yang dibagi secara bersama itu akan menjadi tidak konsisten dikarenakanadanya kemungkinan proses-proses tersebut melakukan akses secara bersamaan yang menyebabkan data tersebut berubah, hal ini dikenal dengan istilah Race Condition.
Oleh karena itu, dibutuhkan solusi yang tepat untuk menghindari munculnya Race Condition. Solusi tersebut harus memenuhi ketiga syarat berikut:                           
1.    Mutual Exclusion
2.    Progress
3.    Bounded Waiting

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.

Berikut ini algoritma-algoritma yang digunakan untuk mengatasi masalah critical section:
1.Algoritma I
Algoritma I memberikan giliran kepada setiap proses untuk memproses critical section-nya secara bergantian.Asumsi yang digunakan disini setiap proses secara bergantian memasuki critical section-nya.Statement while(turn != 4) akan memeriksa apakah pada saat itu proses 4 mendapatkan turn, jika tidak maka proses 4 akan busy waiting(lihat kembali bahwa printah while diakhiri dengan “;”). Jika ternyata pada saat itu merupakan giliran proses 4 maka proses 4 akan mengerjakan critical section-nya. Sampai sini jelas terlihat bahwa mutex terpenuhi! Proses yang tidak mendapatkan turn tidak akan dapat mengerjakan critical section-nya dan turn hanya akan diberikan pada satu proses saja.Setelah proses 4 selesai mengerjakan critical section maka turn diberikan pada proses lainnya (turn= j, j merupakan proses selanjutnya yang dapat mengerjakan critical section). Setelah turn-nya diberikan kepada proses lain, proses 4 akan mengerjakan remainder section.   Disini jelas terlihat bahwa syarat bounded waiting jelas terpenuhi. Ingat asumsi yang digunakan dalam algoritma ini adalah setiap proses secar bergantian memasuki critical section-nya, jika pada saat itu proses 4 ternyata belum mau mengerjakan critical section-nya maka proses ke-j tidak akan mendapatkan kesempatan untuk mengerjakan critical section walau saat itu sebenarnya proses ke-j akan memasuki critical section. Artinya syarat progress tidak terpenuhi pada algoritma ini.

2. Algoritma II
Masalah yang terjadi pada algoritma 1 ialah ketika di entry section terdapat sebuah proses yang ingin masuk ke critical section, sementara di critical section sendiri tidak ada proses yang sedang berjalan, tetapi proses yang ada di entry section tadi tidak bisa masuk ke critical section. Hal ini terjadi karena giliran untuk memasuki critical section adalah giliran proses yg lain sementara proses tersebut masih berada di remainder section. Untuk mengatasi masalah ini maka dapat diatasi dengan merubah variabel trun pada algoritma pertama dengan arrayBoolean flag [2];Elemen array diinisialisasi false. Jika flag[i] true, nilai tersebut menandakan bahwa Pi ready untuk memasuki critical section. Pada algoritma ini. hal pertama yang dilakukan ialah mengeset proses Pi dengan nilai True, ini menandakan bahwa Pi ready untuk masuk ke critical section. kemudian, Pi memeriksa apakah Pjtidak ready untuk memasukui critical section. Jika Pj ready, maka Pi menunggu sampai Pj keluar dari critical section (flag[j] bernilai false). Ketika keluar dari critcal section, Pi harus merubah nilai flag[i] menjadi false agar prores lain dapat memasuki critical section.Contoh:Pada algoritma ini, kriteria Mutual-exclusion terpenuhi, tetapi  tidak memenuhi kriteriaprogress. Ilustrasinya seperti di bawah ini.T0 : Po set flag [0] = trueT1 : Po set flag [1] = trueDari ilustrasi diatas terlihat bahwa algoritma ini memungkinkan terjadinya nilai true untuk kedua proses, akibatnya tidak ada proses yang akan berhasil memasuki critical section.Jadi untuk algoritma 2 masih terdapat kelemahan, seperti yang terjadi di atas.

3.       Algoritma  III
Idenya berasal dari algoritma 1 dan 2. Algoritma 3 mengatasi kelemahan pada algoritma 1 dan 2 sehingga progres yang diperlukan untuk mengatasi critical section terpenuhi.Algoritma III ditemukan oleh G.L. Petterson pada tahun 1981 dan dikenal juga sebagai Algoritma Petterson. Petterson menemukan cara yang sederhana untuk mengatur proses agar memenuhi mutual exclusion. Algoritma ini adalah solusi untuk memecahkan masalah critical section pada dua proses. Ide dari algoritma ini adalah menggabungkan variabel yang di- sharing pada Algoritma I dan Algoritma II, yaitu variabel turn dan variabel flag. Sama seperti pada Algoritma I dan II, variabel turn menunjukkan giliran proses mana yang diperbolehkan memasuki critical section dan variabel flag menunjukkan apakah suatu proses membutuhkan akses ke critical section atau tidak.Awalnya flag untuk kedua proses diinisialisai bernilai false, yang artinya kedua proses tersebut tidak membutuhkan akses ke critical section. Kemudian jika suatu proses ingin memasuki critical section, ia akan mengubah flag-nya menjadi true (memberikan tanda bahwa ia butuh critical section) lalu proses tersebut memberikan turn kepada lawannya. Jika lawannya tidak menginginkan critical section (flag-nya false), maka proses tersebut dapat menggunakan critical section, dan setelah selesai menggunakan critical section ia akan mengubah flag-nya menjadi false. Tetapi apabila proses lawannya juga menginginkan critical section maka proses lawan-lah yang dapat memasuki critical section, dan proses tersebut harus menunggu sampai proses lawan menyelesaikan critical section dan mengubah flag-nya menjadi false.Misalkan ketika P0 membutuhkan critical section, maka P0 akan mengubah flag[0] = true, lalu P0 mengubah turn= 1. Jika P1 mempunyai flag[1] = false, (berapapun nilai turn) maka P0 yang dapat mengakses critical section. Namun apabila P1 juga membutuhkan critical section, karena flag[1] = true dan turn= 1, maka P1 yang dapat memasuki critical section dan P0 harus menunggu sampai P1 menyelesaikan critical section dan mengubah flag[1] = false, setelah itu barulah P0 dapat mengakses critical section.Bagaimana bila kedua proses membutuhkan critical section secara bersamaan? Proses mana yang dapat mengakses critical section terlebih dahulu? Apabila kedua proses (P0 dan P1) datang bersamaan, kedua proses akan menset masing-masing flag menjadi true (flag[0] = true dan flag[1] = true), dalam kondisi ini P0 dapat mengubah turn = 1 dan P1 juga dapat mengubah turn = 0. Proses yang dapat mengakses critical section terlebih dahulu adalah proses yang terlebih dahulu mengubah turn menjadi turn lawannya. Misalkan P0 terlebih dahulu mengubah turn= 1, lalu P1 akan mengubah turn= 0, karena turn yang terakhir adalah 0 maka P0-lah yang dapat mengakses critical section terlebih dahulu dan P1 harus menunggu.Algoritma III memenuhi ketiga syarat yang dibutuhkan. Syarat progress dan bounded waiting yang tidak dipenuhi pada Algoritma I dan II dapat dipenuhi oleh algoritma ini karena ketika ada proses yang ingin mengakses critical section dan tidak ada yang menggunakan critical section maka dapat dipastikan ada proses yang bisa menggunakan critical section, dan proses tidak perlu menunggu selamanya untuk dapat masuk ke critical section.

4.Algoritma Tukang Roti
Algoritma ini didasarkan pada algoritma penjadwalan yang biasanya digunakan oleh tukang roti, dimana urutan pelayanan ditentukan dalam situasi yang sangat sibuk. Algoritma ini dapat digunakan untuk memecahkan masalah critical section untuk n buah proses, yang diilustrasikan dengan n buah pelanggan. Ketika memasuki toko, setiap pelanggan menerimasebuah nomor. Sayangnya, algoritma tukang roti ini tidak dapat menjamin bahwa dua proses (dua pelanggan) tidak akan menerima nomor yang sama. Dalam kasus di mana dua proses menerima nomor yang sama, maka proses dengan nomor ID terkecil yang akan dilayani dahulu. Jadi, jika Pi dan Pj menerima nomor yang sama dan i < j, maka Pi dilayani dahulu. Karena setiap nama proses adalah unik dan berurut, maka algoritma ini dapat digunakan untuk memecahkan masalah critical section untuk n buah proses.Struktur data umum algoritma ini adalahboolean choosing[n];int number [n];Awalnya, struktur data ini diinisialisasi masing-masing ke false dan 0, dan menggunakan notasi berikut:
– (a, b) < (c, d) jika a < c atau jika a= c dan b < d
– max(a0, …, an-1) adalah sebuah bilangan k, sedemikian sehingga k >= ai untuk setiap i= 0, …, n – 1
Dengan demikian, diketahui bahwa  Algoritma I dan II terbukti tidak dapat memecahkan masalah critical section untuk dua proses karena tidak memenuhi syarat progress dan bounded waiting. Algoritma yang dapat menyelesaikan masalah critical section pada dua proses adalah Algoritma III. Sedangkan untuk masalah critical section pada n-buah proses dapat diselesaikan dengan menggunakan Algoritma Tukang Roti.Penjadwalan CPUPenjadwalan CPU adalah suatu proses pengaturan atau penjadwalan proses-proses yang ada di dalam komputer. Dimana proses-proses tersebut berjalan dalam pola yang disebut Siklus Burst.Penjadwalan sangat penting dalam menentukan performance sebuah komputer karena mengatur alokasi resource dari CPU untuk menjalankan proses-proses di dalam komputer. Penjadwalan CPU merupakan suatu konsep dasar dari multiprograming, karena dengan adanya penjadwalan dari CPU itu sendiri maka proses-proses tersebut akan mendapatkan alokasi resource dari CPU.
    1.    Penjadwalan CPU mungkin akan dijalankan ketika proses dalam keadaan:
    2.    Berubah dari running ke waiting state.
    3.    Berubah dari running ke ready state.  
    4.    Berubah dari waiting ke ready state.
    5.    Dihentikan.

Penjadwalan nomor 1 dan 4 bersifat Non Preemptive sedangkan lainnya Preemptive.Penjadwalan yang biasa digunakan sistem operasi dewasa ini biasanya bersifat Preemptive. Bahkan beberapa penjadwalan sistem operasi, contohnya Linux 2.6, mempunyai kemampuan Preemptive terhadap system call-nya ( preemptible kernel).Penjadwalan CPU secara garis besar dibagi menjadi 2, yaitu Penjadwalan Preemptive dan Penjadwalan Non Preemptive.

1.Penjadwalan Pre-emptive
Penjadwalan Preemptive mempunyai arti kemampuan sistem operasi untuk memberhentikan sementara proses yang sedang berjalan untuk memberi ruang kepada proses yang prioritasnya lebih tinggi. Penjadwalan ini bisa saja termasuk penjadwalan proses atau I/O.Dengan kata lain, penjadwalan Preemptive melibatkan mekanisme interupsi yang menyela proses yang sedang berjalan dan memaksa sistem untuk menentukan proses mana yang akan dieksekusi selanjutnya.Penjadwalan Preemptive memungkinkan sistem untuk lebih bisa menjamin bahwa setiap proses mendapat sebuah slice waktu operasi. Dan juga membuat sistem lebih cepat merespon terhadap event dari luar (contohnya seperti ada data yang masuk) yang membutuhkan reaksi cepat dari satu atau beberapa proses.Lama waktu suatu proses diizinkan untuk dieksekusi dalam penjadwalan Preemptive disebut time slice/quantum.Penjadwalan berjalan setiap satu satuan time slice untuk memilih proses mana yang akan berjalan selanjutnya. Bila time slice terlalu pendek maka penjadwal akan memakan terlalu banyak waktu proses, tetapi bila time slice terlau lama maka memungkinkan proses untuk tidak dapat merespon terhadap event dari luar secepat yang diharapkan.Dalam waktu-waktu tertentu, proses dapat dikelompokkan ke dalam dua kategori: proses yang memiliki Burst I/O yang sangat lama disebut I/O Bound, dan proses yang memiliki Burst CPU yang sangat lama disebut CPU Bound. Terkadang juga suatu sistem mengalami kondisi yang disebut busywait, yaitu saat dimana sistem menunggu request input(seperti disk, keyboard, atau jaringan). Saat busywait tersebut, proses tidak melakukan sesuatu yang produktif, tetapi tetap memakan resource dari CPU. Dengan penjadwalan Preemptive, hal tersebut dapat dihindari.Keuntungan penggunaan penjadwalan pre-emptive:
a.Sistem lebih responsif daripada sistem yang memakai penjadwalan Non Preemptive.
b.Sistem terhindar dari keadaan busywait.
Contoh sistem operasi yang menerapkan penjadwalan Preemptive:Windows 95, Windows XP, Linux, Unix, AmigaOS, MacOS X, dan Windows NT .

2. Penjadwalan Non Pre-emptive
Penjadwalan Non Preemptive ialah salah satu jenis penjadwalan dimana sistem operasi tidak pernah melakukan context switch dari proses yang sedang berjalan ke proses yang lain. Dengan kata lain, proses yang sedang berjalan tidak bisa di- interupt.Penjadwalan Non Preemptive terjadi ketika proses hanya:1. Berjalan dari running state sampai waiting state.2. Dihentikan.Ini berarti CPU menjaga proses sampai proses itu pindah ke waiting state ataupun dihentikan (proses tidak diganggu). Metode ini digunakan oleh Microsoft Windows 3.1 dan Macintosh. Ini adalah metode yang dapat digunakan untuk platforms hardware tertentu, karena tidak memerlukan perangkat keras khusus (misalnya timer yang digunakan untuk meng interupt pada metode penjadwalan Preemptive).
DispatcherKomponen yang lain yang terlibat dalam penjadwalan CPU adalah dispatcher.Dispatcher adalah modul yang memberikan kontrol CPU kepada proses yang sedang terjadwal. Fungsinya:

Context switching
Mengganti state dari suatu proses dan mengembalikannya untuk menghindari monopoli CPU time. Context switching dilakukan untuk menangani suatu interrupt(misalnya menunggu waktu I/O). Untuk menyimpan state dari proses-proses yang terjadwal sebuah Process Control Block harus dibuat untuk mengingat proses-proses yang sedang diatur scheduler. Selain state suatu proses, PCB juga menyimpan process ID, program counter(posisi saat ini pada program), prioritas proses dan data-data tambahan lainnya.
     1.    Switching to user mode dari kernel mode.
     2.    Lompat dari suatu bagian di progam user untuk mengulang program.
Dispatcher seharusnya dapat dilakukan secepat mungkin. Dispatch Latency adalah waktu yang diperlukan dispatcher untuk menghentikan suatu proses dan memulai proses yang lain.



PROCESS CONTROL BLOCK

      A.   Process Control Block
Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori.
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. 
Elemen-elemen dari PCB itu sendiri adalah :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


Sumber : https://uniquesciences.wordpress.com/2012/10/04/process-control-block-pcb/

DISTRIBUTED DATA PROCESSING


     A.   Distributed Data Processing
Distributed Data Processing System yang dalam bahasa indonesianya Sistem pengolahan data terdistribusi. Merupakan Sekumpulan komputer yang saling berkoneksi untuk memenuhi kebutuhan pengolahan informasi dari satu entity perusahaan atau organisasi modern. Didukung oleh komputer dan komunikasi, sistem pengolahan data terdistribusi merupakan media pelayanan data.
Sistem pengolahan data terdistribusi dalam arti lain yaitu meletakan sumber daya komputer pada tempat dimana user berada, dimana sumber daya tersebut secara geografis terpisah dan saling interkoneksi secara on-line atau secara langsung.

Sumber Daya Pengolahan Data Dalam Sistem Terdistribusi
Apa yang dimaksud sumber daya pengolahan data dalam sistem terdistribusi? Adapun yang dimaksud dengan Sumber daya yang didistribusikan yaitu berupa sumber daya Platform (Hardware dan Software System), Aplikasi atau Proses dan Data atau Database. Terminologi sistem pengolahan datanya dapat berbentuk distribusi horisontal (setiap node komputer atau jaringan mempunyai kedudukan yang sama dengan node lainnya).Sedangkan distribusi vertical dimana ada penjenjangan atau hirarki antar node di setiap lokasi, misalnya kantor pusat, kantor wilayah, kantor cabang dan unit lebih kecil lainnya yang terdistribusi hirachical secara komputasi.

Diperlukan jaringan komunikasi komputer pada sistem pengolahan data terdistribusi untuk dapat saling berhubungan antar site. Jaringan komputer adalah interkoneksi antara sejumlah komputer autonomousyang dapat saling bertukar informasi antara komputer yang saling terhubung. Bentuk komputer yang saling terhubung biasanya disebut dengan Node, Host atau Site. Bentuk hubungan antar komputer tidak hanya melalui kawat tembaga saja, tetapi dapat melalui serat optic, gelombang mikro dan satelit komunikasi
Sistem pengolahan data terdidtribusi dibangun pada top of network, sedemikian rupa sehingga jaringan tidak nampak pada user. User tidak perlu tahu kerumitan pengelolaan jaringan, semuanya sudah dilakukan secara otomatik oleh sistem.

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.
  Ø  Alasan Sistem Pengolahan Data Terdistribusi Digunakan Dalam Berbagai Perusahaan, Organisasi Dan Perkantoran
Perkembangan organisasi yang pada umumnya mempunyai banyak cabang yang tersebar dalam berbagai lokasi. Dan Menginginkan untuk mengintregrasikan antar cabang-cabang tersebut sehingga pertukaran data dan informasi dapat dilakukan dengan cepat dan koordinasi antar cabang dapat ditingkatkan lebih baik lagi.

Distributed data processing system juga sangat berperan, ini dikarenakan terdapat kebutuhan dan tuntutan baik dari pihak perusahaan maupun dari sisi customer agar user dan customer dapat berinteraksi dengan mudah. 
  Ø  Pengaruh Distributed Data Processing System Pada Organisasi 
  Ø  Meningkatkan kemampuan komputasi 
  Ø  Meningkatkan kemampuan Data Storage 
  Ø  Memungkinkan kerja lebih efisien 
  Ø  Meningkatkan End-user, manajemen punya otoritas lebih 
  Ø  Masalah pada End-User

Banyak End-user merasa tidak puas terhadap pelayanan dari organisasi Sentralisasi Data Prosesing : 
  Ø  Harus membuat/mengisi aplikasi  form. 
  Ø  Menunggu proses yang lama. 
  Ø  Tidak dapat mengakses ke komputer setiap saat dimana ia membutuhkan. 
  Ø  Persyaratan & Tujuan pendukung System Pengolahan Data Terdistribusi 
  Ø  Penggunaan komputer Mini & Mikro(dimana interkoneksi micro computer, mini computer dan large computer lebih efektif biayanya). 
  Ø  Pemakaian teknik Database. (dapat sharing data oleh banyak user). 
  Ø  Corporation wide work. 
  Ø  Struktur jaringan yang fleksibel. 
  Ø  Penggunaan standard line control & network architecture. 

Contoh Sistem Pengolahan Data terdistribusi 
  Ø  Internet 
  Ø  Jaringan komputer dan aplikasi yang heterogen. 
  Ø  Mengimplementasikan protokol internet.  
  Ø  Intranet 
  Ø  Jaringan yang teradminitrasi secara lokal. 
  Ø  Terhubung ke internet melalui firewall. 
  Ø  Menyediakan layanan internet dan eksternal. 
  Ø  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 
  Ø  Sistem Telepon 
  Ø  ISDN atau yang biasa disebut jaringan telpon tetap (dengan kabel). 
  Ø  PSTN jaringan telepon/telekomunikasi yang semuanya digital. 
  Ø  Network File System (NTFS) 
  Ø  WWW 
  Ø  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. Bila kita lihat aplikasi tersebut, database tidak didistribusikan, tetapi proses sistem dan penggunaan fungsi-fungsi atau feature pada sistem terpisah-pisah prosesnya tidak satu proses saja dalam satu waktu. Pada waktu tertentu ada orang yang sedang isi status, dan mungkin di waktu yang sama ada sedang mencari teman, ada yang mengupload foto dan sebagainya. Tampak disini beberapa proses pada sistem terdistribusi pada setiap client yang berbeda.



Pada penggunaan aplikasi pembayaran / transaksi online pada suatu perusahaan, misalnya saja tiket pesawat terbang. Aplikasi tersebut juga contoh dari aplikasi pengolahan data terdistribusi, dimana data pembayaran ada tersimpan di database bank, sementara data tiketnya tersimpan di database server maskapai yang menyediakan aplikasi tiket online tersebut. Jadi dapat dikatakan bila aplikasi yang digunakan menggunakan database yang terpisah tidak satu database saja, maka dapat dikatakan itu adalah aplikasi pengolahan data terdistribusi atau dikenal juga dengan distributed data processing system.



Sumber : https://fskita.com/2018/07/13/distributed-data-processing-system-berserta-contoh-implementasi/

HANDHELD


     A.   Handheld Computer

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.