Langsung ke konten

Arsip

I/O

26 artikel
Linux 16 Sep 2026 4 min read

Readiness epoll Edge-Triggered Memerlukan Draining

Consumer epoll edge-triggered dapat terblokir ketika data yang belum dibaca masih tersimpan di buffer. Kegagalan ini muncul ketika sebuah event dikonsumsi, hanya sebagian input yang tersedia dibaca, lalu event loop kembali ke epoll_wait() dengan harapan menerima notifikasi lain untuk byte yang tersisa. Perilaku ini mengikuti langsung semantik EPOLLET. Notifikasi edge-triggered melaporkan perubahan readiness, bukan terus-menerus melaporkan kondisi ready. Setelah sebuah transisi readiness menghasilkan event, membiarkan file descriptor tetap ready tidak dengan sendirinya menciptakan transisi baru.

Teknologi 16 Sep 2026 4 min read

PCIe Relaxed Ordering Memungkinkan Transaksi Melintas dalam Aturan Ordering

PCIe Relaxed Ordering Memungkinkan Transaksi Melintas dalam Aturan Ordering PCI Express membawa request dan completion melalui switch, bridge, dan logika endpoint yang dapat memiliki beberapa transaksi in-flight sekaligus. Strict ordering di antara setiap packet akan membuat banyak transfer independen menunggu di belakang traffic yang tidak memiliki dependency dengannya. Relaxed Ordering menyediakan sinyal protokol yang mengizinkan reordering lebih luas ketika requester dapat menoleransinya. Fitur ini tidak menghapus seluruh constraint ordering. Sebuah transaksi ditandai agar memenuhi syarat untuk bergerak lebih bebas relatif terhadap traffic lain, sementara aturan ordering PCIe tetap menentukan kombinasi mana yang dapat saling melintas. Software dan logika device hanya boleh memakai atribut tersebut ketika reordering tidak dapat mengekspos stale state atau merusak dependency producer-consumer.