Apa itu kernel Linux?

Gambar pembuat kode dikelilingi oleh baris kode

Penyusun

Mesh Flinders

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

Apa itu kernel Linux?

Kernel dari Linux adalah kernel sumber terbuka gratis yang penting untuk banyak sistem komputer. Dalam sistem operasi Linux (OS), kernel Linux merupakan antarmuka penting antara lapisan perangkat keras dan perangkat lunak, sehingga OS dapat mengelola banyak komponen yang berbeda sekaligus. 

Kernel adalah program komputer yang membentuk inti sistem operasi (OS) dan memberi pengguna kendali penuh atas komponen perangkat keras dan perangkat lunak yang membentuk sistem. Kernel membantu mencegah konflik antara berbagai proses penting yang sangat penting untuk berfungsinya sistem. Kode kernel disimpan dalam memori komputer dan memungkinkan semua interaksi antara perangkat lunak dan perangkat keras; misalnya, input/output (I/O), penggunaan CPU dan cache, driver perangkat, sistem file, dan soket jaringan.

Kernel Linux dikembangkan pada tahun 1991 oleh Linus Torvalds sebagai alternatif gratis untuk Unix, salah satu OS pertama yang memungkinkan pengguna untuk berinteraksi secara langsung dengan komputer. Pada tahun-tahun setelahnya, kernel Linux dan versi serta rilis kernel berikutnya menjadi sangat penting bagi distribusi Linux. Saat ini, mereka digunakan oleh beberapa perusahaan teknologi, perangkat lunak, dan komputasi terbesar di dunia.  

Distribusi kernel Linux

Setiap 9-10 minggu, versi baru kernel Linux dirilis. Versi ini, yang disebut "kernel stabil", dikelola oleh pengembang kernel Linux dan pengelola repositori Linux dan dapat ditemukan di kernel.org dan GitHub.

Namun, beberapa vendor, seperti Debian dan Red Hat, lebih memilih untuk mempertahankan pohon sumber yang disesuaikan — kumpulan semua kode sumber kernel Linux untuk proyek mereka sendiri. Pendekatan ini memiliki konsekuensi penting untuk penggunaan kernel Linux di banyak aplikasi perusahaan modern seperti kecerdasan buatan (AI), komputasi tepi,  dan Internet of Things (IoT). 

Misalnya, Red Hat Enterprise Linux adalah platform Linux yang stabil dan berkinerja tinggi yang menampilkan fitur keamanan dan kemampuan manajemen dan dibangun menggunakan pohon sumber Linux dari Red Hat yang disesuaikan. Debian menggunakan pohon sumbernya untuk memelihara Ubuntu, kode sumber terbuka yang mendasar bagi banyak arsitektur IoT. 

Kernel Linux vs sistem operasi Linux

Kernel adalah program komputer yang berfungsi sebagai jantung OS, sistem yang memungkinkan pengguna berinteraksi dengan perangkat keras dan perangkat lunak komputer. Terkait OS Linux, kernel Linux adalah kode yang membentuk komponen inti OS, yang memungkinkan OS menjalankan fungsinya.

OS Linux terdiri dari berbagai komponen selain kernel Linux, seperti pustaka sistem, utilitas ruang pengguna, dan aplikasi. Namun, semua komponen ini bergantung pada kernel Linux untuk berkomunikasi dengan OS sehingga mereka dapat menerima perintah, seperti input/output (I/O), dan memenuhi permintaan pengguna. Kernel Linux dikenal dengan fleksibilitasnya dan dapat dimodifikasi sesuai dengan kebutuhan pengguna atau sesuai dengan kebutuhan program tertentu.

Siklus hidup kernel Linux

Setiap rilis kernel Linux memiliki siklus hidup di mana ia diuji, dirilis ke publik, dan kemudian dihapus secara bertahap. Siklus hidup kernel Linux dibagi menjadi lima fase: Prepatch, Mainline, Tinjauan Stabil, Dukungan Jangka Panjang (LTS), dan Akhir Masa Pakai (EOL). 

  • Prepatch: Pengembang Linux bereksperimen dengan aneka fitur baru di pohon sumber kernel.
  • Mainline: Perubahan distabilkan melalui pengujian dan penyesuaian yang ketat.
  • Tinjauan Stabil: Kernel menjalani pengujian tambahan untuk memperbaiki masalah yang lebih penting yang teridentifikasi dalam fase jalur mainline sebelum dirilis. 
  • Dukungan Jangka Panjang (LTS): Hanya beberapa kernel yang teridentifikasi sebagai kernel LTS dan dipertahankan untuk jangka waktu yang lebih lama daripada kernel lainnya, biasanya dua tahun. 
  • Akhir Masa Pakai: Kernel yang tidak dipilih untuk LTS akan dihentikan dukungannya ketika kernel yang lebih baru dirilis.  

 

Berita teknologi terbaru, didukung oleh insight dari pakar

Tetap terinformasi tentang tren industri yang paling penting—dan menarik—tentang AI, otomatisasi, data, dan di luarnya dengan buletin Think. Lihat Pernyataan Privasi IBM®.

Terima kasih! Anda telah berlangganan.

Langganan Anda akan disediakan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM® kami untuk informasi lebih lanjut.

Manfaat kernel Linux

Saat ini, Linux adalah salah satu sistem operasi sumber terbuka yang paling banyak digunakan di dunia. Hal ini sebagian besar disebabkan oleh fleksibilitas dan efektivitas kernel Linux. Kernel menyediakan banyak kemampuan manajemen dan kontrol yang menjadikan OS Linux sebagai platform yang kuat, termasuk yang memberi daya pada CPU (otak aktif dari sistem komputer), dan kemampuan jaringannya (kapasitasnya untuk terhubung dengan perangkat lain dan berbagi sumber daya dan informasi). Berikut adalah beberapa manfaat perusahaan paling luas dari kernel Linux: 

  • Abstraksi: Dalam istilah ilmu komputer, istilah 'abstraksi' secara sederhana berarti pengecualian informasi yang tidak penting untuk memungkinkan interaksi yang lebih mulus antara perangkat dan program. Kernel Linux dapat menyembunyikan perangkat keras yang mendasarinya, menyembunyikan detail yang tidak penting dari OS, dan memungkinkan sistem dan perangkat lunak berfungsi lebih efisien. 
  • Kustomisasi: Kernel Linux dapat disesuaikan untuk memenuhi kebutuhan spesifik pengguna yang berbeda atau jenis OS yang berbeda. Proses penyesuaian biasanya memerlukan perubahan kode sumber kernel dan penyusunan gambar kernel khusus, yang merupakan kernel yang telah disesuaikan untuk tujuan tertentu. Kemudian, fitur kernel tertentu dan modul kernel—potongan kode yang dimuat atau dibongkar ke dalam kernel untuk menambah atau mengurangi fungsi tertentu—dapat dipilih agar sesuai dengan kebutuhan komputasi tertentu. Tersedia modul kernel populer untuk tugas dan perangkat seperti komputasi berkinerja tinggi (HPC), aplikasi perusahaan, dan unit pemrosesan grafis (GPU).  
  • Kontainerisasi: Kontainerisasi, pengemasan kode perangkat lunak hanya dengan pustaka OS dan dependensi yang diperlukan untuk menjalankannya di lingkungan komputasi apa pun, sangat penting untuk banyak aplikasi cloud native modern. Kernel Linux sangat penting untuk kontainerisasi dan teknologi yang berdekatan seperti Docker dan Kubernetes yang memungkinkan kontainer. Docker dan Kubernetes adalah dua alat kontainerisasi paling populer di pasar, dengan 94% perusahaan yang disurvei menggunakan salah satu atau keduanya1. Docker digunakan untuk membuat dan menjalankan kontainer dan Kubernetes adalah platform orkestrasi kontainer sumber terbuka yang memungkinkan pengelolaan dan penskalaan aplikasi dalam kontainer. 
  • Virtualisasi: Kernel Linux dapat menjalankan mesin virtual (VM) pada satu mesin fisik menggunakan fitur "Mesin Virtual berbasis Kernel (KVM)". VM penting karena memungkinkan sumber daya mesin fisik tunggal, seperti memori, CPU, antarmuka jaringan, dan penyimpanan, untuk digunakan oleh sistem operasi yang berbeda pada satu perangkat. Proses ini pada dasarnya mengubah sistem Linux menjadi hypervisor, alat yang digunakan untuk mengelola dan memantau VM, memungkinkan kemampuan penting dalam mengelola VM. 
AI Academy

Mencapai kesiapan AI dengan hybrid cloud

Dipandu oleh pemimpin terkemuka IBM, kurikulumnya dirancang untuk membantu pemimpin bisnis dalam mendapatkan pengetahuan yang diperlukan untuk memprioritaskan investasi AI yang dapat mendorong pertumbuhan.

Bagaimana cara kerja kernel Linux?

Kernel Linux terdiri dari enam lapisan berbeda atau subsistem yang memungkinkan fungsi intinya: 

  • Implementasi panggilan sistem (SCI)
  • Manajemen proses
  • Manajemen memori
  • Memori virtual
  • Tumpukan jaringan
  • Driver perangkat

Berikut adalah gambaran lebih dekat tentang semua lapisan dan fungsinya.

SCI

Lapisan SCI menghadirkan fungsionalitas yang memungkinkan kernel untuk mengeksekusi panggilan sistem dari ruang pengguna ke dalam kernel. Ini adalah kemampuan penting dari kernel Linux karena ruang pengguna adalah tempat perangkat lunak aplikasi dan driver mengeksekusi beban kerja mereka, sedangkan ruang kernel hanya untuk menjalankan berbagai fungsi OS penting. Lapisan SCI membentuk jembatan antara dua ruang. Ketika panggilan sistem dimulai dari ruang pengguna, misalnya, permintaan untuk menyegarkan kotak masuk email atau membuka aplikasi perbankan mobile, panggilan sistem memicu peralihan ke lapisan kernel, memungkinkan permintaan dikirim ke OS.

Manajemen proses

Lapisan manajemen proses memungkinkan kernel Linux menjalankan proses yang memungkinkan pengguna berinteraksi dengan komputer. Sebagai contoh, ketika Linux pertama kali dimulai, Init (kependekan dari "inisialisasi"), membawa sistem ke kondisi yang dapat digunakan dengan menjalankan skrip pengawalan dan mengelola level run. Setiap proses menunjukkan virtualisasi prosesor secara terpisah—misalnya, kode alur, data, tumpukan, dan register CPU.  

Manajemen memori

Komputer mengelola memori virtual menggunakan apa yang dikenal sebagai 'halaman'. Halaman adalah data unit terkecil yang dapat dipecah di dalam OS yang bergantung pada memori virtual. Lapisan manajemen memori kernel Linux memungkinkan OS — dan dengan demikian, pengguna — untuk mengelola memori komputer yang tersedia. Memori virtual sangat penting untuk fungsionalitas semua program dan aplikasi.

Sistem file virtual (VFS)

Sistem file virtual (VFS) kernel Linux menyediakan antarmuka umum untuk sistem file. VFS beroperasi sebagai lapisan peralihan antara SCI dan sistem file yang didukung oleh kernel, memungkinkan banyak fungsi penting (misalnya, membuka, menutup, membaca, dan menulis). 

Abstraksi sistem file—dengan kata lain, cara file, direktori, dan sistem file ditampilkan kepada pengguna—adalah komponen kunci lain dari lapisan VFS, yang membantu menyajikan kompleksitas sistem komputasi dengan cara representasi yang mudah dimengerti oleh pengguna.

Tumpukan jaringan

Setiap komputer dalam jaringan, yang juga dikenal sebagai 'node', harus mengikuti protokol jaringan—seperangkat aturan ketat untuk berbagi dan menerima data. Protokol ini sangat penting untuk memungkinkan perangkat yang tidak kompatibel menggunakan jaringan yang sama—misalnya, ponsel Android dan komputer Mac. 

Untuk memfasilitasi komunikasi semacam ini, protokol jaringan mengandalkan gateway, yang merupakan perangkat keras (seperti router) yang memfasilitasi komunikasi antara dua jaringan yang berbeda. Tumpukan jaringan di kernel Linux menggunakan banyak perangkat gateway umum — seperti konverter kecepatan, penerjemah protokol, dan lainnya — untuk memungkinkan komunikasi antar jaringan antara perangkat yang tidak kompatibel.

Driver perangkat

Driver perangkat menyediakan OS antarmuka perangkat lunak yang memungkinkan perangkat tertentu berfungsi, seperti keyboard atau drive eksternal, mouse, atau printer. Kode sumber kernel Linux sebagian besar terdiri dari kode yang terkandung dalam driver perangkat khusus untuk perangkat tertentu. 

Pohon sumber Linux, direktori yang berisi semua kode sumber untuk kernel Linux dan driver perangkat, dibagi menjadi berbagai perangkat yang didukung, dan koneksi mereka, seperti Bluetooth atau port serial. Driver perangkat mengenali perintah yang diberikan ke tiap perangkat, atau kelas perangkat, dan membuat permintaan I/O yang berisi perintah ini sehingga perangkat dapat bekerja sesuai keinginan pengguna. 

Contoh penggunaan kernel Linux

Perusahaan di industri yang sangat berbeda bergantung pada kernel Linux dan berbagai kemampuan yang mereka berikan untuk menjaga tenaga kerja mereka tetap berinovasi dan menyediakan program, aplikasi, dan layanan yang diandalkan pelanggan mereka. Berikut adalah beberapa contoh penggunaan perusahaan yang paling umum untuk kernel Linux.

Jaringan komputer

Kernel Linux memungkinkan komputer dan perangkat komputasi terhubung dengan aman melalui Wi-Fi, ethernet, atau jenis koneksi lainnya, terlepas dari kompatibilitas perangkat. Fungsionalitas ini memungkinkan berbagi pengetahuan dan sumber daya yang penting, seperti penggunaan intranet dan pengiriman produk perangkat lunak sebagai layanan (SaaS  ) yang cepat dan efisien.

Kernel Linux dilengkapi dengan kemampuan keamanan yang kuat yang membantu melindungi pengguna dan sistem operasi dari ancaman siber yang dapat membahayakan komputer, program, aplikasi, dan jaringan tempat mereka berjalan. Ancaman ini mencakup berbagai jenis malware, seperti ransomware, rootkit, worm, dan banyak lagi. Ancaman yang menargetkan kerentanan kernel Linux ditangani melalui tambalan teratur, seperti perbaikan bug, yang mengamankan sistem dan program yang berjalan di atasnya. 

Pengoptimalan sumber daya

Dengan 89% perusahaan melakukan inisiatif transformasi digital2, mengoptimalkan sumber daya khusus yang didedikasikan untuk transformasi digital telah menjadi bagian strategi bisnis yang paling penting. 

Kernel Linux membantu perusahaan menyeimbangkan kebutuhan sumber daya komputasi mereka yang paling berharga — seperti server, basis data, dan perangkat lunak aplikasi mutakhir — sehingga mereka yakin bahwa sistem dan jaringan berkinerja pada tingkat puncak melalui proses yang disebut penyetelan kernel. 

Penyetelan kernel menyesuaikan dengan halus pengaturan kernel Linux untuk meningkatkan kinerja di seluruh subsistem kernel Linux tertentu, seperti jaringan, memori, penjadwalan proses, dan sistem file. Dalam kasus sistem file, misalnya, banyak aplikasi padat data termasuk video game, aplikasi perdagangan keuangan, dan situs media sosial memerlukan penyetelan parameter sistem file untuk berjalan pada tingkat puncak. Sistem file proc, VFS di OS Linux, berinteraksi di antara struktur data internal di kernel untuk mendapatkan data tentang sistem sehingga parameter kernel dapat disesuaikan untuk mengoptimalkan kinerja aplikasi.

Manajemen perangkat

Perusahaan yang paling sukses saat ini harus membekali karyawan dengan teknologi mutakhir, seperti laptop dan perangkat mobile, untuk berkembang. Kernel Linux memungkinkan program dan jaringan yang mendukung ribuan karyawan di lokasi yang berbeda — dan menggunakan berbagai jenis perangkat — untuk berkolaborasi dengan lancar. Kernel memungkinkan perangkat keras untuk berinteraksi menggunakan modul perangkat tertentu yang dapat dimuat ke dalam kernel sehingga dapat dikelola oleh OS.

Salah satu proses manajemen perangkat Linux yang populer dikenal sebagai interrupt. Interrupt membantu menghemat sumber daya komputasi  dengan memungkinkan kernel Linux menghentikan komunikasi antara perangkat dan aplikasi ketika tidak diperlukan untuk operasi tertentu. Yang lainnya adalah udev, alat manajemen perangkat Linux yang mengelola penambahan dan pengurangan perangkat dari OS dan mengontrol bagaimana setiap perangkat muncul dalam direktori.

Komputasi cloud

Komputasi cloud, pengiriman sumber daya komputasi sesuai permintaan melalui internet, telah menjadi alat penting bagi banyak perusahaan modern, memacu inovasi dan membantu memberikan solusi kepada pelanggan dengan cara yang cepat dan dapat diskalakan. 

Kernel Linux memungkinkan komputasi cloud dengan cara yang signifikan dan telah menjadi komponen penting dari semua penyedia cloud terbesar di dunia, termasuk Amazon (AWS), Microsoft Azure, Oracle, dan Google Cloud.

Skalabilitas kernel memungkinkannya untuk mendukung sistem komputer besar, seperti superkomputer dan pusat data, tanpa meningkatkan sumber daya komputasi secara signifikan—kemampuan yang penting untuk arsitektur cloud. Kernel Linux juga ideal untuk beban kerja cloud karena sangat stabil dengan waktu henti yang relatif rendah. Terakhir, kernel Linux sangat fleksibel dan dapat beroperasi pada berbagai jenis perangkat keras, kemampuan utama dalam lingkungan virtual yang merupakan pusat cloud modern.

Catatan kaki

1.     Lima teknologi kontainerisasi teratas tahun 2024, (tautan berada di luar ibm.com), 6Sense, 2024

2.     Nilai Transformasi Digital, (tautan berada di luar ibm.com), Harvard Business Review, 31 Juli 2023

Solusi terkait
IBM Cloud Infrastructure Center 

IBM Cloud Infrastructure Center adalah platform perangkat lunak yang kompatibel dengan OpenStack untuk mengelola infrastruktur cloud pribadi di IBM zSystems dan IBM LinuxONE.

Jelajahi Cloud Infrastructure Center
Solusi Infrastruktur TI

Temukan server, penyimpanan, dan perangkat lunak yang dirancang untuk hybrid cloud dan strategi AI perusahaan Anda.

Jelajahi solusi infrastruktur TI
Solusi Infrastruktur Cloud

Temukan solusi infrastruktur cloud yang tepat untuk kebutuhan bisnis Anda dan tingkatkan sumber daya sesuai permintaan.

Solusi cloud
Ambil langkah selanjutnya

Ubah infrastruktur perusahaan Anda dengan solusi hybrid cloud yang siap AI dari IBM. Temukan server, penyimpanan, dan perangkat lunak yang dirancang untuk mengamankan, menskalakan, dan memodernisasi bisnis Anda atau mengakses insight pakar demi meningkatkan strategi AI generatif Anda.

Jelajahi solusi infrastruktur TI Unduh ebook