TEKNOLOGI PIRANTI LUNAK KOMPUTER
Perangkat Lunak Sistem
Perangkat lunak sistem atau sistem operasi merupakan
software yang berfungsi melakukan operasi yang mengurusi tentang segala aktifitas
komputer seperti mendukung operasi sistem aplikasi dan mengendalikan semua
perangkat komputer agar dapat berjalan selaras dengan fungsinya. sistem operasi
merupakan suatu program yang bertindak sebagai perantara antara pengguna dan
hardware komputer. Mereka juga menyatakan bahwa tujuan dari sistem operasi
adalah:
- Melaksanakan program pengguna dan memudahkan dalam menyelesaikan masalahnya.
- Membuat sistem komputer menjadi mudah untuk digunakan.
- Menjadikan pengguna hardware komputer menjadi lebih efisien.
Sistem operasi bekerja untuk mengatur operasi CPU,
identifikasi input-output (I/O), tempat penyimpanan (memori) dan segala
aktifitas komputer. Sistem operasi mengendalikan semua sumber daya komputer dan
menyediakan landasan hingga sebuah program aplikasi dapat ditulis atau
dijalankan.
Tugas-Tugas Sistem
Operasi
Tugas-tugas
sistem operasi diantaranya:
1. Menyediakan antarmuka
pengguna (user interface), berupa:
- Melakukan perintah (command-base user interface) dalam bentuk teks.
- Mengarahkan menu (menu driven).
- Antarmuka unit grafik (graphical user interface-GUI).
- Kombinasi ikon dan menu untuk menerima dan melaksanakan perintah.
3. Melakukan tugas pengolahan dan pengendalian sumber daya dalam sebuah proses sebagai berikut:
- Multitasking, yaitu kemampuan untuk menjalankan lebih dari satu tugas secara bersamaan. Pada multitasking, hanya dipergunakan satu CPU, namun perpindahan antar satu program ke program lainnya dilakukan dengan sangat cepat sehingga jika dilihat akan nampak bahwa program dijalankan secara bersamaan.
- Multiprocessing, penggunaan atau pemrosesan sebuah program secara serentak oleh beberapa unit CPU.
- Timesharing, menggunakan sistem komputer yang sama pada banyak pengguna.
- Multithreading, memproses aktivitas pada bentuk yang sama dengan multitasking tetapi pada aplikasi tunggal.
- Scalability dan Network, upaya komputer dalam mengendalikan dan meningkatkan kewaspadaan dan keamanan jumlah pengguna dan memperluas pelayanan.
Layanan
Sistem Operasi
Sebuah
sistem operasi yang baik harus memiliki layanan berupa eksekusi program,
operasi I/O, manipulasi sistem file, komunikasi, dan deteksi kesalahan. Dalam
pemakaian secara multiuser sistem dapat lebih menguntungkan yaitu lebih efisien
karena pemakaian sumber daya bersama antara pengguna. Sebagai fungsi layanan
bersama tersebut maka sistem operasi akan memberikan efisiensi pengguna
sistem
berupa:
- Resource allocator, yaitu mengalokasikan sumber daya ke beberapa pengguna atau pekerjaan yang berjalan pada saat yang bersamaan.
- Protection, menjamin akses ke sistem sumber daya yang dikendalikan (akses pengguna ke sistem menjadi terkendali)
- Accounting, yaitu merekam kegiatan pengguna, jatah pemakaian sumber daya (keadilan atau kebijakan)
Manajemen
proses
Proses
adalah keadaan ketika sebuah program sedang dieksekusi. Sebuah proses
membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya, sumber daya
tersebut dapat berupa CPU time, memori, file-file, dan perangkat-perangkat I/O.
Sistem operasi bertanggung jawab atas
aktifitas-aktifitas
yang berkaitan dengan manajemen proses seperti:
- Pembuatan dan penghapusan proses user dan sistem proses
- Menunda atau melanjutkan proses
- Menyediakan mekanisme untuk proses sinkronisasi
- Menyediakan mekanisme untuk proses komunikasi
- Menyediakan mekanisme untuk penanganan deadlock.
Manajemen
memori utama
Memori
utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari
word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan.
Setiap word atau byte mempunyai alamat sendiri. Memori utama berfungsi sebagai
tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O.
Memori utama termasuk tempat penyimpanan data
sementara
(volatile), artinya data dapat hilang begitu sistem dimatikan. Sistem operasi
bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen
memori seperti:
- menjaga track memori yang sedang diguanakan dan siapa yang menggunakannya
- memilih program yang akan di-load ke memori.
- Mengalokasikan dan men-dealokasikan ruang memori sesuai kebutuhan.
Manajemen
memori skunder
Data
tersimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil.
Oleh karenan itu, untuk menyimpan keseluruhan data dan program komputer
dibutuhkan secondary storage yang bersifat permanen dan mempu menampung data
dengan ukuran besar. Contoh dari memori skunder adalah harddisk, disket, USB
flash disk, dan lain-lain. Sistem operasi bertanggung jawab atas
aktivitas-aktivitas yang berkaitan dengan disk managementi seperti free space
management, alokasi penyimpanan, dan penjadwalan disk.
Manajemen
sistem I/O
Manajemen
sistem I/O biasa juga disebut sebagai device manager, yang bertugas menyediakan
device driver´yang umum sehingga operasi I/O dapat seragam (membuka, membaca,
menulis, menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca
file pada hard disk, CD-ROM dan disket. Komponen sistem operasi untuk sistem
I/O adalah sebagai berikut:
- Buffer: berfungsi untuk sementara menampung data dari/ke perangkat I/O.
- Spooling: melakukan penjadwalan pemakaian I/O sistem supaya lebih efisien (antrian dan sebagainya).
- Menyediakan driver untuk dapat melakukan operasi detail untuk hardware I/O tertentu.
Manajemen
file
File
adalah sekumpulan informasi yang berhubungan sesuai dengan tujuan pembuat
berkas tersebut. Berkas dapat mempunyai struktur yang bersifat hirarki
(direktori, volume, dan lain-lain). Tanggung jawab sistem operasi
adalah:
- Pembuatan dan penghapusan file
- Pembuatan dan penghapusan direktori
- Mendukung manipulasi file dan direktori
- Memetakan file ke secondary storage
- Melakukan backup file ke media penyimpanan permanen (non volatile)
Sistem
proteksi
Proteksi
mengacu pada mekanisme untuk mengendalikan akses yang dilakukan oleh program,
prosesor, atau pengguna ke sistem sumber daya. Mekanisme proteksi seharusnya:
- Dapat membedakan antara pengguna yang diizinkan dan yang belum
- Menentukan kendali
- Menyediakan alat pengatur
Jaringan
Sistem
distribusi adalah sekumpulan processor yang tidak berbagi memori atau clock.
Tiap prosesor mempunyai memori sendiri. Prosesor-prosesor tersebut terhubung
melalui jaringan komunikasi sistem terdistribusi yang menyediakan akses
pengguna ke berbagai macam sumber daya sistem. Akses tersebut menyebabkan
meningkatnya:
- Kecepatan komputer
- Ketersediaan data
- Kehandalan (enhanced reliability)
Perangkat Lunak Bahasa Pemrograman
Generasi
Bahasa Pemrograman
Bahasa
pemrograman adalah software bahasa komputer yang digunakan dengan cara merancang
atau membuat program sesuai dengan struktur dan metode yang dimiliki oleh
bahasa program itu sendiri. Komputer mengerjakan transformasi data berdasarkan
kumpulan perintah program yang telah dibuat oleh program. Kumpulan perintah ini
harus dimengerti oleh komputer, berstruktur terntentu
(syntax),
dan bermakna. Bahasa pemrograman merupakan notasi untuk memberikan secara tepat
program komputer.
Menurut
tingkatannya, bahasa pemrograman dibagi menjadi 3 tingkatan, yaitu:
- Bahasa pemrograman tingkat rendah (low level language), merupakan bahasa pemrograman generasi pertama, bahasa pemrograman jenis ini sangat sulit dimengerti karena instruksinya menggunakan bahasa mesin. Biasanya yang mengerti hanyalah pembuatnya saja karena isinya programnya berupa kode-kode mesin.
- Bahasa pemrograman tingkat menengah (middle level language), merupakan bahasa pemrograman dimana pengguna instruksi sudah mendekati bahasa sehari-hari, walaupun begitu masih sulit untuk dimengerti karena banyak menggunakan singkatan-singkatan seperti “STO” artinya simpan (STORE) dan “MOV” artinya pindahkan (MOVE). Yang tergolong dalam bahasa ini adalah assembler
- Bahasa pemrograman tingkat tinggi (high level language) merupakan bahasa yang mempunyai ciri lebih terstruktur, mudah dimengerti karena menggunakan bahasa sehari-hari, contoh bahasa level ini adalah: Delphi, Pascal, ORACLE, MS-SQL, Perl, Phyton, Basic, Visual Studio (Visual Basic, Visual FoxPro), Informix, C, C++, ADA, Java, PHP, ASP, XML, dan lain-lain. Bahasa seperti Java, PHP, ASP, XML biasanya digunakan untuk pemrograman pada internet, dan masih banyak lagi yang terus berkembang yang saat ini biasanya dengan ekstensi .net (baca: dot net) seperti Visual Basic.NET dan Delphi.Net yang merupakan bahasa pemrograman yang dikembangkan pada aran berbasis internet
Bahasa
Pemrograman Generasi I
Bahasa
pemrograman generasi pertama berorientasi pada mesin. Program disusun dengan
menggunakan bahasa mesin. Tentu saja program generasi ini sangat sulit untuk
dipahami oleh orang awam dan sangat membosankan bagi pemrogram. Pemrogram harus
benar-benar menguasai operasi komputer secara teknis. Namun bahasa generasi ini
memberikan eksekusi program yang sangat cepat. Selain itu, bahasa mesin sangat
bergantung pada mesin (machine dependent), artinya, bahasa mesin antara satu
mesin dengan mesin lainnya akan berbeda.
Bahasa
Pemrograman Generasi II
Bahasa
pemrograman generasi kedua menggunakan bahasa rakitan (assembly). Sebagai
pengganti kode-kode biner, digunakanlah kependekan dari kata-kata. Misalkan
“MOV” untuk menyatakan “MOVE” dan JNZ yang berarti “jump non-zero”. Setiap
instruksi dalam bahasa rakitan sebenarnya identik dengan satu instruksi dalam
bahasa mesin. Bahasa ini sedikit lebih mudah dipahami daripada bahasa mesin.
Bahasa ini sedikit lebih mudah dipahami daripada bahasa mesin mengingat
perintah dalam bentuk kata-kata yang dipendekkan lebih mudah daripada mengingat
deretan angka biner.
Berikut
adalah contoh instruksi yang ditulis dalam bahasa rakitan akan menjadi seperti
berikut:
- Tampak bahwa penggunaan notasi seperti MOV AH, 02 jauh lebih mudah diingat atau dipahami daripada penulisan instruksi dalam bahasa mesin: B402 atau 1011 0100 0000 0010.
Bahasa
Pemrograman Generasi III
Bahasa
pemrograman generasi ketiga menggunakan pendekatan prosedural. Sebagai bahasa
prosedural, pemrogram perlu menuliskan instruksi-instruksi yang rinci agar komputer
melaksanakan tugasnya. Program ditulis dengan menggunakan kata-kata yang biasa
dipakai manusia, seperti
WRITE
untuk menampilkan sesuatu di layar dan READ untuk membaca data dari keyboard.
Bahasa
generasi ketiga seringkali disebut sebagai high level language disebabkan
bahasa ini menggunakan kata-kata yang biasa digunakan manusia. Beberapa contoh
bahasa pemrograman yang masuk dalam kategori generasi ketiga yaitu ALGOL, C,
BASIC, COBOL, FORTRAN, dan PASCAL.
Bahasa
Pemrograman Generasi IV
Bahasa
pemrograman generasi keempat dirancang untuk mengurangi waktu pemrograman dalam
membuat program sehingga diharapkan produktifitas pemrogram jadi meningkat dan
program dapat dibuat dalam waktu yang lebih singkat. Alhasil, bahasa
pemrograman generasi keempat yang dikenal dengan sebutan 4GL dapat dipakai oleh
pemakai yang kurang mengetahui hal-hal teknis tentang pemrograman tanpa bantuan
pemrogram profesional. Sebagai contoh pemrogram dapat membuat program dengan
Microsoft Access di lingkungan PC dengan mudah.
Bahasa
pemrograman generasi keempat biasa disebut sebagai high level language atau
bahasa berorientasi pada masalah (problem oriented language) karena
memungkinkan pemakai menyelesaikan masalah dengan sedikit penulisan kode
dibandingkan pada bahasa prosedural. Bahasa pemrograman generasi keempat
menggunakan pendekatan non-prosedural. Untuk mendapatkan suatu hasil, seorang
pemakai tidak perlu memberitahukan secara detail tentang bagaimana
mendapatkannya. Gambar di bawah ini memberikan contoh yang menunjukkan perbedaan
bahasa prosedural dan non-prosedural dalam memperoleh data tentang seorang
mahasiswa.
Bahasa
Pemrograman Generasi V
Bahasa
pemrograman generasi kelima merupakan kelompok bahasa-bahasa pemrograman yang
ditujukan untuk menangani kecerdasan buatan (artificial intelligence).
Kecerdasan buatan adalah disiplin dalam ilmu komputer yang mempelajari cara
komputer meniru kecerdasan manusia. Berbagai aplikasi kecerdasan manusia adalah
sebagai berikut:
- Pemrosesan bahasa alami (natural language processing), yakni mengatur komputer agar bisa berkomunikasi dengan manusia melalui bahasa manusia (Indonesia, Inggris, Spanyol, Prancis, dan sebagainya).
- Pengedalian robotika dan sensor mata.
- Aplikasi sistem pakar (expert system) yang meniru seorang pakar di bidang tertentu sehingga bisa menghasilkan nasehat atau pemikiran yang setara dengan seorang pakar.
Dengan
menggunakan bahasa generasi kelima dimungkinkan untuk melakukan perintah dengan
cara percakapan seperti berikut:
“Tampilkan
semua nama mahasiswa yang IPK-nya di atas 3,0 dan urutkan berdasarkan IP secara
descending”
PROLOG
dan LISP merupakan dua contoh bahasa pemrograman yang ditujukan untuk menangani
kecerdasan buatan
TEKNOLOGI PERANGKAT LUNAK APLIKASI
Perangkat
lunak aplikasi sejatinya adalah program yang didesain khusus untuk
menyelesaikan masalah spesifik pengguna, seperti melakukan tugas-tugas mengetik
dokumen, manipulasi foto, merancang bangunan. Perangkat lunak aplikasi dapat
digolongkan menjadi:
- Perangkat lunak hiburan
- Perangkat lunak pendidikan
- Perangkat lunak produktivitas kerja
- Perangkat lunak bisnis
- Perangkat
lunak khusus
Jenis
Perangkat Lunak
Berdasarkan
cara mendapatkannya dan hak pemakaian, perangkat lunak dapat digolongkan
menjadi perangkat lunak komersial, perangkat lunak domain publik, shareware,
freeware, rentalware, freesoftware atau opensource.
Perangkat
lunak komersial
Perangkat
lunak komersial biasa juga disebut proprietary software merupakan perangkat
lunak yang dijual secara komersial. Setiap orang yang bermaksud
menginstalnya
harus membelinya. Jika tidak membelinya berarti membajak perangkat lunak dan
dapat dikenai sanksi hukum karena ada hak cipta (copyright). Hak cipta adalah
satu bentuk hak yang dilindungi hukum dimana seseorang dilarang untuk menyalin
hak atas kekayaan intelektual (HAKI) tanpa izin pemegangnya. Perangkat lunak
ini juga disertai lisensi yang melarang pembeli menyalin perangkat lunak untuk
diberikan kepada orang lain ataupun untuk dijual kembali. Contoh perangkat
lunak komersial adalah Microsoft Office dan CorelDraw.
Perangkat
lunak rentalware
Merupakan
perangkat lunak yang bisa digunakan oleh seseorang atau institusi dengan cara
meyewa. Penyewaan biasanya dilakukan pertahun.
Perangkat
lunak domain-public
Merupakan
perangkat lunak yang tidak disertai hak cipta dan memungkinkan siapa saja
melakukan tindakan apa saja terhadap program tersebut, termasuk membuang nama
penciptanya dan memperlakukannya sebagai karya ciptanya sendiri dan mengenakan
hak cipta. Perangkat lunak seperti ini umumnya berupa kode sumber dan banyak
dijumpai di internet.
Perangkat
lunak shareware
Merupakan
perangkat lunak yang tersedia tanpa kode sumber dan biasanya digunakan oleh
pemakai dengan tujuan untuk dievaluasi selama masa tertentu tanpa membayar sama
sekali dan jika sesudah masa tersebut berlalu, maka pemakai tersebtu tetap
menggunakannya maka ia harus membayar ke pembuat (pemegang hak cipta) perangkat
lunak tersebut. Berbeda dengan versi trial, shareware tidak memiliki masa
kadaluarsa. Artinya, pemakai tetap bisa menggunakannya walau batas uji coba
telah berakhir. Umumnya pembuat shareware menyediakan layanan konsultasi,
manual tercetak, update (pemutakhiran) ke versi terbaru secara gratis, dan
terkadang memberikan bonus berupa perangkat lunak lain. Tujuan pembuatan
shareware adalah untuk mendapatkan bantuan dana dari pemakai guna pengembangan
lebih lanjut.
Free
Software
Ini
merupakan istilah yang dicanangkan oleh Richard Stallman pendiri (Pendiri Free
Software Foundation) untuk menyatakan perangkat lunak yang dilengkapi kode
sumber yang memungkinkan siapa saja dapat menggunakan program tersebut dan
bahkan ikut mengembangkannya. Secara lebih lengkap, sebuah software disebut
free software jika:
- Pemakai memilki kebebasan untuk menjalankan program untuk tujuan apa saja.
- Pemakai memiliki kebebasan untuk memodifikasi program sesuai kebutuhan. Oleh karena itu kode sumber harus tersedia.
- Pemakai memiliki kebebasan untuk mendistribusikan kembali salinan program, baik secara gratis maupun dengan bayaran
- Pemakai memiliki kebebasan untuk mendistribusikan versi-versi program yang telah dimodifikasi sehingga komunitas dapat memperoleh manfaat dari pengembangan tersebut
Tujuan
Stallman adalah menciptakan kebebasan kepada pemakai dan menghindari
pengontrolan program oleh suatu pihak.
Open
source
Istilah
ini dikemukakan oleh Eric Raymond pada tahun 1998 dan dimaksudkan untuk
menghilangkan makna free pada free software yang ambigu karena dalam Bahasa
Inggris kata tersebut memiliki arti yang bermacam-macam, misalkan gratis dan
bebas. Istilah open source muncul dari ide bahwa seandainya setiap orang dapat
berpartisipasi dalam mengembangkan suatu perangkat lunak tentu perangkat lunak
tersebut akan segera berevolusi
menuju
ke tingkat kesempurnaan. Hal-hak yang disediakan pada open source adalah
sebagai berikut:
- Hak untuk membuat salinan program dan mendistribusikan salinan tersebut
- Hak untuk megakses kode sumber sebagai syarat untuk bisa melakukan modifikasi
- Hak untuk melakukan pengembangan terhadap program.
0 komentar