O ReadyBoost consiste em um serviço (% SystemRoot% \ System32 \ Emdmgmt.dll) executado em um processo Host de Serviço e um driver de filtro de volume (% SystemRoot% \ System32 \ Drivers \ Ecache.sys). (Emd é a abreviatura de External Memory Device, o nome de trabalho do ReadyBoost durante o desenvolvimento.) Quando você insere um dispositivo flash como uma chave USB em um sistema, o serviço ReadyBoost examina o dispositivo para determinar suas características de desempenho e armazena os resultados de seu teste em HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Emdmgmt.
Se o seu dispositivo flash for rápido o suficiente e você concordar, o serviço criará um arquivo de cache chamado Ready Boost.sfcache na raiz do dispositivo, que será usado para armazenar páginas armazenadas em cache (o cache inicial é construído consultando o cache do SuperFetch). , mas os conteúdos posteriores são totalmente gerenciados pelo ReadyBoost de forma independente).
Após o serviço ReadyBoost inicializar o armazenamento em cache, o driver de dispositivo Ecache.sys intercepta todas as leituras e gravações nos volumes do disco rígido local e copia os dados sendo lidos ou gravados no arquivo de armazenamento em cache que o serviço criou, com certas exceções, como dados não é lido há muito tempo, ou dados que pertencem a solicitações de Captura Instantânea de Volume. O Ecache.sys compacta dados e geralmente atinge uma taxa de compactação de 2: 1, portanto, um arquivo de cache de 4 GB geralmente contém 8 GB de dados. O driver criptografa cada bloco que ele grava usando criptografia AES com uma chave de sessão por inicialização gerada aleatoriamente para garantir a privacidade dos dados no cache, caso o dispositivo seja removido do sistema.
Quando o ReadyBoost vê leituras aleatórias que podem ser atendidas pelo cache, ele as atende a partir daí, mas como os discos rígidos têm um acesso de leitura sequencial melhor do que a memória flash, ele permite que as leituras que fazem parte dos padrões de acesso sequencial vão diretamente para o disco, mesmo que os dados estejam no cache. Da mesma forma, ao ler o cache, se grandes E / Ss tiverem que ser feitos, o cache em disco será lido em seu lugar.
Isso vem do Windows Internals Book, mas ficou menor para ser uma resposta.