Kamis, 22 Oktober 2026
01:52 WIB
TERKINI
Tuba Barat Tulangbawang Barat Unggul dalam Penanggulangan TBC, Lampaui Target Provinsi Bandar Lampung Prioritas Keselamatan Terabaikan: Akses Rumah Aman Korban KDRT di Lampung Lampung Tengah Gerebek Dua Lokasi, Polres Lampung Tengah Tangkap Pengedar Sabu 7,40 Gram Pemprov Lampung Kolaborasi Pemprov Padamkan Kebakaran TPA Bandarjaya, Tol Bakter Terganggu Asap Tebal Bandar Lampung Lampung Agendakan Beragam Rapat Penting, Revitalisasi Stadion Pahoman Jadi Sorotan Utama Lampung Selatan Kulkas Bekas Raib, Tiga Pria di Lampung Selatan Terancam Tujuh Tahun Penjara Hiburan Wendy Red Velvet Bersiap Comeback Solo November 2026, Janjikan Eksplorasi Vokal Hiburan Eiichiro Oda Ambil Jeda Dua Pekan, One Piece Chapter 1197 Tayang November 2026 Lampung Cuaca Lampung 20 Oktober 2026: Cerah Berawan Dominan, Waspada Hujan Lokal Lampung Tengah Kebakaran Landa TPA Bandarjaya Lampung Tengah, Gas Metan Diduga Pemicu Utama Tuba Barat Tulangbawang Barat Unggul dalam Penanggulangan TBC, Lampaui Target Provinsi Bandar Lampung Prioritas Keselamatan Terabaikan: Akses Rumah Aman Korban KDRT di Lampung Lampung Tengah Gerebek Dua Lokasi, Polres Lampung Tengah Tangkap Pengedar Sabu 7,40 Gram Pemprov Lampung Kolaborasi Pemprov Padamkan Kebakaran TPA Bandarjaya, Tol Bakter Terganggu Asap Tebal Bandar Lampung Lampung Agendakan Beragam Rapat Penting, Revitalisasi Stadion Pahoman Jadi Sorotan Utama Lampung Selatan Kulkas Bekas Raib, Tiga Pria di Lampung Selatan Terancam Tujuh Tahun Penjara Hiburan Wendy Red Velvet Bersiap Comeback Solo November 2026, Janjikan Eksplorasi Vokal Hiburan Eiichiro Oda Ambil Jeda Dua Pekan, One Piece Chapter 1197 Tayang November 2026 Lampung Cuaca Lampung 20 Oktober 2026: Cerah Berawan Dominan, Waspada Hujan Lokal Lampung Tengah Kebakaran Landa TPA Bandarjaya Lampung Tengah, Gas Metan Diduga Pemicu Utama

Kesalahan segmentasi

Bagikan:

Dalam ilmu komputer, kesalahan segmentasi atau galat segmentasi (bahasa Inggris:segmentation fault, sering disingkat menjadi segfault atau secara resmi diklasifikasikan sebagai pelanggaran akses di lingkungan Windows) adalah kondisi galat fatal yang dipicu oleh perangkat keras komputer bersistem manajemen memori ketika sebuah program komputer mencoba mengakses lokasi memori yang dilarang atau tidak valid.[1]

Kondisi ini merupakan salah satu mekanisme pertahanan terpenting pada sistem operasi modern untuk menjaga keamanan memori. Dengan membatasi ruang gerak setiap aplikasi agar hanya beroperasi di dalam ruang alamat (address space) miliknya sendiri, sistem operasi dapat mencegah sebuah aplikasi yang rusak atau jahat menimpa data milik aplikasi lain atau merusak data sensitif milik kernel sistem operasi utama.

Penyebab umum

Kesalahan segmentasi hampir selalu disebabkan oleh adanya kutu pemrograman (software bug) di dalam kode sumber yang melakukan manipulasi alamat memori tingkat rendah secara keliru. Beberapa pemicu paling umum meliputi:

  • Dereferensi penunjuk nol (Null Pointer Dereference): Mencoba membaca atau menulis data melalui sebuah variabel penunjuk yang masih bernilai kosong atau menunjuk ke alamat 0x0 (alamat terlindung).
  • Limpahan penyangga (Buffer Overflow): Menulis data melampaui batas alokasi akhir suatu larik sehingga meluap dan menerobos area segmen memori tetangga yang dilindungi.
  • Penunjuk menjuntai (Dangling Pointer): Menggunakan penunjuk untuk mengakses lokasi memori yang statusnya sudah dibebaskan (di-free atau dihapus) oleh sistem.
  • Limpahan tumpukan (Stack Overflow): Pemanggilan fungsi rekursif yang terlalu dalam dan tidak berujung sehingga menghabiskan seluruh kapasitas ruang memori tumpukan panggilan (call stack).

Contoh kasus

Berikut adalah contoh kode sumber sederhana dalam bahasa C yang dipastikan akan memicu kesalahan segmentasi seketika saat dieksekusi karena mencoba menulis data ke lokasi yang ditunjuk oleh penunjuk nol:

#include<stdio.h>

intmain(){
int*ptr=NULL;// Mendeklarasikan penunjuk yang mengarah ke nol
*ptr=99;// ERROR: Mencoba menulis nilai ke alamat nol (memicu segfault)

return0;
}

Penanganan oleh sistem operasi

Ketika arsitektur prosesor (seperti unit manajemen memori atau MMU) mendeteksi adanya upaya pelanggaran batas memori oleh suatu instruksi program, prosesor akan mengeluarkan interupsi perangkat keras khusus ke sistem operasi.

Sistem operasi kemudian akan mengambil tindakan tegas dengan menghentikan paksa aplikasi tersebut secara tidak terencana (crash) untuk melindungi sistem secara keseluruhan.

  • Pada sistem mirip Unix (seperti Linux, macOS, atau FreeBSD), sistem operasi akan mengirimkan sinyal khusus bernama SIGSEGV (singkatan dari Signal Segmentation Violation) ke proses aplikasi yang bermasalah. Umumnya sistem juga akan mencetak tulisan "Segmentation fault" pada terminal konsol dan menghasilkan berkas core dump untuk membantu pemrogram melakukan pengawakutuan.
  • Pada sistem Microsoft Windows, kondisi ini ditangani melalui mekanisme penanganan eksepsi terstruktur (SEH) dengan kode kesalahan spesifik 0xC0000005 (Access Violation).

Lihat pula

Referensi

  1. ↑ Black, Paul E. "segmentation fault". Dictionary of Algorithms and Data Structures (dalam bahasa Inggris). National Institute of Standards and Technology. Diakses tanggal 2 Juni 2026.
Konten disalin dari Wikipedia Bahasa Indonesia (lisensi CC BY-SA) Lihat versi asli di Wikipedia

Rekomendasi Pilihan