|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июл 28, 2004 23:22:10 · Поправил: PavPS Всем привет! Вопрос такой: Как сделать так, чтобы определенный кусок кода KernelMode выполнялся пез прерывов – т.е. @metka1: ... ... ... @metka2: этот промежуток планировщик не захочет прервать. Воттт… надеюсь на ответ… Заранее благодарен --==PPS==-- |
|
|
Дата: Июл 29, 2004 02:52:57 Повысь приоритет до реалтайм. Такие потоки в режиме ядра не вытесняются. Но это грубо. |
|
|
Дата: Июл 29, 2004 03:00:37 Большое спасибо! Попробую. А вот как на счёт повышения IRQL до самого верха? Мож тоже... или я чё путаю? Правда, тогда, как подозреваю все обращения должны быть к nonepaged_pool. Это выход? |
|
|
Дата: Июл 29, 2004 19:41:48 · Поправил: Four-F Планировщик не сможет тебя прервать даже если ты повысишься всего до distatсh. |
|
|
Дата: Июл 29, 2004 20:05:19 Во-во... Класс! Спасибо. А по поводу real-time стал заблуждаться - а вдруг будут 2 такие нити одновременно - то всё равно ведь прервет. Одним словом, скорее всего, именно IRQ и нужен. |
|
|
Дата: Июл 29, 2004 20:43:03 [ PavPS: а вдруг будут 2 такие нити одновременно - то всё равно ведь прервет. ] Ну да, конечно. |
|
|
Дата: Июл 29, 2004 23:22:02 Что-то я стал сомневаться, а вытесняются ли такие потоки вообще. Не помню :( |
|
|
Дата: Июл 29, 2004 23:54:10 Если не вытесняются, то не разрешено бы было создавать >1 потока. Чесно - пока руки попрбывать недошли. (хорошо людям - "непомню", а вот я просто "незнаю" :((( ) А вообще тогда по ходу решения задачи попробую эксперементально это исследовать. Сюда выложу. |
|
|
Дата: Июл 30, 2004 06:36:12 PavPS вообще - то "по руски" поднять irql до уровня DPC/Dispatch, а код предварить командами cli/sti, и никто тебе не помешает |
|
|
Дата: Июл 30, 2004 06:39:59 PavPS и ещё тебе совет от глупых вопросов, возьми исходники винды и внимательно рассмотри механизм свопинга, и то, как он свопиТ, думаю, быстро всё поймёшь. |
|
|
Дата: Июл 30, 2004 10:05:42 2 CARDINAL Угу. Гляну. Спасибо. На засыпку(мож тоже глупый): я в куске кода ставлю CLI а потом забываю про STI - система чё, висит (выполняет только мою нить)? А? |
|
|
Дата: Июл 30, 2004 11:25:04 PavPS CLI и STI - привилегированные команды, afaik winnt держит виртуальный eflags для каждого процесса. |
|
|
Дата: Июл 30, 2004 12:59:50 2 q_q Спасибо 2 CARDINAL Так вот не зря и спрашивал. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.059 |