buatlah contoh sistem komunikasi dalam batch processing system

CONNECTED Jurnal Ilmu Komunikasi, Vol 2 (1), Juni, 2021, 1-10 3 game. Fase lebih lanjut adalah mass media yang terdiri dari radio, film dan televisi. Contohsistem komunikasi dalam batch processing system. Sebagai contoh, Bapak Sentot memiliki sebuah toko mebel. Sepanjang hari, Bapak Sentot merekam penjualan dalam faktur secara manual (dalam artian pakai kertas dan balpoin). Setiap sore, Bapak Sentot menyerahkan setumpuk nota kepada istrinya. Keesokan harinya, ibu Sentot akan menginputkan transaksi penjualan ke dalam komputer. Demikian setiap hari. Salahsatu cara untuk meningkatkan produktivitas pegawai adalah melalui system pemberian imbalan yang menarik. Mengingat peranannya yang penting dalam meningkatkan produktivitas pegawai, maka Sistem Batch Processing Pada PT.PZ.Cussons Indonesia. 1.2 RumusanMasalah Bertitk tolak dari latar belakang masalah tersebut, rumusan masalah dalam Contohdari penggunaan batch processing adalah 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. BatchSystem merupakan teknologi komputer dari generasi ke-2. Jika suatu tugas sedang dikerjakan pada 1 rangkaian, akan di eksekusi secara berurutan. Contoh dari penggunaan batch processing adalah e-mail dan transaksi batch processing. Dalam suatu sistem batch processing, transaksi secara individual dientri melalui peralatan terminal Vay Tiền Trả Góp Tháng Tư Nhân. Size KiBEkstensi File jpgPanjang 432 pxTinggi 768 pxDetail Buatlah Contoh Sistem Komunikasi Dalam Batch Processing System Koleksi No. 21. Silahkan zoom untuk melihat ukuran gambar yang lebih besar dengan mengeklik ke arah gambar. File gambar ini memiliki lisensi tergantung dari penguploadnya berikanlah atribut kepada si pengupload gambar atau ke website ini untuk Buatlah Contoh Sistem Komunikasi Dalam Batch Processing System Koleksi No. 21 Download Gambar Gambar LainnyaAnimasi Upin Dan IpinSurat Al Isra Ayat 32 Beserta TajwidnyaGambar Bunga Kantil KuningTired KartunBackground Tahun Baru 2018Gambar Hd AnimasiMoney Pics FreeTemplate Ppt Menarik FreeTemplate Label UndanganCrown Sticker PngAnak Axl RoseRange Rover Logo VectorBuku Mimpi KomporKucing PngWallpaper Hp Ala KoreaPermainan Restoran Dan Hotel 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. 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. 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 Cara Kerja Batch Processing System Cara Kerja Batch Processing adalah menghimpun data terlebih dahulu, dan diatur pengelompokkan datanya dalam kelompok-kelompok yang disebut batch. Tiap batch ditandai dengan identitas tertentu, serta informasi mengenai data-data yang terdapat dalam batch tersebut. Setelah data-data tersebut terkumpul dalam jumlah tertentu, data-data tersebut akan langsung diproses. Bactch processing ini merupakan metode pengolahan data yang banyak digunakan. Intinya adalah pada batch processing, data yang dimasukkan akan dihimpun dahulu menjadi satu kelompok atau batch baru kemudian akan dimasukkan ke database untuk mengupdate master file. Pada batch processing, data yang dikelompokkan tersebut akan dicek ulang dan disortir sebelum dikirim ke database sehingga jika terdapat data yang tidak valid, data akan dimasukkan ke dalam error report. Proses yang memakai batch processing biasanya ditujukan untuk aplikasi yang memiliki jumlah transaksi yang besar, sehingga perlu dilakukan pemeriksaan pendahuluan Batch processing memiliki tujuan untuk memperbarui tiga file master, persediaan, piutang, dan analisis penjualan. Perusahaan biasanya memperbarui file batch mereka secara harian, yang disebut siklus harian. Kelemahan utama pengolahan batch adalah kenyataan bahwa file baru menjadi mutakhir setelah dilakukan siklus harian. Ini berarti manajemen tidak selalu memiliki informasi paling mutakhir yang menggambarkan sistem fisik. Pengertian Critical Section critical section adalah dengan mendesain sebuah protokol di mana proses-proses dapat menggunakannya secara bersama-sama. Setiap proses harus meminta izin’ untuk memasuki critical section-nya. Bagian dari kode yang mengimplementasikan izin ini disebut entry section. Akhir dari critical section itu disebut exit section. Bagian kode selanjutnya disebut remainder section. Ada dua jenis solusi untuk memecahkan masalah critical section, yaitu. Solusi Perangkat Lunak. Solusi ini menggunakan algoritma-algoritma untuk mengatasi masalah critical section. 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. Struktur umum dari proses Pi yang memiliki segmen critical section adalah Solusi dari masalah critical section harus memenuhi tiga syarat berikut Jika suatu proses sedang menjalankan critical section-nya, maka proses-proses lain tidak dapat menjalankan critical section mereka. Dengan kata lain, tidak ada dua proses yang berada dicritical section pada saat yang bersamaan. 2. Terjadi kemajuan progress. Jika tidak ada proses yang sedang menjalankan critical section-nya dan ada proses-proses lain yang ingin masuk ke critical section, maka hanya proses-proses yang yang sedang berada dalamentry section saja yang dapat berkompetisi untuk mengerjakan critical section. 3. Ada batas waktu tunggu bounded waiting. Jika seandainya ada proses yang sedang menjalankan critical section, maka proses lain memiliki waktu tunggu yang ada batasnya untuk menjalankan critical section -nya, sehingga dapat dipastikan bahwa proses tersebut dapat mengakses critical section-nya tidak mengalamistarvation proses seolah-olah berhenti, menunggu request akses ke critical sectiondiperbolehkan. Ada dua jenis solusi masalah critical section, yaitu 1. Solusi perangkat lunak. Dengan menggunakan algoritma-alogoritma yang nilai kebenarannya tidak tergantung pada asumsi-asumsi lain, selain bahwa setiap proses berjalan pada kecepatan yang bukan nol. 2. Solusi perangkat keras. Tergantung pada beberapa instruksi mesin tertentu, misalnya dengan me-non-aktifkan interupsi atau dengan mengunci suatu variabel tertentu Selanjutnya akan dibahas sebuah algoritma sebagai solusi masalah dari critical section yang memenuhi tiga syarat seperti yang telah disebutkan di atas. Solusi ini tidak tergantung pada asumsi mengenai instruksi-instruksi perangkat keras atau jumlah prosesor yang dapat didukung oleh perangkat keras. Namun, kita mengasumsikan bahwa insruksi bahasa mesin yang dasar instruksi-instruksi primitif seperti load,store, dan test dieksekusi secara atomik. Artinya, jika dua instruksi tersebut dieksekusi secara konkuren, hasilnya ekuivalen dengan eksekusi instruksi tersebut secara sekuensial dalam urutan tertentu. Jadi, jika load dan store dieksekusi secara konkuren, load akan mendapatkan salah satu dari nilai yang lama atau nilai yang baru, tetapi tidak kombinasi dari keduanya. Pada algoritma 1, variabel yang digunakan bersama shared variabel adalah sebuah variabel integer turn, yang diinisialisasi awal nilai 0 atau 1 di proses yang kedua. Jika turn == i, maka proses Pi diizinkan untuk mengeksekusi critical sectionnya. Algoritma ini menjamin bahwa hanya ada satu proses pada suatu saat yang berada di critical section. Namun, algoritma ini tidak memenuhi syarat terjadinya kemajuan, karena algoritma ini membutuhkan pergiliran proses di dalam menjalankan critical section. Misalnya, jika turn == 0 dan P1 ingin masuk ke critical section, P1 tidak dapat masuk, meskipun P0 sedang berada di remainder section. Hal ini dikarenakan P0 belum masuk ke critical section. dan oleh karenanya P0 belum mengubah nilai turn menjadi turn == 1. /** * Program ini sesuai dengan solusi critical section dengan * menggunakan algoritma 1. * Disadur dari buku Silberschatz dkk, * Applied Operating Systems Concepts, 2000. */ public class Algoritma_1 extends MutualExclusion { public Algoritma_1 { turn = TURN_0; } public void masukCriticalSectionint t { while turn != t } public void keluarCriticalSectionint t { turn = 1 - t; } private volatile int turn; } Kelemahan algoritma 1 adalah bahwa algoritma 1 tidak menyediakan informasi yang cukup mengenai keadaan state setiap proses, ia hanya mengingat proses mana yang diperbolehkan untuk memasuki critical section. Untuk memecahkan masalah ini, variabel turn diganti dengan sebuah array, yaitu Setiap elemen dari array tersebut diinisialisasi awal ke false. Jika flag[i] bernilai true, maka ini mengindikasikan bahwa Pi siap untuk masuk ke critical section. Setiap proses memantau suatu flag yang mengindikasikan ia ingin memasuki critical section. Dia memeriksa flag proses lain dan tidak akan memasuki critical section bila ada proses lain yang sedang masuk. /** * Program ini sesuai dengan solusi critical section dengan * menggunakan algoritma 2. * Disadur dari buku Silberschatz dkk, * Applied Operating Systems Concepts, 2000. */ public class Algoritma_2 extends MutualExclusion { public Algoritma_2 { flag[0] = false; flag[1] = false; } public void masukCriticalSectionint t { int other; other = 1 - t; flag[t] = true; while flag[other] == true } public void keluarCriticalSectionint t { flag[t] = false; } private volatile boolean[] flag = new boolean[2]; } Di algoritma 2 ini, proses Pi pertama-tama mengubah nilaiset flag[i] menjadi true, menandakan bahwa Pi mau masuk ke critical section. Kemudian Pi mengecek apakah proses Pj juga mau masuk kecritical section. Jika proses Pj mau masuk, maka proses Pi akan menunggu sampai proses Pj mengubah statenya bahwa ia tidak mau lagi masuk ke critical section flag[j] == false. Pada saat itu, maka Pi akan masuk ke critical section. Ketika keluar dari critical section, Pi akan mengset nilai flag[i] menjadi false, memperbolehkan proses lain jika ada proses lain yang menunggu untuk masuk ke critical section. Solusi dengan algoritma 2 ini memenuhi syarat mutual exclusion, tetapi tidak memenuhi syarat terjadinya kemajuan. Untuk mengilustrasikan masalah ini, perhatikan urutan eksekusi berikut T0 P0 sets flag[0] true T1 P1 sets flag[1] true Sekarang P0 dan P1 akan loop selama-lamanya di dalam statement while masing-masing. Perhatikan bahwa mengubah urutan instuksi untuk mengset flag[i] dan mengecek nilai flag[j] tidak akan memecahkan masalah ini. Kita malah akan berada di situasi di mana ada kemungkinan untuk kedua proses berada dicritical section pada saat yang bersamaan, yang akan melanggar syarat mutual exclusion. Dengan menggabungkan algoritma 1 dan algoritma 2, kita akan memperoleh solusi yang tepat untuk masalahcritical section, di mana solusi itu akan memenuhi tiga syarat seperti yang telah disebutkan di atas. Setiap proses menggunakan dua variabel boolean flag[2]; int turn; Awalnya flag[0] = flag[1] = false, dan nilai turn tergantung dari proses yang boleh masuk 0 atau 1. Untuk masuk ke critical section, proses Pi pertama-tama mengset flag[i] menjadi true, dan kemudian mengset nilai turn menjadi j, sehingga memperbolehkan proses lain yang ingin masuk ke critical section untuk dapat masuk ke critical section. Jika kedua proses mencoba untuk masuk ke critical section pada saat yang bersamaan, turn akan diset ke nilai i dan j pada saat yang hampir bersamaan. Yang terakhir mengubah nilai turn akan mempersilakan proses yang lainnya untuk masuk ke critical section. /** * Program ini sesuai dengan solusi critical section dengan * menggunakan algoritma 3. * Disadur dari buku Silberschatz dkk, * Applied Operating Systems Concepts, 2000. */ public class Algoritma_3 extends MutualExclusion { public Algoritma_3 { flag[0] = false; flag[1] = false; turn = TURN_0; } public void masukCriticalSectionint t { int other; other = 1 - t; flag[t] = true; turn = other; while flag[other] == true && turn == other } public void keluarCriticalSectionint t { flag[t] = false; } private volatile int turn; private volatile boolean[] flag = new boolean[2]; } Solusi Untuk Proses Jamak Algoritma Tukang Roti Algoritma ini didasarkan pada algoritma penjadualan yang biasanya digunakan oleh tukang roti, di mana 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 menerima sebuah 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 = ai untuk setiap i= 0, ..., n – 1 do { choosing[i] = true; number[i] = maxnumber[0], number [1], ..., number [n+1]+1; choosing[i] = false; for j=0; j critical section number[i] = 0; remainder section } while 1; Pengertian PCBProcess 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 ini. CPU register Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan tersebut termasuk accumulator, index register, stack pointer, general-puposes register. Elemen-elemen dari PCB itu sendiri adalah Identifikasi Proses yaitu Identifier numerik yang meliputi Identifier proses Identifier proses yang menciptakan 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, 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 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 Pengertian Distributed Processing Distributed Processing adalah kemampuan menjalankan semua proses pengolahan data secara bersama antara komputer yang berfungsi sebagai pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah maka prosesor yang lain akan mengambil alih tugasnya. Dalam proses distribusi sudah mutlak diperlukan perpaduan yang mendalam antara teknologi komputer dan telekomunikasi, karena selain proses yang harus didistribusikan, semua host komputer wajib melayani terminal-terminalnya dalam satu perintah dari komputer pusat. 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 autonomous yang 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 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 & Mikrodimana 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 feriwall. 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 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. Pengertian Hendheld System Sistem handheld adalah sebuah komputer yang mudah dapat disimpan di saku dari ukuran yang cukup dan digunakan saat Anda sedang me-megangnya. Komputer genggam saat ini, yang juga disebut personal digital assistant PDA, dapat dibagi menjadi mereka yang menerima tulisan tangan sebagai masukan dan mereka dengan keyboard kecil. yang menerima input tulisan tangan adalah PalmPilot dari 3Com. Philips, Casio, NEC, Compaq, dan perusahaan lain membuat handheld dengan keyboard kecil. Komputer genggam adalah komputer yang mudah disimpan dalam saku ukuran cukup dan digunakan saat Anda memegangnya. Komputer genggam saat ini, yang juga disebut asisten digital pribadi PDA, dapat dibagi menjadi komputer yang menerima tulisan tangan sebagai masukan dan mereka yang memiliki keyboard kecil. Handheld asli yang menerima tulisan tangan adalah Newton dari Apple, yang kemudian ditarik dari pasar. Hari ini, perangkat genggam paling populer yang menerima input tulisan tangan adalah PalmPilot dari 3Com. Philips, Casio, NEC, Compaq, dan perusahaan lain membuat handheld dengan keyboard kecil. Komputer genggam biasanya digunakan untuk jenis aplikasi personal information manager PIM memelihara jadwal, menyimpan nama dan nomor telepon, melakukan perhitungan sederhana, mencatat, dan, dengan modem, bertukar e-mail dan mendapatkan informasi dari Web. Keyboard memiliki kunci kecil yang mulai terbiasa. Mereka yang menangani tulisan tangan juga menerapkan batasan dan membutuhkan beberapa pembelajaran. Namun demikian, komputer kelas ini dijual secara luas dan dihargai oleh banyak pengguna. Hewlett-Packard baru-baru ini memperkenalkan komputer genggam pertama dengan layar warna. Sejumlah perusahaan kini menggabungkan layanan telepon suara dan data menggunakan telepon seluler atau teknologi nirkabel lainnya dengan komputer genggam dalam satu perangkat. 1. Perkembangan Sistem Operasi Handheld Sebelum kita masuk lebih jauh tentang perkembangan OSsytem operasi alangkah baiknya kita lebih mengenal dulu tentang apa itu system operasi. Sistem operasi adalah program yang bertindak sebagai perantara antara user dengan perangkat keras komputer. Sistem operasi digunakan untuk mengeksekusi program user dan memudahkan menyelesaikan permasalahan user. Selain itu dengan adanya sistem operasi membuat sistem komputer nyaman digunakan. Sistem operasi mempunyai tujuan untuk menggunakan perangkat keras komputer secara efisien. Perkembangan System Handheld Sekitar tahun 1990-an dikembangkan sistem yang lebih kecil dari mikrokompuer yang disebut dengan sistem handheld dalam bentuk personal digital assistants PDA. Pada beberapa sistem terdapat telepon selular. Sistem ini mempunyai memory yang terbatas, prosessor dengan kecepatan rendah dan display Sejarah Perkembangan System Handheld 1993 Ponsel pintar yang pertama, IBM Simon, memiliki fitur layar sentuh, email, dan fitur PDA dirilis. 1996 Palm Pilot 1000 personal digital assistantPDA diperkenalkan pertama kali dengan sistem operasi Palm OS. 1996 PC handled pertama dengan sistem Windows CE diperkenalkan. 2000 Symbian menjadi sistem operasi genggam modern pertama pada ponsel pintar dengan 2001 The Kyocera 6035 menjadi ponsel pintar pertama yang menggunakan Palm OS. 2002 Microsoft Windows CE versi Pocket PC untuk ponsel pintar diperkenalkan. 2002 BlackBerry merilis ponsel pintar pertamanya. 2007 Apple iPhone dengan iOS pertama kali diperkenalkan. 2008 OHA merilis Android dengan HTC Dream T-Mobile G1 sebagai ponsel Android yang pertama. 2009 Palm memperkenalkan webOS melalui Palm Pre. 2009 Samsung memperkenalkan Bada OS melalui Samsung S8500. 2010 Windows Phone OS dirilis. 2. Perkembangan Sytem Handheld PDA Personal Digital Assistants disingkat PDA adalah sebuah alat elektronik yang berbasis komputer dan berbentuk kecil serta dapat dibawa kemana-mana. PDA banyak digunakan sebagai pengorganisir pribadi pada awalnya, tetapi karena perkembangannya, kemudian bertambah banyak fungsi kegunaannya, seperti kalkulator, penunjuk jam dan waktu, permainan komputer, pengakses internet, penerima dan pengirim surat elektronik e-mail, penerima radio, perekam video, dan pencatat memo. Selain dari itu dengan PDA komputer saku ini, kita dapat menggunakan buku alamat dan menyimpan alamat, membaca buku-e, menggunakan GPS dan masih banyak lagi fungsi yang lain. Bahkan versi PDA yang lebih canggih dapat digunakan sebagai telepon genggam, akses internet, intranet, atau extranet lewat Wi-Fi atau Jaringan Wireless. Salah satu ciri khas PDA yang paling utama adalah fasilitas layar sentuh. Bertahun-tahun dunia PDA membeku. Lalu Palm Inc. meluncurkan PDA pertamanya di tahun 1996. Peluncuran inilah yang kemudian mengubah nasib PDA dan sekaligus mendongkrak popularitas PDA di jagad elektronik. Alat genggam yang disinergikan dengan operating system OS Palm ini menuai sukses luar biasa. Kemudahan sinkronisasi dengan PC dan pendekatan pengoperasian berbasis ikon membuat banyak pengguna merasakan kegunaan alat yang satu ini, lebih daripada sekedar sebuah piranti genggam biasa. Dalam jangka waktu enam tahun, pertumbuhan PDA sendiri boleh dikatakan luar biasa, meskipun tentu saja tak secepat perangkat komputer pada umumnya. Selama kurun waktu tersebut, PDA terus tumbuh, baik dari sisi teknologi maupun bisnis. contoh sistem operasi yang digunakan. Palm OS saat ini masih merupakan pemain yang paling dominan. Merek-merek yang menggunakan OS ini antara lain adalah Palm sendiri, Sony, IBM dan Handspring. Berikutnya adalah WindowsCE atau sekarang disebut PocketPC. Operating system khusus untuk PDA atau PocketPC ini dibuat oleh Microsoft, karena itu tampilan pada versi PocketPC 2002 hampir mnyerupai tampilan pada Windows XP. Sebagai catatan popularitas PocketPC kini terdongkrak cukup kuat seiring dengan komitmen Microsoft yang besar terhadap perkembangan sistem operasi ini. Merek yang menggunakan OS ini antara lain HP, Compaq, Casio, dan Siemen. Pertama dan terutama fungsi dari sebuah piranti genggam semacam PDA adalah untuk mengelola informasi atau data. Lebih spesifik lagi karena namanya juga Personal Digital Assistant, maka data yang dikelolanya pun bersifat personal. Diantaranya alamat, nomor telepon, alamat e-mail, jadwal kegiatan dan daftar kegiatan yang harus kita kerjakan. Baru setelah fungsi itu PDA dikembangkan sehingga lebih memainkan peran sebagai subnotebook. tentu saja fungsi yang selama ini diperankan oleh organizer juga termasuk didalamnya, seperti jam, kalkulator dan kalender. Sebagian besar PDA dapat disinkronisasikan kedalam komputer desktop atau notebook, sehingga kita dapat me-maintenace informasi/data kita dan meng-update-nya kedalam komputer baik yang ada dikantor maupun yang ada dirumah. Saat ini, handheld keluaran terbaru sudah mampu berperan sebagai alat memainkan musik, pemutar musik MP3 MP3 player, membaca buku elektronik eBook Reader bahkan memainkan video streaming. Dengan kemampuan grafis yang tidak lagi hitam putih, handheld ini sudah melebihi tanggung jawabnya sebagai Asisten Pribadi sesuai dengan namanya, namun walau begitu jangan sekali-kali menyamakan kemampuan PDA dengan notebook apalagi PC desktop. Sebagai komputer genggam, PDA memiliki processor dan sistem operasi layaknya komputer biasa. Sistem operasi ini merupakan peranti lunak utama pada PDA. Cara kerjanya sama seperti sitem operasi pada komputer seperti Windows XP atau Mac OS, tetapi didesain khusus untuk PDA. Terdapat dua kesamaan sistem operasi pada PDA yaitu Palm dan Pocket PC Windows Mobile. Keduanya bekerja dengan program piranti lunak yang berbeda, jadi walaupun berisikan banyak dokumen seperti gambar, musik dan lainnya yang bisa dipakai namun tidak pada pemrogaman. Pada penyimpanan data tanpa kartu memori, data disimpan dalam RAM dengan ukuran puluhan MegaByte, sedangkan sumber energinya berasal dari baterai dulunya A3 isi ulang. Selain itu, bisa juga menggunakan adaptor yang disambungkan ke stop kontak AC. Fitur yang terdapat dalam PDA Keuntungan dan Kelemahan menggunakan PDA Ukuran kecil dan ringan, piranti ini jelas menjadi penopang mobilitas kerja, sehingga kita bisa membawanya kemana-mana dan dimana saja kita dapat melakukan kerja dengan piranti ini. Sebagian aplikasi berharga murah bahkan ada yang dapat di-download secara gratis dari dan Perlengkapan. Sebagian aksesoris dan perlengkapan umumnya dapat diperoleh dengan Proses booting tidak memakan waktu yang lama dibandingkan desktop atau Umur baterai tergantung model, tapi pada umumnya PDA punya ketahanan digunakan minimal sehari tanpa dicolokkan ke listrik. Bahkan ada yang bisa diganti dengan baterai alkaline Desktop. Anda bisa melakukan sinkronisasi data antara PDA dengan PC secara gampang dan Sebagian piranti PDA dilengkapi fasilitas teknologi tanpa kabel sehingga memudahkan kita bekerja di mana Infrared. Memudahkan fasilitas transfer data tanpa perlu kabel atau peranti tambahan satu alat. Dengan alat ini, kita tidak perlu menenteng buku, kalender, arloji, bahkan ponsel, karena saat ini ada PDA yang sudah ter-integrasi dengan ponsel. Ukuran dan berat Lantaran berukuran terlalu kecil, kadangkala Kita lupa menaruhnya dimana, atau terjatuh ketika kita simpan didalam saku kemeja atau bahkan kita benar-benar kehilangan piranti yang satu ini. Hampir semua OS di handheld tidak bisa di-upgrade layaknya OS di PC desktop atau dan perlengkapan. Lantaran terlalu banyak aksesoris dan perlengkapan, terkadang justru membuat ribet dan berat, apalgi jika kita sering bergerak Data. Proses meng-input data lebih lambat, baik menggunakan pena stylus maupun dengan kibor mini. jauh lebih kikuk dibanding input data di Bila kita mencolokkan piranti ini ke sumber listrik AC terlalu lama, umur batre akan merosot lebih cepat dibanding umur layar. Sebagian PDA memang memiliki layar yang bagus, tetapi sebagian besar layar PDA sangat susah dibaca ketika berada dibawah terik sinar layar. Layar PDA biasanya sensitif terhadap goresan. kadangkala sensitifnya berlebihan sehingga layarnya mudah Standarisasi PDA terlalu banyak, mulai dari hardware-nya maupun software-nya, sehingga meyulitkan untuk pengembangan lebih yang cepat. Perkembangan yang cepat mebuat kita kadangkala merasa sayang membeli alat yang secara teknologis tidak berumur lama. 3. Perkembangan Sytem Handheld Cellular Telephones System Operasi yang terdapat dalam cellular telephones yaitu Symbian bisa dibilang sebagai sistem operasi paling populer di dunia mengingat jumlah penggunanya mencapai lebih dari 50% dari pengguna smartphone. Sistem operasi ini dikembangkan oleh Symbian, Ltd.–yang merupakan kolaborasi vendor ponsel Ericsson, Nokia, Motorola, dan Psion–dan memang dikhususkan sebagai mobile operating system. Sistem operasi ini ditulis dengan bahasa C++. Awalnya sistem operasi ini merupakan OS yang close source, namun dalam perkembangannya, sistem operasi ini berubah menjadi open source dan memungkinkan banyak pihak untuk mengembangkan aplikasi yang bisa dioperasikan di ponsel ber-OS symbian. Versi stabil terbaru dari Symbian OS adalah Symbian OS dan versi tak-stabil terbarunya adalah Symbian^2 platform / Q3 yang dirilis pada tahun 2009. Dalam perkembangannya Symbian OS memiliki beberapa versi, yaitu Symbian OS dan contohnya adalah Nokia 9210 Communicator Symbian OS dan Pada versi ini muncul berbagai versi user interface seperti UIQ Sony Ericsson P800, P900, P910, Motorola A925, Series 60 Nokia 7650, 3230, 6260, 6600, 6670, 7610, N-Gage, N-Gage QD, Series 80 Nokia 9210, 9300, 9500, series 90 Nokia 7710, dan MOAP–Mobile Oriented Application Platform Contohnya ponsel NTT DoComo. Symbian OS adalah versi yang diadaptasi agar memiliki kompatibilitas yang lebih baik dengan versi Symbian OS dan Contohnya adalah Nokia N91 Symbian OS 9. Digunakan untuk keperluan internal Symbian Symbian OS Termasuk ponsel Nokia seri S60 3rd edition dan beberapa tipe Sony Ericsson seperti M600 dan P990. Symbian OS Contohnya Nokia E90, Nokia N95, Nokia N82, dan Nokia 5700 Symbian OS Misalnya Nokia E72, E75, E79, dan N96 Symbian OS Contohnya Samsung OMNIA HD, Nokia N97, Nokia 5800 XpressMusic, Sony Ericsson Satio, dan ponsel S60 5th edition lainnya. Sistem operasi Symbian juga rentan terhadap ancaman sekuriti berupa virus. Contoh virus yang sering menyerang ponsel ber-OS Symbian adalah Cabir, yang mengirimkan dirinya dari ponsel ke ponsel lain via bluetooth. Windows mobile adalah versi mobile dari sistem operasi PC paling populer, Windows, keluaran Microsoft. Sistem operasi ini didesain khusus agar bisa berjalan pada smartphone dan perangkat mobile. Sistem operasi yang awalnya dirilis dengan nama Pocket PC 2000 ini hampir semuanya dilengkapi stylus pen yang digunakan sebagai mouse’ pada layar ponsel. OS ini sudah berkali-kali di-update versinya dengan versi terbarunya saat ini adalah Windows Mobile yang dirilis 5 Oktober 2009. Ke depannya akan dirilis Windows Mobile yang akan keluar sekitar pertengahan 2010. User interface dari perangkat Windows Mobile menyerupai Windows pada PC, namun sayangnya, seperti halnya Windows pada PC, sistem operasi ini bersifat close source sehingga agak menyulitkan pihak ketiga untuk menyediakan aplikasi yang mendukung. Versi-versi yang telah dirilis meliputi Windows Mobile 2003 yang memiliki 4 edisi, yaitu Windows Mobile 2003 for Pocket PC Premium Edition, Windows Mobile 2003 for Pocket PC Professional Edition, Windows Mobile 2003 for Smartphone, dan Windows Mobile 2003 for Pocket PC Phone Edition. Windows Mobile 2003 Second Edition Windows Mobile 2003 SE Windows Mobile 6 yang memiliki 3 versi, yaitu Windows Mobile 6 Standard for Smartphone phone without touchscreen, Windows Mobile 6 Professional for Pocket PC with phone functionality, dan Windows Mobile 6 Classic for Pocket PCs without cellular radio. Contoh dari perangkat yang memiliki sistem operasi ini antara lain Audiovox SMT 5600, iMate SP3i, Samsung SCH-i600, Mio 8390, Sagem myS-7, Orange SPV C500, HP iPAQ rw6100, Motorola MPx220, O2 Xphone, dan O2 Xphone II. UPDATE 08-02-2011 Saat ini versi terbaru dari Windows Mobile adalah Windows Phone 7 Palm OS adalah sistem operasi mobile yang dikembangkan oleh Palm, Inc. yang awalnya dikhususkan sebagai sistem operasi untuk PDA. Namun dalam perkembangannya, Palm OS juga dibuat untuk smartphone. Sistem operasi ini didesain untuk kemudahan penggunaan dengan GUI Graphical User Interface berbasis touchscreen. Sistem operasi ini ditulis dengan bahasa pemrograman C/C++ dan bersifat close source. Contoh perangkat yang menggunakan sistem operasi Palm adalah Palm Treo 680. Smartphone ini menggunakan system operasi Palm OS Beberapa fitur yang ditawarkan adalah Pocket Express, Microsoft Media Player, Palm files, PDF viewer, Adobe Acrobat reader, eReader, Pocket Tunes, dan Document To Go. Android adalah sistem operasi mobile yang berjalan pada kernel Linux, yang dirilis pada 21 Oktober 2008. Awalnya, sistem operasi ini dikembangkan oleh Android, Inc, yang kemudian dibeli oleh Google, dan yang terakhir, sistem operasi ini dibeli oleh Open Handset Alliance, sebuah consortium dari 47 perusahaan hardware, software, dan telecom termasuk Google yang didirikan untuk membuat open standard bagi perangkat lunak mobile. Sistem operasi ini bersifat free dan open source. Perangkat mobile yang mendukung sistem operasi ini di antaranya adalah HTC Dream dan HTC Magic, ponsel keluaran vendor asal Taiwan, HTC. Blackberry OS adalah sistem operasi mobile yang dikembangkan oleh perusahaan Kanada, Research in Motion RIM yang dibuat untuk handheld andalan mereka dengan nama yang sama. Sistem operasi ini ditulis dalam bahasa Java dan bersifat Close Source. Versi stabil terakhir yang dikeluarkan adalah versi Blackberry Storm 9530. Perangkat yang menggunakan Blackberry OS sebagai sistem operasi tentu saja adalah semua varian Blackberry seperti Blackberry Bold, Storm, Curve, Pearl, dan Tour. iPhone OS adalah sistem operasi mobile yang dikembangkan oleh Apple, Inc. yang dibuat untuk produk mereka yaitu iPhone dan iPod Touch. Sistem operasi ini termasuk dalam keluarga Mac OS X / Unix-like operating system. Walaupun sistem operasinya bersifat close source, namun komponennya bersifat open source sehingga memudahkan pihak ketiga untuk mengembangkan aplikasi-aplikasi yang bisa berjalan pada sistem operasi ini. User interface pada sistem operasi ini menggunakan konsep manipulasi langsung pada layar handheld dengan menggunakan multi-touch gesture. Kontrol pada interfacenya meliputi slider, swith, dan tombol. Aplikasi-aplikasi yang disertakan dalam sistem operasi ini meliputi Messaging, Calendar, Photos, Camera, Youtube, Google Maps, iPhone, Safari, dan beberapa aplikasi standar lainnya. PengertianTHREAD 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. 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. 3. Keuntungan Multi-Threading 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. Pembagian sumber daya Secara default, thread membagi memori dan sumber daya dari thread berjalan pada data yang sama, thread tersebut bisa berbagi cache memory. 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. 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. 4. Kerugian Multi-Threading Multiple thread bisa mengganggu satu sama lain saat berbagi hardware resource, misalnya chace memory. 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. Harus ada dukungan dari hardware ataupun software untuk melakukan multi-Threading. 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. 6. 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. Model Multi-Threading 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. One-to-One Memetakan setiap thread tingkatan pengguna ke thread kernel. Model ini menyediakan lebih banyak concurrency dibandingkan model Many-to-One. D3 KomSI UGM Sistem Operasi 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. Thread cancellation ialah pemberhentian thread sebelum tugasnya selesai. Umpama, 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 biasa disebut target target thread dapat terjadi melalui dua cara yang berbedaAsynchronous cancellation suatu thread seketika itu juga memberhentikan target thread. Defered cancellation target thread secara perodik memeriksa apakah dia harus berhenti, cara ini memperbolehkan target thread untuk memberhentikan dirinya sendiri secara terurut. Alternatifnya adalah dengan menggunakan deffered cancellation. Cara kerja dari deffered cancellation adalah dengan menggunakan satu thread yang berfungsi sebagai pengindikasi bahwa target thread hendak diberhentikan. Tetapi pemberhentian hanya akan terjadi jika target thread memeriksa apakah ia harus berhenti atau tidak. Hal ini memperbolehkan thread untuk memeriksa apakah ia harus berhenti pada waktu dimana ia dapat diberhentikan secara aman yang aman. Pthread merujuk tersebut sebagai cancellation points. Pada web server yang multithreading ada dua masalah yang timbulUkuran waktu yang diperlukan untuk menciptakan thread untuk melayani permintaan yang diajukan terlebih pada kenyataannya thread dibuang ketika ia seketika sesudah ia menyelesaikan thread yang tidak terbatas jumlahnya dapat menurunkan performa dari adalah dengan penggunaan Thread Pools, cara kerjanya adalah dengan membuat beberapa thread pada proses startup dan menempatkan mereka ke pools, dimana mereka duduk diam dan menunggu untuk bekerja. Jadi ketika server menerima permintaan maka maka ia akan membangunkan thread dari pool dan jika thread tersedia maka permintaan tersebut akan thread sudah selesai mengerjakan tugasnya maka ia kembali ke pool dan menunggu pekerjaan lainnya. Bila tidak thread yang tersedia pada saat dibutuhkan maka server menunggu sampai ada satu thread yang bebas. 9. Keuntungan thread pool Biasanya lebih cepat untuk melayani permintaan dengan thread yang ada dibanding dengan menunggu thread baru pool membatasi jumlah thread yang ada pada suatu waktu. Hal ini pentingpada sistem yang tidak dapat mendukung banyak thread yang berjalan secara concurrent. Pernahkah Anda mendengar istilah batch processing? Istilah ini banyak digunakan untuk mendefinisikan bagaimana sebuah sistem dapat memproses data dan tugas-tugas yang dimiliki oleh perusahaan. Ketahui lebih lanjut mengenai apa itu batch processing beserta kelebihan dan kekurangannya melalui ulasan berikut ini! Apa itu batch processing? Batch processing adalah sistem yang dapat digunakan untuk mengolah data dan menjalankan tugas-tugas perusahaan secara otomatis dan berulang. Sistem ini sangat diperlukan oleh perusahaan-perusahaan bisnis untuk mencapai target harian, bulanan, bahkan tahunan. Karena bisa memproses pekerjaan secara otomatis dan berulang, batch processing dapat menyelesaikan tugas secara lebih cepat dan efisien. Sehingga, metode ini akan sangat meringankan pekerjaan karyawan, tetapi tidak mengurangi kepuasan konsumen dari perusahaan tersebut. Kelebihan dan kekurangan batch processing Ada beberapa kelebihan dan kekurangan dari sistem batch processing yang perlu Anda ketahui, apalagi bila Anda adalah pemilik bisnis yang ingin menerapkan sistem ini. Berikut penjelasan lengkapnya. Kelebihan batch processing Kelebihan pertama batch processing adalah keunggulannya dalam segi kecepatan. Jika sebuah perusahaan perlu pergerakan yang serbacepat, batch processing adalah solusi yang tepat. Tanpa mengurangi ketepatan, batch processing mampu lakukan tugas secara otomatis dan berulang, sehingga pekerjaan di kantor akan terasa lebih cepat dan efisien. Kedua, menghemat uang perusahaan. Seperti yang telah dijelaskan di atas, batch processing dapat meringankan kerja karyawan di sebuah perusahaan. Itu artinya, jika awalnya perusahaan memerlukan satu atau dua orang untuk mengolah data, hal tersebut tidak lagi dibutuhkan dan dapat digantikan dengan sistem yang tidak memerlukan penggajian setiap bulannya. Ketiga, batch processing adalah sistem yang dapat bekerja tanpa henti. Berbeda dengan manusia, sistem ini dapat bekerja terus-menerus, bahkan pada hari libur sekalipun. Karena pemrosesan data dapat dilakukan oleh sistem komputer, maka proses ini tidak identik dengan suatu divisi tertentu di sebuah perusahaan yang mungkin sedang libur. Keempat, kelebihan berikutnya dari batch processing adalah lebih simpel. Dengan adanya sistem pengolahan data yang otomatis, hal-hal yang berkaitan dengan pengelolaan data, mulai dari entri, pengumpulan, hingga menyiapkan proses pengolahan pun dapat dilakukan oleh sistem. Sehingga, pengolahan data perusahaan dapat dilakukan tanpa perlu menjalankan rangkaian prosesnya dari awal. Kelima, batch processing membuat manajemen perusahaan menjadi lebih baik. Karena sistem ini bekerja otomatis untuk menyelesaikan tugas-tugas perusahaan, maka pekerjaan yang awalnya dipegang oleh manusia dapat dipindahkan ke sistem. Sehingga, manajer perusahaan dapat memberi tugas lain pada orang tersebut dan meningkatkan produktivitas perusahaan. Kekurangan batch processing Kekurangan pertama dari batch processing adalah biayanya yang lebih mahal. Jika batch processing dikatakan dapat mengganti tenaga karyawan perusahaan melalui sistemnya yang otomatis, proses instalasi sistem ini tidak bisa dikatakan gratis. Pemasangan batch processing pada perusahaan-perusahaan kecil mungkin akan lebih mahal dibandingkan harus menggaji satu orang karyawan tambahan untuk memproses data secara manual. Berikutnya, kekurangan dari sistem ini adalah membutuhkan perawatan yang berkala dengan biaya yang tentunya tidak sedikit. Penggunaan batch processing dalam perusahaan memerlukan perawatan dari pihak karyawan internal atau harus mendatangkan pihak eksternal yang paham mengenai sistem ini, mengingat pemrogramannya yang sangat rumit dan sulit untuk dimengerti oleh awam. Terakhir, perusahaan perlu memberikan pelatihan pada karyawan yang akan mengontrol kinerja batch processing. Karyawan perusahaan tentu membutuhkan pelatihan bila akan diterapkan sistem baru dalam perusahaan. Itu artinya, perusahaan harus memiliki uang dan sumber daya yang memenuhi. Selain itu, seluruh karyawan perusahaan juga harus diberi penjelasan tentang bagaimana sistem batch processing akan mengubah budaya kerja mereka. Kesimpulan Batch processing adalah sistem otomatis yang dapat menyelesaikan tugas-tugas perusahaan secara berkala. Berbasis sistem, teknologi ini unggul dalam segi kecepatan, simultan, dan lebih simpel. Selain itu, perusahaan yang menerapkan sistem ini juga bisa lebih menghemat uang dan meningkatkan produktivitas perusahaan. Namun, batch processing juga memiliki beberapa kelemahan, misalnya biaya instalasi yang tidak sedikit, biaya perawatan, serta perlunya pelatihan khusus bagi karyawan perusahaan yang akan menggunakan sistem ini. Bagi Anda yang ingin lebih mendalami tentang batch processing atau sistem pengolahan data lainnya, ikuti program dari Algoritma Data Science School yang tersedia dalam berbagai kelas dan dapat diikuti oleh individu maupun korporat. Informasi lebih lengkap mengenai kelas-kelas yang disediakan oleh Algoritma Data Science School, klik di sini! Referensi bmc – Batch Processing An Introduction What is Batch Processing? – Definition & Examplesstudy MANAJEMEN PROSES 1. BATCH SYSTEM Batch system dikenalkan pada generasi kedua 1955-1965. Batch sistem adalah suatu teknik pengurutan kerja secara otomatis untuk menghindari waktu menganggurnya CPU. Tugas ini dikerjakan dalam satu rangkaian, lalu dieksekusi secara berurutan. Pada generasi ini sistem komputer belum dilengkapi sistem operasi, tetapi beberapa fungsi sistem operasi telah ada, contohnya fungsi sistem operasi ialah FMS dan IBSYS. 2. Bentuk bentuk dari Batch System 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. 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. Jenis jenis System Operasi Sistem Operasi Real-time Adalah sebuah sistem operasi multitasking yang bertujuan mengeksekusi aplikasi secara real-time . Real-time Operating System sering menggunakan algoritma penjadwalan khusus, sehingga mereka bisa mencapai sifat deterministik perilaku . Tujuan utama dari sistem operasi ini adalah memberikan respon cepat dan real-time, serta prediksi suatu event. Ia juga didesain dengan event-driven atau time-sharing one. Sebuah sistem switch event antara tugas-tugas yang berdasarkan prioritas, sementara sistem operasi time-sharing akan beralih tugas berdasarkan jam interupsi. Windows CE , OS - 9 , Symbian dan LynxOS adalah beberapa yang dikenal sebagai sistem operasi real-time . Sistem Operasi Multi-user dan Single-user Sistem operasi komputer jenis ini akan memungkinkan beberapa pengguna untuk mengakses sistem komputer secara bersamaan. Sistem time sharing dapat diklasifikasikan sebagai sistem multi-user, karena mereka memungkinkan akses beberapa pengguna ke komputer melalui berbagi waktu. Sistem operasi single-user, adalah sebagai lawan dari sistem operasi multi-user, yang dapat digunakan oleh satu pengguna pada satu waktu. Pada OS windows mampu memiliki beberapa account, namun tidak membuat sistem multi-user. Sebaliknya, hanya administrator jaringanlah pengguna yang sebenarnya. Tapi untuk sistem operasi yang mirip Unix, adalah mungkin untuk dua pengguna untuk login pada satu waktu, dan kemampuan OS ini yang membuatnya menjadi sistem operasi multi-user. Windows 95, Windows 2000 , Mac OS , dan Palm OS adalah contoh dari sistem operasi single-user. Unix dan OpenVMS adalah contoh dari sistem operasi multi-user. Sistem operasi Multi-tasking dan Single-tasking Ketika sebuah program tunggal yang diperbolehkan untuk berjalan pada satu waktu, sistem ini dikelompokkan di bawah kategori sistem single- tasking, sedangkan dalam kasus sistem operasi yang memungkinkan untuk pelaksanaan beberapa tugas pada satu waktu, ini diklasifikasikan sebagai sistem operasi multi - tasking. Multi-tasking masih ada dua jenis yaitu, pre-emptive atau co-operative. Pre-emptive multitasking OS memotong waktu CPU, dan mendedikasikan satu slot untuk masing-masing program. Unix - sistem operasi seperti Solaris dan Linux, yang mendukung pre-emptive multitasking. Jika Anda mengerti terminologi multi-threading, Anda dapat mempertimbangkan jenis multi-tasking yang mirip dengan multi-threading. Co-operative multitasking dicapai dengan mengandalkan setiap proses untuk memberikan waktu kepada proses lain, dengan cara yang sudah ditetapkan. Ini adalah jenis multi-tasking yang mirip dengan gagasan blok multi-threading, di mana satu thread berjalan hingga diblok oleh beberapa even lainnya. MS Windows sebelum Windows 95 digunakan untuk mendukung multitasking co-operative. Palm OS untuk Palm handheld adalah Multi-tasking and Single-tasking Operating Systems. Windows 9x mendukung multi- tasking. DOS Plus adalah sistem operasi multi - tasking yang relatif kurang dikenal. Distributed Operating System Sistem operasi yang mengelola sekelompok komputer independen, dan membuat merekaseolah hanya sebuah komputer, dikenal sebagai sistem operasi terdistribusi. Perkembangan jaringan komputer yang dapat dihubungkan, dan dibuat untuk berkomunikasi satu sama lain yang memunculkan ide komputasi terdistribusi. Perhitungan terdistribusi dilakukan oleh lebih dari satu mesin. Ketika komputer dalam suatu kelompok kerja sama, maka mereka akan membuat sistem terdistribusi . Amoeba, Plan9 dan LOCUS yang dikembangkan antara tahun 1980-an adalah beberapa contoh Distributed Operating System. Embedded System Sistem operasi yang dirancang untuk digunakan dalam sistem komputer embedded, atau yang dikenal sebagai Embedded System. Ini dirancang untuk beroperasi pada perangkat kecil seperti PDA yang dengan otonomi kurang. System ini mampu beroperasi dengan jumlah sumber daya yang terbatas. Sangat compact, serta dengan desain yang sangat efisien. Windows CE , FreeBSD dan Minix 3 adalah beberapa contoh Embedded System. Penggunaan Linux dengan sistem komputer embedded disebut sebagai Embedded Linux . Mobile Operating System/OS Mobile Meskipun ini bukanlah tipe yang berbeda fungsional dari sebuah sistem operasi, OS mobile juga termasuk penting untuk dimasukkan kedalam daftar jenis sistem operasi ini. OS mobile berfungsi untuk mengontrol perangkat mobile, yang memiliki desain yang mendukung untuk komunikasi nirkabel dan aplikasi mobile. Ia juga built- in dalam mendukung format multimedia pada perangkat mobile. Tablet PC dan smartphone adalah contoh perangkat yang dijalankan dengan sistem operasi mobile . Blackberry OS , Google Android dan Apple iOS adalah beberapa nama OS Mobile yang paling dikenal . Batch Processing dan Interactive Systems Batch processing mengacu pada pelaksanaan program komputer dalam ' batch ' tanpa intervensi manual. Dalam sistem batch processing, program dikumpulkan, dikelompokkan dan diproses di kemudian hari. Tidak ada input data oleh user, sebagai input data dikumpulkan terlebih dahulu untuk proses selanjutnya. Input data dikumpulkan dan diproses dalam batch, maka dinamakan batch processing. IBM z / OS memiliki kemampuan pemrosesan batch. Sistem yang berlawanan dengan ini, operasi interaktif membutuhkan intervensi oleh pengguna , dan tidak dapat dijalankan tanpa pengguna. Online dan Offline Processing Dalam pengolahan data online, pengguna tetap berhubungan dengan komputer, dan proses dijalankan di bawah kendali central processing unit CPU komputer. Bila proses tidak dieksekusi di bawah kontrol langsung dari CPU, maka pengolahan ini disebut dengan offline. Mari kita ambil contoh batch processing. Di sini, batching atau pengelompokan data dapat dilakukan tanpa melibatkan pengguna dan intervensi oleh CPU, dan bisa dilakukan secara offline. Namun pelaksanaan proses yang sebenarnya mungkin terjadi di bawah kontrol prosesor langsung yang online. Sistem operasi juga membantu untuk menyederhanakan interaksi manusia dengan perangkat keras komputer, bertanggung jawab untuk menghubungkan antara program aplikasi dengan perangkat keras, sehingga pengguna dapat mencapai akses komputasi dengan mudah. Tanpa OS, komputer tak akan ada gunanya, atau paling tidak akan sulit untuk dioperasikan oleh kebanyakan orang. 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. Contohnya adlah FMS Fortarn Monitoring System dan IBSYS. SUMBER 2. CRITICAL SECTION Critical section adalah dengan mendesain sebuah protokol di mana proses-proses dapat menggunakannya secara bersama-sama. Setiap proses harus 'meminta izin' untuk memasuki critical section-nya. Bagian dari kode yang mengimplementasikan izin ini disebut entry section. Akhir dari critical section itu disebut exit section. Bagian kode selanjutnya disebut remainder section. Struktur umum dari proses Pi adalah Contoh do { entry section critical section exit section remainder section } while 1; do { entry section critical section exit section remainder section } while 1; do{ critical section }while1 Solusi dari masalah critical section harus memenuhi tiga syarat berikut 1. Mutual Exclusion. Jika suatu proses sedang menjalankan critical section-nya, maka proses-proses lain tidak dapat menjalankan critical section mereka. Dengan kata lain, tidak ada dua proses yang berada di critical section pada saat yang bersamaan. 2. Terjadi kemajuan progress. Jika tidak ada proses yang sedang menjalankan critical section-nya dan ada proses-proses lain yang ingin masuk ke critical section, maka hanya proses-proses yang yang sedang berada dalam entry section saja yang dapat berkompetisi untuk mengerjakan critical section. 3. Ada batas waktu tunggu bounded waiting. Jika seandainya ada proses yang sedang menjalankan critical section, maka proses lain memiliki waktu tunggu yang ada batasnya untuk menjalankan critical section -nya, sehingga dapat dipastikan bahwa proses tersebut dapat mengakses critical section-nya tidak mengalami starvation proses seolah-olah berhenti, menunggu request akses ke critical section diperbolehkan. 1. Solusi perangkat lunak. Dengan menggunakan algoritma-alogoritma yang nilai kebenarannya tidak tergantung pada asumsi-asumsi lain, selain bahwa setiap proses berjalan pada kecepatan yang bukan nol. 2. Solusi perangkat keras. Tergantung pada beberapa instruksi mesin tertentu, misalnya dengan me-non-aktifkan interupsi atau dengan mengunci suatu variabel tertentu Selanjutnya akan dibahas sebuah algoritma sebagai solusi masalah dari critical section yang memenuhi tiga syarat seperti yang telah disebutkan di atas. Solusi ini tidak tergantung pada asumsi mengenai instruksi-instruksi perangkat keras atau jumlah prosesor yang dapat didukung oleh perangkat keras. Namun, kita mengasumsikan bahwa insruksi bahasa mesin yang dasar instruksi-instruksi primitif seperti load, store, dan test dieksekusi secara atomik. Artinya, jika dua instruksi tersebut dieksekusi secara konkuren, hasilnya ekuivalen dengan eksekusi instruksi tersebut secara sekuensial dalam urutan tertentu. Jadi, jika load dan store dieksekusi secara konkuren, load akan mendapatkan salah satu dari nilai yang lama atau nilai yang baru, tetapi tidak kombinasi dari keduanya. Alogoritma I Pada algoritma 1, variabel yang digunakan bersama shared variabel adalah sebuah variabel integer turn, yang diinisialisasi awal nilai 0 atau 1 di proses yang kedua. Jika turn == i, maka proses Pi diizinkan untuk mengeksekusi critical sectionnya. Algoritma ini menjamin bahwa hanya ada satu proses pada suatu saat yang berada di critical section. Namun, algoritma ini tidak memenuhi syarat terjadinya kemajuan, karena algoritma ini membutuhkan pergiliran proses di dalam menjalankan critical section. Misalnya, jika turn == 0 dan P1 ingin masuk ke critical section, P1 tidak dapat masuk, meskipun P0 sedang berada di remainder section. Hal ini dikarenakan P0 belum masuk ke critical section. dan oleh karenanya P0 belum mengubah nilai turn menjadi turn == 1. /** * Program ini sesuai dengan solusi critical section dengan * menggunakan algoritma 1. * Disadur dari buku Silberschatz dkk, * Applied Operating Systems Concepts, 2000. */ public class Algoritma_1 extends MutualExclusion { public Algoritma_1 { turn = TURN_0; } public void masukCriticalSectionint t { while turn != t } public void keluarCriticalSectionint t { turn = 1 - t; } private volatile int turn; } Algoritma 2 Kelemahan algoritma 1 adalah bahwa algoritma 1 tidak menyediakan informasi yang cukup mengenai keadaan state setiap proses, ia hanya mengingat proses mana yang diperbolehkan untuk memasuki critical section. Untuk memecahkan masalah ini, variabel turn diganti dengan sebuah array, yaitu Setiap elemen dari array tersebut diinisialisasi awal ke false. Jika flag[i] bernilai true, maka ini mengindikasikan bahwa Pi siap untuk masuk ke critical section. Setiap proses memantau suatu flag yang mengindikasikan ia ingin memasuki critical section. Dia memeriksa flag proses lain dan tidak akan memasuki critical section bila ada proses lain yang sedang masuk. /** * Program ini sesuai dengan solusi critical section dengan * menggunakan algoritma 2. * Disadur dari buku Silberschatz dkk, * Applied Operating Systems Concepts, 2000. */ public class Algoritma_2 extends MutualExclusion { public Algoritma_2 { flag[0] = false; flag[1] = false; } public void masukCriticalSectionint t { int other; other = 1 - t; flag[t] = true; while flag[other] == true } public void keluarCriticalSectionint t { flag[t] = false; } private volatile boolean[] flag = new boolean[2]; } Di algoritma 2 ini, proses Pi pertama-tama mengubah nilaiset flag[i] menjadi true, menandakan bahwa Pi mau masuk ke critical section. Kemudian Pi mengecek apakah proses Pj juga mau masuk kecritical section. Jika proses Pj mau masuk, maka proses Pi akan menunggu sampai proses Pj mengubah statenya bahwa ia tidak mau lagi masuk ke critical section flag[j] == false. Pada saat itu, maka Pi akan masuk ke critical section. Ketika keluar dari critical section, Pi akan mengset nilai flag[i] menjadi false, memperbolehkan proses lain jika ada proses lain yang menunggu untuk masuk ke critical section. Solusi dengan algoritma 2 ini memenuhi syarat mutual exclusion, tetapi tidak memenuhi syarat terjadinya kemajuan. Untuk mengilustrasikan masalah ini, perhatikan urutan eksekusi berikut T0 P0 sets flag[0] true T1 P1 sets flag[1] true Sekarang P0 dan P1 akan loop selama-lamanya di dalam statement while masing-masing. Perhatikan bahwa mengubah urutan instuksi untuk mengset flag[i] dan mengecek nilai flag[j] tidak akan memecahkan masalah ini. Kita malah akan berada di situasi di mana ada kemungkinan untuk kedua proses berada dicritical section pada saat yang bersamaan, yang akan melanggar syarat mutual exclusion. Algoritma 3 Dengan menggabungkan algoritma 1 dan algoritma 2, kita akan memperoleh solusi yang tepat untuk masalahcritical section, di mana solusi itu akan memenuhi tiga syarat seperti yang telah disebutkan di atas. Setiap proses menggunakan dua variabel boolean flag[2]; int turn; Awalnya flag[0] = flag[1] = false, dan nilai turn tergantung dari proses yang boleh masuk 0 atau 1. Untuk masuk ke critical section, proses Pi pertama-tama mengset flag[i] menjadi true, dan kemudian mengset nilai turn menjadi j, sehingga memperbolehkan proses lain yang ingin masuk ke critical section untuk dapat masuk ke critical section. Jika kedua proses mencoba untuk masuk ke critical section pada saat yang bersamaan, turn akan diset ke nilai i dan j pada saat yang hampir bersamaan. Yang terakhir mengubah nilai turn akan mempersilakan proses yang lainnya untuk masuk ke critical section. /** * Program ini sesuai dengan solusi critical section dengan * menggunakan algoritma 3. * Disadur dari buku Silberschatz dkk, * Applied Operating Systems Concepts, 2000. */ public class Algoritma_3 extends MutualExclusion { public Algoritma_3 { flag[0] = false; flag[1] = false; turn = TURN_0; } public void masukCriticalSectionint t { int other; other = 1 - t; flag[t] = true; turn = other; while flag[other] == true && turn == other } public void keluarCriticalSectionint t { flag[t] = false; } private volatile int turn; private volatile boolean[] flag = new boolean[2]; } Solusi Untuk Proses Jamak Algoritma Tukang Roti Algoritma ini didasarkan pada algoritma penjadualan yang biasanya digunakan oleh tukang roti, di mana 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 menerima sebuah 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 = ai untuk setiap i= 0, ..., n – 1 Algoritma Tukang Roti do { choosing[i] = true; number[i] = maxnumber[0], number [1], ..., number [n+1]+1; choosing[i] = false; for j=0; j critical section number[i] = 0; remainder section } while 1; 1. NON PREEMPTIVE Nonpreemptive multitasking adalah gaya komputer multitasking di mana sistem operasi tidak pernah memulai context switch dari proses yang berjalan kepada proses lain. Sistem seperti ini baik statis dijadwalkan, paling sering sistem periodik, atau menunjukkan beberapa bentuk koperasi multitasking, dalam hal ini tugas-tugas komputasi yang dapat menyela diri dan secara sukarela memberikan kontrol kepada tugas-tugas lain. Ketika memesan efek terlebih dahulu tidak digunakan, proses yang menerima sumber daya tersebut tidak dapat terganggu sampai selesai. Koperasi multitasking adalah jenis multitasking di mana saat ini mengendalikan proses CPU harus menawarkan kontrol untuk proses lainnya. Hal ini disebut "koperasi" karena semua program harus bekerjasama agar ini bekerja. Sebaliknya, preemptive multitasking aplikasi menyela dan memberikan kontrol ke proses lain di luar kontrol aplikasi. Program yang berjalan dibawah sistem operasi non-preemptive harus khusus ditulis untuk bekerja sama dalam multitasking oleh kontrol menghasilkan prosesor pada interval yang sering. Program yang tidak menghasilkan cukup sering menyebabkan sistem non-preemptive untuk tetap "terkunci" dalam program yangdatang tidak menghasilkan. Contoh gagal non-preemptive multitasking adalah ketidak mampuan untuk melakukan hal lain saat mencetak dokumen di Microsoft Word for Windows Hal ini terjadi karena firman tidak menyerah kontrol prosesor cukup sering saat mencetak dokumen Anda. Kasus terburuk dari program tidak menghasilkan adalah ketika sebuah crash program. Kadang-kadang, program yang crash di Windows akan crash keseluruhan sistem hanya karena tidak ada tugas-tugas lain dapat menjalankan sampai jatuh hasil program. 2. PREENTIVE Dalam komputasi, preemption kadang pre-emption adalah tindakan sementara mengganggu tugas yang sedang dilakukan oleh sistem komputer, tanpa memerlukan kerjasama, dan dengan maksud melanjutkan tugas di lain waktu. Perubahan seperti ini dikenal sebagai context switch. Hal ini biasanya dilakukan oleh tugas istimewa atau bagian dari sistem yang dikenal sebagai preemptive scheduler, yang memiliki kekuatan untuk mendahului, atau mengganggu, dan kemudian melanjutkan, tugas-tugas lain dalam sistem. Istilah preemptive multitasking digunakan untuk membedakan sistem operasi multitasking, yang memungkinkan preemption tugas, dari sistem multitasking koperasi dimana proses atau tugas harus secara eksplisit diprogram untuk menghasilkan ketika mereka tidak membutuhkan sumber daya sistem. Dalam hal sederhana Preemptive multitasking melibatkan penggunaan mekanisme interupsi yang menunda proses yang sedang dijalankan dan memanggil scheduler untuk menentukan proses harus melaksanakan berikutnya. Oleh karena itu semua proses akan mendapatkan beberapa jumlah waktu CPU pada suatu waktu tertentu. Pada preemptive multitasking, kernel sistem operasi juga dapat memulai konteks sebuah saklar untuk memenuhi kendala prioritas kebijakan penjadwalan, dengan demikian preempting tugas umum, preemption berarti "penyitaan sebelumnya". Ketika tugas prioritas tinggi pada contoh yang merebut tugas yang sedang berjalan, ini dikenal sebagai penjadwalan preemptive. Istilah "preemptive multitasking" kadang-kadang keliru digunakan ketika arti yang diinginkan lebih spesifik, mengacu bukan untuk kelas yang dikenal sebagai kebijakan penjadwalan penjadwalan waktu bersama, atau time-sharing. Preemptive multitasking memungkinkan sistem komputer untuk lebih andal menjamin setiap proses "slice" biasa waktu ini juga memungkinkan sistem untuk cepat menangani peristiwa eksternal penting seperti data yang masuk, yang mungkin memerlukan perhatian segera dari satu atau proses lain. Pada setiap waktu tertentu, proses dapat dikelompokkan menjadi dua kategori yang sedang menunggu untuk input atau output disebut "I / O terikat", dan mereka yang sepenuhnya menggunakan CPU "CPU terikat". Dalam sistem awal, proses sering akan "jajak pendapat", atau "busywait" sambil menunggu input diminta seperti disk, keyboard atau input jaringan. Selama ini, proses tersebut tidak melakukan pekerjaan yang berguna, namun masih terjaga kontrol dari CPU. Dengan munculnya interrupt dan preemptive multitasking, ini I / O proses terikat bisa "diblokir", atau ditunda, sambil menunggu kedatangan data yang diperlukan, yang memungkinkan proses-proses lain untuk menggunakan CPU. Sebagai kedatangan data yang diminta akan menghasilkan interrupt, diblokir proses dapat jaminan kembali tepat waktu untuk eksekusi. Meskipun teknik multitasking pada awalnya dikembangkan untuk mengijinkan beberapa pengguna untuk berbagi satu mesin, segera menjadi jelas bahwa multitasking berguna terlepas dari jumlah pengguna. Banyak sistem operasi, dari mainframe ke single-user komputer pribadi dan sistem kontrol tidak ada pengguna-seperti di pesawat ruang angkasa robot, telah mengakui manfaat multitasking dukungan untuk berbagai memungkinkan pengguna tunggal untuk menjalankan beberapa aplikasi pada saat yang sama, atau untuk menjalankan "latar belakang" dengan tetap mengontrol proses komputer. Periode waktu yang suatu proses diperbolehkan untuk dijalankan dalam sistem preemptive multitasking umumnya disebut potongan waktu, atau kuantum. The scheduler dijalankan sekali setiap irisan waktu untuk memilih proses selanjutnya untuk menjalankan. Jika irisan waktu terlalu pendek maka penjadwal akan memakan waktu proses terlalu banyak. Interrupt dijadwalkan untuk memungkinkan kernel sistem operasi untuk beralih di antara proses-proses ketika irisan waktu mereka berakhir, efektif sehingga waktu prosesor untuk dibagi antara sejumlah tugas, memberikan ilusi bahwa berurusan dengan tugas-tugas secara bersamaan, atau secara bersamaan. Sistem operasi yang mengontrol desain seperti ini disebut sistem multi-tasking. Sistem pendukung preemptive multitasking Hampir semua sistem operasi mendukung preemptive multitasking, termasuk versi terbaru Windows, Mac OS, Linux, IOS dan Android. Contoh awal sistem operasi preemptive termasuk AmigaOS, yang 95/98/ME Windows 32-bit hanya aplikasi [2] dan Windows keluarga NT termasuk 2000, XP, Vista, dan 7, Linux, * BSD, OS / 2 - OS / 2 Warp 3-4,5, Mac OS X. Unix dan sistem berbasis Unix, dan VMS, serta sistem lainnya yang digunakan di pasar bisnis akademik dan menengah sampai besar, selalu mendukung preemptive multitasking, tapi untuk waktu yang lama berada di luar jangkauan kebanyakan pengguna baik karena biaya lisensi atau perangkat keras yang mahal diperlukan untuk mendukung mereka. Contoh yang lebih tua, non-preemptive koperasi sistem operasi termasuk Windows Windows for Workgroups, Windows 95/98/ME ketika menjalankan aplikasi 16-bit, NetWare, dan Classic Mac versi OS sistem dan ke atas. Non-multitasking sistem operasi termasuk versi Mac OS, MS DOS, dan Commodore 64 OS yang hanya bisa menjalankan satu program pada satu waktu. Beberapa sistem operasi yang paling awal yang tersedia untuk pengguna rumahan menampilkan preemptive multitasking adalah Sinclair QDOS 1984 [3] dan Amiga OS 1985. Kedua berlari pada mikroprosesor Motorola 68000-keluarga tanpa manajemen memori. Meskipun ada sistem Unix-like lainnya seperti Xenix dan koheren, mereka sering bisa mahal untuk digunakan di OS digunakan pembebanan dinamis dari blok kode yang dapat direlokasikan "bakhil" dalam jargon Amiga untuk multitask Terlebih Dahulu semua proses dalam ruang alamat yang sama datar. Awal sistem operasi PC, seperti MS-DOS dan DR-DOS, tidak mendukung multitasking sama sekali. Novell NetWare, Microsoft Windows dan OS / 2 sistem diperkenalkan koperasi multitasking ke PC, tetapi tidak mendukung preemptive multitasking. Dalam hal PC, lambat awal sebagian karena kebutuhan untuk mendukung kode warisan besar perangkat lunak DOS tertulis untuk menjalankan dalam modus single-user, sedangkan sistem Amiga dirancang untuk multitask dari awal. Versi awal Windows untuk mendukung bentuk terbatas preemptive multitasking adalah Windows yang menggunakan Intel 80386 Virtual 8086 mode untuk menjalankan aplikasi DOS di mesin virtual 8086 - dikenal sebagai "kotak DOS" - yang dapat mendahului. Pada Windows 95, 98 dan ME, aplikasi 32-bit dibuat memesan efek terlebih dahulu dengan menjalankan masing-masing dalam ruang alamat yang terpisah, tapi aplikasi 16 bit tetap kooperatif. [2] Windows NT selalu mendukung preemptive multitasking. SUMBER 3. PROCESS CONTROL BLOCk PENGERTIAN PROCESS CONTROL BLOCK PCB adalah struktur data yang dipakai oleh OS untuk mengelola semua OS yang modern telah memuat PCBProcess Control Block namun strukturnya berbeda-beda pada setiap OS juga memuat informasi tentang proses, yaitu sebuah tanda pengenal proses Process ID yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Sebagai contoh, struktur data yang mengendalikan beberapa PCB adalah process table. Bisa saja beberapa PCB ditaruh pada daftar dalam waktu yang table ini menggambarkan sistem tersebut ketika OS menemukan tiap-tiap PCB melalui proses ID. 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. 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 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. Definisi Proses Proses adalah program yang sedang dieksekusi. Menurut SilberSchatz, suatu proses adalah lebih dari sebuah kode program, yang terkadang disebut text section . Proses juga mencakup program counter , yaitu sebuah stack untuk menyimpan alamat dari instruksi yang akan dieksekusi selanjutnya dan register. Sebuah proses pada umumnya juga memiliki sebuah stack yang berisikan data-data yang dibutuhkan selama proses dieksekusi seperti parameter method, alamat return dan variabel lokal, dan sebuah data section yang menyimpan variabel global. Kami tekankan bahwa program itu sendiri bukanlah sebuah proses; suatu program adalah satu entitas pasif; seperti isi dari sebuah berkas yang disimpan didalam disket. Sedangkan sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang menyimpan alamat instruksi selanjut yang akan dieksekusi dan seperangkat sumber daya resource yang dibutuhkan agar sebuah proses dapat dieksekusi. 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. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga mengubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya misalnya pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya. Proses control block Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block PCB - juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal dibawah ini 1. Status proses status mungkin, new, ready, running, waiting, halted, dan juga banyak lagi. 2. Program counter suatu stack yang berisi alamat dari instruksi selanjutnya untuk dieksekusi untuk proses ini. 3. CPU register Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator , indeks register, stack pointer , general-purposes register , ditambah code information pada kondisi apa pun. Besertaan dengan program counter, keadaaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya 4. Informasi managemen memori Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi 5. Informasi pencatatan Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun jumlah job atau proses, dan banyak lagi. 6. Informasi status I/O Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi. 7. PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari proses yang satu dengan yang lain. Gambar Proses Control Blok Elemen-elemen dari Process Control Block PCB menjelaskan proses yang sedang terjadi kondisi yang terjadi pada proses urutan perintah yang jelas pad suatu proses counter instruksi pada proses pointers media penyimpanan penunjuk alamat pada proses data data yang berkaitan dengan proses status information terdapat masukan dan keluaran yang diinginkan 7Accounting information memberikan informasi yang dibutuhkan Macam-Macam Jenis Status Proses Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu 1. .Ready adalah status dimana proses siap untuk dieksekusi pada giliran berikutnya 2. Running adalah status dimana saat ini proses sedang dieksekusi oleh prosesor 3. Blocked adalah status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas. Identifikasi Proses yaitu Identifier numerik yang meliputi a. Identifier proses b. Identifier proses yang menciptakan c. Identifier pemakai SUMBER 4. DISTRIBUTED 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 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. 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 & Mikrodimana 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 feriwall. 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 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. CONTOH ATM, komputer yang dirancang untuk tugas-tugas melaksanakan proyek, analisis finansial, penjadwalan waktu dan akuntansi. Contoh lainnya, pengolahan data pada server yahoo yang tersebar hampir di seluruh dunia secara distribusi, setiap wilayah mempunyai server masing-masing. Seperti di indonesia mempunyai server tersendiri sehingga pengolahan data tidak di pusat melainkan di wilayah masing-masing, dll. SUMBER 5. 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. Perkembangan System Handheld Sekitar tahun 1990-an dikembangkan sistem yang lebih kecil dari mikrokompuer yang disebut dengan sistem handheld dalam bentuk personal digital assistants PDA. Pada beberapa sistem terdapat telepon selular. Sistem ini mempunyai memory yang terbatas, prosessor dengan kecepatan rendah dan display screen yang kecil. Personal Digital Assistants disingkat PDA adalah sebuah alat elektronik yang berbasis komputer dan berbentuk kecil serta dapat dibawa kemana-mana. PDA banyak digunakan sebagai pengorganisir pribadi pada awalnya, tetapi karena perkembangannya, kemudian bertambah banyak fungsi kegunaannya, seperti kalkulator, penunjuk jam dan waktu, permainan komputer, pengakses internet, penerima dan pengirim surat elektronik e-mail, penerima radio, perekam video, dan pencatat memo. Selain dari itu dengan PDA komputer saku ini, kita dapat menggunakan buku alamat dan menyimpan alamat, membaca buku-e, menggunakan GPS dan masih banyak lagi fungsi yang lain. Bahkan versi PDA yang lebih canggih dapat digunakan sebagai telepon genggam, akses internet, intranet, atau extranet lewat Wi-Fi atau Jaringan Wireless. Salah satu ciri khas PDA yang paling utama adalah fasilitas layar sentuh. Bertahun-tahun dunia PDA membeku. Lalu Palm Inc. meluncurkan PDA pertamanya di tahun 1996. Peluncuran inilah yang kemudian mengubah nasib PDA dan sekaligus mendongkrak popularitas PDA di jagad elektronik. Alat genggam yang disinergikan dengan operating system OS Palm ini menuai sukses luar biasa. Kemudahan sinkronisasi dengan PC dan pendekatan pengoperasian berbasis ikon membuat banyak pengguna merasakan kegunaan alat yang satu ini, lebih daripada sekedar sebuah piranti genggam biasa. Dalam jangka waktu enam tahun, pertumbuhan PDA sendiri boleh dikatakan luar biasa, meskipun tentu saja tak secepat perangkat komputer pada umumnya. Selama kurun waktu tersebut, PDA terus tumbuh, baik dari sisi teknologi maupun bisnis. contoh sistem operasi yang digunakan. Palm OS saat ini masih merupakan pemain yang paling dominan. Merek-merek yang menggunakan OS ini antara lain adalah Palm sendiri, Sony, IBM dan Handspring. Berikutnya adalah WindowsCE atau sekarang disebut PocketPC. Operating system khusus untuk PDA atau PocketPC ini dibuat oleh Microsoft, karena itu tampilan pada versi PocketPC 2002 hampir mnyerupai tampilan pada Windows XP. Sebagai catatan popularitas PocketPC kini terdongkrak cukup kuat seiring dengan komitmen Microsoft yang besar terhadap perkembangan sistem operasi ini. Merek yang menggunakan OS ini antara lain HP, Compaq, Casio, dan Siemen. Sejarah Perkembangan System Handheld 1993 Ponsel pintar yang pertama, IBM Simon, memiliki fitur layar sentuh, email, dan fitur PDA dirilis. 1996 Palm Pilot 1000 personal digital assistantPDA diperkenalkan pertama kali dengan sistem operasi Palm OS. 1996 PC handled pertama dengan sistem Windows CE diperkenalkan. 2000 Symbian menjadi sistem operasi genggam modern pertama pada ponsel pintar dengan munculnya Ericsson R380. 2001 The Kyocera 6035 menjadi ponsel pintar pertama yang menggunakan Palm OS. 2002 Microsoft Windows CE versi Pocket PC untuk ponsel pintar diperkenalkan. 2002 BlackBerry merilis ponsel pintar pertamanya. 2007 Apple iPhone dengan iOS pertama kali diperkenalkan. 2008 OHA merilis Android dengan HTC Dream T-Mobile G1 sebagai ponsel Android yang pertama. 2009 Palm memperkenalkan webOS melalui Palm Pre. 2009 Samsung memperkenalkan Bada OS melalui Samsung S8500. 2010 Windows Phone OS dirilis. Fungsi PDA Pertama dan terutama fungsi dari sebuah piranti genggam semacam PDA adalah untuk mengelola informasi atau data. Lebih spesifik lagi karena namanya juga Personal Digital Assistant, maka data yang dikelolanya pun bersifat personal. Diantaranya alamat, nomor telepon, alamat e-mail, jadwal kegiatan dan daftar kegiatan yang harus kita kerjakan. Baru setelah fungsi itu PDA dikembangkan sehingga lebih memainkan peran sebagai subnotebook. tentu saja fungsi yang selama ini diperankan oleh organizer juga termasuk didalamnya, seperti jam, kalkulator dan kalender. Sebagian besar PDA dapat disinkronisasikan kedalam komputer desktop atau notebook, sehingga kita dapat me-maintenace informasi/data kita dan meng-update-nya kedalam komputer baik yang ada dikantor maupun yang ada dirumah. Saat ini, handheld keluaran terbaru sudah mampu berperan sebagai alat memainkan musik, pemutar musik MP3 MP3 player, membaca buku elektronik eBook Reader bahkan memainkan video streaming. Dengan kemampuan grafis yang tidak lagi hitam putih, handheld ini sudah melebihi tanggung jawabnya sebagai Asisten Pribadi sesuai dengan namanya, namun walau begitu jangan sekali-kali menyamakan kemampuan PDA dengan notebook apalagi PC desktop. Sistem Kerja PDA Sebagai komputer genggam, PDA memiliki processor dan sistem operasi layaknya komputer biasa. Sistem operasi ini merupakan peranti lunak utama pada PDA. Cara kerjanya sama seperti sitem operasi pada komputer seperti Windows XP atau Mac OS, tetapi didesain khusus untuk PDA. Terdapat dua kesamaan sistem operasi pada PDA yaitu Palm dan Pocket PC Windows Mobile. Keduanya bekerja dengan program piranti lunak yang berbeda, jadi walaupun berisikan banyak dokumen seperti gambar, musik dan lainnya yang bisa dipakai namun tidak pada pemrogaman. Pada penyimpanan data tanpa kartu memori, data disimpan dalam RAM dengan ukuran puluhan MegaByte, sedangkan sumber energinya berasal dari baterai dulunya A3 isi ulang. Selain itu, bisa juga menggunakan adaptor yang disambungkan ke stop kontak AC. Kegunaan PDA o Telekomunikasi o Informasi o Pendidikan o Olahraga Fitur yang terdapat dalam PDA o Layar sentuh o GPS o PCPocket o Koneksi Nirkabel o Agenda o Memory o LAN o Surel o Hiburan o Kamera o Sinkronisasi Keuntungan dan Kelemahan menggunakan PDA Keuntungan. Ukuran kecil dan ringan, piranti ini jelas menjadi penopang mobilitas kerja, sehingga kita bisa membawanya kemana-mana dan dimana saja kita dapat melakukan kerja dengan piranti ini. Sebagian aplikasi berharga murah bahkan ada yang dapat di-download secara gratis dari dan Perlengkapan. Sebagian aksesoris dan perlengkapan umumnya dapat diperoleh dengan Proses booting tidak memakan waktu yang lama dibandingkan desktop atau Umur baterai tergantung model, tapi pada umumnya PDA punya ketahanan digunakan minimal sehari tanpa dicolokkan ke listrik. Bahkan ada yang bisa diganti dengan baterai alkaline Desktop. Anda bisa melakukan sinkronisasi data antara PDA dengan PC secara gampang dan Sebagian piranti PDA dilengkapi fasilitas teknologi tanpa kabel sehingga memudahkan kita bekerja di mana Infrared. Memudahkan fasilitas transfer data tanpa perlu kabel atau peranti tambahan satu alat. Dengan alat ini, kita tidak perlu menenteng buku, kalender, arloji, bahkan ponsel, karena saat ini ada PDA yang sudah ter-integrasi dengan ponsel. Kelemahan. Ukuran dan berat Lantaran berukuran terlalu kecil, kadangkala Kita lupa menaruhnya dimana, atau terjatuh ketika kita simpan didalam saku kemeja atau bahkan kita benar-benar kehilangan piranti yang satu ini. Hampir semua OS di handheld tidak bisa di-upgrade layaknya OS di PC desktop atau dan perlengkapan. Lantaran terlalu banyak aksesoris dan perlengkapan, terkadang justru membuat ribet dan berat, apalgi jika kita sering bergerak Data. Proses meng-input data lebih lambat, baik menggunakan pena stylus maupun dengan kibor mini. jauh lebih kikuk dibanding input data di Bila kita mencolokkan piranti ini ke sumber listrik AC terlalu lama, umur batre akan merosot lebih cepat dibanding umur layar. Sebagian PDA memang memiliki layar yang bagus, tetapi sebagian besar layar PDA sangat susah dibaca ketika berada dibawah terik sinar layar. Layar PDA biasanya sensitif terhadap goresan. kadangkala sensitifnya berlebihan sehingga layarnya mudah Standarisasi PDA terlalu banyak, mulai dari hardware-nya maupun software-nya, sehingga meyulitkan untuk pengembangan lebih yang cepat. Perkembangan yang cepat mebuat kita kadangkala merasa sayang membeli alat yang secara teknologis tidak berumur lama. Sistem Kerja PDA Sebagai komputer genggam, PDA memiliki processor dan sistem operasi layaknya komputer biasa. Sistem operasi ini merupakan peranti lunak utama pada PDA. Cara kerjanya sama seperti sitem operasi pada komputer seperti Windows XP atau Mac OS, tetapi didesain khusus untuk PDA. Terdapat dua kesamaan sistem operasi pada PDA yaitu Palm dan Pocket PC Windows Mobile. Keduanya bekerja dengan program piranti lunak yang berbeda, jadi walaupun berisikan banyak dokumen seperti gambar, musik dan lainnya yang bisa dipakai namun tidak pada pemrogaman. Pada penyimpanan data tanpa kartu memori, data disimpan dalam RAM dengan ukuran puluhan MegaByte, sedangkan sumber energinya berasal dari baterai dulunya A3 isi ulang. Selain itu, bisa juga menggunakan adaptor yang disambungkan ke stop kontak AC. SUMBER 6. THREAD Suatu proses didefinisikan oleh resource yang digunakan dan lokasi yang akan dieksekusi. Namun ada kalanya proses-proses akan menggunakan resource secara bersama-sama. Suatu unit dasar dari CPU utilization yang berisi program counter, kumpulan register, dan ruang stack disebut dengan thread atau lighweight processLWP. Thread akan bekerja sama dengan thread lainnya dalam hal penggunaan bagian kode, bagian data, dan resource sistem operasi, seperti open file dan sinyal secara kolektif yang sering disebut dengan task. 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. 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. Dalam gambar tersebut terlihat perbedaan antara single thread dengan multi thread. Setiap thread dapat melakukan proses tersendiri, sehingga proses yang semula besar dipecah ke dalam proses kecil­kecil, sedangkan pada single thread hanya ada 1 thread yang menangani proses yang besar. Tentu multithread akan lebih cepat dari pada single thread, namun dalam kasus tertentu terlalu banyak multithread justru memperlambat kerja atau proses. 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. 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. Model Multi-Threading 1. Many-to-One Model many­to­one ini memetakan beberapa tingkatan pengguna thread hanya ke satu buah kernel thread. Managemen proses thread dilakukan oleh di ruang pengguna, sehingga menjadi efisien, tetapi apabila sebuah thread melakukan sebuah pemblokingan terhadap sistem pemanggilan, maka seluruh proses akan berhenti blocked. Kelemahan dari model ini adalah multihreads tidak dapat berjalan atau bekerja secara paralel di dalam multiprosesor dikarenakan hanya satu thread saja yang bisa mengakses kernel dalam suatu waktu. 2. One-to-One Model one­to­one memetakan setiap thread pengguna ke dalam satu kernel thread. Hal ini membuat model one­to­one lebih sinkron daripada model many­to­one dengan mengizinkan thread lain untuk berjalan ketika suatu thread membuat pemblokingan terhadap sistem pemanggilan; hal ini juga mengizinkan multiple thread untuk berjalan secara parallel dalam multiprosesor. Kelemahan model ini adalah dalam pembuatan thread pengguna dibutuhkan 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 one­to­one diimplementasikan oleh Windows NT dan OS/2. 3. Many-to-Many Beberapa tingkatan thread pengguna dapat menggunakan jumlah kernel thread yang lebih kecil atau sama dengan jumlah thread pengguna. Jumlah dari kernel thread dapat dispesifikasikan untuk beberapa aplikasi dan beberapa mesin suatu aplikasi dapat dialokasikan lebih dari beberapa kernel thread dalam multiprosesor daripada dalam uniprosesor dimana model many­to­one mengizinkan pengembang untuk membuat thread pengguna sebanyak mungkin, konkurensi tidak dapat tercapai karena hanya satu thread yang dapat dijadualkan oleh kernel dalam satu waktu. Model one­to­one mempunyai konkurensi yang lebih tinggi, tetapi pengembang harus hati­hati untuk tidak membuat terlalu banyak thread tanpa aplikasi dan dalam kasus tertentu mungkin jumlah thread yang dapat dibuat dibatasi. 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. Thread Pools Thread Pools adalah cara kerja dengan membuat beberapa thread pada proses startup dan menempatkan mereka ke pools. 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. THREADS PADA WINDOWS Windows mengunakan Win32 API sebagai API utama dalam hampir semua sistem operasi Microsoft. Selain itu windows mengimplementasi model relasi One-to-One, dimana terdapat satu kernel thread yang berasosiasi dengan masing – masing user thread. Thread pada windows secara umum mempunyai komponen sebagai berikut • Thread ID • Register set • User stack dan kernel stack • Private storage area. Register set, stacks dan private data storage disebut sebagai context dari sebuah thread. Struktur data utama dari sebuah thread • ETHREAD executive thread block • KTHREAD kernel thread block • TEB thread environment block ETHREAD executive thread block Bagian penting dari ETHREAD adalah KTHREAD, Process ID, Thread start address. Blok KTHREAD merupakan pointer yang merujuk pada kernel thread KTHREAD, Process ID juga merupakan suatu pointer yang menunjuk pada proses utama yang memiliki thread tersebut dan Thread start address adalah alamat dari rutin awal thread. KTHREAD kernel thread block KTHREAD menyimpan informasi yang dibutuhkan oleh kernel untuk dapat melakukan penjadwalan dan sinkronisasi thread. Pada KTHREAD juga terdapat kernel stack, yang mana akan digunakan ketika thread berjalan pada kernel mode. Juga terdapat pointer yang menunjuk TEB. TEB thread environment block TEB menyimpan informasi image loader dan beberapa DLLs dari windows. Komponen - komponen ini berjalan pada user mode, maka dibutuhkan suatu struktur data yang dapat dimanipulasiwritable pada user mode. Oleh karena itu, tidak seperti KTHREAD dan ETHREAD yang berada pada kernel space, TEB berada pada user space. Contoh Thread pada Sistem Operasi Windows exe Thread 29, Proses dari aplikasi chatting Line. exe Thread 12, Proses dari aplikasi Google Chrome. System Thread 117, Proses yang merupakan menggambarkan sistem yang bertanggung jawab atas memori sistem dan memori terkompresi pada kernel NT. CONTOH sebuah web browser mempunyai thread untuk menampilkan gambar atau tulisan sedangkan thread yang lain berfungsi sebagai penerima data dari network. sebuah web server dapat mempunyai ratusan klien yang mengaksesnya secara concurrent. Kalau web server berjalan sebagai proses yang hanya mempunyai thread tunggal maka ia hanya dapat melayani satu klien pada pada satu satuan waktu. Bila ada klien lain yang ingin mengajukan permintaan maka ia harus menunggu sampai klien sebelumnya selesai dilayani. Solusinya adalah dengan membuat web server menjadi multi-threading. Dengan ini maka sebuah web server akan membuat thread yang akan mendengar permintaan klien, ketika permintaan lain diajukan maka web server akan menciptakan thread lain yang akan melayani permintaan tersebut. SUMBER Era digital membawa transformasi yang cukup signifikan bagi perusahaan, salah satunya dengan kemunculan batch processing agar proses transfer data lebih efisien. Dengan memahami sistem tersebut, Anda akan memperoleh keuntungan bagi perusahaan. Lantas, apa itu batch processing, bagaimana sejarah dan implementasinya dalam kehidupan? Berikut ulasannya! Apa itu batch processing Definisi mengenai batch processing adalah sebuah sistem yang bisa digunakan untuk mengolah data maupun menjalankan tugas tertentu. Proses ini akan berjalan secara otomatis. Selain itu, batch processing juga bekerja secara berulang-ulang. Jadi, dalam praktiknya, sistem ini akan bekerja tanpa banyak memerlukan interaksi dengan manusia. Dengan kata lain, data yang masuk akan diproses secara otomatis melalui sistem komputasi. Dalam hal ini, biasanya data yang diproses berjumlah besar dan cukup kompleks, misalnya proses mengenai sebuah laporan dan sebagainya. Pemrosesan data ke dalam kelompok yang dilakukan oleh perusahaan ini bisa dilakukan secara berkala, contohnya adalah satu bulan sekali. Perusahaan yang menggunakan sistem ini, akan merasakan banyak keuntungan dan manfaat. Berikut beberapa di antaranya yang perlu Anda ketahui. Memangkas biaya operasional, sebab dalam proses ini akan dikerjakan secara otomatis oleh komputer. Bandingkan saja jika proses tersebut mempekerjakan lebih dari satu orang karyawan. Maka, perusahaan akan ada biaya tambahan lain yang harus dikeluarkan. Batch processing memiliki tingkat akurasi yang tinggi. Hal itu karena semua prosesnya dilakukan oleh mesin, sehingga kesalahan bisa diminimalkan. Proses perhitungan juga dapat dilakukan lebih cepat bila dibandingkan dengan cara manual. Dapat diandalkan kapan saja dan di mana saja. Proses batch bekerja secara berlanjut, termasuk dapat dioperasikan di luar jam kerja maupun hari libur dan dalam periode tinggi maupun rendah. Dengan begitu, pemrosesan data lebih mudah dan dapat diandalkan setiap saat. Sejarah batch processing Perjalanan dan pengembangan batch processing memang cukup panjang. Setidaknya, sejak pekerjaan manusia mengalami perkembangan teknologi dan mengurangi interaksi dalam pekerjaan. Sejarah batch processing bisa dilihat melalui mesin yang diciptakan oleh Herman Hollerith pada 1890-an. Pada saat itu, Hollerith mengembangkan sebuah sistem dan proses yang memudahkan dalam sensus di Amerika Serikat. Di masa itu, dirinya mengembangkan mesin yang disebut dengan Electro Tabulating Machine. Seiring berjalannya waktu, mesin awal ini semakin serius dikembangkan dan melahirkan Computing Tabulating Recording Company CTR. Perusahaan inilah yang menjadi cikal bakal sebagai salah satu perusahaan teknologi terbesar di dunia, yakni International Business Machine IBM. Dalam prosesnya, batch yang diproses secara modern ini akan dikendalikan secara otomatis dalam kondisi dan situasi waktu tertentu. Di sisi lain, tugas-tugas lain akan segera dilakukan secara real-time dan akan terus dipantau dengan cermat. Jadi, ketika sistem mengalami masalah, sistem tersebut juga memberi tahu pengguna melalui peringatan manajemen berbasis pengecualian. Dengan begitu, proses otomatisasi bisa memberikan waktu luang bagi para petinggi perusahaan untuk melaksanakan tugas lainnya. Perangkat lunak pada batch processing akan mengidentifikasi pengecualian lewat sebuah sistem monitoring maupun dependensi. Namun, di sini yang perlu diingat adalah batch processing memerlukan penanganan dan melibatkan data yang kompleks dan berjumlah besar, maka apabila input tak aktif dengan berbagai cara, proses batch juga akan berjalan dengan cacat. Hal itu akan membuang waktu, tenaga, dan biaya. Implementasi batch processing Batch processing memang memberikan manfaat yang cukup besar bagi perusahaan. Akan tetapi, apakah perusahaan benar-benar memerlukannya? Berikut implementasi batch processing yang perlu Anda ketahui. Transaksi untuk perusahaan yang bergerak di bidang perbankan dan finansial. Proses transaksi yang dilakukan di luar jam kerja dengan cara manual tentu akan menguras tenaga, biaya lembur, dan sebagainya. Di era modern, perusahaan perbankan banyak menggunakan teknik batch processing untuk transaksi lebih baik dan cepat dalam sebuah infrastruktur komputasi awan atau cloud. Pelaporan biasanya digunakan oleh perusahaan yang bergerak di bidang manufaktur maupun ritel. Penggunaannya biasanya khusus dalam pembuatan pelaporan mengenai alur produksi yang setiap saat harus dijalankan secara teratur dalam sebuah perusahaan. Proses integrasi sistem data, seperti contoh daftar transaksi dalam kurun waktu tertentu yang akan dimasukkan ke dalam data Enterprises Resource Planning ERP. Riset yang dilakukan oleh perusahaan, misalnya untuk melihat performa karyawan dan dikalkulasikan dengan aspek-aspek yang ada. Penggunaan untuk billing, biasanya digunakan oleh perusahaan yang bergerak di bidang telekomunikasi untuk memproses data panggilan dalam jumlah yang sangat besar. Kesimpulan Dari ulasan singkat di atas, dapat disimpulkan bahwa batch processing adalah proses yang sangat dibutuhkan dan penting bagi sebuah perusahaan di era modern. Hal itu bertujuan untuk meningkatkan efisiensi, baik dari segi waktu, pengeluaran biaya, hingga tenaga. Batch processing tidak akan berjalan baik tanpa adanya sumber daya manusia yang mumpuni. Untuk mempelajari batch processing, Anda bisa mulai dengan mengikuti kelas data science yang diselenggarakan oleh Algoritma Data Science School. Ada banyak materi kelas yang bisa Anda ikuti sesuai dengan kebutuhan, mulai dari kelas individu hingga korporat. Kurikulum yang digunakan juga telah mendapat sertifikasi resmi dari RStudio. Referensi investopedia – BP simplicable – Example of BP

buatlah contoh sistem komunikasi dalam batch processing system