"Ночные" сборки KolibriOS

Share your distros and discuss others'
  • Mario_r4
    Не пойму, что ты хочешь этим сказать.
  • Serge wrote:Mario_r4
    Не пойму, что ты хочешь этим сказать.
    Я тоже не понял твоего замечания.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Ага, программная... с загрузкой в процессор дескрипторов.
    Дескрипторы имеют мало отношения к многозадачности, тем более все потоки используют один набор os_code os_stack app_code app_data. Это механизм защиты памяти.
  • Ну, если все так просто, то почему мы до сих пор плаваем в 8 битовом счетчике?
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Наверное потому, что оконная система и все структуры планировщика сделаны в виде статических массивов под 8-ми битный счётчик ? Но какое это имеет отношение программной или аппаратной многозадачности ? Аппаратный механизм переключения задач не умеет менять значение [CURRENT_TASK] и [current_slot]
  • Еще один вопрос. Сейчас блиттер, как я понимаю, может отрисовывать только в видеопамять, как я понимаю. Возможно сделать отрисовку и в обычную память тоже?
  • Serge wrote:Наверное потому, что оконная система и все структуры планировщика сделаны в виде статических массивов под 8-ми битный счётчик ? Но какое это имеет отношение программной или аппаратной многозадачности ? Аппаратный механизм переключения задач не умеет менять значение [CURRENT_TASK] и [current_slot]
    В таком случае - а она вообще на x86 бывает чисто аппаратной?
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4 wrote:В таком случае - а она вообще на x86 бывает чисто аппаратной?
    Тут вопрос, что считать чисто аппаратной многозадачностью. Многозадачность возможна и на 8086, но не долго. В 80286/80386 появились аппаратные механизмы поддержки многозадачности. При некоторой смекалке можно одним нелёгким far jmp pword менять не только контекст процессора, но и глобальные переменные ядра, выполняя всю работу по переключению потока аппаратно.
  • SoUrcerer
    А зачем, это функция для прикладной библиотеки, как memmove().
  • Функция 72 - "Послать сообщение окну" у меня возвращает 72. Может я что-то не так делаю?

    Code: Select all

    --- Подфункция 1 - послать сообщение с параметром активному окну. ----
    Параметры:
      * eax = 72 - номер функции
      * ebx = 1 - номер подфункции
      * ecx = код события: 2 или 3
      * edx = код клавиши для ecx=2, идентификатор кнопки для ecx=3
    Возвращаемое значение:
      * eax = 0 - успешно
      * eax = 1 - буфер заполнен
    Attachments
    example.zip (2.05 KiB)
    if (id==2) debugi(SendWindowMessage(evKey, 13));
    Downloaded 135 times
    Из хаоса в космос
  • Возвращает где? Real system, Qemu, VirtualBox, KlbrInWin?
    Last edited by Mario_r4 on Fri Apr 05, 2013 11:32 pm, edited 2 times in total.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Qemu. Возвращает 72.
    Из хаоса в космос
  • У меня твой пример пишет, что нажат Enter, когда тычу в кнопку.
    Ты точно в ночной сборке, а не в каком-нибудь альтернативном ядре проверяешь? (USB или еще чего)
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • У меня тоже пишет, не в этом дело. Посмотри на доску отладки. Функция должна возвращать или 0 или 1, а возвращает 72. Или в документации ошибка?
    Из хаоса в космос
  • Who is online

    Users browsing this forum: No registered users and 6 guests