Software Basic

Software -perangkat lunak- adalah suatu bagian dari komputer yang menjembatani cara kerja user dan komputer. Perangkat tersebut mengubah bahasa manusia menjadi bahasa komputer untuk memasukkan input, dan merepresentasikan bahasa komputer menjadi bahasa manusia untuk menghasilkan output. Pengubahan tersebut dilakukan melalui program yang tersimpan di dalam perangkat keras.

Ada tiga kelompok besar sfotware, yaitu : Program, Aplikasi, dan Sistem

Program
Program bekerja untuk menghasilkan output berdasarkan input, dan hanya bekerja bila suatu input dimasukkan. Sejumlah instruksi untuk mengolah input terdapat pada program, sehingga output yang dihasilkan sesuai dengan permintaan pengguna.

Terkadang bisa terdapat kesalahan atau ketidakjelasan pada instruksi, yang menyebabkan proses tidak berjalan sebagaimana mestinya. Kesalahan tersebut disebut bugs, dan dapat menyebabkan output tidak sesuai permintaan atau tidak terdapat output sama sekali.

Instruksi pada program diatas disbut algoritma. Karena komputer hanya bisa mengikuti instruksi yang tersedia, maka algoritma tersebut harus dibuat sejelas mungkin. Langkah-langkah dan berbagi kemungkinan harus dijabarkan secara mendetail pada algoritma. Apabila ada kesalahan atau kerancuan, yang disebut bugs diatas, algoritma tersebut harus diperbaiki. Proses memperbaiki algoritma disebut debugging.

Bahasa yang digunakan komputer tidak sama dengan bahasa manusia. Karena itu setiap algoritma harus dibuat dalam bahasa komputer, tepatnya kode biner. Untuk memudahkan pekerjaan ini, dibuatlah bahasa pemrograman, bahasa untuk menengahi bahasa manusia dan komputer. Karena komputer tidak bisa menerjemahkan sendiri bahasa pemrograman ke kode biner, maka dibuatlah compiler.

Aplikasi
Aplikasi memampukan kita mengoperasikan komputer tanpa harus mengerti bahasa pemrograman seperti programmer. Sebagian besar aplikasi harus dibeli, dan proses pembeliannya secara umum sama dengan membeli barang-barang lain. Ada sedikit perbedaan penting dari pembelian aplikasi dan barang lain

Documentation
Setiap pembelian aplikasi akan dilengkapi semacam manual book, tentang cara penggunaan aplikasi tersebut.

Update dan Upgrade
Perusahaan software terus-menerus mengembangkan aplikasi yang mereka jual, membersihkan bugs dan menambah fitur baru. Beberapa perusahaan menawarkan update minor (penghilangan bugs dan penambahan beberapa fitur) beberapa kali setahun yang dapat diperoleh secara gratis. Mereka juga menawarkan upgrade mayor (penambahan / perubahan fitur secara signifikan) beberapa tahun seakli, dan terkadang ada biaya tambahan untuk proses upgrade ini

Kompatibilitas
Tidak semua aplikasi dapat berfungsi di setiap komputer. Ada beberapa kriteria pada komputer yang harus dipenuhi agar bahasa pemgrograman pada aplikasi dapat dibaca.

Ketiadaan Garansi
Programmer tidak dapat menjamin bahwa programnya bebas dari segala jenis kesalahan. Karena itu, mereka tidak membuat garansi untuk aplikasi-aplikasi yang mereka jual, untuk mencegah keharusan bertanggung jawab pada setiap error yang terjadi.

Lisensi
Pembelian aplikasi sebenarnya adalah pembelian ijin untuk menggunakan aplikasi tersebut. Aplikasi telah dilindungi agar tidak di-copy, dan hanya pihak yang membeli yang boleh menggunakannya. Terkadang ada sejumlah pihak yang menjual aplikasi tanpa lisensi, disebut pembajakan.

Distribusi
Aplikasi dapat didistribusikan melalui penjualan langsung dan internet. Terkadang aplikasi didistribusikan berupa trial atau demo, dengan sejumlah fitur terkunci yang hanya dapat dibuka dengan kode yang didapat saat pembelian. Ada pula sejumlah aplikasi cuma-cuma, yaqng biasanya disebarkan melalui internet.

Sistem
Sistem berfungsi untuk mengatur hal-hal detail seperti bagian mana dari memory komputer yang menyimpan data, atau alur pengiriman data dari komputer ke printer. Sistem menyelesaikan cara kerja di belakang layar agar suatu program berjalan dengan baik

Fungsi Sistem Operasi
Setiap komputer bergantung pada sistem operasi (Operating System -OS-) untuk membuat hardware berfungsi seefisien mungkin dan memudahkan proses komunikasi dengan hardware. Sistem operasi bekerja dengan cara yang dimengerti user dan komputer. Berikut fungsi-fungsi utama dari sistem operasi
 * Menjaga file tetap di tempatnya pada hard drive atau program
 * Mendukung mulitasking
 * Mengatur virtual memory -memory yang menstimulasi RAM- saat sisa tempat di RAM sudah tidak cukup.
 * Bertanggung jawab untuk keautentikan dan authorisasi. Salah satu contohnya dengan menggunakan username dan password untuk login.

Utility Program dan Device Driver
Ulitity programs bekerja untuk memelihara sistem dan memperbaiki bagian-bagian yang tidak terjangkau operting system. Sementara device drivers adalah program-program kecil yang memampukan input dan output devices untuk terhubung dengan komputer.

Lokasi dari Operating System
Sebagian besar sistem operasi disimpan di ROM, namun karena ROM tidak dapat diedit, sistem operasi tidak bisa diupgrade atau dimodifikasi. Sebagai solusinya, sistem operasi tersebut diletakkan di flash memory. Sayangnya cara tersebut menyebabkan hanya sedikit sistem operasi yang disimpan di ROM. Sisa memory tersebut lalu disimpan di proses bernama booting.