Analisis dan Implementasi Manajemen Proses pada Sistem Operasi Xinu
Tujuan / Objektif
Analisis dan Implementasi Manajemen Proses pada Sistem Operasi Xinu
- Tujuan / Objektif
Tujuan percobaan ini adalah untuk memahami bagaimana sistem operasi Xinu mengelola proses melalui struktur data process table (proctab[]), serta melakukan eksperimen sederhana untuk menampilkan informasi proses, memodifikasi nama proses, dan menganalisis efeknya pada kernel.
- Dasar Teori
Setiap sistem operasi menyimpan informasi penting tentang setiap proses yang berjalan di dalam struktur data yang disebut *Process Control Block* (PCB).
Pada Xinu, PCB diimplementasikan menggunakan array global bernama proctab[]. Setiap elemen proctab[i] merepresentasikan satu proses dengan atribut seperti: prname → nama proses, prprio → prioritas proses, prstate → status proses (ready, waiting, suspended, dll).
I. Persiapan dan Akses Xinu Melalui Minicom
Sebelum melakukan eksplorasi proses pada Xinu, kita perlu mengakses terminal backend menggunakan Minicom dari VM development-system. Langkah-langkahnya:
- Start development-system dan backend di oracle VM kalian.
- Login ke Xinu dengan Username: xinu Password: xinurocks
- Setelah login akan muncul tampilan seperti ini.

tampilan awal setelah login
- Pergi menuju direktori Xinu dan Compile dengan tulis “cd xinu/compile”.

masuk direktori compile
- Lalu tulis “make clean” untuk membersihkan xinu jika pernah membukanya dulu kemudian ketik “make” untuk buat compile.

“make clean” dan “make”
- Ketikkan “sudo minicom” dan ketikkan passwornya “xinurocks” (password tidak terlihat) untuk akses ke serial port.

tulis “sudo minicom” dan passwordnya “xinurocks”
- setelah masuk xinu ketik “ps” dan akan saya jelaskan dibawah

tampilan “ps”
ps adalah perintah shell (xsh) di Xinu yang digunakan untuk menampilkan daftar proses yang sedang ada di sistem Xinu beserta statusnya. Singkatnya ps = process status.
Pengertian setiap kolom: -Pid: Process ID (indeks pada array proctab[]). -Name: Nama proses, diambil dari atribut prname dalam struktur procent. -State: Status proses saat ini (ready, recv, wait, curr, dll). -Prio: Prioritas proses (semakin tinggi nilainya, semakin cepat. dijadwalkan). -Ppid: ID proses induk (parent process). -Stack Base: Alamat awal stack proses di memori. -Stack Ptr: Pointer yang menunjukkan posisi saat ini di dalam stack. -Stack Size: Ukuran total stack yang dialokasikan untuk proses.
Dari hasil tersebut terlihat bahwa: -Proses prnull selalu ada dan berfungsi sebagai idle process Xinu. -Proses shell adalah proses interaktif yang menjalankan perintah. -Proses ps adalah perintah yang sedang aktif (status curr = current). -ipout dan netin adalah proses internal untuk layanan jaringan.
II. Menampilkan Nama dan Prioritas Dari Proses Yang Aktif Menggunakan printf()
Untuk melakukan bagian ini kita akan keluar dari Minicom dan kembali ke kernel Xinu untuk menambahkan code pada main.c, ikuti langkah di bawah.
- Keluar Dari minicom dengan klik “ctrl + a” lalu “x” kemudian enter.

tampilan keluar minicom
- masuk ke direktori system lalu ketik “nano main.c” dan akan muncul tampilan seperti gambar di bawah


- Ketikkan kode di bawah ini sehingga hasilnya seperti di foto

kode untuk tampilkan nama dan prioritas
dan posisinya ada di atas lfsccreate…

code untuk cek proses yang aktif akses printfI()
Note: hasil setelah masuk minicom akan ditampilkan di bawah
III. Mengubah Nama Salah Satu Proses Dengan Modifikasi prname
- masuk ke direktori “system” lalu ketik “nano main.c” dan ketik kode di bawah kemudain ketikkan juga “sleep(1)” untuk beri jeda hingga tampilan welcome xinu di print. Tambahkan juga “#include <string.h>” agar ada library untuk fungsi ubah nama.

code c utuk ubah nama proses

code untuk ubah proses di terminal ps
Tampilan minicom setelah kita tambahkan code di main.c di system:
proses yang menggunakan printf() muncul sebelum tampilan welcome to xinu.

menampilkan proses yang aktif menggunakan printf()
Nama proses pada “ps” PID 4 berubah dari “Main Proses” (bisa dilihat di atas bagian menjalankan minicom) menjadi “MyKernelMain”

perubahan nama proses pada ps
IV. Analisis Perubahan di proctab[]
Setelah memodifikasi prname, hanya bidang itu yang berubah di proctab[4]. Karena proctab[] bersifat global, pembaruan tersebut tercermin di seluruh sistem, membuktikan bahwa Xinu secara langsung merujuk ke array PCB yang sama untuk semua proses.
V. Kesimpulan
Dari percobaan ini dapat disimpulkan bahwa seluruh proses dalam Xinu dikelola melalui array proctab[]. Dengan memodifikasi elemen di dalamnya, kita dapat melihat langsung dampaknya pada sistem. Selain itu, proses pengeditan kernel menggunakan nano, kompilasi dengan make, dan eksekusi melalui minicom merupakan alur standar dalam pengembangan kernel Xinu.
메타데이터
- post_id
- ebdc0cdbfc11
- slug
- analisis-dan-implementasi-manajemen-proses-pada-sistem-operasi-xinu-ebdc0cdbfc11
- url
- https://medium.com/@rykme77/analisis-dan-implementasi-manajemen-proses-pada-sistem-operasi-xinu-ebdc0cdbfc11
- canonical_url
- https://medium.com/@rykme77/analisis-dan-implementasi-manajemen-proses-pada-sistem-operasi-xinu-ebdc0cdbfc11
- author_url
- https://medium.com/@rykme77
- status
- ok
- fetched_at
- 2026-07-16 03:02:34