|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Ilmar S. Habibulin 2:5020/400 24 Oct 2001 09:16:27 To : All Subject : как в ядре писать на диск? -------------------------------------------------------------------------------- Может кто наставит на путь истинный? Хочу сделать затирание свопа после освобождения его процессом, т.е. конкретных страниц, но никак не пойму, каким образом правильно создать обнулённый буфер и записать его в нужное место на разделе. По идее известен номер блока на устройстве, размер обнуляемого пространства равен одной странице. Используемая ось - фря 2.2 или -current. пробовал нечто вроде (код для двойки): bp = getpbuf(); bp->b_blkno = номер; bp->b_data = nulldata[PAGE_SIZE]; /* вот здесь не разобрался */ bp->b_flags = B_PAGING | B_WRITEINPROG; bp->b_bcount = PAGE_SIZE; pbgetvp(...) s = splbio(); VOP_STRATEGY(bp); /* проверка выполнения операции */ splx(s); relpbuf(bp); Может кто знает, где я могу ошибаться или что посмотреть? Или приведёт код для любой из перечисленных систем. Можно мылом пообщаться ilmar@watson.org.NOSPAM. спасибо. --- ifmail v.2.15dev5 * Origin: Internet SUXX (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/91040433bb40.html, оценка из 5, голосов 10
|