10 poin oleh GN⁺ 2025-11-28 | 1 komentar | Bagikan ke WhatsApp
  • Kernel Linux bukanlah satu proses tunggal, melainkan lapisan inti yang membentuk seluruh sistem, struktur yang selalu hadir untuk menghubungkan perangkat keras dan perangkat lunak
  • Menjaga eksekusi tetap berjalan dengan mengoordinasikan system call, interupsi, dan penjadwalan untuk proses pengguna
  • Kernel bekerja sebagai struktur berlapis yang tervirtualisasi, dipetakan, diisolasi, dan dikendalikan
  • Sebagai bahan pembelajaran, diperkenalkan berkas sumber inti seperti init/main.c, kernel/fork.c, include/linux/sched.h, dan arch/x86/kernel/entry_64.S
  • Penting sebagai materi pembelajaran dasar untuk memahami struktur dan peran kernel

Hakikat kernel

  • Kernel adalah sistem itu sendiri, bukan proses, yaitu lapisan otoritatif yang selalu hadir yang menghubungkan perangkat keras dan perangkat lunak
    • Menjalankan peran sentral dalam mendukung eksekusi proses pengguna dan mengelola sumber daya sistem
  • Kernel adalah entitas yang melayani proses, yang mempertahankan pekerjaan pengguna dengan mengoordinasikan system call (syscall), interupsi, dan penjadwalan

Struktur berlapis sistem

  • Kernel tersusun sebagai struktur kendali yang tervirtualisasi, dipetakan, dan terisolasi
    • Pada runtime, berbagai lapisan saling berinteraksi untuk menjaga stabilitas dan kendali sistem
    Iklan

Berkas untuk pembelajaran

  • Empat berkas utama berikut diperkenalkan untuk memahami struktur kernel
    • init/main.c
    • kernel/fork.c
    • include/linux/sched.h
    • arch/x86/kernel/entry_64.S

Soal pemeriksaan konsep

  • Perbedaan mendasar antara kernel dan proses: B. Kernel bukan proses, melainkan sistem itu sendiri
  • Cara kernel mendukung proses pengguna: B. Mengoordinasikan system call, interupsi, dan penjadwalan
  • Karakteristik berlapis kernel: C. Struktur yang tervirtualisasi, dipetakan, terisolasi, dan dikendalikan

1 komentar

 
GN⁺ 2025-11-28
Komentar Hacker News
  • Ini proyek yang benar-benar keren. Mengingatkan pada susunan halaman Talmud — menarik bagaimana lapisan komentar dari ratusan tahun bertumpuk dalam satu halaman
    Kode memang tidak linear seperti itu, tetapi Linux Kernel Explorer ini juga memberi kesan serupa akan ‘lapisan anotasi’
    Saya особенно suka format catatan di sampingnya
    Tautan referensi terkait: Tata letak halaman Talmud, Catatan tata letak Talmud

    • Bisa dibilang Talmud itu seperti hiperteks orisinal (tidak yakin, tapi rasanya begitu)
  • Rasanya saya melewatkan sesuatu. Sejak lama kita sudah bisa menjelajahi source kernel di web — misalnya situs seperti Elixir Bootlin
    Tapi saya tidak paham fitur tambahan apa yang ditawarkan ini. Bootlin bahkan punya pencarian, sementara di sini saya tidak melihatnya
    Untuk zaman sekarang, saya berharap ada penjelasan kode berbasis LLM atau sesuatu seperti graf dependensi

    • Saya sempat berharap “masa keemasan era AI!”, tapi kenyataannya agak mengecewakan karena terasa sebatas remix AI yang membungkus fitur lama dengan framework web baru
  • Kena rate limit GitHub API jadi daftar file tidak muncul
    Kalau ada yang mengalami masalah yang sama, ganti IP dengan VPN atau Cloudflare Wrap bisa mengatasinya
    Kalau saya jadi pengembangnya, saya akan menambahkan opsi login GitHub atau lapisan cache agar pengguna baru lebih mudah mengaksesnya

    • Saya mendapat balasan yang berterima kasih karena sudah melaporkan masalahnya. Katanya mereka sadar implementasinya terlalu sederhana dan akan diperbaiki
  • Saya sangat suka alat seperti ini. Dulu saya pernah menganalisis source code mesin pemungutan suara elektronik Brasil dengan alat serupa buatan Red Hat
    Waktu itu saya bertugas merapikan file dan fungsi yang duplikat, dan aplikasinya berupa desktop app berbasis Motif UI

  • Saya sangat suka ide seperti ini. Saat menjelajahi kode proyek yang kompleks, sering kali sulit tahu harus mulai dari mana, dan alat ini membantu memahami struktur inti dengan cepat
    Tapi saya menemukan bug — di Chapter 2, saat membuka direktori seperti “mm/”, muncul error “Invalid file response”. Sepertinya ia mencoba membuka direktori seolah-olah itu file

  • Explorer ini terasa seperti alat yang memang dibutuhkan banyak developer
    Source kernel sangat besar dan rumit, jadi sering tidak jelas harus mulai dari mana, dan ini menunjukkan strukturnya layaknya semacam peta
    Kita juga bisa melihat VFS atau cara modul saling terhubung dalam sekali pandang, dan meski ada masalah seperti batas API atau error direktori, ini tetap langkah awal yang hebat

    • Ini mengingatkan saya pada LXR.
      Itu juga sangat membantu ketika saya mulai bekerja dengan Linux, dan setelah itu ada Elixir yang diimplementasikan ulang dalam Python serta source code-nya
    • Tetapi ada juga pertanyaan, “kalau tidak bisa pull master, grep, atau gmake, lalu ini sebenarnya untuk apa?”
  • Elixir Bootlin sudah lama ada, tetapi berfungsi lebih baik di perangkat mobile

    • Saya mendapat balasan yang berterima kasih atas masukan soal dukungan mobile, dan katanya akan diperbaiki
    • Elixir memungkinkan penelusuran tag, jadi lebih cocok untuk menjelajahi keseluruhan kode alih-alih per file
  • Kelihatannya sangat keren. Pembuatnya adalah fabiomaia.eu
    Saya ingin meminta dibuatkan alat serupa untuk Python
    Sepertinya akan berguna saat mengajarkan struktur repositori CPython kepada engineer baru

    • Ada juga tanggapan, “kenapa tidak coba membuatnya sendiri?” Dalam open source, memang umum mengharapkan implementasi cepat dan respons terhadap issue
  • Saya jadi penasaran — bagian kode kernel mana yang paling mengesankan?

    • Mungkin fs/select.c atau bagian mekanisme polling
  • File arch/x86/kernel/entry_64.S di Chapter 1 tidak bisa dibuka
    Juga tidak terlihat di tree direktori
    (Ada komentar lain yang menyebut masalah ini, tetapi sepertinya sudah dihapus)

    • Kemungkinan besar itu salah ketik pada path. Yang benar seharusnya arch/x86/entry/entry_64.S