Разработка приложений в среде Linux - [12]
>^hi.Несмотря на то что пользовательский интерфейс Emacs не такой красочный, как некоторые графические среды IDE, в этом редакторе есть множество мощных средств, которые могут понадобиться многим программистам. Например, при использовании Emacs для редактирования кода С. Emacs распознает тип файла и переходит в режим редактирования С, в котором распознается синтаксис С, что может помочь при поиске опечаток. Если вы запускаете компилятор из Emacs, редактор распознает сообщения об ошибках и предупреждениях компилятора, и позволяет перейти на строку с ошибкой при помощи одной команды, даже если для этого придется открыть новый файл. В Emacs также имеется режим отладки: отладчик находится в одном окне и проходит по коду, который вы отлаживаете в другом окне.
4.1.2. >vi
Если вы быстро набираете текст и хотите, чтоб ваши пальцы находились в правильном положении[3], >vi вам наверняка понравится, поскольку его набор команд был разработан таким образом, чтобы движений пальцев печатающего было как можно меньше. Этот редактор также ориентирован на пользователей Unix. Если вы знакомы с >sed или >awk либо другими программами Unix, использующими стандартные регулярные выражения с >^ для перехода к началу строки и >$ для перехода к ее концу, работа с >vi покажется вам простой и естественной.
К сожалению, освоение >vi может оказаться более сложным, нежели Emacs. Дело в том, что хоть пособия по >vi подобны учебникам по Emacs, ни в одной версии >vi нет стандартного способа запуска учебного пособия. Тем не менее, многие версии, включая версию, поставляемую с обычными дистрибутивами Linux, поддерживают команду >:help.
В наиболее общей версии >vi, >vim ("Vi IMproved"), есть множество интегрированных средств из набора разработки Emacs, включая выделение синтаксиса, автоматическое расположение текста, язык написания сценариев и разбор ошибок компилятора.
4.2. >make
Основой программирования под Unix является >make — средство, которое существенно упрощает описание компиляции программ. Даже притом, что небольшим программам порой достаточно одной команды для компиляции их исходного кода в исполняемый файл, все же намного легче написать >make, чем строку вроде >gcc -02 -ggdb -DSOME DEFINE -о foo foo.c. Более того, если имеется множество файлов для компиляции, а код был изменен лишь в некоторых из них, >make создаст новые объектные файлы только для тех файлов, на которые повлияли изменения. Чтобы >make совершила это "чудо", потребуется описать все файлы в make-файле (Makefile), пример которого показан ниже.
> 1: # Makefile
> 2:
> 3: OBJS = foo.о bar.о baz.o
> 4: LDLIBS = -L/usr/local/lib/ -lbar
> 5:
> 6: foo: $(OBJS)
> 7: gcc -o foo $ (OBJS) $ (LDLIBS)
> 8:
> 9: install: foo
>10: install -m 644 foo /usr/bin
>11: .PHONY: install
• Строка 1 — это комментарий; >make следует обычной традиции Unix определения комментариев с помощью символа >#.
• В строке 3 определяется переменная по имени >OBJS как >foo.о bar.о baz.о.
• В строке 4 определяется другая переменная — >LDLIBS.
• В строке 6 начинается определение правила, которое указывает на то, что файл foo зависит от (в этом случае, собран из) файлов, имена которых содержатся в переменной >OBJS. >foo называется целевым объектом, а >$(OBJS) — списком зависимостей. Обратите внимание на синтаксис расширения переменной: имя переменной помещается в >$(...).
Строка 7 — это командная строка, указывающая на то, как построить целевой объект из списка зависимостей. Командных строк может быть много, и первым символом в командной строке должна быть табуляция.
• Строка 9 — довольно интересный целевой объект. Фактически тут не предпринимается попытка создать файл по имени >install; вместо этого (как видно в строке 10) >foo инсталлируется в >/usr/bin с помощью стандартной программы >install. Эта строка вызывает неоднозначность в >make: что, если файл >install уже существует и является более новым, нежели >foo? В этом случае запуск команды >make install приведет к выдаче сообщения >'install' is up to date (install является новее) и завершению работы.
• Строка 11 указывает >make на то, что >install не является файлом, и что необходимо игнорировать любой файл по имени >install при вычислении зависимости >install. Таким образом, если зависимость >install была вызвана (как это сделать мы рассмотрим далее), команда в строке 10 всегда будет выполняться. >.PHONY — это директива, которая изменяет операцию >make; в этом случае она указывает >make на то, что целевой объект >install не является именем файла. Целевые объекты >.PHONY часто используются для совершения действий вроде инсталляции или создания одиночного имени целевого объекта, которое основывается на нескольких других уже существующих целевых объектов, например:
>all: foo bar baz
>.PHONY: all
К сожалению, >.PHONY не поддерживается некоторыми версиями make. Менее очевидный, не такой эффективный, но более переносимый способ для этого показан ниже.
В отличие от плохого танцора, хорошему сисадмину мешают только кукушкины яйца. Их откладывают в его компьютер злобные хакеры, чтобы из них вылупились программы, делающие своего папу-кукушку суперпользователем. Но сколько кабелю не виться — а кончику быть: бравый сисадмин не дремлет и за годик-другой выводит злоумышленников на чистую воду: на этот раз хакерская тусовка круто пролетела. Такого предельно краткое содержание классической книги эксперта по компьютерной безопасности Клиффа Столла «Яйцо кукушки».
В пособии излагаются основные тенденции развития организационного обеспечения безопасности информационных систем, а также подходы к анализу информационной инфраструктуры организационных систем и решению задач обеспечения безопасности компьютерных систем.Для студентов по направлению подготовки 230400 – Информационные системы и технологии (квалификация «бакалавр»).
Данное руководство по Ubuntu для новичков написано для тех, кто хочет легко и без проблем сменить свою операционную систему на Ubuntu. Оно охватывает вопросы, связанные с установкой, настройкой и использованием Ubuntu.
В этой книге описаны принципы действия и область применения многих серверов, выполняющихся в системе Linux. Здесь рассматриваются DHCP-сервер, серверы Samba и NFS, серверы печати, NTP-сервер, средства удаленной регистрации и система X Window. He забыты и средства, традиционно используемые для обеспечения работы Internet-служб: серверы DNS, SMTP, HTTP и FTP. Большое внимание уделено вопросам безопасности сети. В данной книге нашли отражения также средства удаленного администрирования — инструменты Linuxconf, Webmin и SWAT.Данная книга несомненно окажется полезной как начинающим, так и опытным системным администраторам.Отзывы о книге Сетевые средства LinuxПоявилась прекрасная книга по Linux, осталось воспользоваться ею.
Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows.
Iptables Tutorial 1.1.19Автор: (C) Oskar AndreassonCopyright (C) 2001-2002 by Oskar AndreassonПеревод: (C) Андрей КиселевПоследнюю версию документа можно получить по адресу: http://iptables-tutorial.frozentux.netfb2-документ отформатирован с использованием большого количества тегов и . Чтобы в «читалке» (в частности, Haali Reader) текст выглядел «красиво», настройте свойства соотвествующих стилей (emphasis и strong), изменив, например, их цвета или начертания. (прим. автора fb2-документа)