Pengantar: Apa itu Kernel?

Author: · Published: November 25, 2019 · Category: Linux Dasar dan Opensource 

Apakah kernel itu? Kernel merupakan komponen inti dari sebuah software sistem operasi yang berjalan dalam sebuah perangkat, misalnya komputer, laptop atau handphone. Tugas utamanya adalah untuk mengatur pemakaian sumber daya sistem yang tersedia dan bertanggung jawab atas komunikasi antara komponen hardware dan software.
Jika GUI (Graphical User Interface) adalah mengatur komunikasi komputer dengan user pengguna, maka Kernel mengatur komunikasi software dengan hardwarenya (mesin).

Bayangkan jika sumber daya hardware terbatas, sementara semua program aplikasi meminta dijalankan dengan baik dalam waktu bersamaan dan meminta dengan kecepatan yang sama maka jika Kernel dengan sigap akan melayani sampai semua selesai kepada masing-masing bagiannya. Jika lebih dari satu program yang harus dilayani dalam waktu yang bersamaan, maka kernel juga bertugas untuk mengatur kapan dan berapa lama suatu program dapat menggunakan satu bagian perangkat keras tersebut. Inilah yang sisebut dengan multiplexing.

Akses kepada perangkat keras secara langsung merupakan masalah yang kompleks, ini pernah dilakukan oleh komputer generasi awal sehingga salah satu efeknya adalah tidak bisa menjalankan program secara bersamaan. Kemudian munculah kernel sebuah bagian penting yang mengimplementasikan sekumpulan abstraksi hardware. Abstraksi merupakan sebuah cara untuk menyembunyikan atau meringkas kompleksitas yang ada, sehinnga memungkinkan akses kepada perangkat keras menjadi lebih mudah dan teratur. Contoh berkat abstraksi adalah kemudahan pekerjaan programer. Dia tidak perlu membuat koding biner untuk memerintah hardware, tetapi cukup melakukan koding sesuai bahasa pemrograman yang dikuasai. Kernel diibaratkan sebagai nyawa, sedangkan Sistem Operasi sebagai Jasmani. Sehingga kedua elemen itu saling membutuhkan untuk bekerja bersama-sama.

Untuk menjalankan sebuah komputer kita tidak harus menggunakan kernel sistem operasi. Sebuah program dapat saja langsung diload dan dijalankan di atas mesin ‘telanjang’ komputer, yaitu bilamana pembuat program ingin melakukan pekerjaannya tanpa bantuan abstraksi perangkat keras atau bantuan sistem operasi. Teknik ini digunakan oleh komputer generasi awal, sehingga bila kita ingin berpindah dari satu program ke program lain, kita harus mereset dan meload kembali program-program tersebut. Sebagai pengetahuan, berikut ini adalah generasi bahasa pemrograman komputer.

Generasi ke-1: Machine Language
Pemrograman dengan bahasa mesin sudah jarang di gunakan pada era sekarang dikarenakan sangat kental dengan bahasa biner (0 dan 1).

Generasi ke-2: Assembly Language
Pemrograman dengan bahasa pemrograman assembly merupakan generasi ke dua setelah generasi bahasa mesin, bahasa pemrograman assembly memiliki keyword yang lebih kompleks dari pada bahasa mesin yang hanya berisi karakter “0” dan “1” saja sehingga relatif lebih mudah di mengerti oleh programmer. Assembler adalah nama bahasa pemrograman pada saat itu. Koding pada bahasa assembly cenderung berupa singkatan yang di kenal dengan sebutan kode mnemonic seperti MOV, SUB, CMP, JMP, JGE, JL, LOOP, dan lain sebagainya. Mirip dengan kode command line terminal atau kode command prompt.

Generasi ke-3: Procedural Programming

Bahasa pemrograman prosedural yang mengadopsi bahasa yang mirip dengan bahasa manusia namun masih mencampurkan unsur simbol/karakter khusus seperti {, }, ?, <<, >>, &&, ||, ; dan lain sebagainya, kemudian pada generasi ini juga mulai di kembangkan otomatisasi pengkodean agar programmer fokus pada fungsi utama program yang di kembangkan, unsur simbol / karakter khusus pun mulai di kurangi bahkan pada beberapa bahasa pemrograman telah di hilangkan.

Generasi ke-4: 4 GL (Fourth Generation Language)
Generasi bahasa query terstruktur (SQL, Structured Query Language), SQL sebenarnya merupakan bahasa pemrograman namun penerapannya saat ini lebih banyak pada basis data misalnya MySQL, Oracle Database, SQL Server, PostgreSQL, SQLite dan masih banyak lagi. Pada bidang pemrograman, SQL umumnya di gunakan sebagai bahasa sekunder dengan library built-in atau terpisah, query yang di sematkan dalam kode suatu bahasa pemrograman tujuannya adalah untuk mendefinisikan basis data dan memanipulasi basis data, atau dikenal dengan DDL (Data Definition Language) dan DML (Data Manipulation Language).

Generasi ke-5: Programming Language Based Object Oriented & Web Development
Lebih menekankan pada aspek efisiensi dan penggunaan kembali (re-use-able) atau juga dikenal dengan nama “intellegent programming” (pemrograman kecerdasan) yang menekankan aspek otomatisasi dalam setiap prosesnya.

Download Apa itu Kernel?

Related Articles

  1. Pengertian VirtualBox
  2. Apa Itu Komputer
  3. Belajar Assembly
  4. Pengenalan WEB API (ASP.NET CORE)
  5. Pemrograman Web dengan PHP dan MySQL
  6. Pemrograman Dengan C++ (part I)
  7. Sharing File di Jaringan dengan NFS
  8. Trik Matikan Komputer Dengan Klik Kanan
  9. Instalasi VMWare Workstation 10
  10. Menulis Arab dengan Komputer
  11. Source Code VB untuk Manipulasi File atau Folder
  12. Cara Membuat Database di MySQL
  13. Seputar C Bahasa Pemrograman
  14. Pengertian Sistem Operasi dan Cara Menginstal VMware
  15. Perbedaan Password, Passphrase, dan Passcode
  16. Install Uninstall VMware
  17. Membuat Aplikasi Sederhana dengan Visual Basic 2010
  18. Membuat Aplikasi Menggunakan Visual Basic 2010
  19. Dasar-dasar pemrograman Java
  20. Instalasi VMware 5