Здравствуйте, vitka, Вы писали:
V>Хмм... Ну вообще-то инициализация в теле mmap хука не есть good. Что дальше делает ядро с vma_struct с ходу не могу сказать. Хотя надо как-нть в этом покопаться. Я делаю всю инициализацию уже после всего, регистрируя некий ioctl. V>int fd = open( ... ); V>char* ubuf = ( char* ) mmap( ... ); V>... V>unsigned int junk; V>int rc = ioctl( fd, INIT_CMD, &junk ); V>for(i = 0; i < 256; i++) fprintf( stderr, "%d ", ubuf[ i ] );
Я попробовал так сделать, но, к сожалению, на результат это не повлияло.
Код не привожу, т.к. он от первоначального варианта отличается только тем, что цикл инициализации вынесен в функцию ioctl .
Не мог ли бы вы показать пример своего работающего кода с реализацией этой идеи?
Чувствую, что идея верная, но видно где-то я что-то упускаю.
Слышал я так же про флаги VM_RESERVED или VM_LOCKED, которые надо устанавливать, что бы страницы не выгружались.
Можете написать, что-нибудь об этом?