Ho bisogno di scrivere dati nell'azionamento. Ho due opzioni:Quale è più veloce, scrivendo dati grezzi su un'unità o scrivendo su un file?
- scrivere settori prime (_ modifica (maniglia, pBuffer, dimensioni);)
- scrittura in un file (fwrite (pBuffer, dimensioni, conteggio, pFile);)
Quale strada è più veloce?
Mi aspettavo che la funzione di scrittura del settore raw, _write, fosse più efficiente. Tuttavia, il mio risultato del test è fallito! fwrite è più veloce. _write costa più tempo.
Ho incollato il mio snippet; forse il mio codice è sbagliato. Mi puoi aiutare? In entrambi i casi va bene per me, ma credo che in scrittura prima è meglio, perché sembra che i dati dell'unità sono cifrati almeno ....
#define SSD_SECTOR_SIZE 512
int g_pSddDevHandle = _open("\\\\.\\G:",_O_RDWR | _O_BINARY, _S_IREAD | _S_IWRITE);
TIMER_START();
while (ulMovePointer < 1024 * 1024 * 1024)
{
_write(g_pSddDevHandle,szMemZero,SSD_SECTOR_SIZE);
ulMovePointer += SSD_SECTOR_SIZE;
}
TIMER_END();
TIMER_PRINT();
FILE * file = fopen("f:\\test.tmp","a+");
TIMER_START();
while (ulMovePointer < 1024 * 1024 * 1024)
{
fwrite(szMemZero,SSD_SECTOR_SIZE,1,file);
ulMovePointer += SSD_SECTOR_SIZE;
}
TIMER_END();
TIMER_PRINT();
La scrittura di dati grezzi non è affatto crittografata - è solo una confusione per l'utente ... – bdonlan
+1 per la creazione di profili. (Anche se questa domanda è sopra la mia testa) – GManNickG
A bdonlan: voglio solo che sembri crittografato .. invisibile agli utenti –