Вопросы по теме 'sbrk'

Память (sbrk) 16-байтовый выровненный сдвиг при доступе к указателю
Я написал достаточно простой распределитель памяти, используя sbrk. Я прошу кусок памяти, скажем, 65 КБ, и разделяю его по мере необходимости для переменных, запрашивающих динамическую память. Я освобождаю память, добавляя ее обратно в блок 65k....
1036 просмотров

Как освободить память, полученную с помощью sbrk ()?
У меня есть настраиваемая функция распределителя, которая использует sbrk () для получения памяти. Как мне освободить эту память, когда она больше не нужна? Есть ли функция, эквивалентная free () для malloc ()? или мне нужно использовать brk...
10697 просмотров
schedule 29.02.2024

Распределитель памяти в C как использовать пространство sbrk () 'ed
Я писал реализацию malloc и мне было интересно, может ли кто-нибудь помочь мне с этой проблемой. По сути, я хотел бы повторно использовать память после выделения ее с помощью sbrk () и убедившись, что память свободна. Итак, по сути, представьте,...
4182 просмотров
schedule 10.10.2023

Как и где используется sbrk в malloc.c?
Я читал в Advanced Unix Programming (а также в нескольких других книгах), что Linux malloc() использует системный вызов Linux sbrk() для запроса памяти из операционной системы. Я смотрю на код glibc malloc.c и вижу много упоминаний sbrk() в...
1850 просмотров
schedule 05.09.2022

Linux - почему указатель прерывания программы (brk/sbrk) меняется при каждом запуске программы?
Я понимаю, что перерыв программы  – это максимальный адрес виртуальной памяти, выделенный операционной системой Linux для процесса. , и поэтому отмечает наивысший адрес кучи. Вы можете получить адрес прерывания программы, вызвав sbrk( 0 ) ....
2503 просмотров
schedule 08.02.2023

Код C для реализации моей собственной функции malloc
У меня проблема с моим кодом C. Мне нужно сделать функцию malloc. Прежде всего, это мой код: #include <stdio.h> #include <unistd.h> #include "my-malloc.h" #define MOST_RESTRICTING_TYPE double // Pour s’aligner sur des frontieres...
1817 просмотров
schedule 06.11.2022

Использует ли malloc () brk () или mmap ()?
c код: // program break mechanism // TLPI exercise 7-1 #include <stdio.h> #include <stdlib.h> void program_break_test() { printf("%10p\n", sbrk(0)); char *bl = malloc(1024 * 1024); printf("%x\n", sbrk(0));...
15154 просмотров
schedule 04.12.2022

Заглушки Newlib в статической библиотеке
Я использую Eclipse для разработки приложений без операционной системы. Я ссылаюсь на newlib, поэтому я предоставил свою собственную реализацию _sbrk (). Эта функция обычно включалась в мой проект, и все работало отлично. Теперь я пытаюсь...
831 просмотров
schedule 22.07.2023

Как найти текущее местоположение прерывания программы
Я попытался добавить это в функцию системного вызова brk: void *addr = sbrk(0); printk("current-add-is-%p-\n", addr); Но во время компиляции ядра возвращалась ошибка, связанная с неявным объявлением функции sbrk. И я не смог найти где...
542 просмотров
schedule 17.06.2022

Нужен совет по реализации malloc и бесплатно в C
Для школы мне нужно написать программу, которая использует мою собственную реализацию malloc и free. Мне нужно иметь возможность сообщать обо всех фрагментах памяти в моей «куче», независимо от того, выделена она или нет. Я чувствую, что написал...
386 просмотров
schedule 05.03.2022

Почему malloc и sbrk возвращают адрес из отдельных сегментов?
Я пытаюсь понять, как происходит динамическое выделение памяти. Поэтому я подумал о реализации собственного malloc, используя sbrk() системный вызов. Мой вопрос здесь в том, что когда я пытаюсь выделить динамическую память, sbrk () и malloc () не...
568 просмотров
schedule 25.02.2023

printf использует sbrk, конфликтующий с настраиваемым распределителем памяти
Привет, я написал распределитель памяти и отлично работает. Я использую sbrk / brk для выделения и освобождения страниц. Но все ломается в тот момент, когда я начинаю печатать информацию с помощью printfs. Поиск в Google показывает, что - printf...
205 просмотров
schedule 11.02.2023

Приостановка программы не меняется после вызова malloc в цикле?
Предполагается, что запуск этого фрагмента кода приведет к увеличению перерыва в программе примерно на malloc_counts * _SC_PAGESIZE , вместо этого я каждый раз получаю фиксированный перерыв в программе, так почему это так. Предполагается, что malloc...
92 просмотров
schedule 16.04.2023