Blog — DedeIrwanto.Gitlab.IO
Dev Life, Cerita Kode dan Kopi.
Pada tulisan sebelumnya, sudah dibahas terkait memori pada komputer — secara umum — baik yang bersifat volatil maupun non-volatil.
Nah, pada tulisan ini akan dibahas sedikit lebih detail bagaimana cara memori menyimpan data, khususnya pada volatile memory seperti register, cache memory, dan RAM.

Struktur Fisik Memori
Secara fisik, memori terdiri dari jutaan sel, di mana setiap sel menyimpan 1 bit data, yaitu 0
atau 1
. Bit-bit ini digabungkan menjadi satuan data yang lebih besar:
Memori pada komputer berfungsi sebagai media penyimpanan data, baik yang bersifat sementara (volatil) maupun permanen (non-volatil). Memori volatil akan kehilangan data ketika aliran listrik terputus, sedangkan memori non-volatil bersifat permanen dan tetap menyimpan data meskipun komputer dimatikan.

Ilustrasi di atas menggambarkan hierarki memori komputer dalam bentuk piramida, di mana semakin ke atas piramida, akses memori menjadi semakin cepat.
Register
Register adalah komponen kecil dalam CPU yang berfungsi sebagai media penyimpanan sementara saat sebuah instruksi sedang dijalankan. Data yang disimpan bisa berupa nilai numerik, alamat memori, atau instruksi itu sendiri. Karena berada langsung di dalam CPU, register memiliki waktu akses sangat cepat — bahkan hanya dalam hitungan nanodetik.
Saat komputer dinyalakan, PSU (Power Supply Unit) mengalirkan listrik kesemua komponen, termasuk motherboard, CPU dan RAM. Setelah itu, komputer akan menjalankan POST (Power-On Self Test) melalui program yang disebut BIOS (Basic Input Output System), yang disimpan didalam ROM (Read Only Memory). Proses POST ini akan memeriksa komponen penting seperti CPU, RAM, Keyboard dan perangkat keras lainnya. Jika pemeriksaan berhasil, maka komputer akan melanjutkan ke tahap berikutnya. Namun jika gagal, komputer akan menampilkan kode error atau suara beep tertentu sebagai indikator kesalahan.
Dalam sistem komputer, data disimpan dalam satuan yang disebut byte, dan byte sendiri dapat dikelompokkan dalam unit memori yang lebih besar.

Unit of Memory
Dalam bahasa Indonesia berarti satuan memori. Satuan memori adalah ukuran kapasitas penyimpanan data dalam sistem komputer. Satuan ini digunakan untuk mengukur berapa banyak data yang dapat disimpan dalam memori komputer.
Bit (Binary Digit)
Bit adalah satuan terkecil dalam unit memori. Komputer sendiri merupakan perangkat elektronik yang menyimpan dan memproses data dalam bentuk biner. Bit-bit ini kemudian dirangkai menjadi byte untuk merepresentasikan informasi yang lebih kompleks, seperti teks, gambar, suara hingga video.
Saat kita menggunakan komputer untuk menyimpan atau memproses data, sebenarnya semua informasi yang kita lihat di layar — baik teks, gambar, atau suara — berasal dari sekumpulan angka. Namun komputer tidak menggunakan bilangan desimal (basis 10) seperti yang kita gunakan sehari-hari melainkan menggunakan bilangan biner (basis 2).

Bilangan Desimal
Desimal adalah bilangan yang umum digunakan oleh manusia dalam kehidupan sehari-hari. Bilangan ini disebut berbasis 10 karena mempunyai 10 digit angka yaitu 0 sampai dengan 9. Setiap digit angka mempunyai nilai posisi yang ditentukan oleh pangkat dari 10.
Per 30 Juni 2024, CentOS 7 secara resmi telah mencapai masa End of Life (EOL). Ini berarti tidak akan ada lagi dukungan, pembaruan keamanan, dan perbaikan bug dari pihak pengembang. Meskipun sistem masih dapat berjalan, penggunaan software yang telah mencapai EOL tidak direkomendasikan karena berisiko terhadap keamanan dan stabilitas sistem.

Permasalahan Repository
Salah satu masalah yang muncul setelah CentOS 7 mencapai EOL adalah repository yang tidak lagi tersedia saat mencoba menginstal atau memperbarui paket.
Saat membuat program, terkadang kita butuh mengakses sebuah field yang namanya sama dengan parameter pada method. Hal ini tidak bisa dilakukan begitu saja, karena akan menyebabkan terjadinya variable shadowing. Misalkan, kita membuat sebuah program perkenalan diri kepada seseorang yang bernama Budi.
class Person {
String name = "Budi";
void sayHello(String name) {
System.out.println("Halo " + name + ", nama saya " + name);
}
}
class Main {
public static void main(String[] args) {
Person person = new Person();
person.sayHello("Dede");
}
}

Dari output program di atas, terlihat bahwa variable name pertama pada baris perintah System.out.println(“Halo " + name + “, nama saya " + name) merujuk ke parameter name pada method sayHello(String name),