OSDev

для всех
Текущее время: 27 апр 2024, 13:44

Часовой пояс: UTC + 3 часа




Форум закрыт Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 23 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 03 окт 2012, 05:22 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
Я пытаюсь в очередной раз переделывать объекты, для упрощения начинаю пользоваться конструкцией от FASMа
virtual at ebp
curs dd ? ;курсор
reg_4 dd ?
draw dd ?
message dd ? ;сооьщение
datt dd ?
...
end virtual

транслятор заменяет reg_4 на ebp+4, причём понимая размер переменой, после чего переписывать весь код для замены объектов не придётся и будет видно все объекты(что в них и зачем они).
Изменить хочу много, для отрисовки добавить 32 битовую переменную для установки 1 в бите на сообщение, если после вызова обработчика бит не обнуляется, то сообщение больше не придёт(не обрабатывается). А в обработчике будет btr [ebp+8],4 jnc @f.
Так же хочу переменную для отрисовки в которой будет бит готовности картинки для синхронизации, курсор перенести в низ, а в верх поставить объект задачи, у которого будет вирт пространство и номер процессора и т.п. .
Добавлю еще размер объекта и тип.
Положение объекта нужно не 2байтовое, а 4 байтовое.
Что может ещё пригодиться? Подскажите.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 08 окт 2012, 07:35 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
При разработке объектов скопилось много исписанной бумаги, кое что записал в файл, если интересно то почитайте, в существующих ОС некое примитивное подобие моей системы прослеживается.
Вложение:
тип объекта.docx [14.14 КБ]
Скачиваний: 423

Изучать архитектуру, работу с устройствами и т.д. было проще, чем проектировать.
Буду рад вашей оценке системы и дополнениям.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 08 окт 2012, 08:20 

Зарегистрирован: 13 окт 2008, 17:38
Сообщения: 46
Откуда: Владимир
Очень интересно:

Цитата:
56 данные курсора
60 курсор
64 ……. Дальше идут дополнительные данные, адреса и функции объектов


То есть курсор, например, для объекта "Прерывание" - обязательное поле, супер необходимое, а все остальное идет по адресу 64 и дальше?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 08 окт 2012, 08:42 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
valeri писал(а):
Очень интересно:

То есть курсор, например, для объекта "Прерывание" - обязательное поле, супер необходимое, а все остальное идет по адресу 64 и дальше?

Дело в том, что курсор для многих объектов нужен, а для системы он должен быть в одном и том же месте, причём в первых 64байтах для объектов размером в 64 байта. Все объекты хочу иметь в одной форме, т.е. начальные поля. В системах с сенсорным управлением он вообще не нужен и понимаю, что во многих объектах эти поля пустовать будут, но можно эти поля использовать в таком случае в другом направлении. Кстати поля для данных имеют разные предназначения, т.е. если данные будут картинкой , то картинка и её размер, а если текст то текст и вид шрифта, цвет.
Объект точка имеет просто цвет и координаты, а буква символ, размер, шрифт, ..... (для редакторов делаю такие, их размер не должен быть больше 64, а в них ещё желательно функционал, хотя бы пару функций).

Вообще к объектам хочу относиться как к чаловечкам, которые что то знают, что то умеют, имеют свой вид, свою инфу, связи, и т.д., в том числе и собственный курсор. Вообще тема хороша для быстрой смены курсора при наведении на объект мышкой, т.к. можно просто сделать стандартный курсор для всех, но это скучно.
Системы проектируются по типу писания сценария для фильма, у каждой свой сюжет и своя тема, а хочется всего побольше. Моя объектная система меня возможностями очень радует, придела их не видно, главное реализация бы не подкачала, но с другой стороны при очень большом желании из слабой объектной системы нифига не получить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 08 окт 2012, 09:22 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
Вообще считаю, что здесь думать надо поширше, так сказать объять мозгой все прелести и нужды будущей системы, познакомиться с архитектурами, а иначе не получиться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 08 окт 2012, 13:41 
Аватара пользователя

Зарегистрирован: 16 апр 2010, 10:10
Сообщения: 320
Откуда: Псковская обл.
Если для свойств обьекта отводить много полей - их должно быть много - для гибкости - тогда возможно сделать это в сжатом формате - т.е. ввести в систему обьект *свойства обьектов* и хранить всё в сжатом виде. А обьекты разделить на два типа - обычные и описания. И еще не факт, что производительность меньше - перемещение больших обьёмов данных хуже чем лишние вычисления.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 08 окт 2012, 16:04 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
iz56 писал(а):
Если для свойств объекта отводить много полей - их должно быть много - для гибкости - тогда возможно сделать это в сжатом формате - т.е. ввести в систему объект *свойства объектов* и хранить всё в сжатом виде. А объекты разделить на два типа - обычные и описания. И еще не факт, что производительность меньше - перемещение больших объёмов данных хуже чем лишние вычисления.

Нет, объекты не большие, и сжимать их нельзя, сами объекты всего 64байт или 128байт, или 256байт, этот мизер не заметен даже в первом метре.
Вы сначала доку почитайте, там речь о проектировании а не о размере.
В объектах моих хорошо развита адресация и переносить у меня вообще ничего не надо, с массивами я почти не работаю, они в цепочках, а из цепочки удаляют простым смыканием следующего и предыдущего, да и из массива удаляют простым обнулением первого или второго поля, т.к. перебор элементов обычно по нему.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 08 окт 2012, 18:22 
Аватара пользователя

Зарегистрирован: 16 апр 2010, 10:10
Сообщения: 320
Откуда: Псковская обл.
Просмотрел. Допустим нужно реализовать такую сущность как консоль для приложений. Пытаюсь придумать обьекты - получается что для всего обьектов не придумаешь - слишком много деталей. А события - то же обьекты. Подумаю на днях еще. Пока это единственный недостаток - сложность там где она не нужна.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 09 окт 2012, 04:04 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
iz56 писал(а):
Просмотрел. Допустим нужно реализовать такую сущность как консоль для приложений. Пытаюсь придумать обьекты - получается что для всего обьектов не придумаешь - слишком много деталей. А события - то же обьекты. Подумаю на днях еще. Пока это единственный недостаток - сложность там где она не нужна.

Смысл в том, что похожие только первые 32 байта, а дальше можно хранить любые. События это не объект, объект это либо устройство, либо компонент, ... .
Я сам пытаюсь всё упрощать и моя сложность только там, где она очень необходима. Систему надо представить и прокрутить пару раз, что от куда идёт и как работает, тогда будет всё понятно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание объектов
СообщениеДобавлено: 10 окт 2012, 02:53 

Зарегистрирован: 26 мар 2012, 17:32
Сообщения: 209
Станислав писал(а):
Смысл в том, что похожие только первые 32 байта, а дальше можно хранить любые. События это не объект, объект это либо устройство, либо компонент, ... .
Я сам пытаюсь всё упрощать и моя сложность только там, где она очень необходима. Систему надо представить и прокрутить пару раз, что от куда идёт и как работает, тогда будет всё понятно.

Это всё как-то документируется? Пц же. А ведь это только начало.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Форум закрыт Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 23 ]  На страницу Пред.  1, 2, 3  След.

Часовой пояс: UTC + 3 часа


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

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


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

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