Сообщение от COOLERbyPSP
Мило, кто сможет объяснить на пальцах фичи и настройки Inferno драйвера из рекавери?
|
Документации нет никакой, поэтому надо смотреть исходники. Одна из последних версий PRO от Rahim-US (товарища, добавившего Inferno в ME) содержит следующее.
Обращаем внимание на config.iso_cache_total_size, config.iso_cache_num и infernoCacheInit из другого файла:
procfw\ISODrivers\Inferno\isocache.c:
int infernoCacheInit(int cache_size, int cache_num)
{
SceUID memid;
int i;
struct ISOCache *cache;
void *pbuf;
g_caches_num = cache_num;
g_caches_cap = cache_size;
if(g_caches_cap % 0x200 != 0) {
return -1;
}
memid = sceKernelAllocPartitionMemory(9, "infernoCacheCtl", PSP_SMEM_High, g_caches_num * sizeof(g_caches[0]), NULL);
if(memid < 0) {
printk("%s: sctrlKernelAllocPartitionMemory -> 0x%08X\n", __func__, memid);
return -2;
}
g_caches = sceKernelGetBlockHeadAddr(memid);
if(g_caches == NULL) {
return -3;
}
memid = sceKernelAllocPartitionMemory(9, "infernoCache", PSP_SMEM_High, g_caches_cap * g_caches_num + 64, NULL);
if(memid < 0) {
printk("%s: sctrlKernelAllocPartitionMemory -> 0x%08X\n", __func__, memid);
return -4;
}
pbuf = sceKernelGetBlockHeadAddr(memid);
pbuf = (void*)(((u32)pbuf & (~(64-1))) + 64);
for(i=0; i<g_caches_num; ++i) {
cache = &g_caches[i];
cache->buf = pbuf + i * g_caches_cap;
disable_cache(cache);
}
cache_on = 1;
return 0;
}
Особым программизмом я не отличаюсь, но из вышеотквоченного, вроде как, следует:
Inferno ISO Cache - используется ли кэш вообще (на фатках не используется в любом случае - там под него физически нет памяти).
Inferno Cache Size - сколько памяти выделять под кэш всего (из дополнительных 32МБ, устанавливаемых на не-фатки)
Inferno Cache Number - на сколько фрагментов делить выделенную ранее память
Inferno Cache Policy - какие фрагменты затирать новыми при полном кэше в первую очередь: дольше всего неиспользуемые (Least Recently Used) или какие попало (random).
Сообщение от COOLERbyPSP
Будет ли от изменения оных прирост к скорости загрузки?
|
Мерялку написать не умею, потому как не особо силен в сях, а теоретически не могу сказать по той же причине.