Вомбаты проводят большую часть своей жизни под землёй, по этой причине встретить вомбата днём не лёгкая задача.

День молодёжи — национальный праздник молодых людей, эта дата отмечается в Российской Федерации ежегодно, летом, в последнюю субботу июня.
История этого праздника началась 7 февраля 1958 года в Советском Союзе, когда Указом Президиума Верховного Совета СССР «Об установлении Дня советской молодёжи» был учреждён «День советской молодёжи», который отмечался в последнее воскресенье июня. (с) спёрто с вики
Желаю всем квадратокакающим сегодня не смотреть на цифирьки в паспорте или свидетельстве о рождении, не вспоминать о пенсионном удостоверении, а быть вечно молодым в душе и чувствовать себя 20ти летними безбашенными парнями и девчёнками
Суббота. Пусть вомбаты сегодня позажигают от души.
Как-то снимал квартиру в современном многоэтажном доме. Светлая, чистая, близко к работе, но там был один серьёзный инженерный просчёт: внутри стен проходил вертикальный сток для кондиционеров. Задумка понятна, но это труба выступала как сильный резонатор, в результате чего можно было с лёгкостью разобрать громкий разговор соседей снизу или сверху.
В какой-то момент в квартиру на 4-м этаже (я жил на 6-м) въехал довольно странный тип. Он мог начать орать в любой момент суток, а из-за особенностей распространения звука я не сразу понял, в какую квартиру идти общаться.

В общем, знакомство состоялось, но внушения хватило всего на один или два месяца, да и то не уверен, что в этом была моя заслуга: ощущение, что крикливый мужичок работал вахтовым методом. Крики и мат продолжались (а представьте себе степень истеричности, чтобы это было слышно через этаж).

Т.к. стандартные методы (вроде личного общения, вызова полиции и сбора подписей соседей не сработали), было принято решение использовать контрмеры типа "око за око" с учётом особенностей местности, в которой я проживал.
После проведения измерений в ближайшем ТЦ были куплены несколько метров верёвки и дешёвенькая Bluetooth-колонка такого размера, чтобы прошла в упоминаемый ранее сток для кондиционера. Я немного переживал насчёт того, пробьёт ли сигнал со смартфона два перекрытия, но всё заработало. Когда сосед принимался орать, у него в квартире начинали играть такие светлые и знакомые с детства композиции, как "Прекрасное далёко" и "Дорогою добра", имеющие целью напомнить, что нужно заранее думать о последствиях, и что в мире есть такое добро, которое лучше не тревожить.

Циклическое воспроизведение, запущенное на 1 час, работало примерно также, как завесить клетку с попугайчиком полотенцем. Конечно, выработать нужный рефлекс удалось не сразу, но с каждым разом фонтан матюков становился всё тише, а включался он всё реже и реже. Однако чистая звуковая атмосфера как днём, так и ночью, того определённо стоила.
Берегите соседей, чтобы не пришлось от них беречься: ведь кто-нибудь менее терпеливый может вставить колонку совсем не в водосток.
Субботний вомбат идёт с грядок, наработался парень. Рекомендую почитать Интервью с нейросетью: Знакомство мне зашла эта мини книжка.

Субботний вомбат отдыхает на даче за книжкой. Рекомендую к чтению вот эту книгу Интервью с нейросетью: Знакомство

Субботний вомбат идёт на дачные грядки, трудяга. Рекомендую почитать на выходных Интервью с нейросетью: Знакомство немного для подумать чтиво. Хороших выходных всем!

Сегодня суббота, то есть Шаббат-Вомбат. Белки хоть и не вомбаты, но вторые у нас водиться не желают. Приходится выкручиваться и искать вомбатозаменители.







Хотел написать про работу системы управления памятью, но понял, что для полноценной статьи у меня не хватает практических знаний. Поэтому кратко

Помимо стека, о котором было рассказано в прошлой статье и который содержит локальные переменные, в "потребительской" программе в среднестатистической ОС еще бывают глобальные переменные и динамическая память. Глобальные переменные описываются внутри сегментов .bss и .data, резервируясь в памяти сразу после загрузки образа программы (по-правильному это называется процессом).
Динамическая память иначе называется кучей, так как представляет из себя кучу динамических данных, который могут появляться и исчезать во время работы.
Для работы с динамической памятью в C существует malloc(size_t), запрашивающий (выделяющий, аллоцирующий) у ОС кусок памяти указанного размера и возвращающий указатель на первый байт, и free(void *), принимающий этот указатель и возвращающий (освобождающий) кусок назад в ОС.
В C++ есть операторы new и delete, они устроены гораздо сложнее и я не буду их рассматривать, ибо не пишу на нем. Помимо запроса памяти у ОС они занимаются ее инициализацией.
Если по какой-то причине стандартной библиотеки языка в наличии не имеется, то в Windows за память отвечает HeapAlloc и устаревшие GlobalAlloc и LocalAlloc из времен Windows 3.11 (malloc к ним и обращается внутри. Еще есть парные HeapFree, GlobalFree и LocalFree). Они предоставляют больше контроля над результатом, но проприетарны для Windows. А полный список функций для работы с памятью в WinAPI есть здесь, их сотни на любой случай жизни. Можно даже внутри контекста чужого процесса выделить или освободить кусок памяти (обычно такое используется вирусами и прочей нечистью).
А что будет, если постоянно выделять, но не освобождать? А еще лучше: выделять, но терять адреса выделенной памяти. ОС достаточно быстро подскажет правильный ответ.
В теории есть несколько возможных выходов, можно даже обработать подобный случай и, к примеру, экстренно освободить всё выделенное (только если не терять указатели) или попытаться спасти нужные данные из разваливающейся программы, но если никаких действий не предпринять, то ОС заставит процесс экстренно прекратить свою деятельность и существование.
Случай с потерей указателей на выделенную память называется утечкой памяти и ее последствия необратимы. Но как только ОС завершает выполнение процесса, то вся его память, даже утекшая, становится снова свободной.

Отслеживание правильности выделения и освобождения памяти является достаточно сложной и опасной задачей, особенно если требуется обеспечивать стабильность и безопасность (лучше даже не думать, что будет, если рукожопый программист забьет на MISRA и устроит утечку памяти в подсистеме тормозов в Тесле), и практически невыполнимой в некоторых парадигмах (особенно в функциональном программировании). Поэтому еще с древнейших времен (с 1959 года) существуют языки со сборкой мусора:
Но несмотря не это, практически все современные языки используют сборку мусора, кроме C++ и Rust. C++ по большей части перешел на умные указатели, которые тоже считают количество активных ссылок, но делают это без сборщика мусора. А Rust использует свой уникальный Borrow Checker, который понимают только растофилы.
На этом вроде у меня всё.

Всем здравствовать!
Я тут кружку получил. Вполне заслуженно, ящитаю))

Но тут дело не в самой кружке. Хотя кружка - огонь!
Хочется поблагодарить всех причастных. Во первых @vombat ты крутой, сам знаешь. @Vombatolog наша пчёлка Майя, трудится не покладая лапок)) @bagira_tora главный логист всея Вомбата))
В общем, всем спасибо, все свободны благодарю всех причастных от всего сердца!
P.S. Итак, открывашка есть, кружка есть, блокнот есть. Осталось только стикеры получить и шоппер (самая сложная задача), но, буду стараться))



Только что при добавлении поста, вылезла ошибка. Пора взрослеть.

Этот пост тоже не публикуется, постоянно ошибка. Прошло уже 5 минут, ошибка не проходит.
