TUGAS INDIVIDU 2

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

Hasil gambar untuk sistem batch system



 BENTUK DARI BATCH SYSTEM
ada 2 cara dalam Batch System yaitu :

  1. Multi-programming adalah salah satu teknik penjadwalan dimana tugas (task) yang sedang  berjalan tetap berjalan sampai ia melakukan operasi yang membutuhkan waktu untuk menunggu respon dari luar (external event), misalnya membaca data dari disket/CD/dsb, atau sampai komputer memaksa untuk menukar tugas yang sedang berjalan dengan tugas lainnya. Sistem operasi yang yang menggunakan multi-program sebagai scheduler-nya bertujuan untuk memaksimalkan penggunaan CPU. 
  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.
      

      SYSTEM OPERAS


    A.    Sistem Operasi Komputer PC 
    Berikut Jenis-Jenis Sistem Operasi pada Komputer Pc
         1.      DOS
         2.      Unix
         3.      Linux
         4.      Windows
         5.      Mac OS
         6.   Ubuntu
          B.     Sistem Operasi Hadphone, dll
    Sedagkan untuk Jenis Sistem Operasi pada Handphone, dll adalah Sbb:
         1.      Symbian
         2.      Windows Mobile
         3.      Mobile Linux
         4.      OS BlackBerry
         5.      Palm
         6.      Java
         7.      Android

    http://onepersen4ever.blogspot.com/2014/04/pengertian-batch-system-bentuk-batch.html


    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.
    Hasil gambar untuk pengertian critical section
    Struktur umum dari proses Pi yang memiliki segmen critical section adalah :
    Struktur umum dari proses Pi adalah:

    do {
                   entry section
                      critical section
                   exit section
                      remainder section
                } while (1);
            
    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.
    1. 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.
    1. 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).
    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.
    1. 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 masukCriticalSection(int t) {
             while (turn != t)
                Thread.yield();
          }

          public void keluarCriticalSection(int 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:

    boolean flag[2];
    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 masukCriticalSection(int t) {
             int other;
      
             other = 1 - t;

             flag[t] = true;
         
             while (flag[other] == true)
                Thread.yield();
          }

          public void keluarCriticalSection(int t) {
             flag[t] = false;
          }

          private volatile boolean[] flag = new boolean[2];
       }
      
      
    Di algoritma 2 ini, proses Pi pertama-tama mengubah nilai(set) 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 masukCriticalSection(int t) {
             int other;

             other = 1 - t;
      
             flag[t] = true;
             turn = other;

             while ( (flag[other] == true) && (turn == other) )
                Thread.yield();
          }

          public void keluarCriticalSection(int 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 < j, maka Pi dilayani dahulu. Karena setiap nama proses adalah unik dan berurut, maka algoritma ini dapat digunakan untuk memecahkan masalah critical section untuk n buah proses.
    Struktur data umum algoritma ini adalah
                   boolean choosing[n];
                   int number [n];
    Awalnya, struktur data ini diinisialisasi masing-masing ke false dan 0, dan menggunakan notasi berikut:
    - (a, b) < (c, d) jika a < c atau jika a= c dan b < d
    - max(a0, ..., an-1) adalah sebuah bilangan k, sedemikian sehingga k >= ai untuk setiap i= 0, ..., n – 1

    Algoritma Tukang Roti
      
          do {
             choosing[i] = true;
             number[i] = max(number[0], number [1], ..., number [n+1])+1;
             choosing[i] = false;
             for (j=0; j < n; j++) {
                while (choosing[j]);
                while ((number[j]!=0) && ((number[j],j) < number[i],i)));
             }
                <foreignphrase>critical section</foreignphrase>
             number[i] = 0;
                <foreignphrase>remainder section</foreignphrase>
          } 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 2.0a. 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 3.1 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 aktif.Secara 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 operasi.Hal 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 alasan.Multitasking 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 2.x - 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 1.x, 2.x, 3.x, Windows for Workgroups, Windows 95/98/ME (ketika menjalankan aplikasi 16-bit), NetWare, dan Classic Mac versi OS (sistem 5.0 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 rumah.Amiga 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 2.1x, 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.
     Meskipun ada rencana untuk meng-upgrade koperasi multitasking Mac OS untuk model preemptive (dan API preemptive memang ada di Mac OS 9, walaupun dalam arti yang sangat terbatas [4] dan jarang dieksploitasi), ini adalah ditinggalkan mendukung Mac OS X , hibrida dari MacOS dan sistem operasi nextstep, yang didasarkan pada kernel Mach dan menyediakan Unix-like preemptive multitasking. OS / 2 Warp, IBM menulis ulang dari sebuah kolaborasi / IBM sebelumnya Microsoft, OS / 2, ditargetkan pada 386 sistem, didukung preemptive multitasking aplikasi asli, dan juga beberapa diijinkan berbeda Windows sesi yang akan multitasked Terlebih Dahulu.
    Sebuah sistem operasi preemptive mengambil kendali dari prosesor dari tugas dalam dua cara: 
    Ketika waktu kuantum tugas (atau time slice) berjalan keluar.Setiap tugas yang diberikan hanya diberikan kontrol untuk menetapkan jumlah waktu sebelum sistem operasi interrupts dan jadwal yang lain untuk menjalankan tugas. 
    Ketika sebuah tugas yang memiliki prioritas lebih tinggi menjadi siap dijalankan. Tugas yang sedang berjalan kehilangan kontrol prosesor ketika tugas dengan prioritas yang lebih tinggi siap dijalankan terlepas dari apakah itu memiliki waktu tersisa di kuantum atau tidak.

    http://operatingsystem12.blogspot.com/2011/04/problema-critical-section-serta.html.


    Sistem Operasi - PCB (process control block)

    PCB (process control block) dalam Sistem Operasi

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

    Contoh sistem operasi modern adalah Linux, Android, iOS, Mac OS X, dan Microsoft Windows.

    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 (lihat Gambar 2-3).
    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 (lihat Bab Managemen memori).
    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) :
    1.Identifier : menjelaskan proses yang sedang terjadi
    2.State : kondisi yang terjadi pada proses
    3.Priority : urutan perintah yang jelas pad suatu proses
    4.Program counter : instruksi pada proses
    5.Memory pointers : media penyimpanan (penunjuk alamat) pada proses
    5.Context data : data yang berkaitan dengan proses
    6.I/O 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



    http://femmifirdausahdiat.blogspot.com/2012/09/pcb-process-control-block.html



    DISTRIBUSI PROCESSING

    Definisi umum dari pemrosesan terdistribusi merupakan cara untuk mempercepat pengolahan data atau informasi dengan mendistribusikan pekerjaan atau intruksi ke banyak komputer yang telah dipilih untuk memberi kekuatan pemrosesan yang lebih cepat. Tujuan dari komputasi terdistribusi adalah menyatukan kemampuan dari sumber daya (sumber komputasi atau sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponen-komponennya.
    Tujuan lain yang ingin dicapai dalam komputasi terdistribusi adalah transparansi. Kenyataan bahwa sumber daya yang dipakai oleh pengguna sistem terdistribusi berada pada lokasi fisik yang terpisah, tidak perlu diketahui oleh pengguna tersebut. Transparansi ini memungkinkan pengguna sistem terdistribusi untuk melihat sumber daya yang terpisah tersebut seolah-olah sebagai satu sistem komputer tunggal, seperti yang biasa digunakannya. Dalam prosesnya setiap komputer berinteraksi satu sama lain untuk mencapai tujuan bersama.
    Hasil gambar untuk pengertian distributed processing
    ARSITEKTUR KOMPUTER PARALEL
    Karakteristik umum dari architectural parallel komputer adalah sebagai berikut:
    • Pertama dalam hal pembagian memori pada komputer parallel yang sangat bervariasi, namun pada umumnya memiliki kesamaan kemampuan untuk semua prosesor dalam mengakses semua memori sebagai ruang alamat global.
    • Kedua beberapa prosesor dapat beroperasi secara independen akan tetapi harus didukung oleh berbagai sumber daya memori yang sama.
    • Ketiga yaitu karakteristik yang terletak pada perubahan lokasi memori yang dipengaruhi oleh satu prosesor yang terlihat oleh proses – prosesor lainnya.
    • Keempat, karakteristiknya terlihat pada mesin memori bersama dapat dibagi menjadi dua kelas utama berdasarkan waktu akses memori: UMA dan NUMA.
    Sesuai taksonomi Flynn, seorang Designer Processor, Organisasi Prosesor dibagi menjadi 4 :
    • SISD (Single Instruction Single Data Stream)
    Single Instruction – Single Data. Komputer ini memiliki hanya satu prosesor dan satu instruksi yang dieksekusi secara serial. Komputer ini adalah tipe komputer konvensional. Menurut mereka tipe komputer ini tidak ada dalam praktik komputer paralel karena bahkan mainframe pun tidak lagi menggunakan satu prosesor.
    • SIMD (Single Instruction Multiple Data Stream)
    Single Instruction – Multiple Data. Komputer ini memiliki lebih dari satu prosesor, tetapi hanya mengeksekusi satu instruksi secara paralel pada data yang berbeda pada level lock-step.
    • MISD (Multiple Instruction Single Data Stream)
    Multiple Instructions – Single Data. Teorinya komputer ini memiliki satu prosesor dan mengeksekusi beberapa instruksi secara paralel tetapi praktiknya tidak ada komputer yang dibangun dengan arsitektur ini karena sistemnya tidak mudah dipahami.
    • MIMD (Multiple Instruction Multiple Data Stream)
    Multiple Instructions – Multiple Data. Komputer ini memiliki lebih dari satu prosesor dan mengeksekusi lebih dari satu instruksi secara paralel. Tipe komputer ini yang paling banyak digunakan untuk membangun komputer paralel, bahkan banyak supercomputer yang menerapkan arsitektur ini.
    THREAD PROGRAMMING
    Secara umum model pemrograman ini adalah jenis pemrograman memori yang digunakan secara bersamaan. Dalam Thread Programming Paralel, sebuah proses tunggal dapat memiliki beberapa jalur eksekusi yang konkuren. Implementasi thread bukanlah hal baru dalam teknik komputasi, Secara historis, perusahaan hardware menerapkan thread versi mereka sendiri. Implementasi tersebut berada secara substansial dari satu sama lain sehingga sulit bagi programmer untuk mengembangkan aplikasi yang thread portabel.
    MESSAGING PASSING, OPEN MP
    Jenis model ini menunjukkan karakteristik sebagai berikut:
    • Tugas pertukaran data melalui komunikasi dengan mengirim dan menerima pesan.
    • Transfer data biasanya memerlukan kerjasama operasi yang akan dilakukan oleh masing-masing proses.
    (Open Multi-Processing) adalah sebuah antarmuka pemrograman aplikasi (API) yang mendukung multi processing shared memory pemrograman di C, C++ dan Fortran pada berbagai arsitektur, termasuk UNix dan Microsoft Windows platform. OpenMP Terdiri dari satu set perintah kompiler, perpustakaan rutinitas, dan variabel lingkungan yang mempengaruhi run-time. Banyak Aplikasi dibangun dengan model hibrida pemrograman paralel  dapat dijalankan pada komputer cluster dengan menggunakan OpenMP dan Message Passing Interface (MPI), atau lebih transparan dengan menggunakan ekstensi OpenMP non-shared memory systems.
    PEMROGRAMAN CUDA (GRAPHICAL PROCESSING UNIT)
    Sebagaimana telah kita ketahui bahwa Cuda adalah platform komputasi paralel dan model pemrograman yang diciptakan oleh perusahaan perangkat keras dunia yaitu NVIDIA. hal ini memungkinkan peningkatan dramatis dalam kinerja komputasi dengan memanfaatkan kekuatan dari Graphics Processing Unit(GPU).
    Sebuah GPU (Graphical Processing Unit) pada awalnya adalah sebuah prosesor yang berfungsi khusus untuk melakukan rendering pada kartu grafik saja, tetapi seiring dengan semakin meningkatnya kebutuhan rendering, terutama untuk mendekati waktu proses yang realtime /sebagaimana kenyataan sesungguhnya, maka meningkat pula kemampuan prosesor grafik tersebut. akselerasi peningkatan teknologi GPU ini lebih cepat daripada peningkatan teknologi prosesor sesungguhnya (CPU), dan pada akhirnya GPU menjadi General Purpose, yang artinya tidak lagi hanya untuk melakukan rendering saja melainkan bisa untuk proses komputasi secara umum.
    Penggunaan Multi GPU dapat mempercepat waktu proses dalam mengeksekusi program karena arsitekturnya yang natively parallel. Selain itu Peningkatan performa yang terjadi tidak hanya berdasarkan kecepatan hardware GPU saja, tetapi faktor yang lebih penting adalah cara membuat kode program yang benarbenar bisa efektif berjalan pada Multi GPU.
    CUDA merupakan singkatan dari Compute Unified Device Architecture,didefinisikan sebagai sebuah arsitektur komputer parallel, dikembangkan oleh Nvidia. Teknologi ini dapat digunakan untuk menjalankan proses pengolahan gambar, video, rendering 3D, dan lain sebagainya. VGA – VGA dari Nvidia yang sudah menggunakan teknologi CUDA antara lain : Nvidia GeForce GTX 280, GTX 260,9800 GX2, 9800 GTX+,9800 GTX,9800 GT,9600 GSO, 9600 GT,9500 GT,9400 GT,9400 mGPU,9300 mGPU,8800 Ultra,8800 GTX,8800 GTS,8800 GT,8800 GS,8600 GTS,8600 GT,8500 GT,8400 GS, 8300 mGPU, 8200 mGPU, 8100 mGPU, dan seri sejenis untuk kelas mobile (VGA notebook).
    Singkatnya, CUDA dapat memberikan proses dengan pendekatan bahasa C, sehingga programmer atau pengembang software dapat lebih cepat menyelesaikan perhitungan yang komplek. Bukan hanya aplikasi seperti teknologi ilmu pengetahuan yang spesifik. CUDA sekarang bisa dimanfaatkan untuk aplikasi multimedia.  Misalnya meng-edit film dan melakukan filter gambar. Sebagai contoh dengan aplikasi multimedia, sudah mengunakan teknologi CUDA. Software TMPGenc 4.0 misalnya membuat aplikasi editing dengan mengambil sebagian proces dari GPU dan CPU. VGA yang dapat memanfaatkan CUDA hanya versi 8000 atau lebih tinggi.
    Keuntungan dengan CUDA sebenarnya tidak luput dari teknologi aplikasi yang ada. CUDA akan mempercepat proses aplikasi tertentu, tetapi tidak semua aplikasi yang ada akan lebih cepat walaupun sudah mengunakan fitur CUDA.
    https://erarahma.wordpress.com/2015/06/26/distribusi-processing/

         HANDHELD




    Hasil gambar untuk pengertian handheld system
    1.     Perkembangan Sistem Operasi Handheld
    Sebelum kita masuk lebih jauh tentang perkembangan OS(sytem 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
    screen yang kecil
    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 assistant(PDA) 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 1.0 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.
    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 Internet.Aksesoris dan Perlengkapan. Sebagian aksesoris dan perlengkapan umumnya dapat diperoleh dengan gampang.Instant. Proses booting tidak memakan waktu yang lama dibandingkan desktop atau notebook.Baterai. 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 biasa.Sinkronisasi Desktop. Anda bisa melakukan sinkronisasi data antara PDA dengan PC secara gampang dan praktis.Wireless. Sebagian piranti PDA dilengkapi fasilitas teknologi tanpa kabel sehingga memudahkan kita bekerja di mana saja.Sinyal Infrared. Memudahkan fasilitas transfer data tanpa perlu kabel atau peranti tambahan lainnya.Cukup 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 notebook.Aksesoris dan perlengkapan. Lantaran terlalu banyak aksesoris dan perlengkapan, terkadang justru membuat ribet dan berat, apalgi jika kita sering bergerak mobile.Input Data. Proses meng-input data lebih lambat, baik menggunakan pena stylus maupun dengan kibor mini. jauh lebih kikuk dibanding input data di PC.Baterai. Bila kita mencolokkan piranti ini ke sumber listrik AC terlalu lama, umur batre akan merosot lebih cepat dibanding umur normalnya.Kenampakan layar. Sebagian PDA memang memiliki layar yang bagus, tetapi sebagian besar layar PDA sangat susah dibaca ketika berada dibawah terik sinar matahari.Kerusakan layar. Layar PDA biasanya sensitif terhadap goresan. kadangkala sensitifnya berlebihan sehingga layarnya mudah rusak.Standarisasi. Standarisasi PDA terlalu banyak, mulai dari hardware-nya maupun software-nya, sehingga meyulitkan untuk pengembangan lebih lanjut.Perubahan 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

    o   Symbian
    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 9.5 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 6.0 dan 6.1. contohnya adalah Nokia 9210 Communicator
    • Symbian OS 7.0 dan 7.0s. Pada versi ini muncul berbagai versi user interfaceseperti 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 7.0s adalah versi 7.0 yang diadaptasi agar memiliki kompatibilitas yang lebih baik dengan versi 6.x
    • Symbian OS 8.0 dan 8.1. Contohnya adalah Nokia N91
    • Symbian OS 9. Digunakan untuk keperluan internal Symbian
    • Symbian OS 9.1. Termasuk ponsel Nokia seri S60 3rd edition dan beberapa tipe Sony Ericsson seperti M600 dan P990.
    • Symbian OS 9.2. Contohnya Nokia E90, Nokia N95, Nokia N82, dan Nokia 5700
    • Symbian OS 9.3. Misalnya Nokia E72, E75, E79, dan N96
    • Symbian OS 9.4. 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 6.5 yang dirilis 5 Oktober 2009. Ke depannya akan dirilis Windows Mobile 7.0 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 sourcesehingga agak menyulitkan pihak ketiga untuk menyediakan aplikasi yang mendukung.
    Versi-versi yang telah dirilis meliputi:
    • Pocket PC 2000
    • Pocket PC 2002
    • 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 5
    • 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
    o   Palm OS

    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 bersifatclose source. Contoh perangkat yang menggunakan sistem operasi Palm adalah Palm Treo 680. Smartphone ini menggunakan system operasi Palm OS 5.4.9. Beberapa fitur yang ditawarkan adalah Pocket Express, Microsoft Media Player, Palm files, PDF viewer, Adobe Acrobat reader, eReader, Pocket Tunes, dan Document To Go.

    o   Android
    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 5.0.0.419 (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.

    http://endrg.blogspot.com/2012/03/perkembangan-handheld.html

    Komentar

    Postingan populer dari blog ini

    PENJELASAN GAMBAR WITH A DMA CONTROLLER