Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Собственный диспетчер памяти для С/С++ |
Автор: sprata 14.9.2008, 18:09 |
Кто-нибудь имел дело с написанием диспетчера памяти ? Поделитесь пожалуйста исходниками, для ознакомления принципов работы. Нашел в инете неплохую https://www.ibm.com/developerworks/ru/edu/au-memorymanager/section7.html. Но после прочтения осталось больше вопросов, чем ответов. Диспетчер памяти понадобился не просто так, а по причине того, что ф-ии getimage() и putimage(), описанные в graphics.h, могут работать с экранной областью, размер которой <= 64K. И разрешение такой экранной области в режиме VGAHI приблизительно 350*350 пикселей, что довольно мало, для среднестатистического окна ![]() Заранее спасибо ! |
Автор: Lazin 14.9.2008, 18:37 |
а зачем вам это, и при чем тут GUI? |
Автор: nerezus 14.9.2008, 18:38 |
sprata, ты хочешь сделать GUI под DOS? |
Автор: sprata 14.9.2008, 18:52 |
Графический интерфейс под ДОС это часть моего курсового по ООП. При этом нужно использовать старенький компилятор Borland C++ 3.11 ![]() |
Автор: sprata 14.9.2008, 19:53 |
Этот человек мастер своего дела с хорошим опытом, и сомневаться в его высказываниях мне никогда не приходилось. Lazin, это конечно оффтоп, но я все таки скажу: цель этого курсового написать весь графический интерфейс ручками ![]() ЗЫ: а вообще по теме кто-нибудь мне ответит ? ![]() ЗЫЫ: дискуссию по поводу программирования под ДОС, в этой теме прошу не начинать. |
Автор: Rpahut 14.9.2008, 20:08 | ||
Так вы никогда помощи не получите ![]() ![]() Если по теме - я б кусками по 64к картинку хранил =) |
Автор: nerezus 14.9.2008, 20:08 | ||||||||
А писать нужно, только если нет вменяемых аналогов, вас искусственно поставили в подобное положение. С точки зрения идеи - это умно, но с точки зрения реализации полный пипец... Ну глупо использовать мертвую ОС, неполноценный компилятор и скудные API. Куда красивее было бы задание сделать подобное... ну например в OpenGL Кстати сам такое делал я на J2ME. Не было вариантов.
1) Использовать менеджер памяти DOS/4GW, справку ищи тут: http://www.tenberry.com/dos4g/faq/index.html 2) Усомниться в преподавателе, который учит пользоваться мертвыми технологиями. |
Автор: woof 14.9.2008, 20:23 | ||
мне препод говорит, типа это для начала научитесь писать под дос с ассемблером такая же байда |
Автор: nerezus 14.9.2008, 20:28 | ||
|
Автор: Alek86 14.9.2008, 20:54 |
в такой учебе смысл есть к примеру, чтобы осознать как работает система отображения оконного интерфейса правда учеба будет уж очень медленно продвигаться - лучше вемсто этого рихтера проштудировать и написать прогу с серьезным гуевым интерфейсом имхо, конечно ![]() а по теме автору уже ответили |
Автор: sprata 14.9.2008, 21:08 | ||
Прошу меня извинить, если кого-нибудь обидел. В своем высказывании я имел ввиду исключительно тех людей, которые, не имея систематических знаний в области программирования, но имея на компе визуальную среду разработки, уже считают себя классными кодерами.
Ну вообще то существует программа обучения по каждой специальности, которую разрабатывает не один преподаватель. Сейчас во многих технических ВУЗах Украины начинают изучение программирования со среды под ДОС. У нас это был Си. У кого-то Паскаль. nerezus, большое спасибо за ссылку ![]() |
Автор: nerezus 14.9.2008, 21:15 | ||||
Добавлено через 8 минут и 3 секунды
А на уроках ООП изучали Qt(а наша группа MFC). Уж куда полезнее, поверь. По крайней мере применяемо на практике. |
Автор: sprata 14.9.2008, 21:30 |
Да, я тож сразу об этом думал. Но реализовав, увидел что фрагменты появляются слишком медленно друг за другом. Поэтому и решил спросить по поводу диспетчера памяти. |
Автор: Rpahut 14.9.2008, 22:08 |
А вы думаете если они вместе будут сохранены, сильно быстрее будет рисоваться? Попробуйте как в винде - при перетаскивании отображать только рамку окна, расчитать какие части других окон были скрыты а теперь видны, потребовать у окон перерисовать эти части. Потом уже отрисовать перетащеное окно полностью на новом месте. |
Автор: sprata 14.9.2008, 22:11 | ||
Rpahut, а это действительно хорошая мысль ![]() ЗЫ: когда наберу 100 постов, то обязательно прибавлю Вам заслуженый +1 |
Автор: Rpahut 14.9.2008, 23:26 |
Я сам еще когда их наберу )) |
Автор: Alek86 14.9.2008, 23:45 | ||
оффтоп
sprata, можно просто попросить других поставить ![]() |
Автор: sprata 15.9.2008, 05:41 |
Alek86, спасибо ![]() |
Автор: Lazin 15.9.2008, 07:54 | ||
железная логика, из чего следует, что это происходит из за того, что память медленно выделяется - освобождается? |
Автор: nerezus 15.9.2008, 08:31 |
Lazin, +1 На самом деле ему нужно просто написать нормальную ф-ию для работы со спрайтами. И окошко рисовать из рамки(4 кусочков(2 уголка и гориз. и вертик. линии)), заголовка(3 кусочка: 2 унрлка и вертик. линия) и т.д. |
Автор: J0ker 17.9.2008, 06:34 | ||
и я даже подозреваю с чем это связано хыхыхы вот только этими функциями вы и с персональным диспетчером скорее всего воспользоваться не сможете |