www.samag.ru
Журнал «БИТ. Бизнес&Информационные технологии»      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Интеграция Open Source-решений  

Open Source в облачной среде

Облачные решения становятся всё более популярными в мире. Компании стремятся использовать их для

 Читать далее...

Автоматизация  

Нейросеть вам в руки! Как использовать ИИ для автоматизации задач

Использование ИИ для автоматизации задач помогает компании получить конкурентное преимущество, поскольку объединение

 Читать далее...

Рынок труда  

Специалист по этическому ИИ, инженер по квантовым вычислениям или аналитик по метавселенной?

Новые тенденции в развитии ИТ могут привести к возникновению новых специальностей в

 Читать далее...

Книжная полка  

Учитесь убеждать и побеждать

Издательство «БХВ», как всегда, порадовало своих читателей хорошими книжными новинками. Кроме популярных

 Читать далее...

Сетевая инфраструктура  

Как удаленная работа меняет подход к сетевой инфраструктуре?

С увеличением числа сотрудников, работающих из дома, организации сталкиваются с необходимостью создания

 Читать далее...

Мониторинг  

Какой мониторинг нужен сегодня?

По мнению экспертов ГК InfoWatch, действия сотрудников – самая распространенная причина инцидентов

 Читать далее...

Книжная полка  

Руководство для тех, кто увлечен ИИ, программированием. И дизайном

Накануне лета издательство «БХВ» выпустило книжные новинки, от которых любителям чтения будет

 Читать далее...

Мобильные приложения  

Искусственный интеллект в мобильных приложениях: возможности и перспективы

Обзор современных применений ИИ в мобильных приложениях, анализ перспектив развития этой технологии,

 Читать далее...

ИТ-образование  

Как сделать ИТ-образование эффективным?

Эксперты ИТ-отрасли отвечают на вопросы «СА». Обсуждаем ключевые аспекты для улучшения образовательных

 Читать далее...

Work-life balance  

Как айтишнику найти баланс между работой и личной жизнью?

Обсуждаем инструменты для эффективного управления временем, снижения уровня стресса и достижения гармонии. На

 Читать далее...

Книжная полка  

Всё самое нужное – под одной обложкой

Отличительная черта книжных новинок, выпущенных недавно издательством «БХВ» – это их универсальность. Не просто

 Читать далее...

ИТ-инфраструктура  

Системы мониторинга ИТ-инфраструктуры-2025

Без мониторинга ИТ-инфраструктуры не обходится ни одна компания, хотя бы потому, что

 Читать далее...

Открытое ПО  

Безопасность Open Source: рискуем или контролируем?

Компания «Кросс технолоджис» изучила, как используется ПО с открытым кодом в компаниях

 Читать далее...

Работа с нейросетью  

Скажи, есть ли у тебя AI, и я скажу, кто ты

Недавно сервис по поиску работы SuperJob выяснил, что каждый второй россиянин уже

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 9611
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 9783
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 7207
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 4488
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 5286
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 5295
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 7970
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 4656
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 4900
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 8931
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 12371
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 13916
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 15689
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 10557
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 8587
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 6795
Комментарии: 4
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 5945
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 4841
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 4516
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 4738
Комментарии: 1
Рецензия на книгу «MongoDB в действии»

 Читать далее...

Друзья сайта  

 Константин Белоусов: «FreeBSD – не черный ящик»

Архив номеров / 2011 / Выпуск №4 (101) / Константин Белоусов: «FreeBSD – не черный ящик»

Рубрика: Администрирование /  Проект

Константин Белоусов:
«FreeBSD – не черный ящик»

На вопросы «Системного администратора» отвечает один из разработчиков FreeBSD Константин Белоусов

Константин Белоусов
Константин Белоусов, 37 лет, живет вКиеве, Украина. Коммитер FreeBSD с2005 года, в 2010-м избран в FreeBSD Core Team, один из самых активных разработчиков в проекте. Работает системным программистом UNIX-систем уже 12 лет. Считает, что главное вжизни «чувствовать, что жизнь приносит удовольствие».

В марте вышел релиз FreeBSD 8.2. Хотелось бы поговорить о трендах и новшествах этой замечательной ОС. Но прежде расскажите, пожалуйста, как вы пришли впрограммирование?

Совсем обычно, даже скучно на самом деле. Программировать я начал лет в 14, на СМ ЭВМ, те, которые DEC PDP-11. Работал также на RT11SJ, RSX11M. Использовал при этом Assembler, Fortran, Pascal.

Потом поступил на факультет мехмата, программирование на пять лет забросил. Через год после поступления в аспирантуру, в 1996-м, огляделся – кругом были уже одни персоналки. Очень недолго пытался возиться с DOS/Windows/NT etc – надоело.

Почему выбрали именно FreeBSD, ане, скажем, популярный Linux?

Я попробовал повозиться с UNIX. У нас в институте, в котором я учился в аспирантуре, поставили списанные в каком-то западном институте SUN, SPARCstation SLC и IPC. Грузило это все по сети с SPARCstation 20SPARC Linux. После этого интересного опыта возможность «покрутить код» под UNIX-like-системы казалась привлекательной. Но мне было неприятно чтение кода Linux: я бы так не писал.

Я бросил аспирантуру и нашел работу, где писал прикладной софт для UNIX: HP-UX, SunOS 4.x, Solaris2. Поскольку в мире UNIX документации не хватает, лучшим способом найти ответы на вопросы было чтение каких-то исходников. Чтение кода FreeBSD было решением: чем больше ковырялся в системе, тем больше она мне нравилась. Дальше уже было не остановиться…

Какие вы видите отличия в идеологии разработки FreeBSD от остальных xBSD?

С OpenBSD у меня два сильных отторгающих фактора – атмосфера общения в их списках рассылок и их технические решения. К примеру, у них нет даже поддержки SMP… О чем тут говорить?

В отличие от OpenBSD в FreeBSD любой человек, систематически приносящий пользу проекту, будет чувствовать себя комфортно. Грубость или «наезды» отторгаются публикой очень эффективно, велика вероятность получить полезный ответ на правильно поставленный технический вопрос (здесь я говорю не о support-вопросах, а о попытках писать код).

Чем вы занимаетесь в FreeBSD, какая ваша специализация?

Я поддерживаю код VFS, участвую в текущих переделках VM, какое-то время очень активно исправлял/переписывал/добавлял недостающий KPI в devfs. Кроме того, мне нравится работать с инфраструктурным кодом, я сильно переписал код обработки syscall, выделив машинно-независимую часть. Добавил возможность использования XMM-регистров в ядре для i386/amd64. Реализовал поддержку Wine для amd64 (сегменты). Я основной автор новой функциональности в rtld в последнее время. Кроме того, портировал libunwind на FreeBSD. Если суммировать по направлениям, то получится, что область моих основных интересов– файловые системы, VM, архитектуры x86 (i386, amd64), динамический загрузчик.

Сколько вы в среднем тратите времени на программирование в день?

Восемь часов на работе. Еще от тридцати минут до двух часов на FreeBSD уже после работы. В выходные и нерабочие дни примерно часов по пять.

Какие, по вашему мнению, сейчас самые слабые стороны/места вFreeBSD 8?

Во-первых, X. Сейчас X активно меняются, но это разработка крайне Linux-центрична. В какой-то момент мы должны спортировать новые X. Во-вторых, Journaling в UFS еще слишком сырой. В-третьих, usermode tools у нас уделяется гораздо меньше внимания, чем ядру. В-четвертых, в базовой системе старый gdb, а релизы gnu gdb не понимают очень многих вещей, специфичных для FreeBSD. В-пятых, драйверы для нового consumer-level-железа появляются поздно. И наконец, многие писатели приложений в последнее время считают единственной UNIX-like-платформой Linux, отсюда частые проблемы с приложениями.

У FreeBSD нет поддержки NUMA, это правда?

В HEAD появился примитивный NUMA-aware allocator, который, насколько я понимаю, пытается выделить страницу на той ноде, на которой выполняется нитка. К сожалению, от него больше вреда, чем пользы.

Что касается NUMA вообще, то правильно подобранный benchmark может показать, по-моему, двукратное превосходство NUMA-aware-планировщика и allocator. В реальных же нагрузках на обычных x86 SMP-машинах, поверьте, вся разница теряется в погрешностях измерений.

В чем сейчас FreeBSD 8 технологически и объективно очень сильна по сравнению с другими ОС?

  • Ядро в очень хорошем состоянии, глубоко отлажено и содержит массу правильных и продвинутых архитектурных решений. Как частные примеры, можно упомянуть interrupt threads, крайне малое количество спинлоков в системе (это все предмет предстоящих RT-патчей для Linux, по крайней мере я об этом читал).
  • Наша VM по-прежнему очень понятна и реализует эффективные алгоритмы.
  • IPv6-стек в FreeBSD считается одним из лучших.
  • Virtual Access Points предоставляют, насколько мне известно, уникальную возможность запускать несколько виртуальных точек доступа на одной Wi-Fi-карточке.
  • Совершенно прозрачная реализация superpages, не требующая от приложений никаких усилий для их использования, в отличие от Linux или Solaris.
  • «^T» на терминале (почти шутка, этого мне очень не хватало в других UNIX).
  • Jail «из коробки». Не нужно ставить какой-то VPS (для Linux). Зоны в Solaris уже переросли наши Jail, но после того, как VIMAGE все-таки окончательно закончат, это будет эквивалентно.
  • Для кого-то важным станет наличие DTrace, ZFS, аудита или MAC.

Ко всему этому хочу добавить: очень важным качеством FreeBSD для меня лично является понятный и во всем логичный код системы – она не «черный ящик».

Насколько эффективно использует текущая FreeBSD 8 современные многоядерные процессоры?

Масштабируемость FreeBSD на MP-системах, как и любой современной SMP-aware-системы, зависит лишь от нагрузки. На таких нагрузках, как make -j N buildworld, рост линейный сростом N до числа процессоров.

Известное проблемное место у FreeBSD – одновременные чтения и записи из разных ниток в один файл. Кроме того, у подсистемы VM появляются проблемы с contention при некоторых нагрузках и числе процессоров в районе 32.

Что можете сказать новичкам– годится ли FreeBSD для десктопа? Превалирует мнение, что FreeBSD– это более серверная ОС, которая не годится для десктопа.

На моем лэптопе и домашней рабочей workstation стоит FreeBSD (stable/8 latest). Я использую машины для почты, браузинга веб, моих репозиториев кода, компиляции и отладки (ядро– в QEMU), просмотра фильмов, музыки, IRC, чтения документации, иногда книжек. Чем FreeBSD непригодна для всего вышеперечисленного?

Что можно пожелать людям, мечтающим стать системными программистами или продвинутыми администраторами в FreeBSD? Какие есть вспомогательные источники информации для этого старта?

Сначала нужно уверенно освоить базовое администрирование UNIX, научиться программировать на C, освоить API Unix и работу с CVS/SVN. Потом надо разобраться с архитектурой ядра FreeBSD и научиться непосредственно читать сам код.

Что касается вспомогательной информации – много полезного для новичка есть в системных man. Кроме того, еще в начале своего пути я прочитал книжку Кернигана и Пайка «UNIX Programming Environment». Именно после нее мне начала нравиться система, у меня возникло желание разобраться в ней лучше. Нужно также помнить, что у проекта для этого случая есть свой FreeBSD Developers' Handbook.

Какие технологии из мира Оpen Source вы считаете по-настоящему перспективными? Какие проекты вас впечатляют?

Мне трудно что-либо сказать о новых технологиях, я человек сравнительно консервативный и ничем новым в последние десять лет пользоваться не начал, разве что nginx, и совсем недавно стал использовать Cassandra. Cassandra, действительно, произвела на меня большое впечатление.

Работа в FreeBSD на таком высоком посту – это бесплатный труд, или все же есть гранты, какая-то система материального стимулирования вашей работы в Core Team?

Я не получаю никаких материальных поступлений от проекта. Скорее, сам трачу свои средства на Интернет, нормальное «железо» для себя, свое время. С другой стороны, статус в проекте производит впечатление на работодателя. Конечно, мне бы хотелось заниматься только FreeBSD, иметь за это денег не меньше, чем я сейчас зарабатываю, но это нереально.

Как вы относитесь к современным языкам программирования типа Java или C#? Каковы ваши предпочтения как программиста вне проекта FreeBSD?

Нормально отношусь. Я всегда предпочитаю кодировать usermode-код на языках достаточно высокого уровня, по крайней мере предоставляющих встроенные средства работы сразвитыми структурами данных, type safety и GC. Если бы была возможность, то на работе я бы использовал Common Lisp. Пару раз так и делал. Если нет, то Perl, Python (раньше любил Python, в последнее время больше Perl), Java.

Беседовал Игорь Савчук


Комментарии отсутствуют

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

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru