블로그
KomuraSoft LLC가 웹사이트 제작, SEO, Google 광고 운용, Windows 개발, 기존 자산 활용, 장애 조사에 관해 실무적으로 활용할 수 있는 관점을 발신합니다.
사이트 전체 AI 검색
검색어는 결과 생성을 위해 Cloudflare AI Search로 전송됩니다. 개인정보는 입력하지 마세요.
-
디스크 사용률 100%는 무엇을 멈추면 해결될까 ── SysMain·Windows Search·Defender 구분법
Windows의 디스크 사용률이 100%가 되는 원인을 처리량·응답 시간·파일로 분리해 봅니다. SysMain의 일시 중지와 복귀, Windows Search 검색 범위의 재검토, Defender를 끄지 않는 조사 방법을 그림으로 설명합니다.
-
같은 1GB인데, 동영상 한 편보다 사진 폴더 복사가 느린 이유는?
Windows에서 용량이 같은데 복사 시간이 다른 이유를 그림으로 설명합니다. 파일 수, SSD와 NAS의 대기 시간, ZIP으로 묶는 효과, 생성·전송·압축 해제를 포함한 비교 절차, robocopy의 쓰임새를 정리합니다.
-
Windows의 「하드웨어 가속 GPU 일정 예약」이란? 켜면 빨라질까요?
Windows의 하드웨어 가속 GPU 일정 예약(HAGS)을 일반 사용자를 위해 그림으로 설명합니다. 무엇이 바뀌는지, 켜고 끄는 판단, 설정이 보이지 않는 이유, 프레임 생성과의 관계, 안전한 비교 절차를 정리합니다.
-
Windows의 이름 확인 순서 ── hosts·DNS 캐시·LLMNR/mDNS·DoH
「이름을 확인할 수 없다」「일부 PC만 연결되지 않는다」는 hosts·DNS 캐시·DNS 서버·LLMNR/mDNS 중 어느 층이 답했는지에 따라 결과가 달라집니다. Windows의 이름 확인 순서와 DoH가 바꾸는 것을 구조부터 정리하고, 층별로 분리해 보는 절차를 해설합니다.
-
메모리 무결성(HVCI)을 끄면 빨라지는가 ── 의미와 절차와 판단
Windows 보안의 「코어 격리」에 있는 메모리 무결성(HVCI)은 무엇을 하고 있고, 끄면 정말 빨라지는가. 빨라질 수 있는 조건과 달라지지 않는 조건, 끄는 절차와 되돌리는 방법, 꺼졌는지 확인하는 방법, 꺼도 되는지의 판단 기준을 입문자를 위해 정리합니다.
-
빠른 시작의 정체 ── Windows의 「종료」가 다시 시작과 다른 이유
Windows의 「종료」는 기본적으로 하이브리드 종료가 되어 커널과 드라이버가 최대 절전 모드 파일에 저장되고 다음 부팅에서 복원됩니다. 다시 시작해야만 해결되는 이유, 가동 시간·업데이트·Wake on LAN에 미치는 영향, 확인 방법과 비활성화 판단을 설명합니다.
-
Time Travel Debugging ── 장기 가동에서 재현되지 않는 결함을 「녹화」해서 되감기
한 달에 한 번만 나오는 결함은 크래시 덤프로는 결과밖에 찍히지 않습니다. WinDbg의 Time Travel Debugging(TTD)으로 실행을 녹화해 되감는 방법을 TTD.exe의 녹화 설계, 링 버퍼, TTD.Calls 쿼리, 덤프와의 역할 분담까지 설명합니다.
-
인수는 왜 깨지는가 ── Windows 명령줄 인수의 규칙
Windows에는 인수의 배열이 존재하지 않으며, CreateProcess에 전달되는 것은 한 줄의 문자열이고 분할은 받는 쪽이 합니다. CommandLineToArgvW·CRT·.NET의 분할 규칙과 .NET의 ArgumentList, C++에서의 올바른 조립 방법을 설명합니다.
-
Windows 앱의 다크 모드와 대비 테마 대응 ── DWM의 다크 제목 표시줄, WinForms/WPF의 시스템 테마 추종, 고대비일 때의 그리기
Windows 11의 다크 모드와 대비 테마에 WinForms/WPF 앱을 맞추는 방법을 설명합니다. DWM의 다크 제목 표시줄, .NET 9/10의 SetColorMode와 ThemeMode, 테마 전환 감지, 고대비일 때 시스템 색으로 그리는 방법을 정리합니다.
-
Windows 프린터 드라이버 제공 종료 ── 업무 앱의 장표·라벨 인쇄는 어떻게 대비할 것인가
Microsoft는 v3/v4 프린터 드라이버의 제공 종료를 단계적으로 진행하고 있으며, 2026년 7월부터는 IPP 클래스 드라이버가 우선됩니다. Windows protected print mode에서 무엇이 사라지는지, 업무 앱의 장표·라벨 인쇄가 어디에 의존하고 있는지를 점검...
-
WinRT는 COM이다 - IInspectable, .winmd, 언어 프로젝션, 그리고 WinUI가 지금도 바이너리 계약 위에 서 있는 이유
WinRT는 매니지드 런타임이 아니라 COM에 메타데이터(.winmd)와 언어 프로젝션을 더한 ABI입니다. IUnknown과 IInspectable의 관계부터 데스크톱 앱에서의 HWND 초기화, package identity의 막히는 지점까지 설명합니다.
-
부모가 죽은 뒤에 무엇이 남는가 — Job Object로 자식 프로세스를 기르기
UI를 강제로 종료해도 SDK의 헬퍼가 남아 카메라나 COM 포트를 붙잡고 놓지 않는 이유는 무엇인가. Job Object로 프로세스 트리를 하나의 단위로 만들고, KillOnJobClose와 완료 포트로 자식 프로세스의 수명을 설계하는 방법을 계측 애플리케이션의 시선에서 설명합니다.
-
OLE 개체란 무엇인가 - 포함과 연결의 구조, 그리고 업무 문서의 함정
Word에 Excel 표를 넣는 기능의 정체가 바로 OLE 개체입니다. 포함과 연결의 차이, 복합 파일과 구조화 스토리지, In-Place Activation의 구조부터 링크 깨짐, 파일 비대화, 보안 대책까지 실무 관점에서 설명합니다.
-
「같은 PC」는 같은 실행 환경이 아니다 ── AppData·HKCU·DPAPI·자격 증명을 가르는 사용자 경계
내 PC에서 잘 돌던 앱이 작업이나 서비스로 만들자마자 망가지는 이유. AppData·HKCU·DPAPI·브라우저 프로필·자격 증명을 가르는 Windows의 사용자 경계를 구조부터 설명합니다.
-
DSC로 Windows를 선언적으로 구성 관리하기 ── dsc.exe로 시작하는 IaC
"다시 실행하면 망가지는" 절차서 스크립트에서 졸업하지 않겠습니까. Windows 구성을 YAML로 선언하고 멱등하게 적용하는 DSC v3(dsc.exe)를, 네 갈래인 DSC의 정리부터 구성 문서 작성법, 드리프트 감지 운영까지 해설합니다.
-
Windows 가상화의 심층(제3회) ── 몇 초 만에 시작되는 가상 머신: WSL2·Windows Sandbox·컨테이너가 가벼운 이유
WSL2와 Windows Sandbox는 왜 몇 초 만에 시작되고 이렇게 가벼울까요. 동적 베이스 이미지, 다이렉트 맵, 메모리의 동적 배분, Hyper-V 격리 컨테이너까지 구조부터 설명합니다.
-
Windows 가상화의 심층(제2회) ── 커널에서도 보이지 않는 메모리: VBS·HVCI·Credential Guard의 구조
대응 하드웨어에 클린 설치하면 기본으로 켜지는 VBS는, 하이퍼바이저와 SLAT로 커널보다 강한 격리를 만듭니다. VTL, 보안 커널, HVCI, Credential Guard의 구조를 설명합니다.
-
Windows 가상화의 심층(제1회) ── 당신의 Windows는 어디에서 실행되고 있는가: 하이퍼바이저와 파티션
Hyper-V를 켜면 호스트 Windows 자체가 루트 파티션으로서 하이퍼바이저 위에서 실행됩니다. VT-x, SLAT, VMBus의 역할까지 가상화의 토대를 설명합니다.
-
Win32 스레드 풀 API ── CreateThreadpoolWork로 「스레드를 만들지 않는」 병렬 처리
네이티브 코드에서 CreateThread를 마구 늘리고 있지는 않습니까. Vista에서 새로 설계된 Win32 스레드 풀 API의 work, timer, wait, io 네 가지 객체와 클린업 그룹, 콜백에서 해서는 안 되는 일까지 1차 자료를 근거로 설명합니다.
-
Named Pipe 실무 ── Windows 프로세스 간 통신의 정석을 설계부터 보안까지
Windows 프로세스 간 통신의 정석인 Named Pipe를 실무 관점에서 설명합니다. 바이트/메시지 모드의 선택, 여러 클라이언트를 처리하는 서버 설계, ACL과 impersonation 보안, .NET의 NamedPipeStream까지 일차 자료를 근거로 정리합니다.
-
절전에서 재개하면 깨지는 앱 ── 전원 이벤트의 구조와 재개에 강한 업무 앱을 만드는 방법
노트북을 열었더니 업무 앱의 통신이 끊어져 있었다――원인은 절전을 전제하지 않은 설계입니다. WM_POWERBROADCAST에 의한 알림의 흐름, Modern Standby의 동작, 끊김·재연결 설계, 절전 억제와 조사 명령까지를 1차 정보로 설명합니다.
-
DllMain과 로더 락 ── 「DLL 초기화에서는 아무것도 하지 말라」는 말의 진짜 이유
DllMain에서 LoadLibrary나 스레드 동기화를 해서는 안 되는 이유는 무엇인가. 모든 DLL 알림을 직렬화하는 로더 락의 구조부터, 데드락이 성립하는 전형적인 시나리오, 지연 초기화 같은 올바른 설계, hang 조사 절차까지를 1차 정보로 설명합니다.
-
「응답 없음」의 정체 ── Windows가 앱을 「멈췄다」고 판단하는 구조와, 멈추지 않는 설계
Windows의 「응답 없음」은 창이 5초 동안 메시지를 꺼내지 않으면 OS가 판단해 고스트 창으로 교체하는 구조입니다. 판단의 내부 동작부터 멈추는 전형적인 원인, UI 스레드에서 무거운 처리를 빼내는 설계, hang 조사 절차까지 설명합니다.
-
spurious wakeup ── 조건 변수가 「알림 없이 깨어나는」 이유와 Windows에서 올바르게 기다리는 방법
조건 변수의 wait는 알림이 오지 않아도 깨어날 수 있습니다(spurious wakeup). 사양이 이를 허용하는 이유를 Windows 구현에서 밝히고, while과 predicate로 쓰는 올바른 대기 방법을 Win32·C++·C# 코드로 보입니다.
-
클립보드와 드래그 앤 드롭의 구조 ── 업무 앱에서 OLE 데이터 전송을 올바르게 다루기
Excel 표를 붙여 넣으면 서식이 무너지고, 원본을 닫으면 붙여 넣을 수 없다── 원인은 같은 내용을 여러 형식으로 두는 클립보드입니다. 표준 형식·지연 렌더링·OLE 드래그 앤 드롭부터 기록과 클라우드 동기 정책까지 설명합니다.
-
WPR/WPA 실무 ── 「PC 전체가 느리다」를 시스템 전체에서 조사하는 성능 조사 입문
「PC 전체가 느리다」「부팅이 느리다」처럼 작업 관리자로는 따라갈 수 없는 성능 문제는 OS 전체 ETW 트레이스를 모아 읽는 WPR/WPA로 조사합니다. wpr.exe 수집 절차부터 WPA에서 CPU·대기·디스크 I/O를 읽는 법까지 설명합니다.
-
앱에서 본 Windows 종료 ── 종료 알림·다시 시작·전원 차단을 올바르게 견디기
Windows Update의 야간 다시 시작으로 계측 데이터가 깨졌다 ── 그런 사고는 설계로 막을 수 있습니다. WM_QUERYENDSESSION과 PRESHUTDOWN으로 종료 알림을 받는 방법, 수 초 안에 끝내는 정리, 전원 차단에도 견디는 저장 설계까지를 1차 정보로 설명...
-
Windows 앱 접근성 입문 ── UI Automation과 합리적 배려 의무화에 대비하기
2024년 4월 시행된 개정 장애인차별해소법을 배경으로, 스크린 리더가 Windows 앱을 읽는 기반 UI Automation을 축으로 WinForms/WPF의 이름 지정, 키보드 조작, 대비, 검증 도구까지 실무 관점에서 정리합니다.
-
일본어 글꼴과 문자의 함정 ── 업무 앱에서 JIS2004·이체자 선택자·외자를 다루는 법
「화면과 장표에서 葛 자의 모양이 다르다」「성명의 글자가 나오지 않는다」── 업무 시스템의 문자 문제는 문자 코드(데이터)와 글꼴(겉모습)의 층을 나누면 정리할 수 있습니다. JIS2004의 자형 변경, 이체자 선택자, 외자의 실무 대응을 설명합니다.
-
그룹 정책에서 Intune으로 ── 중소기업의 디바이스 관리 이전 가이드
AD 서버 교체를 계기로 그룹 정책을 이어갈지, Entra ID+Intune으로 옮길지. 적용 방식의 차이, 라이선스, Group Policy analytics로 현황을 파악하는 법, 5단계 이전 시나리오와 막히는 지점을 중소기업 기준으로 정리합니다.