Rabu, 19 Desember 2012

BASIS DATA

Basis data (bahasa Inggris: database), atau sering pula dieja basisdata, adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi.


Istilah "basis data" berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini mengenai basis data komputer. Catatan yang mirip dengan basis data sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi dan kumpulan data yang berhubungan dengan bisnis.

Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Skema menggambarkan obyek yang diwakili suatu basis data, dan hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur basis data: ini dikenal sebagai model basis data atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama antar tabel. Model yang lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel.

Istilah basis data mengacu pada koleksi dari data-data yang saling berhubungan, dan perangkat lunaknya seharusnya mengacu sebagai sistem manajemen basis data (database management system/DBMS). Jika konteksnya sudah jelas, banyak administrator dan programer menggunakan istilah basis data untuk kedua arti tersebut.

Perangkat lunak basis data yang banyak digunakan dalam pemrograman dan merupakan perangkat basis data aras tinggi (high level):

    * DB2
    * Microsoft SQL Server
    * Oracle
    * Sybase
    * Interbase
    * XBase
    * Firebird
    * MySQL
    * PostgreSQL
    * Microsoft Access
    * dBase III
    * Paradox
    * FoxPro
    * Visual FoxPro
    * Arago
    * Force
    * Recital
    * dbFast
    * dbXL
    * Quicksilver
    * Clipper
    * FlagShip
    * Harbour
    * Visual dBase
    * Lotus Smart Suite Approach

Selain perangkat lunak di atas, terdapat juga perangkat lunak pemrograman basis data aras rendah (low level), diantaranya:

    * Btrieve
    * Tsunami Record Manager

Elemen Basis Data
  • Entitas adalah sekumpulan objek yang terdefinisikan yang mempunyai karakteristik sama dan bisa dibedakan satu dengan lainnya. Objek dapat berupa barang, orang, tempat atau suatu kejadian.
  • Contoh entitas : Seseorang yang menjadi siswa di sebuah sekolah.
  • contoh lainya : barang yang menjadi inventaris suatu perusahaan
  • siswa merupakan entitas
  • barang juga di sebut entitas
  • Atribut adalah deskripsi data yang bisa mengidentifikasi entitas yang membedakan entitas tersebut dengan entitas yang lain. Seluruh atribut harus cukup untuk menyatakan identitas obyek, atau dengan kata lain, kumpulan atribut dari setiap entitas dapat mengidentifikasi keunikan suatu individu.
  • sedangkan atribut adalah bagian dari entitas
  • siswa memiliki atribut :
  • no siswa
  • alamat siswa
  • barang memiliki atribut :
  • no barang
  • harga barang
  • Data Value (Nilai Data) : Data Value adalah data aktual atau informasi yang disimpan pada tiap data, elemen, atau atribut. Atribut nama pegawai menunjukan tempat dimana informasi nama karyawan disimpan, nilai datanya misalnya adalah Anjang, Arif, Suryo, dan lain-lain yang merupakan isi data nama pegawai tersebut.
  • File/Tabel : Kumpulan record sejenis yang mempunyai panjang elemen yang sama, atribut yang sama, namun berbeda nilai datanya.
  • Record/Tuple : Kumpulan elemen-elemen yang saling berkaitan menginformasikan tentang suatu entitas secara lengkap. Satu record mewakili satu data atau informasi.

 Tujuan Pemanfaatan Basis Data 

1. Kecepatan dan Kemudahan (Speed)

Yakni agar pengguna basis data bisa:
-menyimpan data
-melakukan perubahan/manipulasi terhadap data
-menampilkan kembali data dengan lebih cepat dan mudah dibandingkan dengan cara biasa (baik manual ataupun elektronis).


2. Efisiensi Ruang Penyimpanan (Space)

Dengan basis data kita mampu melakukan penekanan jumlah redundansi (pengulangan) data, baik dengan menerapkan sejumlah pengkodean atau dengan membuat relasi-relasi antara kelompok data yang saling berhubungan


3. Keakuratan (Accuracy)

Agar data sesuai dengan aturan dan batasan tertentu dengan cara memanfaatkan pengkodean atau pembentukan relasi antar data bersama dengan penerapan aturan/batasan (constraint) tipe data, domain data, keunikan data dsb.




4. Ketersediaan (Availability)

Agar data bisa diakses oleh setiap pengguna yang membutuhkan, dengan penerapan teknologi jaringan serta melakukan pemindahan/penghapusan data yang sudah tidak digunakan / kadaluwarsa untuk menghemat ruang penyimpanan.

5. Kelengkapan (Completeness)

Agar data yang dikelola senantiasa lengkap baik relatif terhadap kebutuhan pemakai maupun terhadap waktu, dengan melakukan penambahan baris-baris data ataupun melakukan perubahan struktur pada basis data; yakni dengan menambahkan field pada tabel atau menambah tabel baru.

 6. Keamanan (Security)

Agar data yang bersifat rahasia atau proses yang vital tidak jatuh ke orang / pengguna yang tidak berhak, yakni dengan penggunaan account (username dan password) serta menerapkan pembedaan hak akses setiap pengguna terhadap data yang bisa dibaca atau proses yang bisa dilakukan.


7.  Kebersamaan (Sharability)

Agar data yang dikelola oleh sistem mendukung lingkungan multiuser (banyak pemakai), dengan menjaga / menghindari munculnya problem baru seperti inkonsistensi data (karena terjadi perubahan data yang dilakukan oleh beberapa user dalam waktu yang bersamaan) atau kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data).

Jenis Media Penyimpan Data

 1. PRIMARY STORAGE
  • Primary Storage(Penyimpan Primer)
  • Dicirikan dengan
  • kecepatan akses yang lebih tinggi
  • Kapasitas terbatas/ kecil
  • Dapat diakses langsung oleh CPU
  • Harga mahal
  • Memori utama
  • Volatile storage

Primary storage dibatasi oleh 2 faktor, yaitu :
  • Harga memori primer
  • Masalah teknis dalam pengembangan memori utama yang sangat besar
Ada 4 bagian didalam primary storage, yaitu :

  • Input Storage Area : Untuk menampung data yang dibaca
  • Program Storage Area : Penyimpanan instruksi-instruksi untuk pengolahan
  • Working Storage Area : Tempat dimana pemrosesan data dilakukan
  • Output Storage Area : Penyimpanan informasi yang telah diolah untuk sementara waktu sebelum disalurkan ke alat-alat output
Primary storage dapat juga terbagi berdasarkan pada hilang atau tidaknya data / program di dalam penyimpanan yaitu :

  • Volatile Storage : Berkas data atau program akan hilang jika listrik padam
  • Non Volatile Storage : Berkas data atau program tidak akan hilang sekalipun listrik dipadamkan

Berdasarkan Pengaksesan nya primary memory terbagi menjadi dua yaitu :

  • RAM (RANDOM ACCESS MEMORY)
    Bagian dari main memory, yang dapat kita isi dengan data atau program dari diskette atau sumber lain. Dimana data-data dapat ditulis maupun dibaca pada lokasi dimana saja didalam memori. RAM bersifat VOLATILE
  • ROM (READ ONLY MEMORY)
    Memori yang hanya dapat dibaca. Pengisian ROM dengan program maupun data, dikerjakan oleh pabrik. ROM biasanya sudah ditulisi program maupun data dari pabrik dengan tujuan-tujuan khusus. Misal : Diisi penterjemah (interpreter) dalam bahasa basic.
Tipe Lain dari ROM Chip yaitu :
  • PROM ( Programable Read Only Memory )
    Merupakan sebuah chip memory yang hanya dapat diisi data satu kali saja.
  • EPROM ( Erasable Programable Read Only Memory )
    Jenis khusus PROM yang dapat dihapus dengan bantuan sinar ultra violet. Setelah dihapus, EPROM dapat diprogram lagi. EEPROM hampir sama dengan EPROM, hanya saja untuk menghapus datanya memerlukan arus listrik.
  • EEPROM (Electrically Erasable Programable Read Only Memory)
    EEPROM adalah tipe khusus dari PROM (Programmable Read-Only Memory ) yang bisa dihapus dengan memakai perintah elektris. Seperti juga tipe PROM lainnya, EEPROM dapat menyimpan isi datanya, bahkan saat listrik sudah dimatikan.

2. SECONDARY STORAGE
  • Secondary Storage (Penyimpan Sekunder)
 Dicirikan dengan :
  • Tidak dapat diakses langsung oleh CPU(harus dicopi dahulu ke buffer memori)
  • Kecepatan akses lebih rendah
Berharga lebih murah
  • Kapasitas besar
    Contoh : Magnetic Tape, Magnetic Disk, Optical Disk, Flash Memory
  • Non volatile storage
 Kegunaan utama penyimpan sekunder antara lain :
  • Penyimpan program untuk penggunaan masa datang
  • Penyimpan informasi dalam bentuk file
 Jenis Secondary Storage
  • Serial / Sequential Access Storage Device (SASD)
Tidak dapat diakses secara langsung diposisinya (harus sekuen, urut)
± Kapasitas lebih besar, harga per bit informasi yang dapat direkam lebih murah, kecepatan lebih lambat berbanding DASD
Contoh : Magnetic Tape, Punched Card, Punched Paper Tape

  • Direct Access Storage Device (DASD)
Dapat diakses secara langsung di posisinya.
± Kapasitas lebih besar, harga per bit informasi yang dapat direkam lebih murah, kecepatan lebih lambat berbanding main memory.
Contoh : Magnetic Disk, Floppy Disk, Mass Storage
Beberapa pertimbangan didalam memilih alat penyimpanan :
Cara penyusunan data
Kapasitas penyimpanan
Waktu Akses
Kecepatan transfer data
Harga
Persyaratan pemeliharaan
Standarisasi

  • MAGNETIC TAPE

KARAKTERISTIK MAGNETIC TAPE
      1.Lebar ½ inch
       2. Panjang tape 2400 feets
       3. Ketebalan 2 mm  
Data yang disimpan dalam bintik keci yang bermagnit dan tidak tampak pada bahan plastik yang dilapisi feroksida

FUNGSI MAGNETIC TAPE :
Pita Magnetik (Magnetic Tape ), untuk membaca dan menulis data dari danke pita magnit melalui read / write head, dimana proses menulis pada pita magnit sifatnya destructive, yaitu bila data baru ditulis dan data yang lama akan langsung terhapus.
proses membaca dari pita magnit adalah bersifat non-destructive, yaitu sesudah dibaca pita magnetic masih berisi data yang sama sebelum dibaca. Pita magnetik merupakan salah satu jenis memori sekunder yang digunakan untuk penyimpanan offline yang besar. 
Alat untuk menyimpan data untuk berkas besar, yang di akses dan di proses dengan cara     sequential, sequential merupakan cara yang paling dasar untuk mengorganisasikan kumpulan record-record dalam sebuah berkas .
-          Untuk mendia penyimpanan
-          untuk alat input/output
-          untuk merekam audio, video atau sinyal
CARA KERJA MAGNETIC TAPE
-          Data direkam secara digit pada media tape sebagai titik-titik magnetisasi pada      lapisan ferroksida. Magnetisasi positif menyatakan 1 bit, sedangkan magnetisasi negatif menyatakan 0 bit atau sebaliknya.
-          Tape untuk kode EBCDIC terdiri atas 9track.
-          8 track dipakai untuk merekam data dan track ke-9 untuk koreksi kesalahan.
  
DENSITY PADA MAGNETIC TAPE
-          Salah satu karakteristik yang penting dari tape adalah Density (kepadatan) dimana data disimpan.
-          Satuan yang digunakan density adalah bytes per inch (bpi).
-          Umumnya density dari tape adalah 1600 bpi dan 6250 bpi.
-          BPI (BytesPerInch) ekivalen dengan Characters Per Inch.


SISTEM BLOCK PADA MAGNETIC TAPE
-          Data yang dibaca dari atau ditulis ke tape dalam suatu grup karakter disebut block. Suatu block adalah jumlah terkecil dari data yang dapat ditransfer antara secondary memory dan primary memory pada saat akses.
-          Diantara 2 block terdapat ruang yang kita sebut sebagai gap (inter block gap).

KEUNTUNGAN MAGNETIC TAPE
-          Panjang record tidak terbatas.
-          Density data tinggi.
-          Volume penyimpanan datanya besar dan harganya murah.
-          Kecepatan transfer data tinggi.
-          Sangat efisiensi bila semua atau kebanyakan record dari sebuah tape file memerlukan pemrosesan seluruhnya
KETERBATASAN MAGNETIC TAPE
-          Akses langsung terhadap record lambat
-          Masalah lingkungan
-          Memerlukan penafsiran terhadap mesin
-          Proses harus sequential
Salah satu teknik untuk memeriksa kesalahan pada magnetic tape adalah dengan parity check. 2 jenis Parity Check, yaitu:
• Odd Parity (Parity Ganjil)
Jika data direkam dengan menggunakan odd parity, maka jumlah 1 bit yang merepresentasikan suatu karakter adalah ganjil.
Jika jumlah 1 bit nya sudah ganjil, maka parity bit yang terletak pada track ke 9 adalah 0 bit, akan tetapi jika jumlah 1 bit nya masih genap, maka parity bit nya adalah 1 bit.
• Even Parity (Parity Genap)
Bila kita merekam data dengan menggunakan even parity, maka jumlah 1 bit yang merepresentasikan suatu karakter adalah genap. Jika jumlah 1 bitnya sudah genap, maka parity bit yang terletak pada track ke 9 adalah 0 bit, akan tetapi jika jumlah 1 bit nya masih ganjil, maka parity bit nya adalah 1 bit.

  • OPTICAL DISK
     
Media penyimpanan optikal dengan menggunakan sinar laser untuk menulis dan mengambil data. Teknologi ini sama dengan yang digunakan pada teknologi audio VCD karena isinya bersifat permanent dan tidak dapat dirubah dan dihapus, yang dinakan CD-ROM (compact disc-read only memory). Namun, sesuai dengan perkembangan jaman, sekarang banyak pilihan keeping CD yang dapat ditulis dan dihapus unutk dipakai lagi yang disebut CD-R (compact disc-recordable). dan CD-RW (compact disc- recordable writeable).


  • MAGNETIC DISK
Penyimpanan magnetik (bahasa Inggris: Magnetic disk) merupakan piranti penyimpanan sekunder yang paling banyak dijumpai pada sistem komputer modern. Pada saat disk digunakan, motor drive berputar dengan kecepatan yang sangat tinggi. Ada sebuah read−write head yang ditempatkan di atas permukaan piringan tersebut. Permukaan disk terbagi atas beberapa track yang masih terbagi lagi menjadi beberapa sektor. Cakram fixed−head memiliki satu head untuk tiap−tiap track, sedangkan cakram moving−head (atau sering dikenal dengan nama cakram keras ) hanya memiliki satu head yang harus dipindah−pindahkan untuk mengakses dari satu track ke track yang lainnya.

Sejarah Perkembangan Solaris

 
Pengertian Solaris
Solaris merupakan suatu operasi system turunan asli dari varian kernel Unix yang dikembangkan pada tahun 1969 oleh American Telephone and Telegraph (AT&T). Solaris pada umumnya digunakan untuk menjalankan web server dan database server. Sejak Sun memulai membangun Solaris, pangsa pasar ditujukan untuk perusahaan menengah ke atas (Enterprise). Solaris juga membangun sebuah operasi system yang berfokus pada bagaimana Solaris bisa berjalan dengan baik dan stabil dengan membandingkan operasi system dengan turunan Unix lainnya. Solaris memberikan dukungan pada kemampuan Multiprocessor, bagaimana mengatasi deadlock, bagaimana menjaga dan meningkatkan CPU dan bagaimana teknik memanajemen Memory yang baik. Jika dilakukan perbandingan multiprocessor pada mesin yang sebanding antara Solaris 10 x86, RedHat Enterprise Linux 4, RedHat Enterprise Linux 5 dan Windows  Server 2003 R2. Solaris lebih unggul dalam stabilitas, efisiensi dan juga memiliki kinerja terbaik pada sebuah system operasi.
Dukungan Multiprocessor
Kernel Solaris memiliki kemampuan fully preemtible yang artinya semua thread, termasuk thread yang mendukung aktifitas kernel itu sendiri dapat ditunda untuk menjalankan thread dengan prioritas yang lebih tinggi; memiliki penjadwalan secara soft realtime; mendukung symmetrically multiprocessing yang mengoptimalkan kerja semua processornya dalam tingkatan yang sama, sehingga memberikan kualitas akses yang sama pada hardware computer yang lain dan; mendukung juga user-level multithreading.
Dukungan multiprocessor pertama kali ditambahkan pada kernel Solaris, pengembang lebih mengutamakan pada kemampuan kernel, karena dengan kernel yang stabil, mampu meningkatkan concurrency, dan juga mampu mendukung dan mengontrol lebih dari satu thread dalam satu proses user. Thread sendiri mampu melaksanakan system calls dan menangani page faults secara independent. Untuk membuat kernel mendukung pengoperasian multiprocessor, thread mengontrol untuk menjalankan proses secara bersamaan pada processor yang berbeda. Para pengembang juga ingin kernel yang dibangun tersebut dapat beroperasi secara soft realtime, yang diperlukan untuk mengontrol penjadwalan yang berlebihan dan preemption adalah tindakan sementara pada proses yang sedang dilakukan oleh system computer, untuk melanjutkan proses di lain waktu. Dan preemption ini memungkinan untuk mengeksekusi pada banyak titik proses.
Kernel thread menggunakan resources yang sangat sedikit, dan peralihan kernel threadnya relative sangat sedikit karena tidak memerlukan sebuah perubahan space pada virtual memory. Kernel thread juga memiliki kemampuan fully preemptible dan dapat menjadwalkan berdasarkan prioritas pada realtime. Solaris mampu menggunakan kernel threads untuk memungkinkan asynchronous aktifitas kernel, seperti menulis asynchronous disk. Hal ini menghilangkan berbagai komplikasi dari idle loop dan menggantikannya dengan penjadwalan thread secara independent. Hal ini meningkatkan  concurrency karena tindakan yang ditangani oleh CPU terpisah dan memberikan aktifitas pada prioritas asynchronous sehingga dapat dijadwalkan secara tepat. Kernel thread juga menangani interrupt. Jika thread ditemukan interrupt, maka akan menguncinya pada blok-blok yang mengalami interrups tersebut dan memungkinkan untuk menghapus dan mencegah terjadinya deadlock. Karena membuat thread baru setiap kali terjadi interrupt itu sangat memakan waktu, maka kernel menyiapkan bagian-bagian untuk menginisialisasi thread interrupt tersebut, dan ketika interrupt terjadi maka satuan kerja tersebut memindahkannya pada tumpukan thread interrupt.
Diagram Multithreading Levels and Relation ships

Fitur utama pada multiprocessor kernel Solaris adalah dengan dukungan Lightweight Processes(LWPs). Dukungan LWPs sendiri adalah mendukung beberapa control dari kernel thread pada banyak proses user, seperti yang ditunjukan pada Gambar 2. Mereka berbagi space dengan proses, dan resources proses. Kernel mendukung pelaksanaan LWPs dengan menghubungkan penggunaan kernel thread dengan LWP masing-masing. Tiap-tiap user level library menggunakan LWPs untuk mengimplementasikan user level threads. Hal ini memungkinkan proses user memiliki ribuan thread tanpa membebankan kernel.
Deadlocks
            Seperti yang dibahas sebelumnya, kernel Solaris dirancang untuk mencegah deadlocks yang disebabkan oleh thread interrupt. Hal ini dilakukan dengan memblokir thread-thread interrupt, jika ditemukan maka variable sinkronisasi akan terkunci dan menunggu sampai bagian yang critical sudah selesaikan. Strategi penguncian kernel ini digunakan untuk mengunci yang berbasis data. Didalam metode ini, setiap data dilindungi oleh objek sinkronisasi.
            Kernel juga mengimplementasikan pencegahan deadlocks menggunakan penguncian Mutual Exclusion (mutexes) untuk mencegah lebih dari satu thread dari tiap-tiap proses ketika ditemukan penguncian. Ini menghindari race condition ketika mengakses data secara bersamaan. Jika mutex tidak dapat mengatur penguncian tersebut, maka kebijakan pemblokiran defaultnya adalah dengan cara memutari penguncian tersebut ke arah processor. Status ini akan terus berulang jika tidak menjalankan suatu proses dan menghentikan putaran tersebut, maka statusnya pun akan idle. Hal ini memberikan respon yang cepat dengan tingkat overhead yang rendah.
            Deadlocks Detection juga diimplementasikan, deadlocks ini disebabkan oleh hierarchy violations yang mendeteksi pada saat runtime dengan menggunakan mekanisme prioritas inheritance. Karena mekanisme ini tidak mampu mendeteksi semua deadlocks, beberapa deadlocks yang tidak dapat terdeteksi adalah dengan kondisi yang bervariasi.
Virtual Memory
            Pada saat booting, Solaris membagi semua memori ke dalam tiap-tiap halaman. Biasanya, membagi 4 kilobyte, dan dapat berkisar hingga 4 megabyte. Solaris menggunakan algoritma LRU Second Chance two-handed untuk sistem virtual memory. Semua halaman diberikan kesempatan kedua bagi suatu halaman untuk berada didalam memory karena halaman yang sudah lama berada di memory mungkin saja adalah halaman yang sering digunakan dan akan digunakan lagi. Hal ini dilakukan oleh thread kernel pada Solaris yang biasa disebut Scanner. Kesempatan kedua itu direalisasikan dengan adanya bit acuan yang diset untuk suatu halaman. Halaman yang lebih dulu diakses berada didepan antrian dan yang baru saja diakases berada dibelakang antrian. Ketika terjadi kesalahan halaman, algoritma ini tidak langsung mengganti halaman didepan antrian tapi terlebih dahulu memeriksa bit acuannya. Jika bit acuannya sama dengan nol, halaman tersebut akan langsung diganti. Jika bit acuannya sama dengan satu, halaman tersebut akan dipindahkan ke akhir antrian dan bit acuannya diubah menjadi nol, kemudian mengulangi proses ini untuk halaman yang sekarang berada didepan antrian.
Scanning dilakukan secara berkala pada sistem dan tergantung pada jumlah free memory. Aktifitas scanner sistem berada di bawah parameter lotsfree(batas parameter untuk memulai paging dari free memory yang tersedia), yang defaultnya adalah 1/64 dari memori utama. Pageout scanner kemudian akan melakukan scanning antara batas tetap slowscan dan fastscan. Jika diperlukan, juga dapat dikonfigurasi untuk menjaga scanner dari penggunaan waktu CPU yang berlebihan.
Setelah memori turun di bawah desfree, yang defaultnya setengah dari lotsfree, akan memicu timer yang akan mencoba untuk mendapatkan rata-rata memori dalam waktu 30 detik di atas desfree. Jika seperti itu maka akan memicu soft swapping. Dalam soft swapping, akan menukar proses yang idle untuk jangka waktu tertentu. Proses standard idle adalah 20 detik.
Jika CPU menghabiskan lebih banyak waktu mengganti halaman daripada melakukan pekerjaan yang berguna (ketika rata-rata selama 30 detik turun di bawah minfree [setengah dari desfree] dan free memory yang saat itu dibawah desfree), maka akan masuk ke dalam swap. Jika terdapat proses yang membutuhkan memory besar dan membutuhkan waktu yang lama maka swap mengambil alih.Bahkan menjalankan pekerjaan yang layak untuk swap keluar, dan itu nikmat mengambil pekerjaan yang telah berjalan untuk waktu yang lama atau proses yang telah mengalokasikan jumlah yang relatif besar memori.
Sejarah Singkat Solaris
Pada tahun 1969, engineers dari Bell Labs yang merupakan bagian dari AT&T, membuat operasi system baru yang dibiayai oleh Departemen Pertahanan Amerika. Sistem ini dikenal sebagai Unix, memiliki banyak fitur, namun fitur yang  paling menonjol adalah kemampuan untuk memungkinkan mengakses beberapa user pada waktu yang bersamaan. Pada awalnya, AT&T tidak memperbolehkan menjual perangkat lunak, karena AT&T hanya menerbitkan izin tanpa dukungan teknis pada pihak-pihak yang berkepentingan, salah satunya pada Lembaga Ilmu Komputer University of California, Berkley, yang menggunakan Unix pada tahun 1974. Pada tahun 1977, lulusan U.C. Berkley menciptakan Berkley Software versi pertama yang mendistribusikan Unix. Hal ini menarik Departemen Pertahanan Amerika yang sedang mencari cara untuk mendesentralisasikan jaringan komputernya. Maka bersama-sama mengembangkan cara untuk mendesentralisasikan jaringan dan pada akhirnya tercipta World Wide Web(WWW). Pada tahun 1987 Sun Microsystems dan AT&T bekerjasama dalam satu aliansi untuk mengembangkan Unix System V Release 4(SVR4). Sejak saat itu Sun memperbaiki dan mendukung OS Solaris yaitu dengan menambahkan lebih banyak lagi fitur-fitur baru, termasuk untuk arsitektur komputer 64-bit. Versi minor SunOS yang dirilis oleh Sun disertakan dalam penamaan Solaris, misalnya Solaris 2.4 yang merupakan SunOS 5.4. Namun setelah versi Solaris 2.6, Sun menghilangkan angka “2” di depan kodifikasi versinya, sehingga rilis berikutnya SunOS 5.7 dinamakan sebagai Solaris 7 dan rilis terakhir adalah Solaris 11. Oracle saat ini merilis Solaris 11 Express untuk platform SPARC dan x86, Oracle Solaris sendiri dapat berjalan pada lebih dari 1.000 sistem dari produsen terkemuka dan memegang ratusan rekor dunia pada Oracle’s Sun x86-based X-series server dan SPARC-based T-series dan M-series servers. Oracle Solaris 11 Express memberikan keamanan, pengelolaan dan kinerja yang profesional IT.
Berikut secara jelas perkembangan Solaris dalam kurun waktu sebagai berikut;
1.             1965       : Bell Laborotaries bergabung dengan MIT dan General Electric mengembangkan Multics.
2.             1970       : Ken Thompson dan Dennis Ritchie mengembangkan UNIX.
3.             1965       : Bell Laborotaries bergabung dengan MIT dan General Electric mengembangkan Multics.
4.             1970       : Ken Thompson dan Dennis Ritchie mengembangkan UNIX.
5.             1971       : Versi B-Language dari sistem operasi jalan pada PDP-11.
6.             1973       : UNIX ditulis ulang dalam bahasa C.
7.             1974       : Thomson dan Ritchie mempublikasikan paper dan memacu antusiasme yangbesar terhadap UNIX di kalangan akademisi. Berkeley mulai mengembangkan BSD.
8.             1975       : Versi license pertama UNIX BSD diluncurkan.
9.             1979       : Bill Joy memperkenalkan "Berkeley Enhancements" sebagai BSD 4.1.
10.         1982       : AT&T pertama kali memasarkan UNIX. Sun Microsystem berdiri (Sunsingkatan dari Stanford University Network). Di perusahaan inilah Bill Joy sangpengembang UNIX BSD bergabung.
11.         1983       : Sun Microsystem memperkenalkan SunOS‡ 1984  : Sekitar 100.000 situs UNIX tersebar di seluruh dunia.
12.         1988       : AT&T dan Sun mengawali pekerjaan pengembangan SVR4 (System VRelease 4) yang merupakan versi gabungan dari UNIX (BSD & System V).
13.         1988       : OSF (Open Software Foundation) dibentuk, kemudian sebagai counternyaAT&T, Sun, Data General, dan Unisys membentuk UI (UNIX International).
14.         1989       : AT&T meluncurkan System V, release 4.
15.         1990       : OSF merluncurkan OSF/1.
16.         1992       : Sun memperkenalkan Solaris, yang berbasis System V, Release. SunOSyang berbasis BSDF UNIX, akan di nonaktifkan.
17.         1993       : Novell membeli UNIX dari AT&T.
18.         1994       : Solaris 2.4 tersedia.
19.         1995       : Santa Cruz Operation membeli UNIXware dari Novell. SCO dan HP mengumumkan kerja sama untuk mengembangkan UNIX versi 64-bit. Solaris 2.5 tersedia di pasaran. Pada tahun ini juga Linux, versi UNIX yang ditulis oleh Linus Tovalds secara aktif dikembangkan dan mengalami perkembangan yang pesat dengan berkembangnya Internet di mana komunitas developer dapat dengan mudah saling berhubungan secara online.
20.         1997       : Solaris 2.6 tersedia di pasaran.
21.         1998       : Solaris 7 tersedia di pasaran.
22.         2000       : Solaris 8 tersedia di pasaran.
23.         2001       : Solaris 9 Beta testing Q3.
24.         2004       : Solaris 10 diluncurkan di pasaran. Pada versi ini Sun berencana untuk menjadikan Solaris sebagai open source. Pada versi ini Solaris dapat menjalankan aplikasi-aplikasi yang jalan pada Linux secara native. Pada versi sebelumnya, untuk dapat menjalankan aplikasi yang jalan di Linux pada Solaris harus diinstall suatu package yang disebut Janus dan dijalankan sebagai suatu service.
25.         2011       : Solaris 11 diluncurkan di pasaran.
Sun Microsystem Inc. Memegang peranan penting pada perkembangan Sun Solaris. Pada bulan Januari 2010, Sun Microsystem melakukan akuisisi pada Oracle, maka Solaris dikenal sebagai Oracle Solaris. Solaris mendistribusikan source codenya dibawah licensi Common Development and Distribution License (CCDL). Oracle juga akan memulai program mitra teknologi yang telah dilakukan pada produk-produk lainnya dengan nama Oracle Technology Network (OTN) yang memberikan akses serta izin atas source code solaris tersebut.
Kelebihan dan kekurangan solaris

Kelebihan :
  1. Free redistribution, setiap user bisa membeli atau memberikan secara bebas software tersebut oleh dirinya sendiri atau sebagai bagian dari kumpulan distributor.
  2. Derived works, setiap orang bisa mengubah kode dan mendistribusikan kembali untuk umum.
  3. No discrimination, kode disediakan untuk semua orang agar bisa dikembangkan.
  4. ZFS adalah Fasilitas Restore Mirip seperti feature Restore di sistem operasi Windows.
  5. Banyak tool observasi dan debugging, misal seperti tool monitoring system, modular debugger (MDB), dynamic tracing (D-Trace).
  6. Memiliki beberapa bentuk virtulasasi, selain virtualisasi pada tingkat system operasi seperti virtualisai pada Solaris Zone, OpenSolaris juga mendukung virtualisasi untuk Xvm hypervisor, Logical Domains (LDoms), virtualbox dan bisa juga jalan pada VMware dan beberapa framework virtualisasi yang lainnya.
  7. Mempunyai tingkat skalabilitas yang tinggi. OpenSolaris dapat berjalan pada single prosesor maupun multiprosesor dengan ratusan CPU dan RAM dengan ukuran terabyte.
  8. Integrasi AMP stack (Apache, MySQL, PHP) untuk menjalankan web server.
  9. Sistem file stabil untuk database, server Internet, Intranet, file-server, Internet-client, pembangunan Java.  
  10.  Solaris bisa dijalankan di atas prosesor yang berspek x86,x64 dan SPARC.
Kekurangan :
  1. Harga sistem operasi komersil yang mahal (versi berbayar).
  2. Kepantasan inovasi Linux lama kelamaan memberi kesan kepada sistem Unix komersil.
  3. Sistem operasi Unix versi "hampir" percuma tidak sebaik sistem operasi Unix komersil.
  4. Driver hardware yang kurang baik.