Скопируйте строку в текстовый файл и добавьте измененную строку в конец строки в том же файле

Вы можете попробовать это. Замените $ 9 правильным номером поля кода состояния.

awk '{if ($9 == 200)  no_of_200+=1 } END{ perc=(no_of_200/NR)*100; print perc}' access.log
1
02.09.2018, 23:19
1 ответ

Существует несколько ограничений, которые применяются к сегменту mmapи сегменту кучи. RLIMIT_ASопределяет доступное адресное пространство в целом; это охватывает все выделения памяти, которые может сделать программа. RLIMIT_DATAопределяет максимальный размер сегмента данных.

Ядро проверяет расширение стека, mmapиbrk(распределение кучи )на соответствие этим ограничениям. Он также проверяет выделения на потенциально конфликтующие сегменты, поэтому сегменты никогда не перезаписывают друг друга (см., например, проверки, выполняемые для выделения кучи с помощьюbrk). Если выделение невозможно, программа «информируется» соответствующим образом :библиотека C возвращает ошибку ENOMEMдля brk, ядро ​​завершает программу с SIGSEGV, если стек не может быть расширен...

То, как сегмент разделяемой памяти (, строго говоря, с точки зрения ядра, область виртуальной памяти )растет, зависит от схемы памяти, которая может очень сильно зависеть от одного процесса к другому. На большинстве архитектур «устаревшие» карты памяти приводят к выделению снизу -вверх, начиная с TASK_UNMAPPED_BASE; не -устаревшие карты памяти приводят к выделению сверху -вниз. Для примера см.arch_pick_mmap_layout()иmmap_is_legacy()для архитектуры x86. Вы можете переключиться на старую карту памяти, используя setarchфлаг -L(для примера ниже ).

На практике вы можете увидеть, как растет сегмент, взглянув на /proc/$$/mapsи проверив адреса загруженных разделяемых библиотек (, если таковые имеются ), и порядок их загрузки. Динамический компоновщик всегда загружается первым; если у нее меньший адрес, чем у других библиотек, то распределение происходит снизу -вверх, в противном случае — сверху -вниз. Сравните вывод cat /proc/self/mapsи setarch x86_64 -L cat /proc/self/mapsв 64-битной -системе x86.

5
27.01.2020, 23:18

Теги

Похожие вопросы