Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Существуют ли реализации в исходном коде надстроек над стандартным Сишным аллокатором, работающие в указанной им области памяти? При этом, желательно, с защитой памяти :) Предположим, при запуске приложения malloc занимает требуемый приложению объем памяти. После этого данная библиотечка своими собственными функциями осуществляет выделение/освобождение памяти внутри указанного глобального для программы участка памяти. По окончанию работы системе отдается изначально занятый огромный кусок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 16:33 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Lonely Morgan, Что имеется ввиду "над сишным аллокатором"? Аллокируете кусок виртуальной памяти каким-нибудь mmap-ом и используйте на нем свою имплементацию malloc. Например jemalloc . Cишный аллокатор имплементирован в стандартной с библиотеке. Библиотеки линукса, БСД, с открытым кодом. Что имеется ввиду под "защитой памяти" в этом контексте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 17:27 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Lonely Morganmalloc занимает требуемый приложению объем памяти. только не malloc, а соответсвующий вызов конкретной ОС ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2013, 19:48 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Lonely MorganСуществуют ли реализации в исходном коде надстроек над стандартным Сишным аллокатором, работающие в указанной им области памяти? При этом, желательно, с защитой памяти :)Нет. Они никому не нужны потому что. Вот надстройки над физическим доступом к памяти - сколько угодно, берешь исходники любой ОС и вперед. Например XV6 для этого хорошо подходит. Lonely MorganПредположим, при запуске приложения malloc занимает требуемый приложению объем памяти. После этого данная библиотечка своими собственными функциями осуществляет выделение/освобождение памяти внутри указанного глобального для программы участка памяти. По окончанию работы системе отдается изначально занятый огромный кусок.Если это не праздный интерес, то бери учебник по проектированию ОС, например Таненбаум хорошо описывает создание кучи. И читай, читай, читай... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2013, 06:50 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Lonely MorganСуществуют ли реализации в исходном коде надстроек над стандартным Сишным аллокатором, работающие в указанной им области памяти? При этом, желательно, с защитой памяти :) Предположим, при запуске приложения malloc занимает требуемый приложению объем памяти. После этого данная библиотечка своими собственными функциями осуществляет выделение/освобождение памяти внутри указанного глобального для программы участка памяти. По окончанию работы системе отдается изначально занятый огромный кусок.ага, есть - и эта надстройка зовется операционной системой... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2013, 22:07 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNага, есть - и эта надстройка зовется операционной системой...Закроем пока вопрос с защитой памяти, она решается на уровне MMU-процессора и ОС. Предположим, что операционная система примитивная. Выделяет оперативную память по принципу First Fit - из набора блоков свободной памяти выделяет первый удовлетворяющий требованиям кусок, который после free() возвращается системе. Если программы (в многозадачке) позанимали куски памяти, а потом почти все освободили, то может возникнуть ситуация такая: Код: sql 1. Вроде как и есть в сумме свободное пространство, но оно раздроблено на 2 куска - одним malloc'ом не займешь. Вот мне нужно изначально под себя занять какой-то объем ОЗУ, потом уже в его недрах играться как захочется. Сейчас читаю про http://ru.wikipedia.org/wiki/Slab ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2013, 13:19 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Lonely Morganu.wikipedia.org/wiki/Slab я реализовывал подобный диспетчер памяти(была такая лаба в универе). подобный диспетчер реализован, емнип, в сан ос, правда там еще добавлена оптимизация связанная с кешированием. поэтому я разбирался с устройством данного диспетчера, по какой-то статейке описывающей диспетчер в сан ос(приду домой, гляну, может сохранился пдф-ник) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2013, 15:39 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNLonely Morganu.wikipedia.org/wiki/Slab я реализовывал подобный диспетчер памяти(была такая лаба в универе). подобный диспетчер реализован, емнип, в сан ос, правда там еще добавлена оптимизация связанная с кешированием. поэтому я разбирался с устройством данного диспетчера, по какой-то статейке описывающей диспетчер в сан ос(приду домой, гляну, может сохранился пдф-ник)The Slab Allocator: An Object-Caching Kernel Memory Allocator (1994) - есть у меня такая. Там как раз про санос. Ее имел в виду? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2013, 16:46 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Lonely MorganZyK_BotaNпропущено... я реализовывал подобный диспетчер памяти(была такая лаба в универе). подобный диспетчер реализован, емнип, в сан ос, правда там еще добавлена оптимизация связанная с кешированием. поэтому я разбирался с устройством данного диспетчера, по какой-то статейке описывающей диспетчер в сан ос(приду домой, гляну, может сохранился пдф-ник)The Slab Allocator: An Object-Caching Kernel Memory Allocator (1994) - есть у меня такая. Там как раз про санос. Ее имел в виду?вполне возможно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2013, 17:52 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNага, есть - и эта надстройка зовется операционной системой... ну скорее runtime library от компилятора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2013, 19:35 |
|
||
|
Аллокатор для Си
|
|||
|---|---|---|---|
|
#18+
Lonely Morgan, чтобы перейти отсюда Код: sql 1. сюда Код: sql 1. нужно чтобы твоя "примитивная ОС" виртуализировала память. Тем более что у тебя уже есть "уровнь MMU-процессора" и "многозадачность". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2013, 14:50 |
|
||
|
|

start [/forum/topic.php?fid=16&gotonew=1&tid=1341945]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
11ms |
get first new msg: |
7ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 294ms |
| total: | 446ms |

| 0 / 0 |
