В названии программы, которой посвящен настоящий сайт, объединены имена двух фирм: широко известной Corel Corp. и более скромной XARA Ltd. Так кто же автор программы CorelXARA, и чем она отличается от других программ создания иллюстраций, например продуктов самой Corel Corp.?
Программы канадской компании Corel Corp. вызывают много споров среди пользователей. Особенно это относится к знаменитому пакету CorelDRAW. Входящая в него программа для создания иллюстраций (собственно CorelDRAW) давно стала в России самой популярной из всех аналогичных программ. В первую очередь это обусловлено великолепно продуманным, удобным, ясным, да и просто красивым интерфейсом. Обилие возможностей и довольно высокая скорость работы также говорят в пользу этого пакета. Тем не менее, подавляющее большинство профессионалов пренебрежительно относятся к CorelDRAW. Их позиция не менее обоснованна, чем у приверженцев популярной программы. Главный ее недостаток они усматривают в большом количестве ошибок, сказывающихся на устойчивости работы и корректности вывода на печать. В студиях предпечатной подготовки за работу с файлами CorelDRAW очень часто устанавливают наценки до 30%. Очевидны недостатки программы и для непрофессионального пользователя. Устанавливая последние ее версии, пользователь обнаруживает, что программа занимает сотню-полторы мегабайтов на его жестком диске даже в самом минимальном наборе. Неужели действительно необходимо столько кода для того, чтобы нарисовать логотип фирмы или баннер для Web-страницы?
Ядром любой микропроцессорной системы является микропроцессор или просто процессор (от английского processor). Перевести на русский язык это слово правильнее всего как "обработчик", так как именно микропроцессор — это тот узел, блок, который производит всю обработку информации внутри микропроцессорной системы. Остальные узлы выполняют всего лишь вспомогательные функции: хранение информации (в том числе и управляющей информации, то есть программы), связи с внешними устройствами, связи с пользователем и т.д. Процессор заменяет практически всю "жесткую логику", которая понадобилась бы в случае традиционной цифровой системы. Он выполняет арифметические функции (сложение, умножение и т.д.), логические функции (сдвиг, сравнение, маскирование кодов и т.д.), временное хранение кодов (во внутренних регистрах), пересылку кодов между узлами микропроцессорной системы и многое другое. Количество таких элементарных операций, выполняемых процессором, может достигать нескольких сотен. Процессор можно сравнить с мозгом системы.
Термин контроллер образовался от английского слова to control - управлять. Эти устройства могут основываться на различных принципах работы от механических или оптических устройств до электронных аналоговых или цифровых устройств. Механические устройства управления обладают низкой надежностью и высокой стоимостью по сравнению с электронными блоками управления, поэтому в дальнейшем мы такие устройства рассматривать не будем. Электронные аналоговые устройства требуют постоянной регулировки в процессе эксплуатации, что увеличивает стоимость их эксплуатации. Поэтому такие устройства к настоящему времени почти не используются. Наиболее распространенными на сегодняшний день схемами управления являются схемы, построенные на основе цифровых микросхем.
В зависимости от стоимости и габаритов устройства, которым требуется управлять, определяются и требования к контроллеру. Если объект управления занимает десятки метров по площади, как, например, автоматические телефонные станции, базовые станции сотовых систем связи или радиорелейные линии связи, то в качестве контроллеров можно использовать универсальные компьютеры. Управление при этом можно осуществлять через встроенные порты компьютера (LPT, COM, USB или ETHERNET). В такие компьютеры при включении питания заносится управляющая программа, которая и превращает универсальный компьютер в контроллер.
Один из методов снижения расходов на производство материнских плат — использование общего дизайна печатной платы для всего модельного ряда.
Требуемое же разнообразие функциональных возможностей моделей достигается за счет применения в них разных наборов электронных компонентов, а также внесения соответствующих конструктивных изменений.
В качестве примера использования общего дизайна в материнских платах можно привести модели линейки GA-G1975X компании Gigabyte — они принадлежат к изделиям ценовой группы High End и выпущены производителем на основе топового чипсета Intel 975X.
Появление микропроцессоров сыграло важную роль в развитии вычислительной техники, средств обработки информации и управляющих устройств, являющихся основой автоматизации в различных сферах человеческой деятельности. Неослабевающий интерес к микропроцессорам объясняется такими их особенностями, как низкая стоимость, высокая надежность, компактность и значительные функциональные и вычислительные возможности, позволяющие применять их даже там, где использование средств цифровой обработки информации ранее считалось нецелесообразным. В настоящее время как у нас в стране, так и за рубежом издается весьма обширная литература по микропроцессорной технике и возможностям ее применения. И все же книг с описанием реально построенных конструкций и устройств на базе микропроцессоров явно недостаточно для удовлетворения постоянно растущего спроса на такие публикации. Именно это побудило авторов взять на себя смелость написать нечто вроде руководства, ориентированного на читателя, пожелавшего ознакомиться с работой простейшей микро-ЭВМ или заняться ее изготовлением.
Основное преимущество PIC-контроллеров заключается в их низком потреблении при высоком быстродействии, что очень полезно в приборах с автономным питанием. Еще большей экономии энергии можно достичь при использовании дежурного режима. При этом основное время микроконтроллер находится в режиме sleep, при котором приостанавливается выполнение программы, выключается тактовый генератор, но может продолжать свою работу Watch Dog таймер и некоторые периферийные устройства. Выход из этого режима может производиться по-разному, в зависимости от типа контроллера.
Например, можно запрограммировать Watch Dog таймер («собаку») на определенный период, при срабатывании которого контроллер «проснется», опросит свои входы и, если нужно, перейдет к процедуре обработки. Если никаких действий совершать не нужно, он выполнит команду SLEEP и будет находиться в этом состоянии до следующего срабатывания таймера. При выполнении процедуры обработки следует периодически сбрасывать «собаку» для предотвращения те повторного срабатывания. Используя подобную методику, можно "строить приборы, не требующие выключателя питания, различные сигнализирующие и контрольные приборы.
Первый урок, кстати, самый простой в этой книге. Может быть, задача переворачивания страницы трехмерной книги покажется вам банальной и даже скучной. Я
думал точно так же, пока не предложил это задание десяти студентам университета в классе 3D анимации. Я дал им 30 минут на то, чтобы смоделировать лист
бумаги и перевернуть его справа налево.
Некоторые студенты уже занимались трехмерной анимацией в свободное время, другие подрабатывали Веб-дизайном. Все они были хорошо знакомы с интерфейсом Мауа.
Однако через полчаса никто из них не смог сконструировать изгибающуюся в процессе перелистывания страницу книги.
Лучшим результатом была выпуклая страница, которая проникала в корешок книги, поскольку ее кривизна не менялась во время переворачивания. Некоторые
студенты пытались решить проблему с помощью Soft Body Dynamics (Динамики Мягкого Тела), один студент даже использовал Maya Cloth (Maya Ткани); они просто
не смогли справиться с задачей, используя базовые приемы моделирования.
Поэтому, если вы все еще считаете этот урок простым, возьмите и сконструируйте страницу на вашем компьютере. И не переворачивайте страницу этой книги, пока
не перевернете трехмерную страницу в Мауа.
Системное описание базируется на особенностях операционной системы UNIX версия V редакция 2, распространением которой занимается корпорация AT&T, с учетом отдельных особенностей редакции 3. Это та система, с которой я наиболее знаком, однако я постарался отразить и интересные детали других разновидностей операционных систем, в частности систем, распространяемых через "Berkeley Software Distribution" (BSD). Я не касался вопросов, связанных с характеристиками отдельных аппаратных средств, стараясь только в общих чертах охватить процесс взаимодействия ядра операционной системы с аппаратными средствами и игнорируя характерные особенности физической конфигурации. Тем не менее, там, где вопросы, связанные с машинными особенностями, представились мне важными с точки зрения понимания механизма функционирования ядра, оказалось уместным и углубление в детали. По крайней мере, беглый просмотр затронутых в книге вопросов ясно указывает те составные части операционной системы, которые являются наиболее машинно-зависимыми.
Люди, уходя из дома, обычно закрывают входную дверь на замок. Они также запирают свои автомобили, оставляя их припаркованными на улице иди на стоянке. И, как правило, не сообщают номер своей кредитной карты первому встречному коробейнику, который пристает к прохожим па удине. настырно предлагая купить у него товары сомнительного качества. Однако подавляющее большинство людей до конца не осознает, насколько сильно они рискуют, если не заботятся о защите
информации, находящейся в их компьютерах.
Достоверно известно, что лишь отдельные пользователи предпринимают хоть какие-то меры, призванные сберечь их данные. Остальные всерьез задумываются об этом только тогда, когда теряют информацию, хранимую в компьютере. Более того,
их компьютерные системы зачастую совершенно не защищены от краж и вандализма. Каждый раз, используя свой компьютер, его владелец добавляет туда определенную порцию информации. Именно эта совокупная информация и является
наиболее ценным компонентом всей компьютерной системы. А это значит, что если не предпринять специальных мер для ее зашиты, издержки, которые понесет пользователь, попытавшись восстановить утраченные данные, значительно превысят
стоимость аппаратных средств, используемых для хранения этих данных. Еще более чреватой опасными последствиями является ситуация, при которой налоговая и банковская информация пользователя или его деловая переписка попадает в чужие руки. Трудно себе вообразить, что кто-то, находясь в здравом уме и твердой памяти, по доброй воле предоставляет свою личную информацию людям, с которыми не имеет или не желает иметь никаких дел.
Вообще, слово “компьютер” переводится как “вычислитель”. Именно потребность в автоматизации и убыстрении вычислений подвигла 18-летнего француза Блеза Паскаля изобрести в 1642 году суммирующую машину — «паскалин» — первый арифмометр, механически выполнявший сложение. В 1673 году уже немецкий математик Готфрид Вильгельм Лейбниц построил свой механический арифмометр — «машину четырех действий». Основными «считающими» деталями в этих приборах были зубчатые колесики, причем один зубчик всегда был длиннее остальных, этим длинным зубчиком зацеплялось соседнее колесико и поворачивалось на некоторый угол. В окошечке выскакивала другая цифра, нежели набранная ранее. Система взаимосвязанных колесиков (с десятью или двумя зубчиками — в зависимости от того, какая система счисления использовалась в данном арифмометре) позволяла производить четыре арифметических действия — сложение, вычитание, умножение и деление, и была хорошим подспорьем для расчетчиков баллистических таблиц для артиллерийских стрельб, да и не только для них.
Минута соединения вашего компьютера с Internet - это минута, когда безопасность ваших данных подвергается риску. Даже наиболее безопасные системы, которые находятся под контролем наиболее образованных и способных, с большим опытом, системных администраторов, с использованием самого современного и проверенного програмного обеспечения, постоянно находятся в опасности, каждый день. Как было доказано Кевином Митником (Kevin Mitnick) при взломе San Diego Supercomputer Center в 1994 году, даже самые "закаленные" защиты, написанные ветеранами подобно Tsutomu Shimamura можно, обойти.
Весьма печальным фактом является то, что хакеры зачастую обладают некоторыми преимуществами. Время, постоянство, творческий потенциал, сложность программного обеспечения, окружение сервера и невежество рядового пользователя - их оружие. Администратор системы должен манипулировать множеством, постоянно изменяющихся, комплексно связанных аспектов безопасности в целом, в то время как хакерам требуется только терпеливо ждать, когда администратор ошибется.
Почему вас могло бы заинтересовать программирование на языке ассемблера? Cегодня повсюду используются такие языки высокого уровня как Бэйсик, Фортран и Паскаль. Возможно, вы уже знакомы по крайней мере с одним языком высокого уровня. Если вы постоянно пльзуютесь персональным компьютером IBM, то вы знаете, что интерпритатор Бэйсика является частью системы. Зачем же возиться еще с одним языком программирования, тем более с таким, который сулит определенные трудности? Очевидно, даже располагая современными могучими языками, вы все еще нуждаетесь в ассемблере из-за его эффективности и точности.
Cтабилизатор собран по схеме моста в выходной цепи, образованного резисторами R4, R5, стабилитронами D1, D2 и светодиодом D3.В диагональ моста включен эмиттерный переход транзистора Q3, управляющего регулирующим составным транзистором Q2,Q1. Составной транзистор включен по схеме с общим эмиттером. Более высокое по сравнению с эмиттерным повторителем выходное сопротивление оконечного каскада компенсируется в этой схеме тем, что выходной каскад имеет высокий коэффициент усиления по напряжению, последнее заметно повышает коэффициент петлевого усиления схемы стабилизатора. Так как напряжение на базе управляющего транзистора Q3 по отношению к плюсовому проводу оказывается стабилизированным, то изменения выходного напряжения передаются на эмиттерный переход этого транзистора без ослабления делителем.
Максимальный ток нагрузки задается резистором R4. Ток базы транзистора Q2 не может превысить значения тока, текущего через резистор R4. Следовательно, подбором этого резистора можно установить требуемый ток защиты. Стабилизатор защищен и от коротких замыканий в цепи нагрузки. Ток короткого замыкания зависит от значения запускающего тока, текущего через резистор R2. Этот резистор подбирается при минимальном сопротивлении нагрузки по устойчивому запуску стабилизатора. Такая система обеспечивает надежный запуск стабилизатора, и практически не ухудшает параметров, поскольку в рабочем режиме ток через резистор R2 замыкается через малое сопротивление открытого стабилитрона D2.
Свершилось. Не прошло и года, как объединение усилий двух ведущих разработчиков инструментария для Web-дизайна (компаний Allaire Corporation и Macromedia Inc.) принесло свои результаты. Основным из них на сегодняшний день является появление на свет новой версии популярного редактора Web-страниц, который теперь называется Macromedia HomeSite 5. Сообщение об этом событии появилось на сайтах компаний Allaire и Macromedia 23 октября 2001 года, и с этого дня пользователи получили возможность опробовать возможности оценочной версии продукта.
Тем читателям, которые знакомы с предыдущими версиями HomeSite, наверняка известно, что он обеспечивал достаточно тесную интеграцию средств разработки с визуальным редактором Macromedia Dreamweaver. Отныне это взаимодействие стало еще более тесным и эффективным.
Сохранив основные достоинства предыдущих версий редактора HomeSite (в том числе пользовательский интерфейс), компания Macromedia дополнила этот инструмент целым рядом новых возможностей. Самая главная из них — поддержка синтаксиса нескольких языков разметки, в том числе языка XHTML, который представляет собой реализацию языка HTML 4 в качестве приложения XML.
Кроме того, HomeSite 5 интегрирован с новой версией редактора таблиц стилей TopStyle Lite 2.1, который обеспечивает быстрое и удобное редактирование стилевого оформления страниц сайта.
Для тех, кто не работал ранее с НomeSite, в состав редактора включены многочисленные средства поддержки пользователя, позволяющие освоить работу с редактором за минимальное время.
Следует подчеркнуть, что хотя HomeSite относится к классу профессиональных инструментов, его создатели предусмотрели возможность использования редактора также начинающими Web-дизайнерами. В их распоряжении, в частности, обширная справочная система, содержащая не только сведения по самому редактору, но также полную спецификацию языка HTML 4.01 и рекомендации по проектированию и разработке Web-сайтов.
Хотя HomeSite но инерции продолжают называть «редактором», на самом деле его функциональные возможности значительно шире тех рамок, которые ассоциируются с этим термином. Пожалуй, правильнее было бы обозначить его как «инструмент подготовки и публикации материалов для Web». Входящие в его состав функции и утилиты позволяют не только редактировать отдельные страницы, но также решать другие многочисленные задачи, связанные с созданием Web-сайтов. Это и формирование структуры проекта в целом, и тестирование визуального отображения страниц различными броузерами, и оценка времени загрузки страниц, и, наконец, развертывание подготовленных материалов на Web-сервере. Все это делает HomeSite самодостаточным средством, обеспечивающим поддержку всех основных этапов подготовки Web-публикации (за исключением подготовки графических и мультимедийных элементов страниц).
Проект OpenOffice.org начался, когда Sun Microsystems опубликовал исходные тексты ("bluepr") для его программного обеспечения StarOffice® содружеству open source в 2000 году. Это позволило Sun использовать техническую экспертизу и бурное развитие проекта open source для развития его собственных программных продуктов. Все последние версии Sun StarOffice используют исходный текст, разработанный содружеством OpenOffice.org. Однако программы не обеспечивают абсолютно те же самые возможности из-за необходимости соблюдения авторских прав третьих лиц, которые не совместимы с open source лицензированием.
Интересно проследить, начиная со времени появления первых компьютеров и заканчивая сегодняшним днем, за трансформациями представлений о языке ассемблера у программистов. Когда-то ассемблер был языком, без знания которого нельзя было заставить компьютер сделать что-либо полезное. Постепенно ситуация менялась. Появлялись более удобные средства общения с компьютером. Но, в отличие от других языков, ассемблер не умирал, более того он не мог сделать этого в принципе. Почему? В поисках ответа попытаемся понять, что такое язык ассемблера вообще. Если коротко, то язык ассемблера — это символическое представление машинного языка. Все процессы в машине на самом низком, аппаратном уровне приводятся в действие только командами (инструкциями) машинного языка. Отсюда понятно, что, несмотря на общее название, язык ассемблера для каждого типа компьютера свой. Это касается и внешнего вида программ, написанных на ассемблере, и идей, отражением которых этот язык является. По-настоящему решить проблемы, связанные с аппаратурой (или даже, более того, зависящие от аппаратуры как, к примеру, повышение быстродействия программы), невозможно без знания ассемблера.
Объектно-ориентированное проектирование с примерами
Как программисты-профессионалы мы стремимся делать свои системы полезными и работоспособными. Как инженеры-разработчики мы должны создавать сложные системы при ограниченных компьютерных и кадровых ресурсах. За последние несколько лет объектно-ориентированная технология проникла в различные разделы компьютерных наук. К ней относятся как к средству преодоления сложности, присущей многим реальным системам. Объектная модель показала себя мощной объединяющей концепцией.
Если у вас все ваши категории находятся в текстовом файле, то их можно подгрузить оттуда прямо в таблицу. Есть инструкция LOAD DATA INFILE. Чтобы загрузить данные из файла, который находится на локальной машине, нужно указать в инструкции ключевое слово LOCAL. Поля, в принципе могут быть разделены любым разделителем, текстовые поля могут быть заключены в кавычки. Записи закачиваются символом 'окончание строки'. SQL запрос будет выглядеть так:
Данный документ может быть необходим в следующих ситуациях:
У Вас имеются идеи, связанные с программированием, и существует необходимость в выполнении процесса кодирования каких-нибудь shell-скриптов.
Ваши идеи, связанные с программированием, недостаточно конкретны и требуют дополнительных указаний.
Вы желаете взглянуть на какие-нибудь shell-скрипты и комментарии в качестве образца для создания своих собственных.
Вы мигрируете из DOS/Windows (или уже выполнили это) и хотите создавать файлы пакетной обработки ("batch").
Вы - полный нерд и читаете любой попавший под руку how-to.
В данном HOW-TO осуществляется попытка предоставить Вам некоторые рекомендации по shell-программированию, основанные только на примерах.
В данном разделе Вы обнаружите небольшие скрипты, которые, вероятно, будут Вам полезны при освоении некоторых приёмов.