Вечер пятницы часто оказывается вечером воспоминаний, и не только о прошедшей неделе, но и о гораздо более ранних событиях. В эту пятницу вспомнил об одной интересной программе для MS DOS (а также для Mac OS, UNIX и VAX/VMS) – Паскаль-интерпретаторе и IDE Dr. Pascal. Подробную информацию о возможностях и отзывы можно найти на сохраненном в архиве сайте изготовителя Visible Software (США), а я ограничусь только наиболее запомнившимися мне идеями, причем эти идеи, на мой взгляд, даже сегодня не утратили актуальности. Прежде всего вспоминается картинка:
Рубрика «UNIX» - 9
Старые секреты быстрой отладки: анимация исходного кода
2018-12-07 в 14:08, admin, рубрики: IDE, mac os, Pascal, UNIX, vax vms, изучение языков, интерпретатор, отладка, Отладчик, Программирование, старое железоНужно ли учить C для понимания работы компьютера?
2018-10-19 в 9:08, admin, рубрики: b, C, java, UNIX, абстрактная машина, ассемблер, виртуальная машина, Компьютерное железо, переносимость кодаЯ часто слышал, что для понимания работы компьютера люди предлагают изучать C. Это хорошая мысль? Вы уверены? Сразу изложу выводы статьи, просто для абсолютной ясности:
- C — это не то, «как работает компьютер».
- Не думаю, что большинство людей говорят буквально, так что это неважно.
- Понимание контекста означает, что учить С по этой причине всё еще может иметь смысл, в зависимости от ваших целей.
Я планирую написать ещё две статьи с более подробным объяснением выводов, но этого уже достаточно. Добавлю сюда ссылки, когда статьи выйдут.
Читать полностью »
GObject: инкапсуляция, инстанциация, интроспекция
2018-07-27 в 12:28, admin, рубрики: C, foss, glib, gnome, GNU, gobject, GTK+, linux, UNIX, ооп, Разработка под Linux… а также другие страшные слова! (с)
Прежде чем мы познакомимся с некоторыми продвинутыми возможностями объектной системы типов GLib, необходимо поговорить о ряде моментов, которые мы не затронули в предыдущих двух статьях. В этот раз мы познакомимся ближе с базовым типом GObject, поговорим о том, что любой наследник базового GObject представляет собой двуединство (а зачастую триединство) отдельных объектов-структур, во что раскрываются загадочные макросы в начале заголовочных файлов и файлов с исходным кодом, при помощи какого инструментария работает суровый местный RTTI, почему у GObject и его потомков два деструктора (и три конструктора), равно как и о ряде других интересных мелочей.
Информационная безопасность? Нет, не слышали
2018-07-17 в 11:06, admin, рубрики: android, linux, open source, security, UNIX, Блог компании Lodoss Team, информационная безопасностьОдин мой друг спросил меня сегодня про гигиену цифрового поведения. Постараюсь кратко изложить принципы, следуя которым, вы повысите уровень своей безопасности в сети.
В этой статье я постарался идти от совсем банальных советов до довольно сложно реализуемых. Каждый должен решить самостоятельно, какой уровень безопасности приемлем лично для него. Тут все точно так же, как с сейфами: есть сейф за сто долларов, есть сейф за сто тысяч долларов. Глупо хранить миллионы долларов в первом, и горстку мелочи — во втором.
Если у вас есть важная информация, и вы боитесь ее потерять, а одна мысль о том, что эти сведения могут попасть к вашим недругам, вас пугает, то вам стоит задуматься об информационной безопасности.
Как мы оседлали OPNsense
2018-03-21 в 12:46, admin, рубрики: BSD, freebsd, nix-системы, open source, UNIX, Блог компании Smart-Soft, информационная безопасность, сетевое администрирование, Сетевое оборудование, Сетевые технологии, системное администрированиеЗдравствуйте!
Пока не стихают холивары на тему, аморально или нет использовать бесплатные платформы для создания коммерческих продуктов, мы тихой сапой сделали это. И не стесняемся брать с клиентов деньги, потому что запилили на базе свободного кода реально классную штуку — универсальный аппаратный шлюз безопасности. Раньше у нас был коммерчески успешный межсетевой экран, но для Microsoft Windows. Бурный поток идей в какой-то момент вышел из берегов «винды», и встал вопрос — а что дальше? А дальше — Linux или Net/Open/Free BSD. Наши гуру собрались, покурили и решили вместо изобретения собственного велосипеда использовать OPNsense. Эта статья поможет тем, кто захочет сделать нечто подобное.
Рождение Software Tools: как и зачем появились GREP и AWK
2017-11-27 в 17:30, admin, рубрики: awk, Brian Kernighan, grep, tools, UNIX, Программирование, системное программирование
Этим летом мне на глаза попалось эссе Брайана Кернигана «Иногда старые способы — лучшие», опубликованное в честь 25-летнего юбилея журнала IEEE Software в 2008 году. В нем профессор Керниган рассказывал о том, какие инструменты он использует в работе.
В тот момент он был занят двумя сложными проектами — один из них подразумевал экспертный анализ проекта на 100 000 строк кода, написанный на C и Assembler в 1990 году, под Windows XP; другой — перенос кода с экзотического языка L1 на не менее экзотический язык L2 при помощи программы, написанной на неназванном скриптовом языке под Linux. Удивительно, но для столь разных задач профессор Керниган вместо IDE использовал один и тот же набор инструментов — grep, diff, sort, awk, wc и прочих «старых знакомых» из эпохи раннего Unix. Более того, многие инструменты и IDE конца прошлого десятилетия он подверг критике за неудобность и несовершенство.
Действительно, к некоторым вещам в своей жизни мы привыкли настолько сильно, что уже воспринимаем их за данность и критиковать их нам даже не приходит в голову — нам кажется, будто они существовали всегда. Подобный образ мышления помогает адаптироваться к потоку новой информации и неизбежен в современном мире, но давайте не будем сегодня отказывать себе в удовольствии «спуститься на уровень ниже», чтобы увидеть, как появилась сама идея программных инструментов (они же далее по тексту — «software tools», утилиты, команды Unix).
Читать полностью »
Небольшая история о команде `yes` в Unix
2017-11-09 в 7:34, admin, рубрики: C, open source, Rust, UNIX, yes, Си, системное программированиеКакую вы знаете самую простую команду Unix? Есть echo
, которая печатает строку в stdout, и есть true
, которая ничего не делает, а только завершается с нулевым кодом.
Среди множества простых Unix-команд спряталась команда yes
. Если запустить её без аргументов, то вы получите бесконечный поток символов "y", каждый с новой строки:
y
y
y
y
(...ну вы поняли мысль)
Хотя на первый взгляд команда кажется бессмысленной, но иногда она бывает полезной:
yes | sh boring_installation.sh
Когда-нибудь устанавливали программу, которая требует ввести "y" и нажать Enter для установки? Команда yes
приходит на помощь! Она аккуратно выполнит эту задачу, так что можете не отвлекаться от просмотра Pootie Tang.
Читать полностью »
Зачем в Go амперсанд и звёздочка (& и *)?
2017-10-03 в 0:05, admin, рубрики: b, bcpl, C, Go, pointers, UNIXЕсли вы хоть раз были сбиты с толку, что означает символ "амперсанд" (&
) или "звёздочка" ("знак умножения", *
) или запутывались, когда что использовать, то это статья для вас. Авторы Go старались сделать язык знакомым большинству программистов, и многие элементы синтаксиса заимствовали из языка С. Но в 2017м уже сложно понять, большинство программистов владеют С или нет, и смею полагать, что уже нет. Поэтому концепции хорошо знакомые прошлому поколению разработчиков, могут выглядеть совершенной абракадаброй для для нового поколения. Давайте немного копнём историю и расставим все точки над ї в вопросах указателей в Go и использования символов &
и *
.
UltraVNC как замена TeamViewer
2017-07-04 в 8:21, admin, рубрики: teamviewer, ULTRAVNC, UNIX, Блог компании BUSINESS INFINITY GROUP, Серверное администрирование, системное администрирование, удаленное администрирование, удалённый доступ, метки: ULTRAVNCПредупреждение: все прилетевшие тапочки будут проданы, помидоры – съедены, яйца – пожарены, испорченные – выброшены. Те, кто думают, что мы маемся фигней – вы угадали, возьмите с полки пирожок. Автор не призывает бросать мешки грудью на амбразуры. Он вообще ни к чему не призывает – он же не политик и не гражданин с активной гражданской позицией. А вот желающих подискутировать – милости просим. Сегодня я буду рассказывать вам занимательную историю о замене Teamviewer на UltraVNC.Читать полностью »
Уязвимость Stack Clash позволяет получить root-привилегии в Linux и других ОС
2017-06-20 в 15:39, admin, рубрики: linux, stack clash, UNIX, Блог компании Positive Technologies, информационная безопасность, уязвимости, метки: stack clashИзображение:finnsland, CC BY-SA 2.0
В механизме управления памятью операционных систем Linux, OpenBSD, NetBSD, FreeBSD и Solaris обнаружена серьезная уязвимость, позволяющая осуществлять повышение привилегий до уровня суперпользователя и выполнять произвольный код. Проблема безопасности получила название Stack Clash.Читать полностью »