Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Сб ноя 18, 2017 12:02 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 1093 сообщения ]  На страницу Пред. 1 2 3 4 573 След.
Автор Сообщение
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Вс янв 06, 2008 10:35 am 
Не в сети
Kernel Optimizer
Аватара пользователя

Зарегистрирован: Пн янв 16, 2006 7:58 pm
Сообщения: 657
У меня возникла проблема. Я доделал новый "blue screen", однако если при уже загруженой Ос при нажатии ctr+alt+F12 выбрать ядро или перезагрузка, то возможно не корректное поведение "blue screen", от несохранения параметров, до отказа мышки при следующей загрузки ОС это касательно эмуляторов. На реальной машине нажате ядро приводит к перезагрузки системы. Помогите мне, в каком месте мне стоит дальше копать? Почему может такое случаться?


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Вс янв 06, 2008 12:51 pm 
Не в сети
Kernel Optimizer
Аватара пользователя

Зарегистрирован: Пн янв 16, 2006 7:58 pm
Сообщения: 657
Объясните мне наличее этой структуры в файле data16.inc
Код:
kernel_restart_bootblock:
    db    1    ; version
    dw    1    ; floppy image is in memory
    dd    0    ; cannot save parameters

при загрузке загрузчик передает следующие параметры
Код:
executa_kernel:
; \begin{diamond}[02.12.2005]
   mov   ax, 'KL'
   push   0
   pop   ds
   mov   si, loader_block+boot_program
; \end{diamond}[02.12.2005]
  push word 01000h
  push word 00h
  retf

итого в ds=0 si указывает на структуру
Код:
loader_block:
   db   1
   dw   0
   dw   write1st+boot_program
   dw   0

где write1st указатель на функцию по сохраннению первых 0x200 байт ядра
Т.е. при загрузке просиходит размещение в блоке loader_block dd адреса нахождения блока
loader_block(в случае загрузки с дискеты), однако при перезагрузке мы видем что
передаются параметры на структуру kernel_restart_bootblock
Код:
        push    0x1000
        pop    ds
        mov    si, kernel_restart_bootblock
        mov    ax, 'KL'
        jmp     0x1000:0000

в которой (структура показана выше)третий парметр определен как dd 0, т.е. он не указывает на код, который может сохранять параметры.
Это приводит к тому, что при выборе ядро мы не можем сохранить параметы.
Объясните мне логику работы данного участка, для каких целей понадобился блок kernel_restart_bootblock?


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт янв 11, 2008 1:41 pm 
Не в сети

Зарегистрирован: Пн янв 07, 2008 11:39 am
Сообщения: 22
А есть ли хорошое пособие по программированию на С/С++ под КолибриОС?


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт янв 11, 2008 6:35 pm 
Не в сети

Зарегистрирован: Пн май 01, 2006 10:12 pm
Сообщения: 349
Алгоритмы сути своей не меняют, с++ останется с++-ом, но программирование под каждую конкретную платформу предполагает какие-то специфичные для неё моменты. Отвечая на вопрос - да, отличается.

_________________
Изображение


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт янв 11, 2008 7:19 pm 
Не в сети

Зарегистрирован: Пн май 01, 2006 10:12 pm
Сообщения: 349
Вы что-то путаете. Некоторая "кросплатформенность" есть, но зачем она вам, если вы уже писали о неприемлимости использования линукса (наверно и виндовса)?

_________________
Изображение


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт янв 11, 2008 8:09 pm 
Не в сети

Зарегистрирован: Ср фев 21, 2007 3:03 pm
Сообщения: 188
Что ж это за требования, куда Колибри подходит а linux нет?
Видимо вы не все дистрибутивы линукса видели. Да и собрать свой для нужных целей - не проблема(если есть определенные знания в этой области).
Я ни в коем случае не хочу отговаривать вас от колибри(сообщество, не ругаться :) ), но может стоит копнуть в сторону линукса? Покрайней мере вы не будете привязаны к определенной архитектуре, да и программных решений найдете много, и людей подобрать сможете(свободных линуксоидов больше чем колибривцев).


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт янв 11, 2008 8:13 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
path_of_milea
Цитата:
Windows и Linux не встанет на холодильниках из-за высоких требований к ним
К холодильникам ? :)
Как насчёт Minix ?


Последний раз редактировалось Serge Пт янв 11, 2008 8:20 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт янв 11, 2008 8:20 pm 
Не в сети

Зарегистрирован: Чт сен 20, 2007 8:09 pm
Сообщения: 96
Хм.. Если конфигурация одна, то и настроить придется один раз... А потом просто шить флэш как БИОСом?... ИМХО, зависит от конкретной реализации. Если вам нужна графическая подсистема - Колибри лучше всего подойдет, иначе - что-то другое.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Пт янв 11, 2008 10:16 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
path_of_milea
Цитата:
Там поддержка железа совсем плохая
У нас не шибко лучше. Там всё на С, исходники открыты, память ест меньше, правда своя лицензия.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Сб янв 12, 2008 12:38 am 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
path_of_milea
В ядре куча дыр. Нормального планировщика нет, обработка прерываний мягко говоря странная. Драйвер клавиатуры кривоват, оконная система примитивная, файловая система без дескрипторов файлов и т.д. С одной стороны всё вроде есть и работает, а когда внимательно присмотришься увидишь что "тут надо напильником подправить, а там кувалдой подрихтовать".


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Сб янв 12, 2008 8:21 am 
Не в сети
Kernel Optimizer
Аватара пользователя

Зарегистрирован: Пн янв 16, 2006 7:58 pm
Сообщения: 657
Согласен с Serge. При детальном рассморении кода ядра приходишь к выводу, что для приведения его к "нормальному" виду нужно переписать более половины системы. Но поскольку времени и порой соответствующих знаний нет, модификация кода носит локальный характер, исправлением подвергаются только отдельные функциональные блоки, а принципы и идеи остаются еще со времен создателя менует.

Существует работа по исправлению логических ошибок, однако она проводитсья силами энтузиастов. Обычно это все затягивается или остается недоделанным. Тем не менее ядро развивается, изменятся...

На поставленный вопрос - будет ли сбоить коос, если ее поставить на холодильники точного ответа не даст ни кто. Вы можете проверить это путем проведения всесторонних тестов и сами дать ответ на этот вопрос.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Сб янв 12, 2008 10:19 am 
Не в сети
Kernel Optimizer
Аватара пользователя

Зарегистрирован: Пн янв 16, 2006 7:58 pm
Сообщения: 657
Во первых вы не услышите от людей, которые реально пишут ядро что ОС это супер пупер или круто. Да в коде есть некоторые логические ошибки и неточности на взляд системных программеров. Однако это не мешает стабильно работать ОС и выполнять поставленные задачи. Я считаю, что при должном уровне софта Колибри ОС может успешно справляться с поставленными вами задачами. Однако код ОС будет дорабатываться и если вы примите участие в доработке кода, оч многие люди будут вам признательны.


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Сб янв 12, 2008 10:53 am 
Не в сети
Kernel Optimizer
Аватара пользователя

Зарегистрирован: Пн янв 16, 2006 7:58 pm
Сообщения: 657
Поскольку проект не коммерческий и сообщество не приследует финансовую выгоду. Тут нет рекламы и тупово восхваления продука. Если есть некоторые недостатки об этом говориться прямо. Я считаю это очень хорошей позицией т.к. именно вам или конечному пользователю предстоит принять решение о использовании данной ОС. Заинтересованность сообщества это развитее данной ОС.

---------
Все мнения субъективны если нет фактов


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Сб янв 12, 2008 2:03 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт мар 01, 2007 4:16 pm
Сообщения: 426
> В ядре куча дыр. Нормального планировщика нет, обработка прерываний мягко говоря странная. Драйвер клавиатуры кривоват, оконная система примитивная, файловая система без дескрипторов файлов и т.д.
Кучи дыр я не обнаружил, хотя предполагаю что ошибки есть, как и в любой системе, но в связи с небольшим объемом кода системы найти и исправить их не сложно. "Нормальный" планировщик, драйвер клавиатуры и т.д. для холодильников не нужны. Скорее всего потребуются свои драйвера. А 90% кода это приложения или даже одно приложение, специфичные для данной задачи. От оконной системы, например, понадобится, скорее всего, создать одно окно на весь экран, без рамок и заголовка. ФС, возможно, не будеть использованна вообще, образ будет загружаться BIOS'ом или еще чем, а после старта ФС вроде как и не нужна (хотя не факт).

..bw


Вернуться к началу
 Заголовок сообщения: Re: Помогите новичку
СообщениеДобавлено: Сб янв 12, 2008 5:09 pm 
Не в сети

Зарегистрирован: Ср фев 21, 2007 3:03 pm
Сообщения: 188
Тогда возникает вопрос: "что от колибри останется?"
Планировщик не нужен, драйвера свои, свой софт, переписаный код ядра, фс не нужна, всего одно окно (да и то без свойств окна). Можно тогда и оконую систему вырезать, нифиг она нужна, просто приложению позволить рисовать на всей области экрана. ;)

Зы. интересует, графическая система холодильнику нужна? Если да, то зачем?


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 1093 сообщения ]  На страницу Пред. 1 2 3 4 573 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB