Microsoft의 내부 논리는 무엇입니까? ReadyBoost ?
이론적 인 대답조차 할 것입니다.
Microsoft의 내부 논리는 무엇입니까? ReadyBoost ?
이론적 인 대답조차 할 것입니다.
답변:
ReadyBoost는 서비스 호스트 프로세스 및 볼륨 필터 드라이버 (% SystemRoot % \ System32 \ Drivers \ Ecache.sys)에서 실행되는 서비스 (% SystemRoot % \ System32 \ Emdmgmt.dll)로 구성됩니다. (Emd는 개발 중에 ReadyBoost의 작동 이름 인 External Memory Device의 약자입니다.) USB 키와 같은 플래시 장치를 시스템에 삽입하면 ReadyBoost 서비스는 장치를보고 성능 특성을 확인하고 HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Emdmgmt에서 테스트합니다.
플래시 장치가 충분히 빠르며 동의하면 장치의 루트에 Ready Boost.sfcache라는 캐시 파일이 생성됩니다.이 파일은 캐시 된 페이지를 저장하는 데 사용됩니다 (초기 캐시는 SuperFetch 캐시를 쿼리하여 작성되지만 나중에 내용은 ReadyBoost에서 독립적으로 완벽하게 관리됩니다.
ReadyBoost 서비스가 캐싱을 초기화 한 후 Ecache.sys 장치 드라이버는 로컬 하드 디스크 볼륨에 대한 모든 읽기 및 쓰기를 가로 채고 서비스가 만든 캐싱 파일에 읽거나 쓰는 데이터를 복사합니다. 오래 동안 읽었거나 볼륨 스냅 샷 요청에 속한 데이터 일 수 있습니다. Ecache.sys는 데이터를 압축하고 일반적으로 2 : 1 압축 비율을 달성하므로 4GB 캐시 파일에는 일반적으로 8GB의 데이터가 포함됩니다. 드라이버는 장치가 시스템에서 제거되면 캐시의 데이터 프라이버시를 보장하기 위해 임의로 생성 된 부팅 당 세션 키를 사용하여 AES 암호화를 사용하여 작성하는 각 블록을 암호화합니다.
ReadyBoost가 캐시에서 만족할 수있는 임의의 읽기를 발견하면 캐시에 서비스를 제공합니다. 하드 디스크는 플래시 메모리보다 순차적 읽기 액세스가 더 좋기 때문에 데이터가 캐시에 있더라도 순차 액세스 패턴의 일부인 읽기가 디스크로 직접 이동합니다. 마찬가지로 캐시를 읽을 때 많은 I / O를 수행해야하는 경우 디스크상의 캐시가 대신 읽혀집니다.
이것은 Windows Internals Book에서 유래되었으며 답변으로 맞추기 위해 더 짧게 만들어졌습니다.