Tak samo mozna zrobic np. w C++. Rozbijasz proces szyfrowania na watki i system automatycznie rozprasza je po rdzeniach (przynajmniej windows), ew mozna zrobic to samodzielnie ustawiajac odpowiednie flagi dla watku.
Ja sie zgodze z tym ze w asemblerze mozna niektore rzeczy zrobic wydajniej np. optymalizacje algorytmu tak zeby odpowiedniu sparowac instukcje, by wykonywaly sie jednoczesnie (np. trafiajac do odpowiednich rurek w pentium) itd., ale tez wykonanie optymalizacji dla kazdego typu procesora w zasadzie trzeba by przeprowadzic oddzielnie, ze wzgledu na rozna architekture.
Dla pewnych procesow nie ma znaczenia, z punktu widzenia uzytkownika czy cos sie wykona w 20ms czy w 100ms bo i tak nie zobaczy roznicy.
Stad w moim przypadku na razie nie widze sensu spedzania duzego czasu nad optymalizacja jak pisalem wczesniej.
Co do wirtualnej partycji, mniemam ze chcialbys stworzyc szyfrowany wirtualny dysk i tutaj widze zastosowanie dobrej optymalizacji, poniewaz bylby to proces dzialajacy non stop i bez optymalizacji moglby uszczuplic moc obliczeniowa komputera
Co do samego sterownika, nie sadze zeby bylo trudne bo walaja sie po necie open-sourcowe aplikacji to robiace, wiec z czego sie nauczyc jest.