Blog
Artikel praktis dari KomuraSoft LLC tentang pengembangan situs web, SEO, Google Ads, pengembangan untuk Windows, pemanfaatan sistem yang ada, dan investigasi bug.
Pencarian AI di seluruh situs
Kueri pencarian dikirim ke Cloudflare AI Search untuk menghasilkan hasil. Jangan masukkan data pribadi.
-
Kedalaman virtualisasi Windows (Bagian 3) — VM yang siap dalam hitungan detik: apa yang membuat WSL2, Windows Sandbox, dan kontainer terasa ringan
Mengapa WSL2 dan Windows Sandbox boot dalam hitungan detik dan terasa ringan. Artikel ini menguraikan mekanismenya, dari dynamic base image, direct map, dan ...
-
Kedalaman virtualisasi Windows (Bagian 2) — Memori yang bahkan kernel pun tidak bisa lihat: mekanisme VBS, HVCI, dan Credential Guard
Pada instalasi bersih ke perangkat keras yang kompatibel, VBS aktif secara bawaan. Hypervisor dan SLAT membentuk isolasi yang lebih kuat daripada kernel. Art...
-
Kedalaman virtualisasi Windows (Bagian 1) — Di mana Windows Anda berjalan: hypervisor dan partisi
Setelah Hyper-V diaktifkan, Windows host sendiri berjalan di atas hypervisor sebagai root partition. Artikel ini menjelaskan fondasi virtualisasi sampai pera...
-
API thread pool Win32 — konkurensi tanpa membuat thread, lewat CreateThreadpoolWork
Apakah kode native masih menumpuk CreateThread? Artikel ini menjelaskan API thread pool Win32 yang didesain ulang di Vista: empat objek work, timer, wait, da...
-
Named pipe dalam praktik — IPC andalan Windows, dari desain sampai keamanan
Penjelasan praktis named pipe, IPC andalan di Windows. Dari sumber primer: memilih mode byte versus mode pesan, desain server yang menangani banyak klien, ke...
-
Aplikasi rusak setelah bangun dari tidur — mekanisme event daya dan cara merancang aplikasi bisnis yang tahan bangun
Laptop dibuka, koneksi aplikasi bisnis sudah putus — penyebabnya desain yang tidak memperhitungkan tidur. Artikel ini menata alur notifikasi WM_POWERBROADCAS...
-
DllMain dan loader lock — alasan sebenarnya di balik peringatan "jangan lakukan apa pun saat inisialisasi DLL"
Mengapa LoadLibrary dan sinkronisasi antar-thread dilarang di dalam DllMain. Dari mekanisme loader lock yang menserialisasi semua notifikasi DLL, skenario kl...
-
Apa sebenarnya "Tidak Merespons" — cara Windows menilai aplikasi hang, dan desain agar tidak hang
"Tidak Merespons" di Windows adalah mekanisme OS: jika jendela tidak mengambil pesan selama 5 detik, OS menilainya hang dan menggantinya dengan ghost window....
-
Spurious wakeup — mengapa condition variable "bangun tanpa notifikasi" dan cara menunggu yang benar di Windows
wait pada condition variable dapat bangun meskipun notifikasi tidak datang (spurious wakeup). Artikel ini mengurai alasan spesifikasi mengizinkannya dari imp...
-
Cara kerja clipboard dan seret-dan-lepas — menangani transfer data OLE dengan benar di aplikasi bisnis
Tabel Excel berantakan saat ditempel, atau tidak bisa menempel setelah aplikasi sumber ditutup — keduanya berasal dari clipboard yang menaruh isi yang sama d...
-
Praktik WPR/WPA — pengantar investigasi performa di seluruh sistem untuk gejala "seluruh PC terasa berat"
Masalah performa seperti "seluruh PC terasa berat" atau "startup lambat" yang tidak bisa dilacak lewat Task Manager dapat diselidiki dengan merekam jejak ETW...
-
Shutdown Windows dari sisi aplikasi — bertahan dengan benar dari notifikasi keluar, restart, dan putus daya
Data pengukuran rusak setelah restart malam hari oleh Windows Update — insiden semacam itu bisa dicegah lewat desain. Artikel ini menjelaskan dari sumber pri...
-
Pengantar aksesibilitas aplikasi Windows — bersiap menghadapi UI Automation dan kewajiban akomodasi wajar
Dengan latar belakang amandemen Undang-Undang Penghapusan Diskriminasi terhadap Penyandang Disabilitas yang berlaku April 2024, artikel ini menata secara pra...
-
Jebakan font dan karakter Jepang — menangani JIS2004, selector variasi ideografis, dan gaiji di aplikasi bisnis
"Bentuk 葛 berbeda di layar dan di formulir." "Karakter nama orang tidak tampil." Masalah karakter di sistem bisnis menjadi jelas jika lapisan kode karakter (...
-
Dari Group Policy ke Intune — panduan migrasi manajemen perangkat untuk usaha kecil dan menengah
Saat server AD diganti, lanjutkan Group Policy atau pindah ke Entra ID+Intune? Untuk usaha kecil dan menengah, artikel ini merangkum perbedaan mekanisme pene...
-
Memilih akun layanan Windows — kapan memakai LocalSystem, akun virtual, dan gMSA
Masih menjalankan layanan Windows sebagai LocalSystem? Bandingkan hak dan identitas jaringan LocalService, NetworkService, akun virtual, pengguna domain, dan...
-
OneDrive «File Sesuai Permintaan» dan aplikasi bisnis — asumsi yang dirusak oleh placeholder, dan cara mengatasinya
CSV di desktop tidak bisa dibaca, proses impor gagal dengan «file tidak ditemukan» — penyebabnya mungkin KFM OneDrive dan File Sesuai Permintaan. Artikel ini...
-
Cara kerja kompatibilitas aplikasi Windows — memperpanjang umur aplikasi lama dengan mode kompatibilitas, shim, dan Compatibility Administrator
Mengapa mencentang mode kompatibilitas membuat aplikasi lama berjalan. Artikel ini menjelaskan identitas sebenarnya, yaitu shim (hook API), fungsi shim yang ...
-
Kedalaman memori Windows (bagian 3) — Objek section dan copy-on-write: wujud DLL dan pemetaan berkas
Artikel ini merangkai objek section, pemetaan image dan data, cache bersama, serta copy-on-write untuk menjelaskan bagaimana DLL dan memori bersama berbagi h...
-
Integrasi shell Windows saat ini ── menu klik kanan, asosiasi file, dan perubahan di Windows 11
Mengapa di Windows 11 item menu klik kanan tersembunyi di balik "Tampilkan opsi selengkapnya": dari dasar asosiasi ekstensi → ProgID → verb, catatan penting ...
-
Proksi internal perusahaan dan aplikasi Windows — merapikan resolusi proksi WinINET, WinHTTP, dan .NET
Peramban bisa tersambung, tetapi hanya aplikasi bisnis yang gagal melewati proksi internal. Penyebabnya hampir selalu ketidaksesuaian: pengaturan proksi mana...
-
Kedalaman memori Windows (bagian 2) — Hidup sebuah halaman fisik: lima daftar dan kebenaran berkas halaman
Artikel ini merangkai basis data PFN, Standby, Modified, kompresi memori, dan berkas halaman, lalu menjelaskan ke mana halaman fisik pergi setelah keluar dar...
-
Praktik penangkapan paket di Windows — membedakan pemakaian pktmon, netsh trace, dan Wireshark
Gangguan komunikasi yang di log aplikasi hanya tersisa sebagai "timeout" bisa diselidiki satu lapis lebih dalam dengan melihat paket yang benar-benar lewat d...
-
Kedalaman memori Windows (bagian 1) — Saat alamat virtual menjadi RAM fisik: page fault dari awal sampai akhir
Artikel ini menghubungkan VirtualAlloc, VAD, tabel halaman, TLB, demand-zero, dan hard fault, lalu menjelaskan saat alamat virtual mendapat alokasi RAM fisik.
-
Membaca kode error Windows — struktur tiga lapis Win32, HRESULT, dan NTSTATUS
Jika 0x80004005 muncul, uraikan dulu sebelum mencari. Artikel ini membahas struktur tiga lapis Win32, HRESULT, dan NTSTATUS, pola terpenting 0x8007xxxx = bun...
-
Pembahasan ujian Registered Information Security Specialist musim semi Reiwa 6, soal 1 sesi sore — JWT alg=none, otorisasi API, dan tindakan WAF sementara
Dengan soal 1 sesi sore ujian Registered Information Security Specialist musim semi Reiwa 6 sebagai bahan, artikel ini menjelaskan alg=none pada JWT, otorisa...
-
Apa yang sebenarnya diukur "pemakaian memori" Windows — membaca Working Set, Private Bytes, Commit, dan page file dengan benar
Kolom Memory di Task Manager, Working Set, Private Bytes, dan Commit bukan angka yang sama. Artikel ini menjelaskan hubungan memori virtual dan fisik di Wind...
-
Praktik terbaik multithreading di lapangan: edisi Java — pola mapan di era virtual thread
Di Java, pola mapan multithreading adalah tidak membuat thread secara langsung, melainkan bertumpu pada ExecutorService dan virtual thread. Artikel ini meran...
-
Praktik terbaik multithreading di lapangan: edisi C — menulis aman mengikuti cara Win32 API
Pola mapan multithreading C × Win32 adalah pembuatan thread dengan _beginthreadex, kunci SRW dan variabel kondisi, Interlocked, serta desain berhenti berupa ...
-
Praktik terbaik multithreading di lapangan: edisi C++ — menghilangkan kecelakaan secara struktural dengan RAII dan jthread
Multithreading di C++ adalah dunia di mana data race menjadi perilaku tak terdefinisi. Artikel ini merapikan jebakan destruktor std::thread, desain berhenti ...