LG.BALUKATION's Weblog

Ничего, это тоже кое-что… А при желании из него можно сделать что угодно

Posted by LG.BALUKATION на 2011/02/16

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

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

Кажется, первый раз я почувствовал что-то неладное с макосью, когда чутка освоившись с системой, решил попробовать что в ней да как с программированием. Дело было однажды на выходных, я запустил среду разработки, что-то там поделал, потом на следующий день ещё поделал, а на третий день я просто охренел — время компиляции стало заметным! Ну простож там было не так уж и много кода, так что вполне логично былоб предположить его мгновенную сборку и запуск, а тут пришлось сидеть и ждать несколько секунд :-? Я с горечью перезагрузил ноутбук и всё снова стало быстро.

Кстати, до мака я докатился несколько не стандартным путём — до его покупки я несколько лет активно пользовал Gentoo Linux, потом стал пользовать менее активно, но всёж у меня и на нетбуке установлен linux и я уже давно как-то привык, что машинка с никсами «просто работает». Перезагрузка/выключения для меня не являются чем-то страшным, если они обоснованы, а вот всякое выключать на ночь и т. п. я считаю просто бредом.

Собственно, макось как-то очень странно использует оперативу. У меня например в ноутбуке её два гигабайта (да, ноуту давно не первый год, так что это нормально) и «засрать» такой объём в том же линуксе мне кажется чем-то странным — тут же система умудряется ещё и swap пользовать.

Возможно, это связано с несколько «причудливой» системой управления памятью в Obj-C, а ведь именно он основной язык прикладного программирования под макось. И если в новых версиях есть возможность пользовать сборщик мусора, которую пока не очень-то используют в самой ОСи и стандартных прогах, то старые версии языка полагаются на добрый механизм ручного управления +) Но дабы «ручной вариант» был не слишком утомителен, он приправлен механизмом подсчёта ссылок (т. е. всё-таки возможны утечки памяти, если программист не совсем правильно пользуется или вообще забывает про этот счётчик) и пулов. Пулы — это вообше шикарная штука, можно например не сильно утруждать себя счётчиком, а сваливать всё в большой и толстый пул, который просто убивать при завершении приложения или ещё в каком удобном случае.

Например, сейчас аптайм ноутбука две с половиной недели — я в отпуске, ноутбук лежит дома на столе и выключать/перезагружать его мне незачем, обновлений всяких тоже не выходило. Файл подкачки разросся аж до 1,4 гигабайта, из которых занято 1,3 (до того неделю держалось на 1,2 из 1,2). В самой же оперативе свободно чуть больше четверти, но из занятой части треть считается «не активной». При этом, если повырубать запущенные программы, свободной станет больше, но за счёт «активной» — «не активная» будет по прежнему занимать 2/3 гигабайта.

Сдаётся мне, леопарду надо дохрена оперативы (на мои попытки узнать суть такого поведения было ещё позапрошлым летом посоветовано просто купить ещё пару гигов в ноут), а подкачка вообще не пользовательско-админское дело (хотя кое-какой инструмент её настройки есть, если очень сильно поискать).

А мне наверное следует мигрировать на барсика (да, я очень ленив — система давно есть, сам смотрел аж с беток, а мигрировать не мигрировал до сих пор) и/или вообще ложить болт.

Реклама

комментариев 5 to “”

  1. ram32 said

    Мда… Помню, был радостно удивлен в свое время, когда собрал Gentoo с гномом, и все это дело жрало 50 метров памяти… И был доволен, все работало. Что сейчас изменилось?

    total used free shared buffers cached
    Mem: 2056440 1511524 544916 0 89136 711456

  2. Нда, у генты я из двух гигов до сих пор выделял полтора под временные файлы и почти всё можно было собирать прямо в оперативе… Гном кстати давно забросил ибо он монстр какой-то, вон даж свой аналог реестра не первый год пользуют.

    А тут блин жёсткое наебалово — swap как видишь никто толком не читает, т. е. он вроде и не нужен, все проги в оперативе живут да свободной остаётся сколько-то, но только после того, как загадится swap — иначе небольшие подтормаживания в связи с записью в него. Доков про этот нюанс как-то особо и нет, а разбираться в исходниках дарвина мне как-то лениво (тож не прикладной код ценить, а поближе к ядру).

    И всёж нюанс, что у меня старая ОСь. Уже полтора года как валяется диск с новой, но я её ставил только на посмотреть, всё никак не могу собраццо весь софт перенести, понастраивать и т. п. +)

  3. kCit said

    Поставь барсика наконец-то или мигрируй на генту полностью!!! И да, ObjC тут немного не при чем, имхо это фичи memory manager, у него есть еще много «милых» фишек… И еще момент про компиляцию… Подробности в студию, у себя я такого не наблюдаю (:

  4. MyFreeWeb said

    На Snow Leo давно пора. В нем все системные приложения переписаны с C/Carbon на Obj-C/Cocoa (с поддержкой 64-битных процессоров), удалена поддержка PowerPC → освобождается 7 Гб, ну и куча улучшений и вообще.

  5. KCit, с компиляцией была проблема, что машинка не вырубаясь проработала несколько дней, последние дня три не закрывался икскод и всё стало вдруг тормозить (ну по крайней мере я этого не ожидал, первыеж дни нормально работала). Но это было давно, с тех пор SDK обновлялся несколько раз, да и я перестал пользовать икскод т. к. пошли другие интересы.

    MyFreeWeb, SnowLeo я уже видел с бет по релиз. Мне кажутся важными многие из его изменений, но просто всё никак не соберусь переставить операционку, а обновлять не хочу (-:

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s