Follow me @helen.nd

Senin, 08 Mei 2017

Perbedaan Masalah Klasik dalam Sinkronisasi Sistem Operasi

07.33 0 Comments
Assalamu'alaikum wr.wb.
Disini saya akan membahas tentang Perbedaan Tiga Masalah klasik dalam Siknronisasi Sistem Operasi, perbedaan ketiga maslaah klasik tersebut dapat dilihat dari 3 aspek, yakni :

1. Definisi
2. Jenis Masalah
3. Solusi Masalah


1. Definisi
  A. Bounded-Buffer

Secara umum bounded-buffer adalah sebuah tempat penampungan data, yang ukurannya terbatas. Bounded-buffer digambarkan sebagai array yang melingkar.


Ilustrasi dari bounded-buffer


Penunjuk masuk menunjuk pada posisi kosong selanjutnya pada array. Data yang baru dihasilkan akan dimasukkan ke dalam array yang ditunjuk oleh masuk. Sedangkan penunjuk keluar menunjuk pada posisi penuh pertama pada array. Jika ada data yang akan dikeluarkan dari buffer, maka data yang akan dikeluarkan itu merupakan isi dari array yang ditunjuk oleh keluar.


   B. Readers and Writers

Jika bounded-buffer adalah sebuah tempat penampungan data yang ukurannya terbatas, Sedangkan Readers and Writers Problem adalah problem yang memodelkan proses yang mengakses database. Masalah ini timbul ketika ada dua proses atau lebihberbagi data yang sama, data yang dimaksud disini bisa berbentuk buffer, file atau objek dari suatu program

   C. Dining Philosopher

Sementara Dining Philosopher adalah yang memodelkan masalah enkapsulasi dari ketergantungan mesin dan masalah portabilitas. 
                    

2. Jenis Masalah
    A. Bounded-Buffer 

Masalah dari Bounded-Buffer sendiri tidak jauh dari penampungan data, Pada bagian ini akan dicontohkan masalah produsen dan konsumen. Hal yang dikerjakan oleh produsen adalah menghasilkan data, kemudian data itu akan ditaruh pada buffer. Karena buffer yang tersedia memiliki ukuran yang terbatas, maka akan ada kemungkinan buffer itu penuh. Ketika buffer tersebut penuh, produsen tidak dapat menaruh data pada buffer, oleh karena itu produsen akan berhenti menghasilkan data. Produsen akan menunggu sampai konsumen mengkonsumsi data dari buffer, sehingga ada array kosong bagi produsen untuk meletakkan data yang dihasilkannya. Data yang dihasilkan oleh produsen diletakkan pada array yang ditunjuk oleh masuk.

Hal yang dikerjakan oleh konsumen adalah mengkonsumsi data yang ada pada buffer. Pada suatu saat, ada kemungkinan tidak terdapat data pada buffer, sehingga konsumen tidak dapat mengkonsumsi data. Konsumen akan berhenti mengkonsumsi, dan akan menunggu sampai produsen menaruh data pada buffer. Data yang dikonsumsi oleh konsumen adalah data yang terletak pada array yang ditunjuk oleh keluar.

Jadi tugas dari produsen adalah menghasilkan data yang akan dikonsumsi oleh konsumen, sedangkan tugas dari konsumen adalah mengkonsumsi data yang dihasilkan oleh produsen.

Buffer dalam kondisi penuh ketika nilai in sama dengan nilai keluar (masuk == keluar). Buffer dalam kondisi kosong ketika ((masuk + 1) % UKURAN_BUFFER == keluar.

     B. Readers and Writer 

Secara singkat, masalah ini terjadi ketika ada beberapa pembaca dan penulis ingin mengakses suatu berkas pada saat bersamaan. Salah satu contoh konkret dari permasalahan ini adalah masalah pemesanan tiket pesawat terbang. Ketika seseorang memesan tiket pesawat, dia pertama-tama harus mengecek apakah masih ada tempat yang tersisa. Sekiranya prosedur pemesanan tiket tersebut tidak ditangani secara hati-hati, bisa terjadi masalah ketika dia memesan tiket. Misalkan, sebelum proses pemesanan tiket selesai, ada orang lain yang memesan tiket yang sama dan lebih cepat menyelesaikan proses pemesanan tiket. Dengan demikian, tiket yang seharusnya menjadi miliknya tanpa perlu usaha berlebih, sekarang harus dia perebutkan dengan orang lain yang kebetulan mendaftar pada saat yang bersamaan.

Kembali kepada masalah Readers/Writers, seperti yang telah dikatakan di atas bahwa inti dari permasalahan ini adalah adanya beberapa pembaca dan penulis yang ingin mengakses suatu berkas secara simultan. Sebagai syarat bahwa data yang terkandung dalam berkas tersebut tetap konsisten, maka setiap kali berkas tersebut ditulis, maka hanya ada boleh maksimal satu penulis yang menulisnya. Untuk pembaca, hal ini tidak perlu dikhawatirkan sebab membaca suatu berkas tidak mengubah isinya. Dengan kata lain, pada suatu saat diperbolehkan untuk beberapa pembaca untuk membaca berkas tersebut. Akan tetapi, ketika ada yang sedang menulis, tidak boleh ada satupun yang membaca. Ini berarti bahwa thread penulis menjalankan tugasnya secara eksklusif.

     C. Dining Philosopher 

Dalam masalah Dining Philosophers, diketahui sejumlah (N) filusuf yang hanya memiliki tiga status, berpikir, lapar, dan makan. Semua filusuf berada di sebuah meja makan bundar yang ditata sehingga di depan setiap filusuf ada sebuah piring berisi mie dan di antara dua piring yang bersebelahan terdapat sebuah sumpit.
    
Pada awalnya, semua filusuf akan berpikir selama waktu yang tidak tentu. Setelah berpikir lama, filusuf akan merasa lapar. Pada saat lapar, ia berusaha untuk mengambil 2 buah sumpit yang ada di kanan dan di kirinya untuk makan. Dia mengambil sumpitnya satu per satu. Begitu ia mendapat sebuah sumpit, ia tidak akan melepaskannya. Jika ia hanya berhasil mengambil kurang dari 2 sumpit, maka ia akan menunggu sampai 2 sumpit diambil. Begitu dia mendapatkan 2 sumpit, maka dia akan makan mienya untuk sementara waktu dan kemudian meletakkan kedua sumpitnya. Kedua sumpit ini kemudian dapat digunakan oleh filusuf-filusuf yang lain.
     
Posisi meja Filsuf dengan menggunakan semafor. Setiap sumpit mewakili sebuah semafor. Kemudian, ketika seorang filsuf lapar, maka dia akan mencoba mengambil sumpit di kiri dan dikananya atau dengan kata lain dia akan menunggu sampai kedua sumpit itu dapat digunakan. Setelah selesai makan,sumpit diletakan kembali dan sinyal diberikan ke semafor sehingga filusuf lain yang membutuhkan dapat menggunakan sumpitnya. Dan dia sendiri kemudian kembali berpikir.
     
Tujuan dari masalah ini adalah untuk mencari cara sehingga para filusuf tidak akan pernah mati kelaparan. Hal ini juga merupakan salah satu representasi dari pengalokasian source komputer yang terbatas dengan beberapa proses sehingga dapat mengakibatkan deadlock dan starvation.
    
Salah satu solusi yang mungkin langsung terlihat adalah dengan menggunakan semafor. Setiap sumpit mewakili sebuah semafor. Kemudian, ketika seorang filusuf lapar, maka dia akan mencoba mengambil sumpit di kiri dan di kanannya, atau dengan kata lain dia akan menunggu sampai kedua sumpit tersebut dapat ia gunakan. Setelah selesai makan, sumpit diletakkan kembali dan sinyal diberikan ke semafor sehingga filusuf lain yang membutuhkan dapat menggunakan sumpitnya

3. Solusi Masalah
    A. Bounded-Buffer 

Hal yang harus diperhatikan pada proses produsen dan konsumen adalah ketika kedua proses tersebut mengakses variabel yang sama, yaitu variabel hitung. Jika diakses secara bersamaan, maka ada kemungkinan variabel hitung akan memiliki nilai yang tidak benar. Oleh karena itu harus ada sinkronisasi bagi produsen dan konsumen dalam mengakses variabel hitung.

Kita memakai 3 buah semafor untuk mensinkronisasi proses produsen dan konsumen. Semafor yang pertama adalah semafor bufferPenuh, yang menyatakan jumlah buffer yang terisi. Semafor yang kedua adalah semafor bufferKosong, yang menyatakan jumlah buffer yang masih kosong. Sedangkan semafor terakhir yang kita pakai adalah semafor mutex (mutual exclussion). Semafor mutex dipakai untuk menjamin bahwa hanya ada satu proses pada satu waktu yang dapat mengakses buffer. 
Untuk buffer berukuran n, kita inisialisasi semafor bufferPenuh = 0, semafor bufferKosong = n (ukuran buffer)dan semafor mutex = 1.

Produsen menaruh item pada buffer dengan memanggil method taruh ( ), konsumen memindahkan item dari buffer dengan memanggil method ambil ( ).

      B. Readers and Writers 

 Solusi Readers and Writers Problem untuk mengatasi masalah tersebut, ada tiga macam solusi,
 yaitu :
1.       Solusi dengan pembaca diprioritaskan
2.       Solusi dengan penulis yang diprioritaskan
3.       Solusi dengan pembaca dan penulis saling bergantian

Dari ketiga solusi tersebut, saya akan membahas solusi yang ketiga, yaitu Solusi dengan pembaca dan penulis saling bergantian(sama-sama menjadi prioritas), karena saya rasa solusi tersebut yang paling baik.

Pada solusi ini diusahakan sebuah metode yang mengakomodasi kedua belah pihak. Cara untuk melakukan ini cukup mudah yaitu dengan menerapkan metode gilir-menggilir. Sebuah penulis dapat mengakses berkas jika tidak ada thread pembaca yang sedang mengakses. Setelah selesai, thread ini memberikan giliran ke thread pembaca. Sebuah pembaca dapat mengakses berkas yang ada jika tidak ada penulis yang menunggu atau bila pada saat itu adalah giliran pembaca. Pembaca pertama yang pertama selesai mengakses berkas kemudian mengganti giliran sekarang menjadi giliran penulis.

Dengan metode giliran ini, tidak ada thread yang tertunda tanpa batas. Karena setiap syarat dari penyelesaian critical section yang baik dipenuhi, maka cara seperti ini merupakan cara yang baik untuk menyelesaikan masalah konkurensi.

      C. Dining Philosopher

Solusi Dining – Philosophers problem ada dua, yakni :

a.       Solusi Waiter
Solusi Waiter : Solusi sederhana ini dilakukan dengan mengadakan seorang waiter yang senantiasa mengawasi penggunaan sumpit di meja makan. Ketika empat buah(dua pasang) sumpit sedang dipakai, orang berikutnya yang ingin memakai sumpit harus meminta izin kepada sang waiter, yang hanya dapat diberi ketika salah satu sumpit telah selesai terpakai.

b.      Solusi Hierarki Resource
Solusi Hirarki Resource: resources (sumpit) di meja makan telah diberi susunan hirarki. Setiap permintaan orang terhadap sebuah sumpit harus dilakukan pada susunan tertentu, dan dikembalikan pada susunan sebaliknya. Dalam hal ini, setiap orang dapat mengambil sumpit dimanapun diatas meja. Misalkan setiap sumpit diberi nomor sebagai tingkat hirarki dari 1 sampai 5, seseorang hanya dapat mengambil sumpit dengan nomor yang paling rendah, kemudian mengambil sumpit yang setingkat lebih tinggi. Ketika ia hendak mengembalikannya, orang itu harus meletakkan sumpit dengan nomor yang lebih tinggi terlebih dahulu, lalu yang rendah.


Sekian, penjelasan tentang perbedaan Tiga Masalah klasik dalam Sinkronisasi Sistem Operasi. Sampai jumpa di postan selanjutnya.

Wassalamu'alaikum wr.wb.



Senin, 24 April 2017

Dia Tak Cinta Kamu.

16.27 0 Comments


Apa yang kamu tanya,kamu tahu jawabnyaApa yang kamu cari,ada di depanmuLupakan saja dia, maafkan saja dia
Hadapilah hidupmu, terima nasibmu, dia tak cinta kamuJangan diharap lagi, jangan diingat lagiJangan memaksakan dengan dia lagi
Coba lihat yang lain, ada cinta yang lainAda yang diam-diam mencintaimu

Sejauhmu berlari hanya satu pilihanBeri kesempatan dirimu rasakan bahagia

Selasa, 18 April 2017

Materi Pengantar Sistem Operasi

10.18 0 Comments
Assalamu'alaikum wr.wb
Nah disini saya akan berbagi ilmu tentang mata kuliah Pengantar Sistem Operasi, mulai dari definisi proses sampai perbedaan dan macam-macam boostrap. Selamat membaca :)

A. Proses dalam Sistem Operasi


Proses adalah keadaan ketika sebuah program sedang di eksekusi. Saat komputer berjalan, terdapat banyak proses yang berjalan secara bersamaan. Sebuah proses dibuat melalui system call create-process yang membentuk proses turunan ( child process) yang dilakukan oleh proses induk ( parent process). Proses turunan tersebut juga mampu membuat proses baru sehingga semua proses ini pada akhirnya membentuk pohon proses.


Ketika sebuah proses dibuat maka proses tersebut dapat memperoleh sumber-daya seperti waktu CPU, memori, berkas, atau perangkat I/O. Sumber daya ini dapat diperoleh langsung dari sistem operasi, dari proses induk yang membagi-bagikan sumber daya kepada setiap proses turunannnya, atau proses turunan dan proses induk berbagi sumber-daya yang diberikan sistem operasi.


Pengelolaan Proses


Proses perlu dikelola karena dalam sebuah proses membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. Sumber daya tersebut dapat berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O.


Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen proses.


B. Stack dan Heap

Stack merupakan sebuah memori yang berukuran tetap yang menyimpan variabel local dalam sebuah fungsi atau method. Jadi, jika sebuah fungsi atau prosedur dipanggil maka variabel-variabel local yang dipakai dalam fungsi/prosedur itu akan disimpan di dalam stack dan akan dihapus pada saat fungsi tersebut selesai melaksanakan tugasnya.



Heap adalah sebuah memori yang berukuran dinamis, memori ini menyimpan data berupa variabel/objek-objek yang bersifat global pada suatu aplikasi. Artinya, memori ini dapat dialokasikan kapan saja saat sebuah aplikasi dijalankan.



1.    Perbedaan Stack dan Heap :  



a). Stack merupakan bagian memori yang dialokasikan pada thread dijalankan, sedangkan Heap merupakan bagian memori yang dialokasikan pada saat OS pertama kali dijalankan

b)Alokasi memori stack bersifat fixed-size atau berukuran tetap sedangkan heap bersifat dinamis.
c). Stack menyimpan data yang bersifat sementara, misalnya variabel local yang ada dalam suatu fungsi atau method, sedangkan Heap menyimpan data berupa variabel-variabel atau objek yang bersifat global pada sebuah aplikasi tertentu.



C. Pengertian dan Perbedaan Process Control Block dan Thread

PCB ialah proses yang dilakukan oleh sistem operasi untuk mempresentasikan tiap-tiap proses yang ada, juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk : Status process, Program counter, CPU Register, Informasi manajemen memori, Informasi pencatatan, dan Informasi status I/O. 



Thread adalah unit dasar dari utilitas CPU. Dimana unit-unit dasarnya saling berbagi dengan thread lain dalam proses yang sama

Sedangkan Perbedaan Process Control Block dan Thread, Process Control Block (PCB) adalah penggambaran proses dalam sistem operasi, Sementara Thread adalah sesuatu yang dieksekusi oleh proses itu sendiri.

D. Unbounded Buffer dengan Bounded Buffer

Buffer adalah penyimpanan, Buffer sendiri ada dua macam. yaitu Unbounded Buffer dan Bounded Buffer. Unbounded buffer adalah buffer yang berkapasitas tidak terbatas atau unlimited, sedangkan Bounded buffer adalah buffer yang berkapasitas terbatas atau berukuran tetap.

E. Remote Procedure Calls

RPC (Remote Procedure Call) adalah suatu protokol yang menyediakan suatu mekanisme komunikasi antar proses yang mengijinkan suatu program untuk berjalan pada suatu komputer tanpa terasa adanya eksekusi kode pada sistem yang jauh (remote system). RPC mengasumsi keberadaan dari low-level protokol transportasi seperti TCP atau UDP untuk membawa pesan data dalam komunikasi suatu program. Protokol RPC dibangun diatas protokol external Data Representation (XDR), yang merupakan standar dari representasi data dalam komunikasi remote. Protokol XDR mengubah parameter dan hasil dari tiap servis RPC yang disediakan.

F. Batch 

Apa itu batch?  Batch adalah sejumlah record atau data yang digabungkan dan diproses sedemikian rupa menjadi suatu kesatuan

G. Proses dalam System Calls

System Calls adalah penyedia antarmuka dari pelayanan-palayanan yang tersedia dengan Sistem Operasi. Umumnya System Call menggunakan bahasa C dan C++, meskipun tugas-tugas seperti hardware yang harus diakses langsung, maka menggunakan bahasa assembly.

Bagaimana cara kerja system calls?


Dari gambar diatas, file sumber mempunyai beberapa proses sampai akhirnya sampai di file tujuan.

Pertama, kita dapat menulis suatu program sederhana untuk membaca satu file ke file lainnya. Program akan membutuhkan nama dari 2 file input dan output.


Memasukkan nama file input dan menampilkannya pada layar, menerima masukan seperti inputan data dari keyboard yang diketik, dan nama file output hasil dari ketikkan kita. Setelah dua nama file telah diperoleh program harus membuka file input dan membuat file output. Masing-masing membutuhkan system call. Mungkin ada juga kondisi kesalahan yang dilakukkan operator.
Ketika program mencoba untuk membuka file input dan ternyata tidak ada nama file itu atau bahwa file tersebut dilindungi pengaksesannya. Maka, kita harus membuat perintah di command interpreter (baca mengenai command interpreter) yang terdapat di OS kita dan membukakan file tersebut. Jika file input ada, maka kita harus membuat file output baru. Kita mungkin akan menemukan file output dengan nama yang sama. Situasi tersebut dapat membuat program dibatalkan (system call), atau kita dapat menghapus file yang ada dan membuat yang baru.
Setelah dua file input dan output telah ditetapkan, maka program akan melooping membaca file input dan menulis ke file output sampai akhir file. Jika proses sudah selesai, program akan menutup kedua file dan akan terdapat pesan di layar bahwa proses telah selesai dan mengakhiri program dengan normal.

H. Shell dan Kernel

Shell adalah program (penterjemah perintah) yang menjembatani user dengan sistem operasi. dalam hal ini kernel (inti sistem operasi), umumnya shell menyediakan prompt sebagai user interface, tempat dimana user mengetikkan perintah-perintah yang diinginkan baik berupa perintah internal shell (internal command), ataupun perintah eksekusi suatu file progam (eksternal command), selain itu shell memungkinkan user menyusun sekumpulan perintah pada sebuah atau beberapa file untuk dieksekusi sebagai program.

Fungsi Shell : Menyediakan akses ke layanan dari kernel. Fungsinya sebagai suatu jembatan antara user dengan kernel untuk mendapatkan hasil yang inginkan.

Shell pada Linux :

Yang dimaksud Shell pada sistem operasi Linux adalah bahwa Shell merupakan salah satu jenis program bawaan dari sistem operasi Linux, yang menyediakan komunikasi langsung antara pengguna dan sistem operasi, Beberapa shell juga dapat digunakan untuk melakukan manajemen berkas.

Kernel merupakan komponen utama sistem komputer yang paling penting, yang merupakan jembatan antara aplikasi dan pengolahan data yang sebenarnya dilakukan pada bagian hardware. Dengan adanya kernel, aplikasi dalam sistem operasi dapat mengakses hardware secara aman. Kernel juga berperan untuk mengatur kapan dan berapa lama suatu program dapat menggunakan hardware. Tetapi, Kernel sistem operasi tidak harus ada dan dibutuhkan untuk menjalankan suatu komputer. Program dapat langsung dijalankan secara langsung dalam mesin. (contohnya CMOS Setup) sehingga para pembuat program tersebut membuat program tanpa adanya dukungan dari sistem operasi atau hardware abstraction.

Fungsi utama kernel adalah untuk mengelola sumber daya komputer dan memungkinkan program lain untuk menjalankan dan menggunakan sumber daya computer. dan Biasanya, sumber daya komputer terdiri dari :

Perbedaan Shell dan Kernel
Shell merupakan lapisan luar dari satu sistem operasi. Sedangkan kernel merupakan lapisan dalam atau inti sistem operasi.

I. Perintah shell yang banyak digunakan untuk mengelola sistem operasi Linux

Seperti yang kita tahu bahwa, Shell adalah program bawaan yang bisa diakses di Linux, terdapa banyak perintah shell yang dapat digunakan seperti :

1.    Chmod : Menambah dan mengurangi ijin user untuk mengakses file atau direktori.
2.    Kill : Menghentikan proses
3.    Login : Masuk sistem
4.    Logout : Keluar sistem
5.    Is : Menampilkan isi direktori
6.    Mkdir : Membuat sebuah direktori
7.    Passwd : Mengganti password
8.    Unalias : Membatalkan sebuah alias
9.    Who : Menampilan user yang sedang login
10.  Rm : Menghapus file
11.  Mv : Memindahkan file
12.  Halt : Mematikan sistem
13.  Grep : Mencari file-file yang mengandung teks dengan kriteria yang telah ditentukan
14.  Find : Menemukan lokasi file
15.  Cp : Mengcopy file/folder
16.  Pwd : Menampilkan nama direktori yang sedang dikunjungi user
17.  Chgrp : Merubah kepemilikan file/folder
18.  Alias : Membuat/memberi nama lain suatu perintah
19.  Adduser : Membuat user baru
20.  & : Menjalankan perintah belakang (background)
Lain halnya dengan Linux, Sistem Operasi Windows tidak menggunakan Shell

J.  Mac dan Debugging

Mach adalah sebuah sistem operasi kernel yang dikembangkan di Carnegie Mellon University untuk mendukung penelitian sistem operasi, terutama komputasi terdistribusi dan paralel. Ini adalah salah satu contoh awal dari sebuah mikrokernel.

Sedangkan Debugging adalah sebuah metode yang dilakukan oleh para pemrogram dan pengembang perangkat lunak untuk mencari dan mengurangi bug, atau kerusakan di dalam sebuah program komputer atau perangkat keras sehingga perangkat tersebut bekerja sesuai dengan harapan.

K. Perbedaan bootstrap program, bootstrap loader, dan boot block


- Bootstrap program adalah kode yang disimpan di code ROM yang dapat menempatkan kernel, memasukkan ke dalam memory dan mulai eksekusi.
-   - Bootstrap loader : sebuah program yang cukup sederhana untuk dipanggil secara manual dengan pertolongan sakelar,
      -  boot block : adalah suatu partisi untuk menyimpan seluruh program bootstrap.
      
      Sekian dan semoga bermanfaat,  Wassalamu'alaikum wr.wb

Rabu, 22 Maret 2017

#Payung Teduh : Berdua Saja

17.59 0 Comments



Ada yang tak sempat tergambarkan oleh kataKetika kita berduaHanya aku yang bisa bertanyaMungkinkah kau tahu jawabnya

Malam jadi saksinyaKita berdua diantara kataYang tak terucapBerharap waktu membawa keberanianUntuk datang membawa jawaban

Mungkinkah kita ada kesempatanUcapkan janji tak kan berpisah selamanya


Senin, 20 Maret 2017

#Payung Teduh : Resah

08.58 0 Comments

Aku ingin berjalan bersamamuDalam hujan dan malam gelapTapi aku tak bisa melihat matamu
Aku ingin berdua denganmuDi antara daun gugurAku ingin berdua denganmuTapi aku hanya melihat keresahanmu
Aku menunggu dengan sabarDi atas sini, melayang-layangTergoyang angin, menantikan tubuh itu
Aku ingin berdua denganmuDi antara daun gugurAku ingin berdua denganmuTapi aku hanya melihat keresahanmu
Ingin berdua denganmuDi antara daun gugurAku ingin berdua denganmuTapi aku hanya melihat keresahanmu


SISTEM OPERASI BLACKBERRY

07.40 0 Comments

A.      PENGERTIAN SISTEM OPERASI
              Sebelum kita membahas tentang sistem operasi blackberry, kita akan membahas apa itu sistem operasi terlebih dahulu. Sistem operasi adalah komponen perangkat lunak infrastruktur dasar sistem komputerisasi. Sistem operasi mengontrol semua operasi dasar komputer atau perangkat lainnya. Sistem operasi memungkinkan pengguna untuk menginstal dan menjalankan aplikasi pihak ketiga, biasanya menambahkan fungsi baru ke perangkat.

B.      PENGERTIAN BLACKBERRY OS

Blackberry OS adalah sistem operasi milik mobile yang dikembangkan oleh RIM (Resesarch In Motion) untuk perusahaan Blackberry garis smartphone perangkat genggam. Sistem operasi ini menyediakan multitasking dan mendukung perangkat input khusus yang telah diadopsi oleh RIM untuk digunakan dalam handheld, khususnya trackwheel, trackball, dan yang paling baru trackpad dan touchscreen.
Platform Blackberry mungkin paling dikenal karena dukungan asli lingkungan komunikasi perusahaan, yang memungkinkan aktivasi nirkabel lengkap dan sinkronisasi email, kalender, tugas, catatan, dan juga kontak.
Pembaruan sistem operasi ini dapat secara otomatis tersedia dari operator nirkabel yang mendukung Blackberry dimana yang memuat perangkat lunak udara (OTASL) layanan. Pengembangan pihak ketiga dapat menulis perangkat lunak menggunakan Blackberry yang tersedia API (Apliccation Programming Interface), meskipun aplikasi yang menggunakan fungsi tertentu harus digital ditandatangani.

C.      SEJARAH BLACKBERRY OS

Kisah sukses Research In Motion Ltd, berawal dari seorang pemuda Yunani bernama Mike Lazardis, yang pada tahun 1967 memutuskan pindah dari Turki ke Kanada untuk mewujudkan mimpi dan merubah nasibnya. Ia sempat kuliah di Universitas Waterloo dan mendalami Teknik Elektro, namun karena suatu hal ia dikeluarkan.
Pada tahun 1984, dengan modal pinjaman dari teman dan keluarganya, Lazarsis dan dua temannya mendirikan RIM di Waterloo, Ontario, Kanada. Kontrak kerja pertamanya datang dari General Motor Kanada untuk mengerjakan otomatisasi industri. Pada tahun pertamanya, dari berbagai kontrak kerja, RIM berhasil mendapatkan penghasilan $1 juta dengan karyawan sekitar 12 orang.
Pada tahun 1987, RIM menerima kontrak dari Roger Cantel Mobile Comminications, yaitu operator pager dan telepon seluler. Dalam kontraknya, RIM bertugas mencari tahu potensi dari sistem jaringan digital nirkabel baru yang di kenalkan Ericsson. RIM berhasil membuat modem radio nirkabel berukuran mini pada tahun 1990. Modem buatan dari RIM ini banyak dipakai oleh perusahaan untuk berbagai produk dari komputer sampai mesin penjual otomatis.
Pada tahun 1991, RIM mengembangkan software untuk mendukung sistem e-mail nirkabel. RIM bekerja sama dengan dua perusahaan besar seperti Ericsson dan Anterior Teknologi. Ericsson berhasil mengenalkan modem radio portabel pada tahun 1992, Anterior Teknologi bertugas menyediakan gateway untuk sistem e-mail, sementara RIM akan meyediakan aplikasi pemograman. Kerjasama tiga pihak ini berhasil menciptakan sistem e-mail nirkabel dengan konektivitas tak terputus.
Pada tahun 1996, RIM dalam proses mengembangkan bisnis perangkat e-mail nirkabel, mengenalkan pager yang di beri nama Inter@ctive pager. Saat diluncurkan ke publik tahun 1997, Inter@ctive pager yang dijual seharga $675 menjadi produk yang sangat populer dan digemari.
Pada tahun 1998 RIM mendapat banyak kontrak untuk membuat Inter@ctive pager bagi banyak perusahaan besar seperti IBM, Panasonic Corp, Mobile Integrated Technologies, dan Telxon Corp. Akhir 1998, RIM mengenalkan versi upgrade dari Inter@ctive pager yang lebih hebat, kecil, murah dan mempunyai daya tahan lebih lama.
Setelah dua produk Inter@ctive pager sukses di pasaran, Akhirnya pada tahun 1999, RIM memutuskan untuk fokus di perangkat e-mail koorporat dengan mengenalkan produk barunya, yaitu BlackBerry.
Pada pertengahan  Desember 2004, BlackBerry pertama kali diperkenalkan di Indonesia oleh operator Indosat dan perusahaan Starhub. Perusahaan Starhub merupakan pengejewantahan dari RIM yang merupakan rekan utama BlackBerry. Pasar BlackBerry kemudian diramaikan oleh dua operator besar lainnya di tanah air yakni Excelcom dan Telkomsel.  Akibat tuntutan pemerintah Indonesia, Blackberry akhirnya membuka kantor perwakilan di Indonesia pada November 2010.
RIM mengumumkan pada Februari 2009 bahwa mereka memperluas operasi global mereka dengan membuka kantor dan fasilitas pelatihan di North Sydney, New South Wales, Australia.
Pada bulan Juni 2009 RIM telah mengumumkan bahwa mereka memperoleh Navigasi Dash, pembuat dari Dash Express. Pada Agustus 2009, RIM mengakuisisi Obor Handphone, memungkinkan dimasukkannya WebKit berbasis browser pada perangkat Blackberry merek.
Pada tanggal 18 Agustus 2009, Fortune Magazine bernama RIM sebagai perusahaan dengan pertumbuhan tercepat di dunia dengan pertumbuhan 84% dalam keuntungan selama tiga tahun meskipun resesi.
Pada tanggal 26 Maret 2010, perusahaan mengumumkan akuisisi pengembang aplikasi BlackBerry Viigo, sebuah perusahaan berbasis di Toronto. Persyaratan kesepakatan itu tidak diungkapkan.
RIM mencapai kesepakatan dengan Harman International pada 12 April 2010, untuk RIM untuk mengakuisisi QNX Software Sistem. “RIM gembira tentang rencana akuisisi QNX Software Systems dan kami berharap untuk kolaborasi yang sedang berlangsung antara Harman, QNX dan RIM untuk lebih mengintegrasikan dan meningkatkan pengalaman pengguna antara smartphone dan di dalam kendaraan audio dan sistem infotainment,” kata Mike Lazaridis, Presiden dan Co-CEO di RIM. “Selain kepentingan kita dalam memperluas kesempatan untuk QNX di sektor otomotif dan pasar lain, kami percaya bahwa akuisisi direncanakan QNX juga akan membawa nilai lain untuk RIM dalam istilah mendukung rencana produk tertentu mendadak untuk periferal cerdas, menambahkan properti intelektual yang berharga untuk portofolio RIM dan menyediakan jangka panjang sinergi bagi perusahaan-perusahaan berdasarkan keahlian OS signifikan dan saling melengkapi yang ada dalam RIM dan QNX tim hari ini.”
Pada tanggal 27 September 2010, RIM mengumumkan panjang dikabarkan BlackBerry Playbook komputer tablet. Pedoman BlackBerry secara resmi dirilis ke konsumen AS dan Kanada pada tanggal 19 April 2011.

Pada Mei 2010, RIM OS diselenggarakan 10,4% dari smartphone pasar sistem operasi. Pada 30 Jun 2011, investor mendorong perusahaan untuk membagi dual-CEO struktur mendadak ditarik setelah kesepakatan dibuat dengan RIM. RIM mengumumkan bahwa setelah diskusi antara dua kelompok, Northwest & Investasi Etis akan menarik usulan pemegang saham sebelum pertemuan tahunan RIM.

Pada bulan Juni 2011, perusahaan telah mengumumkan prediksi Q1 2011 pendapatan yang akan turun untuk pertama kalinya dalam sembilan tahun dan juga mengumumkan rencana untuk mengurangi pekerjaan. Hal ini diikuti oleh pasar yang saham jatuh ke level terendah sejak 2006. Sejak Juni 2008 sampai Juni 2011, pemegang saham RIM kehilangan hampir $ 70000000000 atau 82 persen dengan penurunan terbesar di antara komunikasi peralatan penyedia, dari $ 83000000000 di 3 tahun sebelumnya untuk saat ini $ 13600000000. Pada bulan Juli 2011, perusahaan axed 2.000 pekerjaan, PHK terbesar dalam sejarahnya. Lay-off mengurangi tenaga kerja dari perusahaan sekitar 11% dalam satu stroke dari 19.000 menjadi 17.000

D.     PERBEDAAN BLACKBERRY OS DENGAN SISTEM OPERASI LAIN


    Perangkat Blackberry adalah device yang sama dengan handphone lain yang mempunyai fasilitas sms dan telepon. Tetapi perangkat Blackberry sendiri yang membedakannya adalah sistem operasinya. Karena sistem operasi Blackberry merupakan sistem operasi yang berbasis java buatan RIM. Blackberry hanyalah seperti handphone biasa jika tidak mengaktifkan layanan servis Blackberry. Namun, jika layanan servis Blackberry diaktifkan dapat menjadi killer device untuk mengakses internet terutama e-mail, Blackberry juga dapat melakukan cek e-mail, mengirim e-mail, menghapus e-mail secara otomatis tidak seperti handphone lainnya yang harus melakukannya secara manual. Perbedaan lainnya yaitu Blackberry dapat mengkompres e-mail yang masuk ke inbox. Penggunaan device bandwith ppada Blackberry membuat koneksi internet sangat irit sekali.

E.      KELEBIHAN DAN KELEMAHAN BLACKBERRY OS
·         Kelebihan
o   System full back-up atau recover sebagian maupun sepenuhnya mempermudah user dalam memback-up data-data penting
o   Cukup menggunakan fungsi change device pada saat akan mengganti unit blackberry baru setelah itu data-data penting beserta setting dari party software ketiga akan tercopy dengan mudah ke dalam perangkat blackberry blackberry baru
o   Fungsi autotext, cukup dengan menentukan keyword lalu mengasosiasikannya dengan isi pengganti yang biasanya berisi text atau character yang panjang, dan digunakan dengan mengetikan keyword, maka isi pengganti akan menggantikan keyword tersebut
o   Fungsi search, sangat membatu untuk mencari informasi atau data yang tersimpan di perangkat blackberry atau yang ada di jaringan internet
o   Profile pada blackberry sangat fleksibel. Untuk setiap account email,sms, mms, phone, facebook dan lainnya dapat diaturringtone/vibrate dan led sign yang berbeda-beda
o   Fitur speed dial pada blackberry qwerty sebanyak pilihan a-z,dikurangi default key akan sangat membantu dalam melakukanpanggilan secara cepat
o   Fungsi BBM (Blackberry Messenger) yang merupakan salah satu fiturandalan BlackBerry yang memberikan layanan untuk chatting kesesama pengguna BlackBerry.
o   Customize Theme untuk user level Advanced mengizinkanpenggunanya untuk dengan mudah dan mendesain rancangan theme sendiri sesuai kebutuhan.
o   Fungsi geotag pada blackberry ber-GPS dapat membuat foto-fotoyang diambil dari perangkat BlackBerry terserbut berisikan infromasilokasi.
o   Tampilan akses multimedianya telah terintegrasi dan sangatnyaman untuk digunakan
o   Dengan mengaktifkan fungsi password, jika terjadi kehilangan terhadap blackberry, pencuri yang salah memasukan password akanmenghapus seluruh data (wipe) di blackberry anda, sehingga datapenting anda tidak gampang diambil.
o   Fitur firewallnya,sangat efektif dalam memblok sms/mms/phone call yang tidak kita inginkan


·         Kelemahan
o   Belum mendukung conference call
o   Tidak ada aplikasi native untuk menerima dan mengirimkan fax
o   Fungsi rekaman native (voice recorder) memiliki kualitas rekaman yang kurang memuaskan dan hanya mampu merekam 10 menit dan dalam format yang tidak umum seperti mp3, wav, dan sebagainya
o   Pada blackberry qwerty, spell check yang membantu pengecekan kesalahan ketik hanya dapat berjalan jika selesai diketik. Padahal, kesalahan ketik seharusnya dapat kita check saat melakukan pengetikan
o   Seluruh aplikasi pihak ketiga terinstall bersama pada memoryinternal, sehingga dengan memory internal (RAM) blackberry yangterbatas, tidak banyak aplikasi pihak ketiga yang dapat diinstall (terutama pada blackberry type lama) meskipun sudah tersedia software yang dapat memindahkan instalasi 3rd party software pada memory card saat digunakan program 3rd party tetap di load di internal memory  (RAM).
o   Software party ketiga yang terinstall tidak otomatis terback-up saat kita melakukan backup, harus dilakukan trick khusus untuk membackup software party ketiga ini. Kecuali anda bersedia menginstall software party ketiga setelah anda melakukan upgrade/downgrade OS.
o   Sinkronisasi antara email di blackberry dan server, terutama untuk email yang sudah kita delete di blackberry sering tidak bekerja dengan baik, sehingga sering kali email yang sudah kita delete di blackberry dan kita purge serta reconsile (dari menu Reconsile) tetap tertarik di mail client PC/Laptop kita, tentunya hal inimenjengkelkan karena kita harus memeriksa kembali mana email yang harus di delete kembali maupun yang tidak kita delete di blackberry untuk kita arsipkan di mail client PC/Laptop kita.
o   Untuk mengirim email ukuran file yang bisa dikirim dan diterima maximal 2.9Mb
o   Browser bawaan blackberry tidak sempurna menampilkan web page berjava script dan animasi.

F.       STRUKTUR BLACKBERRY OS
           Blackberry memiliki Operation System tersendiri yang khusus dirancang untuk smartphone ini. Semua aplikasi-aplikasi Blackberry berjalan menggunakan service-service berikut: BES (Blackberry Enterprise Server) dan BIS (Blackberry Internet Service).

           BES dapat digunakan oleh jaringan e-mail yang berbasis Microsoft Exchange, Lotus Domino, dan Novell Group Wise. BES memang ditujukan bagi pelanggan korporasi dengan cakupan usaha yang besar. BES mengintegrasikan seluruh smartphone Blacberry pada suatu organisasi dengan sistem perusahaan yang telah ada. Keuntungan yang diperoleh adalah memperluas komunikasi nirkabel dan data perusahaan kepada pengguna aktif dengan cara yang aman.

                                    (Gambar BES (Blackberry Enterprise Server)).

    BES adalah perangkat lunak yang diperuntukan bagi pengguna pribadi yang memungkinkan untuk mengintegrasikan smartphone dengan 10 akun e-mail yang berbasis Post Office Protocol (POP3) dan Internet Message Access Protocol (IMAP), menerima dan mengirim pesan instan, serta berselancar di internet. Dengan BIS kita juga dapat membuka tambahan data (attachment) dalam bentuk excel, word, power point, pdf, zip, jpg, gif, dengan tingkat kompresi data yang tinggi.

                                       (Gambar BIS (Blackberry internet service)).

Struktur Aplikasi Blacberry
Aplikasi-aplikasi pada Blackberry biasanya dibuat dengan java ditambah syntac RIM sendiri. Aplikasi-aplikasi Blackberry terbagi tiga: aplikasi browser, aplikasi java, aplikasi MDS.

Aplikasi Browser pada Blackberry
Aplikasi browser adalah apllikasi web-based yang bisa diakses dengan Blacberry Browser.

Struktur Aplikasi Java Pada BlackBerry
Aplikasi pada Blackberry ditulis menggunakan Java MIDP. Alasan kenapa Blackberry juga menggunakan aplikasi get jar yaitu karena aplikasi berbasis Java MIDP hasil dari compilasi J2EE yang bersifat multi platform yang berarti hampir semua perangkat mobile seperti: Smartphone (Blackberry), Iphone, Ipad, Handphone, Ponsel, Gadget, dan perangkat mobile digital lainnya menggunakan standard Platform Java MIDP  sebagai runtime aplikasi java terutama untuk aplikasi tambahannya. Selain itu, Aplikasi Java MIDP memiliki konstruksi program yang ketat dan independence sesuai dengan JVM (Java Virtual Machine), Aplikasi Java juga lebih diprioritaskan untuk aplikasi jaringan multi platform.

                                       (Gambar Struktur Aplikasi Java Blackberry).

Pada gambar diatas menggambarkan fondasi penyusun aplikasi Blackberry. Dua blok teratas menunjukan bahwa aplikasi Blackberry dapat dibangun di atas MIDP API atau Blackberry API. Dengan menggunakan Blackberry API, kita juga bisa membuat aplikasi yang efisien, responsive, dan lebih menarik karena Blackberry API dirancang khusus untuk perangkat Blackberry. 

RIMlet dan MIDlet
RIMlet dan MIDlet mempunyai fungsi sistem yang berbeda, fungsi sistem RIMlet terdiri dari inisialisasi sebuah titik masuk aplikasi dengan menggunkan fungsi (System.main()), dan penghentian aplikasi dengan menggunkan fungsi (System.exit()).

                                                      (Gambar Struktur RIMlet)

Sedangkan MIDlet sesuai spesifikasinya mempunyai fungsi sistem antara lain inactive, active, paused, dan destroyed. Berdasarkan feedback tertentu, kode aplikasi MIDlet dapat menjalankan software manajemen aplikasi Blacberry untuk mengubah status aplikasi MIDlet itu sendiri. Beberapa contoh dari feedback tersebut dapat berupa interaksi pengguna pada perangkat Blackberry, yaitu perubahan tanggal dan waktu, boot up atau shut down, dan masih banyak lagi.

                                                     (Gambar Struktur MIDlet).
G.     KESIMPULAN
             Secara keseluruhan, Blackberry OS memiliki banyak keunggulanyang membuatnya diminati oleh para konsumen.  Terutamakonsumen dari dunia bisnis dan remaja. Hal ini dikarenakan Blackberry OS sangat mendukung untuk berkomunikasi baik dalambentuk email, chat, social network, dan lain lain. Selain itu, semua layanan tersebut dapat dinikmati oleh konsumendalam satu paket yang dihargai dengan harga yang terjangkau. Dengan paket tersebut konsumen dapat menikmati berbagai macamlayanan data BlackBerry tanpa ada batasan tergantung padapaketnya. Konsumen dapat melakukan browsing, social networking,email, dan lain lain. Keterbukaan Blackberry OS dengan berbagai macam aplikasi pihakketiga membuat Blackberry OS kaya akan fitur dan nilai tambahyang dapat menambah daya tarik konsumen untuk memiliiki produk-produk keluaran RIM tersebut.