Sistemin Mac OS X'in açık olup olmadığını kontrol etmek için güvenilir, hızlı, deterministik bir yol var mı (yani bir referans noktası) Solid State Drive mı?Mac OS X'de SSD nasıl algılanır?
Diskin paralel erişimi ne kadar iyi kullandığını gösteren başka bir gösterge var mı? Programımın disk bağlı işlemler için kullanacağı iş parçacığı sayısını ayarlamaya çalışıyorum.
Ham hızla ilgilenmiyorum ya da zaman isteyin, sadece sürücü için hangi tür erişim - seri veya paralel - daha hızlı. Programımın kullanıcılarının iSCSI veya RAID kullanmasını beklemiyorum. SSD benim odak noktam, başka her şey güzel. Bu bilgileri içeren
Device Characteristics
IOAHCIBlockStorageDevice
içerir. Program aracılığıyla nasıl okuyabilirim?
match = IOBSDNameMatching(kIOMasterPortDefault,0,"disk0s2");
IOServiceGetMatchingServices(kIOMasterPortDefault, match, &iterator);
while(entry = IOIteratorNext(iterator)) {
do {
entry = IORegistryEntryGetParentEntry(nextMedia, kIOServicePlane, &entry);
dict = IORegistryEntryCreateCFProperty(nextMedia,
CFSTR(kIOPropertyDeviceCharacteristicsKey), kCFAllocatorDefault, 0);
[dict objectForKey:CFSTR(kIOPropertyMediumTypeKey)];
}
while(!dict && entry);
}
Edit (aşağıdaki pseudocode olan):
Şimdiye kadar çözdüm böyle giderse Here's complete source code. Intel SSD ve OCZ Vertex ile çalıştığını doğruladım. Eğer gerçekten diski bir SSD olur bakım, sadece diski gerçekten hızlı olması umurumda değil -
Ayrıca bkz. Http://stackoverflow.com/q/908188/545127 – Raedwald