Глава 3.
Программы, поставляемые с BeOS.
(3dmix - Magnify).
С BeOS поставляются программы, полностью достаточные
для того, чтобы решить задачу в любой сфере использования компьютера. Но
все программы, которые поставляются с этой ОС, позволяют решать только
самые элементарные задачи - по двум основным причинам: во-первых, компания,
которая разрабатывает программы для собственной операционной системы, отнимает
тем самым хлеб у независимых разработчиков; а во-вторых, столь маленькая
компания (в которой работают всего около двухсот инженеров), займись она
программами, рискует погрязть в них по уши, и тем самым замедлится темп
развития самой системы. По этим двум основным причинам (а также потому,
что многим программировать ядро операционной системы представляется куда
более увлекательным занятием, чем, скажем, программирование текстового
редактора) программы, поставляющиеся с BeOS, предоставляют только самые
основные возможности, с помощью которых можно выполнить стояющую перед
пользователем задачу - но не более того.
Многим, однако, будет вполне этого хватать. Я, например,
до сих пор работаю со своим POP3-счётом электронной почты в программе BeMail.
Большинство пользователей BeOS используют встроенный Интернет-просмотрщик
NetPositive, несмотря на существующие (и вполне рабочие) версии Opera и
Mozilla 6. Так что в конце концов, выбор за Вами.
Приведённые ниже программы и их описания расположены
в алфавитном порядке.
Программы
3dmix
Программа профессионального двухмерного смешения звука. Вместе с ней (в
директории /optional/sound) поставляются три примера звуковых файлов, специально
скомпонованных для этой программы. Создание музыкальных произведений в
ней (по приведённым в начале главы причинам) возможно, но достаточно сложно
- при этом, она предоставляет возможности, которые в Windows можно получить
только при использовании сложного профессионального музыкального редактора.
В 3dmix Вы простым перемещением мышки можете расположить инструменты в
виртуальном пространстве так, как Вам захочется. Результат может быть сохранён
в виде WAV-файла, и затем переведён в формат MP3 с помощью поставляемого
с BeOS кодировщика.
Элементы интерфейса: верхняя строка окна - строка меню,
ниже слева - контрольная панель, состоящая из (сверху вниз) графического
экалайзера правой и левой колонок и регулятора громкости. Под строкой
меню справа - окно микшера, состоящее из строки управления, включающей
в себя (справа налево):
-
временную шкалу, являющуюся одновременно шкалой ритма;
-
указатель ритма;
-
выключатель контрольной панели.
Под строкой управления расположено рабочее окно, в котором
редактируются дорожки. Под рабочим окном - шкала масштабирования.
Работа в 3dmix осуществляется с помощью т. н. Tracks - "дорожек". В любом
проекте должна быть как миниум одна дорожка, которая представляет собой
запись одного или нескольких инструментов. Создание новой дорожки осуществляется
из меню "Tracks > New track" и / или простым перетаскиванием на серое поле
(или внутрь уже созданной дорожки) любого звукового файла, формат которого
BeOS способен понять. (Я лично экспериментировал с файлами .WAV и .MP3).
Для того, чтобы удалить дорожку, Вы должны щёлкнуть на ней и воспользоваться
опцией в меню Tracks > Delete tracks. Понятно, что ёмкость дорожки не ограничена
только одним файлом, и совсем никак не ограничена по времени, так что,
по Вашему усмотрению, одна дорожка может включать в себя три последовательных
гитарных соло, или те же три соло могут быть разделены в три разных дорожки.
У каждой дорожки есть своё имя, записанное рядом с ней
(сине-зелёным цветом). Чтобы изменить его, необходимо щёлкнуть на нём.
Перед именем будет записан порядковый номер дорожки, его Вы изменить не
сможете, да и не надо.
На иллюстрации справа показан процесс работы с 3dmix:
(для примера я взял записи инструментов из уже готового примера для
3dmix под названием The Price of Things, расположенного в директории /optional/sound/3D
Mixes). Чёрное выделение на шкале времени отмечает проигрываемый в данный
момент отрезок композиции. Cледует заметить, что если на шкале времени
выделен какой-либо отрезок, он будет проигрываться в бесконечном цикле;
для того, чтобы поставить "паузу", следует нажать Alt+P.
Двойной щёлчок на записи какого-либо инструмента откроет новое окно, в
котором можно отредактировать эту запись, (см. иллюстрацию слева). К Вашим
услугам предоставлены несколько фильтров, которые изменят звучание инструмента.
(Разумеется, запись голоса тоже является записью инструмента, так что с
помощью этих фильтров можно как следует поиздеваться над чьим-нибудь голосом).
С помощью микшера можно смонтировать довольно сложный звуковой файл. Но
основная мощь этой программы - не в микшере, а в двухмерном планировании
звука. Зайдите в меню Display и выберите Show/Hide Mixer. Окно микшера
закроется, и появится тёмно-синяя сетка на чёрном фоне. Это сетка двухмерного
планирования звука - схематичное изображение пространства, в центре которого
находится слушатель. Вы увидите несколько ярких цветных столбиков, соответствующих
созданным Вами звуковым дорожкам. С помощью мышки Вы можете разместить
звуковые дорожки в этом пространстве так, как Вам нравится. Если при этом
включено проигрывание, то Вы услышите изменения в колонках, (в наушниках
изменения заметны ещё сильней). Вы можете поворачивать сетку, как Вам нравится
и как Вам захочется. В этом и есть основное преимущество 3dmix: в тонком
контроле баланса между правой и левой колонками.
Я, сколько ни искал, не сумел добиться динамического изменения
положения звуковой дорожки в пространстве. Скорее всего, эта опция просто
не поддерживается, (то есть с помощью 3dmix не получится создать такие
сложные звуковые эффекты, какие можно услышать в песне Queen "The Prophet
Song"). А может быть, я просто не там искал. В любом случае, эта программа
позволяет делать примерно то же самое, что дорогие звуковые редакторы для
Windows.
В 3dmix есть "пасхальное яйцо". Описание его см.
на
вставке ниже.
BeMail
Программа для работы с электронной почтой. Из достоинств можно назвать
работу с русскими кодировками, высокое быстродействие и особый формат хранения
почтовых сообщений (с широким использованием аттрибутов). Из недостатков
- работу с только одним счётом, только по протоколу POP3 и неумение оставлять
копию сообщения на сервере. Подробное описание настроек BeMail и работы
с этой программой см. в главе 4, "Подключение и работа с Интернетом".
Camera
Программа "Camera" предназначена для извлечения изображений из входящих
в последнее время в моду цифровых камер. Цифровая камера записывает изображение
по точкам, причём для каждой точки определяется цвет. Эту запись очень
удобно перевести в формат обычного компьютерного файла. В самом деле, большая
часть этих устройств сразу переводит изображение в файл, готовый к использованию
любым персональным компьютером, способным его получить, (обычно в формате
JPEG или GIF). Основная загвоздка в том, что для того, чтобы правильно
найти картинки и изъять их, нужна специальная программа. Для операционных
систем Windows и MacOS программа обычно поставляется вместе с камерой,
но вот менее популярным ОС приходится туго.
"Camera" представляет собой программу для извлечения изображений из дигитальных
фотокамер. Количество поддерживаемых камер, разумеется, оставляет желать
лучшего. На самом деле, поддерживаются только несколько фотокамер Olympus,
Kodak, Nixon и одна камера Polaroid (см. окно "О программе", приведённое
справа).
CD-Burner
Программа для создания аудиодисков, которая, тем не менее, может создавать
и диски с данными. Несмотря на довольно простой и интуитивный интерфейс,
программа предоставляет возможности, с трудом (если вообще) достижимые
в программах Adaptec EasyCD Creator или Nero Burning ROM. (Напоминаю, программа
была создана специально для записи аудиодисков, поэтому в записи обычных
дисков с файлами она во многом уступает названным выше программам).
Элементы интерфейса: полоса меню - как обычно, в
верхней части окна; под ней - окно с содержимым создаваемого диска; справа
от этого окна - набор опций, которые действуют только на аудио-дорожки.
Под окном содержимого диска есть полоса Preview, с помощью которой можно
прослушать аудио-дорожку в том виде, в котором она будет записана на диск.
Под полосой Preview есть ещё две полосы, верхняя из которых отражает текущую
заполенность диска (из расчёта 650 мегабайт на диск) и по мере заполнения
диска будет закрашиваться зелёным, а нижняя служит для облегчения редактирования
звуковых дорожек перед их записью на компакт-диск.
Для того, чтобы приготовить файл к записи, требуется
зайти в меню Disk и выбрать опцию Add Data Track, после чего выбрать нужный
файл. Но создание дисков с данными не отражает всех способностей CD-Burner`а;
больше того - оно заканчивается примерно на этом шаге. Для того, чтобы
создать диск с файлами, требуется просто достаточное количество раз повторить
этот шаг (Disk > Add Data Track), после чего нажать Burn! Поэтому зацикливаться
на создании дисков с данными мы не будем, а перейдём к созданию дисков
с музыкой.
Добавление новой звуковой дорожки выполняется почти
тем же способом: Disk > Add Audio Track > выбор файла. Файл может быть
записан в любом формате, понимаемым BeOS как формат звукозаписи - WAV,
MP3 и так далее. После добавления новой дорожки щёлкните на строке, которая
появилась наверху, в окне с содержимым диска.
Обратите внимание на ставшую доступной зелёную полоску редактирования звуковой
дорожки. А точнее, обратите внимание на её края (см. иллюстрацию слева
- иллюстрация сделана с помощью программы Magnify, описание которой см.
ниже). Два красных элемента, которые вы там видите (закрывающую скобку
[ и треугольник < ), могут быть передвинуты простой буксировкой мышкой
(dragging) с удерживаемой левой клавишей. В результате недолгой игры с
этими элементами мы можем получить такую картину:
На диск запишется только то, что находится между закрывающими скобками
[ ]. А треугольники отмечают конец и начало эффекта постепенного затухания
звука. То есть, если треугольник не находится прямо на закрывающей скобке,
между ними находится какой-то участок песни. Программа CD-Burner изменяет
звук этого участка так, что на скобке - полная тишина, на треугольнике
- полная громкость, а между ними звук изменяется равномерно.
Если Вы больше хотите ввести точное положение каждого
элемента (двух скобок и двух треугольников), к Вашим услугам несколько
текстовых полей справа от окна с содержимым диска. Текстовые поля Start
и End определяют положение открывающей и закрывающей скобок [ и ] соответственно;
Fade In и Fade Out определяют положение левого и правого треугольников
< и > соответственно. Назначение опций Pregap и Gain мне выяснить не
удалось, хотя понятно, что одна из них контролирует число секунд, пропускаемых
на диске перед началом песни.
CD-Burner так же ограничен в количестве поддерживаемых
записывающих устройств, как и Camera. На самом деле, он официально поддерживает
только следующие CD-R устройства:
-
HP CD-Writer+ 8110 (подключение IDE)
-
Plextor PX-412C и PlexWriter 8/20 (подключение SCSI)
-
Mitsumi CR-4801 TE (подключение IDE)
-
Ricoh DVD/CDR W MP9060A (подключение IDE)
-
устройства фирмы Yamaha: CRW 2216 и CRW4001, подключающиеся к IDE; CDR400t,
CRW4416 и CRW6416, подключающиеся к SCSI.
 |
IDE - интерфейс (тип соединения) для подключения
устройств для хранения большого количества информации, таких, как жёстких
дисков или CD-ROM. К одному порту IDE могут быть подключены одновременно
два устройства, а на материнской плате (плате, к которой подключены все
остальные устройства системы) обычно два порта IDE. Если устройство сделано
для подключения через IDE, то контроллер, который несёт ответственность
за передачу данных, находится в самом устройстве. |
 |
SCSI - устройство для подсоединения к компьютеру
устройств накопления информации, например, жёстких дисков, CD-ROM и т.
д.. Его появление было вызвано необходимостью в соединении накопителей
информации с высокой пропускной способностью (в частности, для Интернет-серверов).
Скорость передачи данных по SCSI - 80 мегабайт в секунду. Контроллер находится
вне SCSI-устройства, в отличие от IDE. Но потому, что к одному порту SCSI
можно подключить последовательно несколько устройств, контроллеры обычно
выполняют в виде платы, вставляемой в компьютер, или встраивают в материнскую
плату. Устройства SCSI обычно намного быстрее и дороже аналогичных IDE-устройств. |
Помимо CD-Burner, есть и другие программы, позволяющие записывать
компакт-диски с данными или с музыкой под BeOS. Наиболее известной такой
программой является Melt, но она (на момент написания этих строк) умела
работать только с CD-R-устройствами, подключёнными через интерфейс SCSI.
CD-Player
Программа, как ясно из названия, служит для проигрывания аудио-компакт-дисков,
и может применяться для извлечения из них песен или отрывков песен. (Извлечённая
музыка будет сохранена на жёсткий диск в виде звукового файла).
Когда Вы вставляете компакт-диск в CD-ROM, BeOS его опознает
и смонтирует (подробнее об этих операциях будет рассказано в главе 5, посвящённой
файловой системе BeOS и Tracker`у, который ведает всеми файловыми операциями).
Запустив после этого CD-Player, Вы получите окно, похожее на приведённое
выше.
Совершенно стандартные кнопки (перечисление слева
направо) "Стоп", "Воспроизведение / Пауза", "Предыдущая песня", "Следующаяя
песня", "Промотать назад" и "Промотать вперёд" выглядят точно так же и
действуют точно так же, как и на обычных проигрывателях аудио-CD.
Следующая кнопка (продолжая перечисление слева направо)
- "Извлечь диск". При нажатии на неё поднос с диском будет выброшен из
корпуса компьютера. Это действие также демонтирует диск (подробнее см.
главу 5).
Затем идёт кнопка "Сохранить" (с пиктограммой дискеты). Она открывает новое
окно (см. справа), в котором Вы можете выбрать песню (или часть её) и переписать
её на жёсткий диск. Выбор песни осуществляется по её номеру на диске с
помощью меню в левом верхнем углу (Track: ). В правом верхнем углу Вам
предоставляется возможность выбрать формат файла, который будет записан.
Пользователи BeOS 5 Pro могут выбрать формат МР3. Зелёный и красный треугольники
отмечают начало и конец записываемого отрывка, (в примере, показанном на
иллюстрации, будет записана вся песня). После того, как Вам показалось,
что Вы нашли тот отрывок, который Вы хотите записать, Вы можете проверить
свой выбор и прослушать этот отрывок, нажав клавишу "Preview". Нажмите
"Stop", чтобы остановить прослушивание. После того, как сделанный Вами
выбор становится окончательным, нажмите клавишу Save, которая откроет окно
записи файла.
Имейте ввиду, что CD-Player, может, и самый лёгкий способ
записать песню на жёсткий диск, но явно не самый качественный. Он не предоставляет
никакого контроля качества записи, и потому записанные с его помощью файлы
могут содержать некоторые ошибки (хотя я, сколько им ни пользуюсь, такого
не замечал). Для профессионального выдирания песен с дисков существуют
специализированные программы, которые можно скачать с BeBits.
Следующая клавиша (её пиктограмма имеет вид лестницы,
и после нажатия изменяется на вид кучи дров) изменяет способ проигрывания
диска: последовательный (проигрывать песни в том порядке, в котором они
записаны на диске) или случайный (следующая песня выбирается случайным
образом). Разумеется, ровненькая лестница означает последовательное проигрывание.
Клавиша со стрелкой вправо, которая после нажатия превращается в эдакую
круговую стрелку, включает и выключает "автореверс". При стрелке, которая
просто указывает вправо, проигрывание диска завершится, когда будет проиграна
последняя непроигранная до сих пор песня. При стрелке, указывающей в начало
самой себя, после окончания проигрывания последней песни диск начнёт проигрываться
снова.
Слева расположен регулятор громкости. Из-за того,
что сигнал с аудио-диска идёт на звуковую карту напрямую, он не проходит
через микшер (регулятор громкости звуковых каналов) BeOS. В результате
- громкость колонок, которую Вы выставляете с помощью регулятора звука
в Deskbar, не окажет никакого влияния на громкость при воспроизведении
с компакт-диска. Если регулятор громкости в CD-Player`е выставлен на максиум,
то, даже при полностью отключённом звуке в микшере BeOS, колонки взревут.
Имейте это ввиду, когда тёмной ночью, сидя за BeOS, Вам захочется послушать
что-нибудь из своей аудиотеки, не будя при этом всю округу.
Над клавишами расположена панель с названием диска. По
умолчанию там написано "Audio CD", но Вы можете изменить это название на
настоящее название диска. Если Вы начнёте проигрыш какой-либо песни, в
этой панели появится название песни. Под этой панелью находятся квадраты
с номерами, при нажатии на какой-либо из них включится проигрывание песни
с таким номером.
Клавиша со стрелочкой вниз открывает дополнительную информацию о диске,
а точнее - список песен. Как легко убедиться, все записи здесь - простые
текстовые строки, которые Вы можете изменять, как Вам захочется. Желательно
записать реальные названия песен.
Как Вы видите на фотографии слева, количество квадратиков,
как максиум, 17. Это логично, потому что средняя длина песни колеблется
между четырьмя и пятью минутами, и больше, чем 17 песен, на 74-минутный
диск не влезает. Однако при проигрывании самодельных дисков, как, например,
диска, который я использовал для фотографии слева, может возникнуть проблема
с проигрыванием 18-й и 19-й песни. Это даже не проблема, а, скорее, неудобство
- придётся начать с проигрывания 17-й песни, а затем просто промотать на
следующую песню.
Если Вы записали названия песен в список, как сказано
выше, то в следующий раз, когда Вы вставите тот же диск в компьютер и загрузите
CD-Player, он "узнает" диск и покажет тот список песен, который Вы ввели
ранее.
Существуют проигрыватели дисков, которые могут получать
информацию о названии диска и песен через Интернет, с сайта глобальной
базы данных по дискам (http://www.cddb.com).
CD-Player такой способностью, к сожалению, не обладает. Если Вы хотите
иметь проигрыватель компакт-дисков дисков, который обладает способностью
получать информацию о диске с Интернета, скачайте программу JukeBox.
 |
Как CD-Player "узнаёт", был этот диск в компьютере раньше
или нет?
Каждый раз, когда Вы изменяете список песен, выдаваемый для незнакомого
диска (и состоящий только из номеров песен, типа "Track 10" или "Track
14"), CD-Player записывает его в текстовый файл с названием, соответствующим
названию альбома, и сохраняет файл в директории /boot/home/cd. Посмотрите
на файл "Коллекция", созданный из списка песен, изображённого на предыдущем
скриншоте (см. справа). Примечание: программа, которой я воспоользовался,
чтобы открыть этот файл, называется Hot Edit, и будет описана ниже.
К каждому такому файлу прилагается специальный код, высчитанный на
основе содержимого диска. Поскольку два разных диска вряд ли будут иметь
одно и то же количество, продолжительность и порядок песен, этот код можно
считать уникальным. Каждый раз, когда CD-Player обнаруживает какой-либо
аудиодиск в CD-ROM`е, он рассчитывает этот код заново и сравнивает с кодами
файлов, имеющихся в директории /boot/home/cd. Если код совпадает, CD-Player
бёрет название альбома и список песен из подходящего файла. |
Единственные не рассмотренные нами до сих пор элементы интерфейса
- это два окна, которые покажут номер проигрываемой песни и время, которое
было затрачено на её проигрывание. Впрочем, то, что показывают часы, можно
изменить - заметьте маленькую кнопку с рисунком часов слева от окошка с
номером песни. Нажимая на эту кнопку, можно последовательно перейти от
измерения времени, затраченного на одну эту песню, к измерению времени,
проигранного от начала диска, к отсчёту времени, оставшегося до конца текущей
песни, и затем - к отсчёту времени до конца проигрывания всего диска. Следующее
нажатие вернёт Вас к отсчёту времени, затраченного на одну текущую песню,
и замкнёт круг.
Под часами находится полоска, закрашиваемая зелёным
по мере проигрывания песни - или диска; в зависимости от того, что конкретно
отсчитывают часы.
Clock
Простенькая программа, которая служит только для того, чтобы показывать
время. Никаких конфигурационных настроек у неё нет, время она берёт системное,
из BIOS, и менять его не умеет.
Впрочем, нет; есть у неё две опции настройки. Если Вы
щёлкните в окне программы левой кнопкой мышки, картинка на циферблате изменится.
Всего есть восемь картинок, и они меняются по кругу. И если щёлкнуть по
какой-либо стрелке, то секундная стрелка исчезнет. (Дополнительный щелчок
заставит её появиться снова).
Предназначение этой программы, собственно, состоит в том,
чтобы продемонстрировать особенность BeOS, называемой "Репликация".
 |
Репликант - полностью функциональное окно программы,
помещённое в какое-либо другое окно. (Не любое, конечно, а специальное
окно, могущее содержать репликанты). Например, репликант - это нечто, очень
похожее на продукт компании Microsoft под названием OLE (Object Linking
and Embedding). Однако OLE стоил Microsoft сотен человеко-часов. Тот же
результат был достигнут в BeOS простым добавлением десятка строк кода в
браузер NetPositive, который является репликантом. |
 |
Куда можно поместить репликант?
Папка, которая может принять репликант, называется "контейнер". Например,
рабочий стол является таким "контейнером", а вот другое окно Tracker`а
- нет. Вместе с BeOS 4.5 поставлялась демонстрационная программа Container,
назначение которой было именно содержать репликанты. Но в версии BeOS 5
этой программы уже нет, и потому вряд ли что-то, кроме Desktop`а, умеет
содержать репликанты. |
Для того, чтобы попробовать Cloсk в качестве репликанта, откройте меню
Be и поиграйте с опцией Show / Hide Replicants до тех пор, пока в правом
нижнем углу окна Clock не появится "лапка" (см. иллюстрацию справа). Теперь
хватайте эту лапку левой кнопкой мышки и буксировкой переместите её на
свободное место Desktop`а. Перемещение репликанта по Desktop`у осуществляется
всё той же буксировкой за "лапку", удаление - правым щелчком по "лапке"
и выбором "Delete", или буксировкой репликанта в мусорный ящик. Эти правила
годятся для любого репликанта, не только для Clock.
Заметьте, что если Вы поместили репликант на Desktop,
то переключение опции "Show / Hide Replicants" в меню Be не уберёт репликанты
из поля зрения, а всего-навсего скроет или покажет "лапки". Это происходит
потому, что репликант - это полная, функционирующая программа, которую
может скрыть с Desktop`а только опция Show / Hide Programs ("Показать /
Убрать программы"). Создавать такую опцию нелогично - по той простой причине,
что она будет скрывать все программы, не только репликанты, потому
что ни одна программа не сможет отличить репликант от не-репликанта.
Другими репликантами являются, например, Интернет-браузер
NetPositive, проигрыватель аудиофайлов SoundPlay и развлекательная кошка
Nico, которая живёт на вашем Desktop`е и ловит курсор мышки. Все эти программы,
и их особенности как репликантов, будут описаны ниже.
CodyCam
Увы, я про эту программу ничего узнать не смог, поскольку
это - программа для работы с видеокамерами, в том числе и с Интернет-камерами.
У меня нет камеры, которую можно подключить к компьютеру, поэтому описание
СodyCam будет пока что отсутствовать.
DiskProbe
Программа для физической проверки содержимого дисков или файлов.
 |
Внимание! При использовании этой программы
будьте ОЧЕНЬ осторожны, так как она работает с Вашим диском не на уровне
файлов, а на уровне физической структуры! С ней слишком просто и легко
сделать так, что Ваш компьютер никогда больше не сможет прочитать какой-либо
файл... Или никогда больше не сможет загрузиться. Перед тем, как сделать
что-либо, подумайте, сможете ли Вы потом, если понадобится, вернуть всё
в прежнее состояние... И даже в этом случае, перед тем, как работать с
каким-либо файлом, желательно сделать с него копию. |
Название этой программы может заставить Вас подумать,
что она предназначена для проверки, подключен ли какой-либо диск. На самом
деле, эту функцию выполняют программы типа SCSIprobe или DriveSetup. DiskProbe
предназначена, в основном, для людей, знакомых с работой операционной системы
на самом низком уровне (уровне работы с жёстким диском). Она позволяет
редактировать физическое содержимое диска. А уже редактирование содержимого
диска позволяет, в свою очередь, изменять надписи в меню программ, изменять
содержимое файлов конфигурации, атрибутов, и даже менять опции жёсткого
диска.
Кроме того, DiskProbe может быть иногда единственным
способом прочитать случайно стёртый файл... Но перед тем, как отбрасывать
все принципы осторожности и начать удалять файлы направо и налево, уповая
на DiskProbe, прочитайте следующую ниже вставку,
описывающую коротко возможности восстановления информации на диске.
Так что, стерев случайно файл, можно тут же открыть
DiskProbe, открыть в нём содержимое диска, содержавшего безвременно потерянный
файл, и искать содержание этого файла среди разбросанных по диску гигабайтов
информации. (Разумеется, куски этого файла могут быть разбросаны где угодно,
по всему объёму диска - со времён кассетных магнитофонов, используемых
как накопители информации, требование непрерывности к записанной информации
потеряло свою актуальность). Может быть, у Вас получится даже найти эту
информацию и сохранить её в другом файле. Но для этого Вам придётся дьявольски
много напрягаться).
Запуск программы DiskProbe выполняется двумя способами: открытие из меню
или drag'&'drop файла (перетаскивание, буксировка) на иконку DiskProbe.
Первый способ даёт Вам возможность запустить DiskProbe для всего содержимого
диска, полный путь к которому Вы можете выбрать в меню; второй - обязательно
открывает для редактирования один конкретный файл, - тот, который был перетащен
на иконку DiskProbe.
Когда выбор объекта редактирования сделан, открывается основное окно DiskProbe.
Элементы интерфейса: строка меню, строка позиции в открытом объекте и окно
содержимого объекта.
В строке позиции в объекте есть достаточно длинная полоска, под которой
находится треугольник (см. иллюстрацию слева). Этот треугольник позволяет
перемещаться по открытому объекту - файлу или диску. Там же находится поле,
в которое можно вписать номер блока, на который Вы хотите переместиться.
Номер блока записан в шестнадцатеричной форме, в
виде "X из Y".
Учтите,
что Вы можете переходить из шестнадцатеричной системы в десятеричную и
обратно, выбирая соответствующую опцию из меню View > Base, или используя
сочетания Alt + D - для десятеричной - и Alt + H - для шестнадцатеричной
системы. (См. иллюстрацию слева).
Кроме того, для перемещения по открытому объекту
Вы можете искать текстовую строку (с помощью стандартного Alt + F) или
прыгать с блока на блок, удерживая клавишу Alt и используя стрелки курсора
"вверх" и "вниз".
Окно содержимого файла разбито на три части. Самый
левый столбец содержит номер строки (в шестнадцатеричной записи). В центре
окна показано собственно содержимое файла, тоже в шестнадцатеричной записи.
И наконец, самая правая часть содержит содержимое файла в текстовом виде
- то, что Вы увидели бы, если бы открыли тот же файл в простом текстовом
редакторе, (например, в vi). Центральная и правая части доступны для редактирования,
причём редактирование одновременное - если Вы меняете что-либо в текстовой
части, автоматически и одновременно меняется в шестнадцатеричной, и наоборот.
Подробнее о шестнадцатеричной системе см. эту
вставку.
Через меню File > Device можно открыть для редактирования любой накопитель
информации, подсоединённый через IDE-подключение к материнской плате (см.
иллюстрацию). Опасности, связанные с редактированием информации на диске,
уже подчёркивались ранее, но я считаю своим долгом напомнить, что Вы никогда
не должны редактировать целый диск, если Вы не знаете абсолютно точно,
что делаете. Просто таким образом очень легко испортить информацию на целом
диске, сделав нечитаемой её - или сам диск.
Меню Edit предоставляет стандартные операции редактирования
текста - копирование, вырезание и вставку. Меню Block предоставляет операции
с блоком.
С помощью меню Attributes можно редактировать текстовые атрибуты файла.
(Под текстовыми атрибутами я подразумеваю атрибуты, содержанием которых
является текстовая строка - например, тип файла). Для этого из меню Attributes
необходимо выбрать тип атрибута, который Вы хотите редактировать. Иллюстрация
справа показывает, как это меню выглядит. Содержимое выбранного атрибута
будет показано в небольшом окне, которое будет открыто поверх окна DiskProbe.
В будущих версиях DiskProbe будет реализована также возможность редактирования
бинарных атрибутов.
Expander
Ни одна операционная система на сегодняшний день не может обойтись без
архиватора. Практически все программы, распространяемые через Интернет,
запакованы. Архивирование к тому же помогает сохранять место на диске.
Однако, большинство форматов архивирования бесполезны
в BeOS, потому что они не сохраняют файловые атрибуты. Файлы, запакованные
с их помощью, потеряют всю дополнительную информацию, например, особенные,
придуманные Вами иконки; почтовые сообщения станут простыми текстовыми
файлами, без какого-либо намёка на адрес отправителя, адресата, тему сообщения,
времени отправки... Неприятная ситуация. Поэтому, если Вы решили архивировать
свои файлы, используйте архиватор zip. Как именно использовать тот архиватор,
что поставляется с BeOS, я опишу в пятой и в шестой главах.
Всё это предисловие было приведено к тому, что Expander,
который я сейчас описываю - это графический распаковщик для файлов формата
zip, gz и tar. Интерфейс его достаточно прост и информативен: строка меню,
строка с именем открываемого файла, строка с адресом, куда это всё будет
распаковано, и клавиша Expand ("Распаковать"). Вы можете выбрать файл для
раскпаковки нажатием на кнопку Source ("Источник"), а директорию - нажатием
на клавишу Destination ("Место назначения").
В тот момент, когда Вы выбрали файл для распаковки и директорию, куда файл
будет распакован, опция "Show Contents" ("Показать содержимое") становится
доступной. Если Вы её отмечаете, открывается дополнительное окошко, в котором
можно посмотреть на содержание архива - имена файлов, даты их изменений
и размер.
Установки Expander`a тоже достаточно просты. Для
того, чтобы открыть их, зайдите в меню Edit, выберете опцию Preferences.
Вы получите следующее окно:
Оно содержит следующие опции:
Для распаковки:
-
Automatically expand files - "Автоматически распаковывать файлы". Операция
распаковки начнётся, как только будет определён файл-источник и директория,
куда производится распаковка. Очень удобно для автоматической системы скачивания
программ, но несёт в себе потенциальную опасность: Вы можете определить
директорию, куда файлы будут распаковываться по умолчанию. Тогда двойной
щелчок по файлу сразу начнёт его распаковку. А теперь представьте, что
случится с Вашим жёстким диском, если Вы случайно щёлкните по zip-файлу
размером гигабайта в полтора-два...
-
Close window when done expanding - "Закрывать окно, когда процесс разархивирования
завершён". По окончании распаковки окно Expander`а автоматически закроется.
Определение папки, куда производится распаковка:
-
Leave destination folder path empty - "Оставить путь к папке для распаковки
пустым". При каждом запуске программы поле "Destination" будет пустым,
и Вам надо будет выбирать его самостоятельно.
-
Same directory as source (archive) file - "Та же папка, где находится распаковываемый
файл". В поле "Destination" будет записан путь к папке, где находится сам
архив.
-
Use: - "Использовать:". В поле "Destination" будет записан путь к папке,
которую Вы можете выбрать с помощью клавиши Select, расположенной рядом.
Вы можете также записать этот путь в предоставленном текстовом поле.
Остальные опции:
-
Open destination folder after extraction - "Открыть папку, куда производилась
распаковка, по окончании работы". Если отметить эту опцию, то после окончания
распаковки в новом окне Tracker`а будет открыта та папка, в которую производилось
разархивирование.
-
Automatically show contents listing - "Автоматически показывать содержимое".
Опция "Show Content" (см. выше) будет отмечена автоматически.
Я повторюсь ещё раз: Expander не умеет запаковывать
файлы, он только распаковывает!
По умолчанию, Expander работает только с архивами
.zip, .tar и .gz. Но сие не означает, что этими форматами его функциональность
ограничивается. На самом деле, Expander предоставляет графический интерфейс
для любого разархиватора, который может быть запущен из командной строки,
(в частности, сразу приходит на ум архиватор rar,
порт
которого под BeOS изначально задумывался как работающий из командной
строки). Для того, чтобы научить Expander новым трюкам, необходимо найти
файл /boot/home/config/etc/expander.rules.sample, переименовать его в expander.rules
и отредактировать, дополнив его новыми опциями.
Формат, описывающий синтакс опций файла expander.rules,
подробно описывается в самом файле. Здесь я изложу его исключительно для
шапочного знакомства.
Файл делится на четыре столбца. В самом левом записывается
MIME-тип файла, который будет распакован. (Об MIME-типах подробнее будет
изложено в пятой главе). Обычно в этом столбце записывается "", чтобы Expander
применял правило к файлам любого типа.
Во втором слева столбце записывается расширение
файла-архива. В случае с rar это .rar.
В третьем слева столбце записывается команда, которая
показывает содержимое файла-архива. В случае с rar это rar l %s, где %s
показывает имя файла.
В четвёртом и последнем столбце записывается команда
распаковки. Для rar это команда rar x %s.
Таким образом, если Вы измените имя файла /boot/home/config/etc/expander.rules.sample
на /boot/home/config/etc/expander.rules и добавите в него следующую строку:
"" .rar
"rar l %s" "rar x %s"
- Ваш Expander сумеет распаковывать
архивы .rar.
Ещё один пример записи в expander.rules, позволяющий
Expander`у открывать самооткрывающиеся архивы .exe, создаваемые с помощью
программы WinZip:
"" .exe
"unzip -l %s" "unzip -o %s"
 |
В приведённом выше примере с разархивированием файлов .rar с помощью
Expander`а я предполагаю, что сам архиватор rar уже установлен на Вашем
компьютере. Кроме того, в кавычках Вы должны указывать полный путь к исполняемому
файлу rar. То есть, если мой rar установлен в папке /boot/home/rar/, то
строка из предыдущего примера будет выглядеть так:
"" .rar "/boot/home/rar/rar
l %s" "/boot/home/rar/rar x %s"
Либо я должен исполнить заранее следующую команду
в Terminal`е:
ln -s /boot/home/rar/rar /boot/home/config/bin
- это создаст symlink из папки /boot/home/config/bin
к файлу /boot/home/rar/rar, и тогда я могу не беспокоиться относительно
местонахождения файла rar. То есть, система сможет его найти, даже если
я запишу в файле expander.rules строку без полного пути к
файлу rar. |
 |
Необходимо принять во внимание, что Expander
будет открывать файлы .rar и самооткрывающиеся файлы-архивы .exe, только
если выбрать их в самом Expander`е. Двойной щелчок на самом файле-архиве
.rar или .exe не даст ничего, кроме ошибки, даже если Expander умеет
открывать эти файлы. Если Вы хотите, чтобы двойной щелчок на файле-архиве
открывал Expander, (как это происходит с файлами-архивами .zip, .tar и
.gz), Вам придётся зайти в меню Be > Preferences > File Types и добавить
MIME-типы для файлов .rar и .exe. Эта процедура будет подробно описана
в главе 5. |
Installer
Installer - это программа, копирующая всё содержимое одного из разделов
(partitions) bfs на другой раздел bfs. Копирование включает в себя саму
операционную систему и ставит на разделе, куда было произвелено копирование,
метку "загрузочного".
Возможное использование этой программы включает
в себя все варианты переписывания системы с диска на диск. Вы разжились
новым жёстким диском, отформатировали его под bfs и хотите перенести туда
систему - Installer Вас выручит. Хотите сделать копию всего раздела с BeOS
"на чёрный день" - включайте Installer, и вперёд. (На самом деле, есть
другие, более удобные, чем Installer, средства создания backup-копий диска,
но в их отсутствие Installer вполне способен решить эту проблему).
Важно заметить, что Installer копирует абсолютно
всё содержимое диска. То есть, можно установить двадцать штук add-ons
к Tracker`у и ещё полторы сотни программ, и потом использовать Installer,
чтобы скопировать содержимое раздела - и все эти программы
будут скопированы и на новый раздел тоже. Ни один байт Вашей информации
не будет потерян.
Ещё одно возможное использование программы - создание
CD-ROM -дисков с подогнанной под пользователя версией BeOS и предустановленными
программами. Поскольку BeOS может быть загружена с CD-ROM, такой диск (если
он, разумеется, может загружаться) может быть использован для демонстрации
возможностей BeOS... В качестве, например, взломщика Linux. BeOS, как известно,
может читать файловую систему ext2 и не обращает внимания на права пользователя,
поэтому с диска BeOS можно открыть и просмотреть любой файл, который только
находится на диске Linux. Разумеется, описание создания такого диска не
входит в рамки этой книги, но это вовсе не так сложно, как кажется. (Основная
проблема - не забыть полностью отменить виртуальную память, потому что
на CD-ROM записывать нельзя, - поэтому, собственно, устройство и называется
CD-ROM - Compact Disk Read-Only Memory ("Постоянное Запоминающее Устройство
на Компакт-Диске").
Открыв программу, Вы обязаны согласиться на License
Agreement (соглашение об использовании операционной системы). В следующем
окне, показанном на предыдущем скриншоте, Вы можете выбрать, с какого диска
на какой Вы собираетесь копировать файлы. Разумеется, и исходный раздел,
и конечный раздел должны быть размечены с файловой системой bfs.
 |
Отформатирвать раздел (partition) в формат bfs Вы можете либо из BeOS,
с помощью DriveSetup, (открыть его можно через Be > Preferences > DriveSetup,
его описание будет дано в главе 9), либо из Windows, с помощью специальной
версии PowerQuest Partition Magic, поставляемой на дисках с BeOS 5 Professional. |
 |
Если выполнить копирование диска на этот же диск, (Installer позволяет
это выполнить), то в тот же миг появляется сообщение о том, что копирование
завершено успешно. |
Magnify
Знакомы ли Вы с экранной лупой Windows 98? Так вот, Magnify выполняет ту
же самую функцию, а именно - показывает часть экрана в увеличенном масштабе.
Показываемый кусок экрана привязан к курсору мышки, но Вы можете отменить
эту привязку ("заморозить" то, что находится в окне Magnify) с помощью
комбинации клавиш Alt+F. Выбор клавиши F обусловлен тем, что на английском
это действие называется "Freeze screen"
- "Заморозка экрана". Окно программы
достаточно маленькое - фактически, настолько, что слева показан скриншот
в натуральную величину.
Элементы интерфейса - строка с размером окна и силой
увеличения, стрелочка доступа к меню, строка цветовых значений для пиксела
и собственно окно экранной лупы.
 |
Пиксель - от английского Picture
Element
- наименьшая составляющая часть любой картинки. Самое простое его определение
- "точка, имеющая только один цвет". Любая картинка может быть представлена
в виде таблицы, каждая клетка которой имеет какой-то цвет; получается как
бы мозаика из различных цветов. Именно таким образом происходит весь вывод
на экран компьютера - на площадь экрана "накладывается" таблица, и каждая
её клетка закрашивается определённым цветом. Размер "таблицы" (иначе -
разрешение,
или резолюция, от англ. resolution)
регулируется стандартами; наиболее часто используются резолюции 640 х 480,
800 х 600, 1024 х 768 и 1280 х 1024 пикселей. |
В строке с размером окна записаны три числа. На скриншоте, представленном
слева, эти числа 25 х 16 и "6 pixels/pixel". Означают они, разумеется,
что окно экранной лупы отображает кусок экрана размером 25 пикселей в длину
и 16 пикселей в высоту; масштаб - один пиксель экрана растянут на 6 пикселей
(в ширину и в высоту) в окне экранной лупы. Как именно растянут пиксель
- показано на иллюстрации справа. Чёрным цветом показан пиксель на экране.
Magnify берёт его данные (в частности, цвет) из блока памяти видеокарты
и рисует в своём окне соответствующее число пикселей, имеющих один и тот
же цвет (показаны зелёным цветом). Разумеется, я не старался сохранить
масштаб.
Во второй строке находится значение цвета, которое имеет тот пиксель, который
отмечен красным квадратиком в окне экранной лупы (см. первый скриншот -
там этот квадратик находится в верхнем левом углу). Цвет показан в гамме
"красный-зелёный-чёрный" (см. вставку о палитрах цветов).
Заметьте, что если Вы добавляете прицел (см. ниже, как это сделать), то
будет показан цвет пикселя, находящегося под перекрестьем прицела. Если
Вы добавите и второй прицел, то будет показан цвет пикселя, находящегося
под перекрестьем второго прицела.
Меню опций открывается нажатием на клавишу со стрелочкой
вниз, или правым щелчком в окне экранной лупы. Как оно выглядит - показано
на скриншоте справа:
В этом меню находятся следующие опции:
About Magnify - краткие сведения об авторах
программы.
Help - открывает маленькое окно с краткой
(очень краткой) помощью. Окно помощи показано на скриншоте слева.
Save Image - комбинация клавиш Alt+S
- сохраняет текущее содержание окна в файл на жёстком диске.
Copy Image - комбинация клавиш Alt+C,
стандартная для BeOS - копирует содержимое окна в "карман" (clipboard).
Hide
/ Show Info - комбинация клавиш Alt+T
- показывает или скрывает строки информации, расположенные в верхней части
окна. Без них окно Magnify выглядит так, как показано на скриншоте справа
(для этого скриншота я ещё и убрал сетку - см. опцию Hide / Show Grid чуть
ниже). Окно становится значительно меньше - фактически, скриншот, помещённый
справа, показан в натуральную величину.
Add a Crosshair - комбинация клавиш Alt+H
- добавляет перекрестье прицела, перемещаемое по окну щелчком левой клавиши
мышки; при этом в нижней части окна программы (под окном экранной лупы)
написано, на сколько пикселов перекрестье прицела отстоит от верхнего левого
угла экранной лупы по горизонтали (значение x)
и по вертикали (значение y). Практически
бесполезная, насколько я знаю, опция. Единственное её практическое применение,
которое я могу придумать - выравнивание объектов в программах редактирования
графики вдоль одной вертикальной или горизонтальной линии. Однако и здесь
использование будет проблематичным, потому что перекрестье прицела будет
перемещаться вместе с мышкой. Вы можете добавить два прицела, но помните,
что щелчок левой клавишей мышки перемещает по окну экранной лупы только
последний добавленный прицел - если нет ни одного прицела, то щелчок перемещает
красный квадратик. Повторюсь, все опции прицела кажутся мне совершенно
бесполезными. Но, как говорится, если Солнце встаёт на востоке - значит,
это кому-нибудь нужно? Поэтому оставим эту опцию в покое, полюбуемся скриншотом
со включённым прицелом (слева) и перейдём к следующей опции.
Remove a Crosshair - комбинация клавиш Shift+Alt+H
- убирает прицел; начиная с последнего добавленного. Если нет ни одного
прицела - не делает ничего.
Hide / Show Grid - комбинация клавиш Alt+G
- показывает или прячет сетку. Сетка серого цвета делит окно экранной лупы
на квадраты, каждый из которых соответствует одному пикселю. Служит, разумеется,
для облегчения навигации. Достаточно полезная опция, но несколько портит
эстетическое впечатление от картинки, поэтому лично я её обычно выключаю.
Сравните два скриншота: самый первый (выполнен с сеткой, так как сетка
включена по умолчанию) и любой другой.
Freeze / Unfreeze Image - комбинация клавиш
Alt+F
- фиксация ("заморозка") содержимого окна экранной лупы. Как я уже говорил
выше, содержимое окна постоянно привязано к курсору. Разберём практический
пример: для того, чтобы сделать скриншот какого-либо участка экрана под
увеличением, мне необходимо запустить программу, которая выполнит скриншот,
в тот момент, когда в окне экранной лупы Magnify находится нужный участок
экрана. То есть, курсор мыши должен одновременно находиться в двух местах:
над интересующим меня местом на экране - чтобы показать его в окне Magnify
- и над клавишей "Make Screenshot" в программе, выполняющей снимок с экрана,
(скажем, GrabIt).
Разумеется, это невозможно.
Решение заключается в заморозке содержимого окна.
Вы проводите курсор мышки над тем местом на экране, которое хотите снять
в увеличенном виде; проверяете, что в окне Magnify отображено именно то,
что Вы хотите снять, и нажимаете Alt+F. С этого момента Вы можете делать
всё, что угодно - изображение в окне экранной лупы не изменится. Именно
так были выполнены все показанные здесь скриншоты, кроме скриншота с опциями
Magnify (обратите внимание на содержимое окна экранной лупы).
Чтобы отменить фиксацию изображения, нажмите Alt+F
снова.
Make Square - комбинация клавиш Alt+/
- окно экранной лупы меняется так, чтобы количество отображаемых пикселей
по вертикали и по горизонтали было одинаковым. Скриншот "Окно Magnify без
информации и без сетки" был выполнен после того, как я превратил его в
квадрат со стороной 16 пикселей - именно с помощью этой опции.
Decrease и Increase Window Size -
комбинации клавиш Alt+-
и Alt++ соответственно - уменьшение
/ увеличение размера окна экранной лупы. При большем размере окна, разумеется,
видно больше пикселей.
Decrease и Increase Pixel Size - комбинации
клавиш Alt+, и Alt+.
соответственно - уменьшить / увеличить масштаб.
Собственно, это всё, что можно сказать о Magnify. Весьма интересная программа,
у которой, к сожалению, мало областей применения. Но одну область применения
я всё-таки для неё нашёл: с помощью Magnify я проверяю, размыты ли шрифты
(я имею ввиду antialiasing) в какой-либо программе, или нет. В самом BeOS
шрифты на самом деле размыты - на прилагаемом скриншоте это достаточно
хорошо видно.
Вставки
Пасхальные яйца 3dmix
В 3dmix есть два "пасхальных яйца" - опций, встроенных специально для развлечения
пользователя. Одно из них находится в окне двухмерного планирования звука
- в окне с тёмно-синей сеткой на чёрном фоне:
Щёлкните один раз левой кнопкой мышки на одном из цветных столбов - он
станет непрозрачным. Теперь удерживайте клавишу Alt, щёлкните на этом столбе
мышкой и, удерживая клавишу мышки нажатой, поводите мышкой из стороны в
сторону. Заметьте, как основание цветового столба расширяется, превращая
столб в пирамидку! Это ещё не само "пасхальное яйцо", это только подготовка
к нему.
Теперь нажмите клавишу P. Каждый световой столб
начнёт извергать из себя светящиеся искры!
Второе "пасхальное яйцо" находится в окне "О программе...", открываемом
из меню File > About 3dmix. Просто подождите, пока программа сообщит Вам,
кто её создатель, и буквы рассыпятся цветными искрами. А потом щёлкните
мышкой среди искр. Когда это развлечение Вам надоест, нажмите пробел, чтобы
включить дополнительную иллюминацию. Чтобы её потом выключить, снова нажмите
пробел.
|
Восстановление стёртого файла, и почему не стоит
на него надеяться
Любой файл, практически в любой файловой системе, практически
в любой операционной системе, записан в нескольких блоках. С конца предыдущего
имеется ссылка на начало последующего - таким образом обеспечивается непрерывность
информации. Операционная система, следовательно, должна знать только, где
находится начало первого блока файла - это гарантирует, что все блоки,
занятые файлом, будут сохраняться в целости и сохранности, и поверх них
ничего не будет записано.
Соответственно, для стирания всего файла необходимо
только стереть указатель на первый блок. Это "снимет защиту" со всех блоков,
занятых файлом, и поверх любого из них может быть записана новая информация.
Замена физического стирания всех блоков файла стиранием только указателя
на первый блок результирует в повышении скорости работы с диском. Для сравнения
представьте себе такой пример: стирание файла в 300 мегабайт занимает почти
столько же времени, сколько занимает стирание файла в полкилобайта - не
более пары секунд. Если бы для стирания всего файла надо было бы стирать
(читай - перезаписать) все занятые файлом блоки, та же самая операция заняла
бы столько времени, сколько нужно для записи 300 мегабайт на диск. Обычно
- несколько минут. Разница значительная.
Но такой способ работы с файловой системой означает,
что после стирания файла информация, содержавшаяся в нём, всё ещё находится
на жёстком диске! Да, без указателя на неё, но, закопавшись в содержание
диска, эту информацию можно отыскать и перекопировать в новый файл. Закопаться
в содержимое диска можно с помощью DiskProbe. Это и имелось ввиду выше.
Так что, теоретически, любой файл сразу после удаления можно восстановить.
(Сразу после удаления - потому что иначе возрастает шанс, что в блоки с
содержимым удалённого файла уже была записана новая информация).
Теперь разберёмся с "теоретически". Да, информация
из удалённого файла всё ещё на диске, но попробуй отыщи её среди гигабайтов
содержимого остальных файлов! Файл может быть разбросан по всему диску,
(см. первый абзац для объяснения), поэтому найти его содержимое можно только
в том случае, если точно знать, что искать. Именно поэтому DiskProbe может
спасти Ваш случайно удалённый текстовый файл - но только если Вы точно
знаете, что там было написано, и готовы выковыривать этот текст из диска
по букве. По-моему, проще набрать его заново.
Утилиты, созданные для облегчения жизни в таких
печальных ситуациях, как случайное удаление файла, делятся на три вида:
"Мусорная корзина", Дефрагментация и "Воскрешение Усопших". Работа их сводится
примерно к следующему:
-
"Мусорная корзина" - как мы уже знаем, местоположение файла
в системе определяется местоположением указателя на первый блок информации,
составляющей этот файл. Поэтому элементарное решение проблемы случайных
удалений будет перемещать указатель на первый блок файла в специальную
папку (называемую "Recycle Bin", "Trash" или как-нибудь иначе) вместо того,
чтобы тут же его удалять. При этом, поскольку указатель на первый блок
существует, файл останется "защищённым от перезаписи" и не будет затёрт
новой информацией.
"Мусорная корзина" поэтому ничем не отличается от
любой другой папки, но производители операционных систем часто создают
искусственные ограничения, чтобы подчеркнуть отличие "мусорной корзины".
Так, в Windows Вы не можете ни открыть, ни запустить файл, находящийся
в Recycle Bin. В BeOS единственное существующее ограничение - невозможность
запустить находящуюся в Trash программу.
Некоторые операционные системы запоминают также,
откуда был удалён файл, (иначе говоря - запоминается предыдущее местоположение
указателя на первый блок файла), и могут восстановить файл в то место,
откуда он был стёрт (читай - вернуть указатель на его прежнее место). BeOS
сам по себе такой способностью не обладает, но можно скачать с www.bebits.com
программу, называющуюся Undelete,
которая позволит восстанавливать файлы в ту папку, из которой они были
удалены.
-
Дефрагментация - соединение блоков (фрагментов), на которых
записан файл, в один большой непрерывный блок. Теоретически, эта операция
должна ускорить процессы чтения / записи файла, потому что головке диска
придётся меньше "скакать" по диску, выискивая эти отдельные блоки, - а
именно эти скачки и занимают большую часть времени чтения / записи.
Дополнительная выгода собирания всего содержимого файла в одну кучу - при
случайном удалении файла намного проще найти и спасти хотя бы часть файла
с помощью программы типа DiskProbe, если он будет записан одним куском,
а не будет разбросан по всему жёсткому диску.
Свою дополнительную задачу дефрагментация
выполняет прекрасно, а вот с основной она не справляется. Но это, скорее,
проблема технического решения современных операционных систем, а не идеи
дефрагментации. Абсолютное большинство современных операционных систем
многозадачны, то есть - занимаются большим количеством заданий одновременно.
Это обычно включает в себя одновременное исполнение нескольких операций
записи / чтения, что заставит головку диска "танцевать" вне зависимости
от того, записаны участвующие в этих операциях файлы одним непрерывным
блоком или нет.
BeOS не имеет встроенной утилиты дефрагментации
- за ненадобностью. Во-первых, BeOS интенсивно использует многозадачность
в операциях с жёстким диском, так что запись файла в один блок не
принесёт ощутимой выгоды в скорости. А во-вторых, большая часть файлов
на BeOS-дисках обычно и так записана в одном или двух фрагментах. Скот
Хакер приводит такой пример: один инженер после полугода работы с BeOS
проверил содержимое диска, и 90% файлов было записано одним непрерывном
блоком или в двух фрагментах. Так что дефрагментация просто не нужна.
-
"Воскрешение Усопших" - утилита, позволяющая восстановить
файл со стёртым указателем на первый блок. Как уже отмечалось ранее, при
стирании файла из системы стирается на самом деле только указатель на него,
но все указатели переходов с первого блока на второй, со второго на третий
и так далее сохраняются. Последний блок оканчивается символом EOF - End
Of File ("конец файла"). Помимо этого, блоки пронумерованы. Если стереть
указатель на первый блок файла (читай - стереть файл) и проанализировать
содержимое жёсткого диска, можно найти последовательную серию из нескольких
блоков информации, начинающуюся блоком № 1 и оканчивающуюся знаком EOF,
на которые не указывает ни один указатель. Это и есть только что удалённый
файл. Всё, что осталось - это только поместить где-нибудь указатель на
первый блок, и стёртый файл будет восстановлен.
К сожалению, утилит такого типа для BeOS нет. Я
встречал только утилиты такого типа для MS-DOS, но и они часто оказывались
неспособными восстановить стёртый файл, или восстанавливали его не полностью.
(Если после удаления файла на диск производилась запись, шансы успешно
восстановить этот файл катострофически уменьшаются, потому что система
относится к блокам с информацией из стёртого файла как к пустым, и может
записать новую информацию в них - тем самым затирая старую, принадлежащую
файлу, который мы хотим восстановить).
Как Вы наверняка заметили и сами, я не в большом восторге от эффективности
существующих систем, облегчающих последствия случайного удаления. Поэтому
мой Вам совет: пользуйтесь "мусорной корзиной", если Вы не уверены совершенно
точно в том, что Вам этот файл больше никогда не понадобится. И примите
во внимание, что удаление из командной строки (Terminal) всегда окончательное,
то есть - файл, удалённый в Terminal`е командой rm, восстановить, скорее
всего, будет невозможно. |
Шестнадцатеричная, двоичная и десятеричная системы
исчисления
Выбор десятеричной системы как основной системы исчисления
был навязан фактом наличия 10 пальцев на руках. Другие системы исчисления
имеют не меньше прав на существование, - в частности, сразу приходит на
ум двенадцатеричная, использовавшаяся до недавнего времени в Англии, потому
что 12 делится нацело на 2, 3, 4 и 6, тогда как 10 - только на 2 и 5.
Для программистов же особую важность имеют системы
исчисления, имеющие в основании степени двойки. Современная компьютерная
архитектура основана на двоичной системе исчисления (цифровая запись которой
содержит только две цифры - 1 и 0, и каждое знакоместо называется бит).
Но эта система не слишком удобна для записи, потому что, например, число
123 будет записано как 01111011 - долго и неудобно. Тем более, что программисты
редко когда работают с отдельными битами, они чаще работают с пакетами
по 8 бит, называемыми байты. Такой пакет (пример его был предоставлен несколькими
строками выше) достаточен для обозначения любого символа, который включён
в стандартную таблицу кодов ASCII. Простой подсчёт покажет, что один восьмибитный
байт имеет 8 знакомест для отображения двух возможных цифр - итого 16.
Поэтому система исчисления, каждое знакоместо в которой соответствует байту,
называется шестнадцатеричной.
Перевод чисел из десятеричной системы в двоичную
и обратно достаточно прост. Как в десятеричной системе каждое следующее
знакоместо соответствует степени десятки, так в двоичной системе следующее
знакоместо соответствует степени двойки. Ниже приведена таблица соответствия
чисел в десятеричной системе соответствующему знакоместу в двоичной системе:
Знакоместо
|
8
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
Десятеричная система
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
Точно так же, как число 709
читается "9 единиц + 0
десятков + 7 сотен", число 110101
будет читаться "1 единица + 0
двоек + 1 четвёрка + 0
восьмёрок + 1 раз по 16 + 1
раз по 32", что в сумме даёт 1 + 4 + 16 + 32
= 53. Таким образом, двоичное число 110101
соответствует десятеричному числу 53.
Обратный перевод (из десятеричной системы в двоичную)
немногим сложнее. Нужно просто делить десятеричное число на степень двойки
с остатком, следя за тем, чтобы в частном оставалось либо 0, либо 1. Потом
ту же операцию повторить с остатком, и так далее. Например, перевод числа
709
в двоичную систему будет выглядеть так (знак % обозначает деление с остатком):
709 % 256 = 2,
остаток 197 - не подходит, частное
больше 1. Пробуем большую степень двойки.
709 % 512 = 1,
остаток 197 - первый слева знак 1.
197 % 256 = 0,
остаток 197 - второй слева знак 0.
197 % 128 = 1,
остаток 69 - третий слева знак 1.
69 % 64 = 1,
остаток 5 - четвёртый слева знак
1.
5 % 32 = 0,
остаток 5 - пятый слева знак 0.
5 % 16 = 0,
остаток 5 - шестой слева знак 0.
5 % 8 = 0,
остаток 5 - седьмой слева знак 0.
5 % 4 = 1,
остаток
1 - восьмой слева знак 1.
1 % 2 = 0,
остаток 1 - девятый слева знак 0.
1 % 1 = 1,
остаток 0 - десятый слева знак 1.
Деление закончено.
Теперь осталось только записать полученное в строку:
1011000101.
То есть, в двоичной системе число 709
будет записываться как
1011000101.
Зная принципы перевода из десятеричной системы в
двоичную и обратно, легко приспособиться и к переводам из десятеричной
системы в шестнадцатеричную и обратно. Необходимо только помнить, что основа
этой системы - 16, то есть на каждом знакоместе могут стоять цифры от 0
до 15. Поскольку такой цифры, как 13, не существует, решено было обозначить
цифры от 10 до 15 буквами от a до
f,
то есть цифры шестнадцатеричной записи - 0 1
2 3 4 5 6 7 8 9 a b c d e f. (Часто применяются заглавные латинские
буквы - A B C D E F). Применяя правила
перевода чисел из системы в систему, получаем:
Знакоместо
|
4
|
3
|
2
|
1
|
Десятеричная система
|
4096
|
256
|
16
|
1
|
Перевод из шестнадцатеричной системы в десятеричную:
ad18b означает
"11 единиц + 8
раз по 16 + 1 раз по 256 + 13
раз по 4096 + 10 раз по 65536", то
есть ad18b = 11 + 128 + 256 + 53248 + 655360
= 709003.
Перевод из десятеричной системы в шестнадцатеричную:
18096 будет:
18096 % 4096 = 4,
остаток 1712 - первый слева знак
4.
1712 % 256 = 6,
остаток 176 - второй слева знак 6.
176 % 16 = 11,
или b, остаток 0
- третий слева знак b.
0 % 1 = 0,
остаток 0 - четвёртый слева знак
0.
Деление закончено.
То есть, 18096
в десятеричной системе - это 46b0 в
шестнадцатеричной.
Если постараться, можно придумать примерно такой
же способ прямого перехода из двоичной системы в шестнадцатеричную и обратно,
но это выходит за рамки сей книги.
Для того, чтобы можно было отличить число, записанное
в двоичной системе, от чисел, записанных в десятеричной и в шестнадцатеричной
системах, принято обозначать их по-разному:
Число в двоичной системе записывается с индексом
(bin)
или 2 после числа:
1101011
= 11010112 = 1101011(bin)
Число в десятеричной системе записывается с индексом
10
или без индекса вообще:
1101011
= 110101110
Число в шестнадцатеричной системе записывается с
индексом 16, или перед числом добавляется
0x:
1101011
= 110101116 = 0x1101011
Абсолютное большинство встречаемых Вами в BeOS чисел
будет записано в десятеричной или в шестнадцатеричной системе исчисления. |
Автоматическая система скачивания программ
Устанавливать такую систему имеет смысл только в том
случае, если Вы скачиваете много программ с BeOS-сайтов.
Когда процесс скачивания заканчивается, NetPositive
(Интернет-просмотрщик ("браузер"), поставляющийся с BeOS) автоматически
запускает скачанное. Если Вы скачивали файл .zip - а большинство программ
распространяются именно в этом формате - то после окончания скачивания
будет автоматически открыт Expander. В Expander`е Вы можете определить
папку, в которую по умолчанию будут распаковываться программы, и отметить
опцию "Automatically rexpand files", чтобы разархивирование начиналось
без Вашего участия. В таком случае после того, как Вы скачаете программу,
она будет автоматически распакована в какую-либо папку на Вашем жёстком
диске.
Для BeOS не имеет никакого значения, где и как установлена
Ваша программа. Не существует такого процесса, как "инсталляция". В тот
момент, когда программа распакована, она может быть запущена - и неважно,
в какой директории находится папка с программой, которую Вы запускаете.
Это и хорошо, и плохо. Хорошо потому, что Вы можете
сами организовывать структуру папок, из которых запускаются программы.
А плохо потому, что если Вы не следите за своим диском, он очень быстро
замусорится папками с программами, кусками удалённых программ и протоколами
инсталяции (log-файлами). В BeOS нет какого-то стандартного средства удаления
программ, (потому что удаление программы - это просто стирание папки, в
которую она была установлена), поэтому необходимо быть весьма аккуратным
в распределении программ на жёстком диске.
Самый лучший способ, который я горячо рекоменую
всем - это создать в папке /boot/home поддиректорию Programs, в которой
и хранить все установленные Вами программы, распределяя их по директориям
- игры в Games, программы для работы с графикой - в Graphics, программы
для работы с текстом - в Text и так далее.
Так вот, в этой же папке Programs создайте папку
Test и определите её (/boot/home/Programs/Test) как папку для автоматической
распаковки в Expander`е. Теперь каждая новая программа будет распакована
в собственную поддиректорию в папке /boot/home/Programs/Test. Оттуда Вы
можете её запустить, проверить, и если программа Вам понравилась, перенесите
её поддиректорию из папки Test в соответствующую поддиректроию папки Programs.
Пример: я начал скачивать гипотетическую программу
Quake VI в виде файла quake6.zip. Как только этот файл будет полностью
скачан, он будет автоматически распакован Expander`ом в папку /boot/home/Programs/Test.
Если составитель программы был достаточно сообразительным, он составил
файл quake6.zip так, чтобы при его распаковке в папке Test образовалась
директория Quake (или что-то похожее), внутри которого и находится уже
готовая к использованию программа.
Я проверяю программу. Если она мне нравится, я перетаскиваю
её из папки Test в подходящую папку в директории Programs. Если нет - просто
стираю. Таким образом, диск всегда остаётся упорядоченным, и поиск программы
среди установленных становится лёгким и удобным. |
Палитра цветов RGB в обычном и в шестнадцатеричном
виде. Другие палитры цветов.
Технология изготовления цветных мониторов (как и цветных
телевизоров) заключается в нанесении на экран очень близко расположенных
друг к другу точек трёх цветов: синего, красного и зелёного. Вы можете
легко убедиться в этом сами, рассмотрев экран с помощью лупы. Каждая точка
сделана из материала, который начинает светиться, если бомбардировать её
электронами. Яркость свечения напрямую зависит от частоты бомбардировки;
так что, управляя интенствностью потока электронов, можно изменять яркость
цвета. Поскольку точки находятся очень близко друг к другу, для человеческого
глаза они практически сливаются в одну. Эта одна точка имеет цвет, получаемый
смешением красных, синих и зелёных оттенков. Сила электронного луча (а
следовательно, и яркость свечения красного, синего и зелёного цвета) может
меняться от 0 до 255; это даёт нам по 256 оттенков красного, синего и зелёного
цвета - всего 256 * 256 * 256 = 16777216 цветов, или 24 бита. Фактически,
любой цвет может быть представлен сочетанием каких-либо значений красного,
зелёного и синего - так называемой "палитры RGB"
(от Red,
Green
и Blue).
Некоторые комбинации видеокарт и мониторов предоставляют
опцию для 32 бит цветов - больше, чем может дать монитор, совместимый со
стандартами. На самом деле ещё 256 оттенков (или 8 бит) зарезервированы
для прозрачности каждого пикселя. Такое решение сильно облегчает компьютеру
работу с полупрозрачными изображениями. Представьте себе, например, наложение
двух картинок, верхняя из которых полупрозрачна. С 24 битами цвета компьютеру
придётся рассчитать цвет пикселей в области, где картинки перекрывают друг
друга, и посылать эти значения в видеокарту. При 32 битах цвета операционная
система просто присваивает верхней картинке какое-то значение прозрачности,
а все остальные расчёты выполняет видеокарта - что сохраняет ресурсы компьютера
для других задач. Важно, однако, что с точки зрения пользователя 24 бита
цвета и 32 бита цвета невозможно отличить на глаз. (Вообще, человеческий
глаз, по сведениям Encyclopaedia
Britannica, может различать только около десяти миллионов цветов, то
есть уже при 24 битах цвета экран показывает больше цветов, чем глаз может
различить).
Как мы уже знаем из вставки Шестнадцатеричная,
двоичная и десятеричная системы исчисления, 256 - это как раз два знака
шестнадцатеричной системы исчисления. Поэтому палитру RGB, в которой для
красного, зелёного и синего цвета зарезервировано по три знака (от 0 до
255), можно записать короче - в шестнадцатеричной системе исчисления для
красного, синего и зелёного потребуется только два знака (от 0 до ff).
Зная, что первые два знака всегда описывают интенсивность красного цвета,
вторые - зелёного, а третьи - синего, цвета часто записывают в строку,
без дополнительных комментариев. Например, 0f67d5
означает 015 (из 255) единиц красного
цвета, 103 единицы зелёного и 213
единиц синего цвета - что даёт вот этот цвет.
Для того, чтобы отличать десятеричную запись палитры
RGB от шестнадцатеричной, перед шестнадцатеричной записью ставят знак #.
Так, цвет в предыдущем примере надо было бы записать так: #0f67d5.
Существующие палитры определения цветов не ограничиваются
RGB. Так, есть палитра CMYK (Cyan,
Magneta,
Yellow
и Black - "Сине-зелёный,
бордовый,
жёлтый
и чёрный"), которая используется
в цветных принтерах и полиграфии. В этой палитре любой цвет представляется
как сочетание этих четырёх основных цветов и описывается различными
численными значениями для основных цветов, - примерно как сделано и в палитре
RGB.
Есть также палитра Lab,
которая применяется очень редко и может быть использована для описания
любого цвета, даже если он не может быть передан на бумаге или на экране.
В палитре Lab цвет описывается тремя числами: яркостью (это первое число
соответствует букве L - от английского
Lightness)
и координатами этого цвета по осям "красный-зелёный"
и "синий-жёлтый", - как координаты
точки на координатной плоскости (все вместе быстро вспоминаем уроки аналитической
геометрии). Оси обозначаются буквами a
и b, поэтому сама палитра и называется
Lab
- цвет определяется параметрами
L,
a
и b.
Разумеется, используемые палитры не ограничиваются
вышеперечисленными тремя.
Большинство современных программ для работы с графикой
прекрасно справляются со всеми этими и многими другими палитрами.
Информация для этой вставки была найдена
на сайте "Ру/ководство"
Артемия Лебедева
и на сайте Encyclopaedia Britannica.
|