задержка...

Тема в разделе "WASM.ASSEMBLER", создана пользователем eXod, 10 сен 2004.

  1. eXod

    eXod New Member

    Публикаций:
    0
    Регистрация:
    6 сен 2004
    Сообщения:
    56
    Адрес:
    Санкт-Петербург
    Вообще под вынь32 интересует сейчас, но очень будет интересно узнать и вне ОС.

    Собственно надо организовать задержку без загрузки проца(причём с выходом по событию/условию). т.е. обычный цикл где мы постоянно сравниваем с эталонным значением не подходит. В вынь32 есть варианты - event, criticalsection и т.п. а очень бы хотелось вне ОС. Может есть что-то организованное на апаратном уровне?
     
  2. n0p

    n0p 10010000b

    Публикаций:
    0
    Регистрация:
    7 май 2003
    Сообщения:
    256
    Адрес:
    Новосиbeerск
    Может и есть, но, например, винда тебе не даст выйти на аппаратный уровень спокойно. :)
     
  3. xzazet

    xzazet New Member

    Публикаций:
    0
    Регистрация:
    25 июл 2003
    Сообщения:
    41




    сколько уже недель?
     
  4. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    eXod



    Если собираешься работать под вынь32, то все равно

    прерывание должно быть системное иначе всю систему порушишь. А если на голом компе, так есть же там 3 таймера. Один раньше использовался для "освежения памяти", второй для 18 Гц - часики и третий - спикер.
     
  5. Inked Wedge

    Inked Wedge New Member

    Публикаций:
    0
    Регистрация:
    15 авг 2004
    Сообщения:
    33
    Адрес:
    Ukraine
    valterg

    ты имеешь ввиду то освежение памяти, без которого она ничего не хранит больше каких то там миллисекунд или обновление системных переменных?





    А для задержки (аппаратно независимой) приходицца использовать таймер... Время такта ессно меняецца на разных компах... Можно например включить "пробуждение" задачи в обработчик IRQ0... если вне винды... Если внутри - выбиваем из башки галлюцинации и используем системные средствА.... Впрочем, если есть выход в ring 0... :-\