Описание тега sbrk
**sbrk** - это базовый системный вызов управления памятью, используемый в Unix и Unix-подобных операционных системах для управления объемом памяти, выделенной для сегмента данных [требуется пояснение] процесса.
2
ответа
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 multiples…
26 май '15 в 12:51
2
ответа
Что на самом деле означает "malloc_trim(0)"?
Страница руководства рассказала мне так много, и благодаря ей я знаю множество базовых знаний по управлению памятью в "glibc". Но я все еще запутался. Означает ли " malloc_trim (0) " (обратите внимание, ноль в качестве параметра) значение (1.) вся п…
20 мар '13 в 16:46
1
ответ
Программа зависает только при первом запуске?
Я пытаюсь отладить низкоуровневую программу на C в GDB. Рассматриваемая программа предназначена для использования в качестве оболочки, запускающей другой процесс и контролирующей / мешающей использованию его памяти. Когда я загружаю программу в GDB,…
30 сен '16 в 17:31
2
ответа
Как освободить память, полученную с помощью sbrk()?
У меня есть пользовательская функция распределителя, которая использует sbrk() для получения памяти. Как мне освободить эту память, когда она больше не нужна? Есть ли функция, эквивалентная free() для malloc()? или я должен использовать brk (), чтоб…
12 янв '10 в 20:09
1
ответ
Почему возвращаемое значение первого sbrk отличается от последующих вызовов?
Я пытаюсь понять, как работает память в C, поэтому экспериментирую с sbrk функционировать сейчас. я знаю это sbrk(0) должен вернуть текущий разрыв программы, то есть конец сегмента данных. Я попытался позвонить sbrk(0) несколько раз, и по какой-то п…
27 янв '19 в 22:42
1
ответ
Нужен совет по реализации malloc и free в C
Для школы мне нужно написать программу, использующую мою собственную реализацию malloc и бесплатную. Мне нужно иметь возможность сообщать обо всех фрагментах памяти в моей "куче", независимо от того, выделена она или нет. Я чувствую, что написал хор…
11 окт '18 в 23:35
5
ответов
Как работает sbrk() в C++?
Где я могу прочитать о sbrk() в некоторых деталях? Как это работает? В каких ситуациях я хотел бы использовать sbrk() вместо громоздких malloc() а также new()? Кстати, что расширение для sbrk()?
16 янв '10 в 07:16
2
ответа
В чем разница между передачей sbrk() intptr_t против int в C
Кажется, что это не влияет на функциональность sbrk, но в документации sbrk() говорится, что для этого требуется параметр intptr_t. Это работает (или, по крайней мере, кажется, работает) при передаче типа int в качестве параметра. Это в обычном C.
20 мар '11 в 23:13
1
ответ
mmap vs sbrk, сравнение производительности
Какой из этих звонков в среднем быстрее? Я слышал, что mmap быстрее для небольших распределений, но я не слышал ни того, ни другого. Любая информация о производительности для них была бы хороша.
01 апр '11 в 18:53
2
ответа
Как найти текущее место разрыва программы
Я попытался добавить это внутри функции системного вызова brk: void *addr = sbrk(0); printk("current-add-is-%p-\n", addr); Но он вернул ошибку во время компиляции ядра, что неявное объявление функции sbrk. И я не смог найти где определяется sbrk!! В…
07 мар '16 в 16:38
0
ответов
Что значит (char*)-1?
Мне интересно, что делает: (char*)-1 значит и что он оценивает?Это возвращаемое значение из sbrk() в случае ошибки.
26 ноя '17 в 08:57
1
ответ
Похоже, что Malloc требует слишком много памяти
У меня есть приложение STM32F0, использующее компилятор yagarto GCC. Я реализовал _sbrk newlib_stubs.c. Проблема, с которой я сталкиваюсь, заключается в том, что я вызываю malloc(256) в свою очередь malloc при вызове _sbrk и запросе 4K памяти. В мое…
03 дек '12 в 22:39
0
ответов
Ошибка компоновщика на коде руки неона
Я работаю над неоновым кодом ARM с использованием встроенных функций. Когда я компилирую файл, я продолжаю получать следующие ошибки: c: / программные файлы (x86)/codesourcery/sourcery g++ lite/bin/../lib/gcc/arm-none-ea bi/4.3.3/../../../../arm-non…
12 июн '12 в 06:09
1
ответ
Каковы требования aligment для sys_brk
Я использую sys_brk syscall для динамического выделения памяти в куче. Я заметил, что при получении текущего местоположения разрыва я обычно получаю значение, подобное этому: mov rax, 0x0C mov rdi, 0x00 syscall результаты в rax 0x401000 Значение обы…
19 фев '18 в 17:21
4
ответа
Как sbrk/brk реализован в Linux?
Я думал о том, как ядро Linux реализует системные вызовы, и мне было интересно, может ли кто-нибудь дать мне общее представление о том, как работает sbrk / brk? Я просмотрел код ядра, но его так много, и я его не понимаю. Я надеялся на резюме от к…
15 июн '09 в 17:50
0
ответов
Arduino Due в студии Atmel 6.1. без визумикро
Я предпочитаю учебник из http://www.engblaze.com/tutorial-using-atmel-studio-6-with-arduino-projects/ Visualmikro, потому что мне нравится иметь возможность переходить в функции arduino и изменять их без необходимости установить любой вид плагина. Я…
17 окт '13 в 14:38
2
ответа
Несколько вызовов malloc для внутреннего вызова mmap только один раз
Когда я пытаюсь выполнить приведенный ниже код, я не могу четко проанализировать внутренние вызовы malloc api. Что мне непонятно, так это системный вызов, mmap вызывается только один раз для 2 или более вызовов malloc. Если я также назначаю более 40…
15 июн '16 в 08:37
1
ответ
Расщепление sbrk на 2
Чтобы перекодировать функцию malloc, я делаю sbrk(stack) где: void *malloc(size_t size) { stack = 0; while (stack < size) stack += 4096; } Я всегда использую malloc больше, чем мне нужно, поэтому я хочу взять часть этой выделенной области размера…
01 фев '17 в 13:16
1
ответ
Что обозначают brk и sbrk?
Пока я знаю, что называют системной Unix brk и функция sbrk делаю, я понятия не имею, что они стоят. Кто-нибудь может просветить меня?
28 июл '11 в 22:43
1
ответ
Мнения и предложения, касающиеся моего подхода к первичной подгонке функции malloc
Я пишу функцию malloc для назначения в колледже. Вот основная схема моей идеи: 1) Определить структуру узла с указателями на предыдущий узел, следующий узел, а также символ для размера и вакансии. Каждый регион в куче будет содержать скрытый узел с …
06 июл '12 в 04:22