2. PRANGKAT LUNAK KOMPUTER (Software)

Software adalah kumpulan instruksi yang berfungsi untuk menjalankan suatu perintah, seperti meberikan informasi tetang hardware, menentukan funsi hardware dan menjalankan system.  Perengkat lunak menunjuk pada program dan alat bantu lain yang bersifat menambah komponen komputer sebagai alat untuk melaksanakan tugas atau operasi tertentu.

2.3.Perangkat Lunak Sistem Operasi
Merupakan perangkat lunak yang berfungsi melekukan operasi yang mengurusi tentang segala atifitas komputer seperti mendukung operasi sistem aplikasi dan mengendalikan semua perangkat komputer agar dapat berjalan selaras dengan fungsinya.
Sistem Operasi, mempunyai tugas untuk melakukan control dan koordinasi penggunaan perangkat keras pada berbagai program aplikasi untuk user-user yang berbeda.

2.3.1.      Fungsi-Fungsi Dasar Sistem Operasi
1.      Menjadwalkan tugas
2.      Mengelola sumberdaya perangkat lunak dan perangtkat keras
3.      Menjaga keamanan system
4.      Memungkin pembagian sumber daya untuk beberapa pemakai
5.      Menyimpan catatan pemakai
6.      Menangani interrupt.

2.3.2.      Tugas Sistem Operasi
1.      Menyediakan antarmuka pengguna (user interface), berupa :
·         Melakukan perintah (command-base user interface) dalam membuat teks
·         Mengarahkan menu (menu driven)
·         Antarmuka unit grfik (graphical user interface-Gui)
·         Kombinasi ikon dan menu untuk menerima dan melaksanakan perintah
2.      Menyediakan informasi yang berkaitan dengan hardware, yitu berupa prangkat yang aktif atau pasif, dan mengendalikan prangkat I/O.
3.      Melakukan tugas pengolahan dan pengendalian sumberdaya dalam proses sbb:
·         Multitasking,melakukan tugas secara serentak pada aplikasi yang sama maupun berbeda
·         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
·         Scability and network,upaya komputer dalam mengendalikan dan meningkatkan kewaspadaan dan keamanan jumlah pengguna dan memperluas pelayanan
4.      Pengelolan file dan direktori data, yaitu memastikan file-file dalam penyimpanan skunder tersedia jika diperlukan, dan mengamankan dari pengguna yang tidak dizinkan.

2.3.3.      Layanan Sistem Operasi
1.      Eksekusi Program
Merupakan kemampuan sistem untuk memuat program ke memori dan menjalankan program
2.      Operasi I/O
Pengguna tidak dapat secara langsung mengakses sumber daya hardware, sistem operasi harus menyediakan mekanisme untuk operasi I/O atas nama pengguana
3.       Memanipulasi Sistem File
Kemampuan program untuk melakukan operasi pada file (membaca, menulis, membuat dan menghapus file)
4.      Komunikasi
Komunikasi adalah pertukaran data atau informasi antar dua atau lebih proses yang berbeda pada suatu komputer (atau lebih)
5.      Deteksi Kesalahan
Deteksi kesalahan (error) adalah menjaga kestabilan system dengan mendeteksi error hardware maupun operasi

2.3.4.      Komponen Sistem Operasi
1.      Managemen proses
Proses adalah keadaan ketika sebuah program sedang dieksekusi.  Sistem bertanggung jawab atas aktivits-aktivitas yang berkaitan dengan managemen proses seperti :
·         Pembuatan dan penghapusan proses pengguna dan sistem proses
·         Menunda atua melanjutkan proses
·         Meyadiakan mekanisme untuk proses sinkronisasi
·         Meyadiakan mekanisme untuk proses komunikasi
·         Meyadiakan mekanisme untuk penanganan deadlock
2.      Managemen Memori Utama
Memori utama befungsi sebagai tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O.  memori utama termasuk tempat penyimpanan data yang sementara (volatile), artinya data dapat hilang begitu sitem dimatikan.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan managemen memori seperti :
·         Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya.
·         Memilih program yang akan di-load ke memori.
·         Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan.
3.      Managemen Secondary-Storage
Managemen secondary-storage adalah media penyimpanan yang bersipat permanen dan mampu menampung banyak data.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan disk-managemen seperti : free-space managemen, alokasi penyimpanan, penjadualan disk.
4.      Managemen Sistem I/O
Komponen sistem operasi untuk sistem I/O :
·         Buffer :  menampung sementara data dari/ke prangkat I/O.
·         Spooling :  melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb).
·         Menyediakan driver untuk dapat melakukan operasi “rinci” untuk perangkat keras I/O tertentu.
5.      Managemen Berkas
Berkas adalah kumpulan informasi yang berhubungan dengan tujuan pembuat berrkas tersebut.  System operasi bertanggung jawab :
·         Pembuatan dan penghapusan berkas.
·         Pembuatan dan penghapusan direktori.
·         Mrndukung manipulasi berjas dan direktori.
·         Memetakan berkas ke secondary storage.
·         Mem-backup berkas ke media penyimpanan yang permanen (non-volatile).
6.      Sistem  Proteksi
Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumberdaya.  Mekanisme proteksi harus :
·         Membedakan antara penggunaan yang sudah diberi izin dan yang belum.
·         Specify the controls to be imposed.
·         Provide a means of enforcement.
7.      Jaringan
Jaringan berpungsi untuk menghubungkan prosesor-prosesor serta menyediakan akses pengguna ke bermacam sumber daya sistem.  Akses tersebut menyebabkan :
·         Computation speed-up.
·         Increased data availability.
·         Enhanced reliability.
8.      Command-Interpreter Sistem
Commend-Interpreter Sistem yang sangat berpariasi dari satu sistem ke sistem operasi yang lain dengan tujuan dan teknologi I/O devices yang ada.  Contohnya :  CLI, Windows, Pen-based (touch), dan lain-lain.

2.3.5.      Klasifikasi Sistem Operasi
1.      Berdasarkan skala arsitekturnya (bit)
Sekarang yang banyak digunakan adalah 32 dan 64 bit.
2.      Klasifikasi sistem operasi berdasarkan End-User Interface :
·         Commend Driven, seluruh perintah pada system operasi diketikan pada promt (misalnya :  DOS, UNIX, atau XENIX).
·         Grapichal User Interface, pengguna akhir menggunakan mouse (misalnya :  SO Windows, IBM OS/2, MAC-OS, LINUX).
3.      Klasifikasi sistem operasi berdasarkan penggunaan :
·         Single User Single Tasking. Sistem operasi yang hanya mampu untuk melayani satu pengguna sekali waktu untuk satu instruksi dalam satu siklus proses (missal :  MS-Dos).
·         Single User Multi Tasking.  Mampu melayani satu pengguna sekali waktu dan mampu mengeksekusi berupa instruksi dalam satu waktu siklus proses (missal :  Windows 98, IBM OS/2, MAC OS).
·         Multi User Multi Tasking.  Mampu melayani beberapa pengguna sekaligus dalam satu waktu dan mampu menjalankan beberapa instruksi sekaligus dalam suatu siklus proses.
4.      Klasifikasi sistem operasi berdasarkan pangsa pasar :
·         SO server/network, seperti Windows NT server, Windows XP.
·         SO desktop, seperti Windows 95/Windows NT Worktstation, Windowas XP, LINUX, OS/2 Wrap, MAcOS, Java.
·         Ssstem operasi Handheld, seperti Windows CE, GEOS, Magic Cap.

                         

2.4.            Perangkat Lunak Bahasa Pemrograman
Bahasa pemrograman adalah software bahasa komputer yang digunakan dengan dengan cara merancang atau membuat program sesuai dengan struktur dan metode yang dimiliki oleh bahasa program itu sendiri.  Kumpulan perintah harus dimengerti oleh komputer, berstruktur tertentu (syntax), dan bermakna.  Sintaksis dan simantik bahasa pemrograman komputer ditentukan secara jelas dan terstruktur, sehingga bahasa pemrograman juga disebut sebagai bahsa formal (formal language).

2.4.1.      Tingkatan Bahasa Pemrograman
1.      Bahasa Pemrograman Tingkat Rendah (low level language)
merupakan bahasa pemrograman generasi pertama, bahasa pemrograman jenis ini sangat sulit dimengerti karena instruksinya menggunakan bahasa mesin.
2.      Bahasa Pemrograman Tingkat Menengah (middle level language)
Sudah mendekati bahasa sehari-hari, tetapi masih menggunakan singkatan seperti “STO” artinya simpan (STORE).  Bahasa jenis ini tergolong bahasa assembler.
3.      Bahasa Pemrograman Tingkat Tinggi (higt level language)
Merupakan bahasa yang mempunyai cirri lebih terstruktur, mudah dimengerti karena menggunakan bahasa sehari-hari, contoh :  Delphi, pascal,ORACLE, PHP, ASP, XML dan lain-lain.

2.4.2.      Generasi Bahasa Pemrograman
1.      Bahasa Pemrogram Generasi I
Program disusun dengan menggunakan bahasa mesin, sehingga sangat sulit dipahami oleh orang awam.  Namun bahasa generasi ini memberikan eksekusi
program yang sangat cepat.
Instruksi Bahasa Mesin
Instruksi Bahasa Mesin
Keterangan
B402 atau 1011 0100 0000 0010
Muatlah bilangan 2 ke register AH
B22A atau 1011 0010 0010 1010
Muatlah bilangan 2A heksadesimal ke reistar DL
CD21 atau 1100 1101 0010 0001
Jalankan interupsi 21 heksadesimal

2.      Bahasa Pemrograman Generasi II
Bahasa jenis ini menggunakan bahasa rakitan (assembly).
Instruksi
Instruksi Bahasa Rakitan
Keterangan
MOV AH, 02
Muatlah bilangan 2 ke register AH
MOV Dt, 2A
Muatlah bilangan 2A heksadesimal ke reistar DL
INT 21
Jalankan interupsi 21 heksadesimal

3.      Bahasa Pemrograman Generasi III
Menggunakan pendekatan prosedural.  Bahasa generasi ketiga sering kali disebut sebagai hight level  language disebabkan bahasa ini menggunakan kata-kata yang bisa digunakan manusia.  Beberapa contoh bahasa pemrograman yang masuk dalam kategori generasi ketiga yaitu ADA, ALGOL, C, BASIC, COBOL, FORTRAN, dan PASCAL.
4.      Bahasa Pemrograman Generasi IV
Alhasil, bahasa pemrogram generasi keempat yang dikenal dengan sebutan 4GL dapat dipakai oleh pemakai yang kurang mengetahui hal-hal teknis tenteng pemrograman.
Bahasa pemrograman generasi keempat menggunakan pendekatan non-prosuderal.  Untuk mendapatkan suatu hasil, pemakai tidak perlu memberitahukan secara detail tentang begaimana mendapatkanya.
Contoh bahasa
Prosedural
dBase
Use mahasiswa
SET FILTER to t4lahir=

‘Makasar’
GO TOP
DO WHILE .NOT. EOF ( )
DISPLAY nama
SKIP
ENDO
USE
Langkah sangat detail dan terlalu teknis
Contoh bahasa
Non-prosedural
SQL
SELECT nama FROM
mahasiswa
WHERE t4lahir =

‘Makasar’
Singkat dan tidak perlu langkah yang besifat procedural

5.      Bahasa Pemrograman Generasi V
Merupakan kelompok bahasa-bahasa pemrograman yang ditujukan untuk menangani kecerdasan buatan (artificial intelligence).  Beberapa aplikasi kecerdasan manusia adalah sebagai berikut :
·         Pemrosesan bahasa alami (natural language processing), yakni mengatur komputer agar bisa berkomunikasi dengan manusia melalui bahasa menusia (Indonesia, Iggris, Spanyol, dan sebagainya).
·         Pengendalian robotika dan sensor mata.
·         Aplikasi sitem 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.


2.5.            Perangkat Lunak Aplikasi
Perangkat lunak aplikasi (Software Application) adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer lansung untuk melakukan suatu tugas yang diinginkan pengguna.
Aplikasi dapat digolongkan menjadi beberapa kelas antara lain :
1.      Perangkat lunak perusahaan
·         Perangkat luank akuntansi
·         Bagian pendukung (back office)
·         Perangkat lunak bisnis
·         Manajemen sumber daya manusia
2.      Perangkat lunak infrastruktur perusahaan
·         Perangkat lunak alur kerja bisnis
·         Sistem manajemen asis data
·         Manajemen asset digital
·         Manajemen dokumen
3.      Perangkat lunak informasi kerja
·         Manajemen waktu dan sumber daya
·         Manajemen data
·         Dokumentasi
·         Perangkat lunak analitik
·         Perangkat lunak kolaborasi
4.      Perangkat lunak media dan hiburan
·         Media digital
·         Perangkat lunak hiburan
5.      Perangkat lunak pendidikan
·         Manajemen ruang kelas
·         Manajemen survey
·         Manajemen pelatihan
·         Perangkat lunak kesiapan penjualan

6.      Perangkat lunak pengembangan media
·         Perangkat lunak seni grafis
·         Penyuntingan media
7.      Perangkat lunak rekayasa produk
·         Rekayasa perangkat keras

·         Rekayasa perangkat lunak

Comments