OSDev

для всех
Текущее время: 16 июл 2018, 07:44

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




Форум закрыт Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 93 ]  На страницу Пред.  1 ... 6, 7, 8, 9, 10
Автор Сообщение
 Заголовок сообщения: Re: Память
СообщениеДобавлено: 27 сен 2012, 12:16 
Заблокирован

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



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

Попробую сначала поработать в моей системе, мне кажется она тоже имеет смысл. Весь код в общем пространстве, а все данные в своих пространствах.

phantom-84, твоя система наверное уже очень навороченная и работоспособная. Я сначала хотел сделать систему попроще, а вот сейчас сомневаюсь и замечаю что она неизбежно усложняется. Если мой вариант системы получится, то хоть как то попроще будет, хотя почему не получится, просто делай да работай.


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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Память
СообщениеДобавлено: 19 окт 2012, 07:00 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
Я доделал работу с памятью и теперь у меня при запуске задачи(приложения) выделяются страницы по требованию задачи в общем пространстве и собственном пространстве, а после закрытия все страницы освобождаются.
Общее пространство для задачи сделал 512Мб а собственное после 1Гб до 4Гб
Так же сделал общее пространство для модулей и там добавляются модули(компоненты, протоколы, драйвера, форматы, системы файловые) и регистрируются в системе.
Для объектов сделал общие функции переключения задачи при их активации, отрисовке, посылке сообщения.
Каждый раз при обращении к объекту включается его адресное пространство его задачей, но мне ещё нужно переходить в этот момент на нужный сегмент, где записаны права доступа(1-3).
Подскажите как это сделать(переключение при прыжке на код объекта в фасме), в таблице дескрипторов я создал записи для системы(доступ 0) и приложений(доступ3)? Чтобы не было прав у задачи на управляющие команды.
Вообще система поумнела и похоже теперь получилось что то интересное.
Сейчас переношу драйвера сетевухи дисков и флешек с записью данных от них в страницы находящиеся в пространстве задачи, а звуковуха должна получать реальные адреса из пространства и играть их.
Из задачи я хочу выделять память для объектов и вызывать функции инициализации конкретного типа(по номеру) объекта(заполнение полей функционалом) и добавление своих данных(размер, цвет, ...) и добавлением своим функционалом. При создании объекта формы передаётся адрес на болванку(находящуюся в общем пространстве как и все объекты) к заполнителю, там уже должны быть данные о задачи в которой она будет работать, цвете и максимальном размере, ставятся функции и создаётся буфер в собственном пространстве задачи, после чего объект готов и будет функционировать.


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

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


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

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


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

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