среда, 12 января 2011 г.

TrueCrypt / Виктор Гольцман

Прежде чем защищать данные от посторонних людей, подумайте, насколько это актуально для вас. Ведь, забыв установленный пароль, прочитать закодированную информацию не сможете и вы. Кроме того, с дисками, содержащими такие данные, часто не могут работать программы, контролирующие целостность файловой структуры.

Если вы все же решили защитить свои персональные данные, то рекомендуем использовать для этого бесплатную и простую в использовании утилиту TrueCrypt.

В главном окне программы (рис. 12.12) можно создавать новые логические диски и изменять параметры уже имеющихся.

Рис. 12.12. Главное окно программы TrueCrypt


Чтобы создать новый диск, нажмите кнопку Create Volume (Создать раздел). Запустится мастер создания нового логического диска (рис. 12.13).

Рис. 12.13. Мастер создания нового виртуального диска


Утилита работает с двумя типами логических дисков: обычными и скрытыми. Зашифрованные данные могут храниться и на тех, и на других. Единственное отличие скрытого диска состоит в том, что его нельзя обнаружить стандартными средствами.

Следующий шаг – выбор места хранения зашифрованных данных. Это может быть и целый логический диск, и определенный файл. Во втором случае можно банально записать файл на какой-либо носитель и перенести на другой компьютер (однако для открытия такого файла, разумеется, потребуется пароль).

Затем мастер предложит выбрать алгоритм шифрования. Описание каждого из них приводится в этом же окне, чуть ниже раскрывающегося списка Encryption Algorithm (Алгоритм шифрования) (рис. 12.14).

Рис. 12.14. Выбор алгоритма шифрования


Для проверки скорости работы способа шифрования предназначена кнопка Benchmark (Критерий). Воспользовавшись ею, вы сможете выбрать алгоритм, оптимальный по соотношению «скорость/уровень защиты».

Последний шаг – указание типа файловой системы (FAT, NTFS) создаваемого диска. Затем программа отформатирует диск.

На этом создание виртуального логического диска завершено. Однако его еще необходимо подключить. Чтобы это сделать, нажмите в основном окне программы (см. рис. 12.12) кнопку Select File (Выбрать файл), выберите созданный мастером файл и, предварительно введя пароль, нажмите кнопку Mount (Подключить). Теперь новый логический диск полностью готов к использованию, а ваши данные будут в большей сохранности.


Патентное бюро - Журнал «Компьютерра»


Автор: Сергей Леонов


Метод обнаруженя кражи энергии

США

Если вы думаете, что подключение к электрической сети "мимо счетчика" практикуется только в России, вы заблуждаетесь - Америка тоже страдает от этой напасти (вполне возможно, завезенной туда именно нашими эмигрантами). Разница в том, что в Америке с ней довольно активно борются, тем более что и технические решения для этого вполне созрели - я имею в виду передачу сигналов по электропроводам. Идея авторов, впрочем, весьма тривиальна: надо снабдить электросчетчики в домах потребителей модулем передачи данных и еще один подобный счетчик повесить непосредственно на высоковольтную линию, приходящую в населенный пункт. Потребительские счетчики будут передавать по проводам свои значения расхода, а счетчик на линии - суммировать их и вычислять разницу между собственными показаниями и этой суммой. Если она превысит некоторую допустимую границу, беспроводной модуль связи оповестит энергетиков.


Сиденье автомобиля

Toyota

Многие иномарки, в отличие от "Жигулей", имеют сиденья с ярко выраженной боковой поддержкой, не позволяющей телу водителя слишком отклоняться от вертикального положения при крутых поворотах. Одним эта особенность нравится, другим не очень, но в любом случае она полезна с точки зрения безопасности. Компания предлагает совместить приятное с полезным, а именно сделать эту самую боковую поддержку управляемой. Предполагается, что боковины сиденья, в которые встроены специальные приводы, должны "обнять" водителя с силой, пропорциональной перпендикулярному ускорению. Кроме того, на положение боковин должна влиять информация от навигационной системы о предстоящем повороте. Уровень же боковой поддержки при движении по прямой пользователь сможет отрегулировать для себя самостоятельно.


Магнитный датчик столкновения

США

Датчики столкновения, применяемые на автомобилях для активации подушек безопасности, обычно представляют собой малогабаритные устройства, размещенные в районе переднего бампера в местах наиболее вероятных ударов. Недостаток этой системы в том, что датчик может и не сработать, если размеры препятствия относительно малы, а само препятствие оказалось не совсем в том месте, где предполагали конструкторы. Лучше было бы контролировать весь периметр автомобиля, но для этого придется расположить на кузове очень много датчиков. Возможным решением проблемы авторы видят использование в качестве датчика… самого кузова, а вернее, его магнитных элементов. Если на отдельные части кузова (рама, передняя балка, каркас мотоотсека) намотать по несколько витков провода, то получится… трансформатор, в котором кузов играет роль сердечника. На одну из катушек надо подать переменное напряжение, а с остальных снять сигнал и запомнить его величину. При деформации "сердечника" связь между катушками изменится, снимаемый сигнал уменьшится или, наоборот, увеличится, что и будет означать факт столкновения.


Беспроводная гарнитура

Microsoft

Софтверный гигант, не брезгующий и различными аппаратными штучками, на сей раз представил простую, но оригинальную идею. Беспроводная гарнитура для телефона неудобна тем, что для ее активации приходится нажимать на какую-нибудь кнопку, чего не нужно делать с телефонной трубкой - снял и все. Соответственно, предлагается сделать гибрид - проводной телефонный аппарат, у которого роль трубки будет играть эта самая беспроводная гарнитура. При входящем вызове достаточно будет снять ее с аппарата и повесить на ухо. Кроме прочего, через аппарат гарнитура будет подзаряжаться. Тем, кто не может расстаться с трубкой, предлагается объединить все вместе, сделав аппарат и с трубкой, и с гарнитурой.


Ультракомпактный зум-объектив

Nokia

Похоже, финский производитель вскоре запихнет в телефон не только фотокамеру с автофокусом и зумом, но и целую зеркалку. По крайней мере в отношении объектива решение уже есть - складывать его вбок. Линзы вместе с направляющими должны при этом расположиться в одной плоскости, занимая минимум места. В рабочем положении линзы смогут перемещаться по направляющим, обеспечивая таким образом изменение фокусного расстояния. К сожалению, о том, каким механизмом разработчики собираются перемещать линзы в подобной



Джеффри П. Мак-Манус. Использование представлений в приложениях

Представление — это конструкция, которая позволяет управлять процессом извлечения информации из базы данных SQL Server. Это управление может осуществляться несколькими способами. В представлении можно ограничить количество строк или столбцов, что позволяет управлять данными, возвращаемыми пользователю. Для этого необходимо создать критерий отбора, который известен только разработчику базы данных, или предоставить пользователям доступ к данным на основе разрешений системы безопасности. Каждый объект базы данных — таблица, представление, хранимая процедура — может быть ассоциирован с пользователем или группой системы безопасности. В базах данных, которые используют преимущества представлений и хранимых процедур, прямой доступ к таблицам обычно ограничивается администратором базы данных. Клиентские приложения при этом ограничены только доступом к связанным представлениям или хранимым процедурам, которые, в свою очередь, отвечают за извлечение данных из основных таблиц.

Создание скрытого поля — еще один способ ограничения доступа. При этом данные такого поля не возвращаются пользователю, а отфильтровываются с помощью представления. Клиентскому приложению даже не будет известно, что существуют еще какие-либо данные, поскольку оно будет ограничено лишь данными представления.

Практически все профессиональные серверы баз данных SQL ограничивают непосредственный доступ к базе данных. Помимо ограничения доступа к строкам и полям, сокрытие таблиц баз данных с помощью представлений позволяет изменять их незаметно для клиентских приложений.

Кроме этого, с помощью компонентов среднего уровня можно отделить изменения структуры базы данных от изменений бизнес-правил. Эти компоненты аналогичны представлениям и хранимым процедурам тем, что скрывают изменения структуры базы данных от клиентского приложения. Помимо этого, существует еще одно преимущество использования таких компонентов по сравнению с представлениями и хранимыми процедурам SQL Server: они упрощают процесс программирования, возвращают данные в виде объектов, а не строк и столбцов, а также не привязаны к конкретной СУБД или языку программирования. Более подробно компоненты среднего уровня рассматриваются в главе 12, "Web-службы и технологии промежуточного уровня".


воскресенье, 9 января 2011 г.

H. M. Ручко. Использование объекта атрибутов

Объект атрибутов инкапсулирует атрибуты потока или группы потоков. Он используется для установки атрибутов потоков при их создании. Атрибутный объект потока имеет тип pthread_attr_t. Он представляет собой структуру, позволяющую хранить следующие атрибуты:

• размер стека потока;

• местоположение стека потока;

• стратегия планирования, наследование и параметры;

• тип потока: открепленный или присоединяемый;

• область конкуренции потока.

Для типа pthread_attr_t предусмотрен ряд методов, которые могут быть вызваны для установки или считывания каждого из перечисленных выше атрибутов (см. табл. 4.3).

Для инициализации и разрушения атрибутного объекта потока используются функции pthread_attr_init () и pthread_attr_destroy () соответственно.

Синопсис

#include <pthread.h>

int pthread_attr_init(pthread_attr_t *attr);

int pthread_attr_destroy(pthread attr__t *attr) ;

Функция pthread_attr_init () инициализирует атрибутный объект потока с помощью стандартных значений, действующих для всех этих атрибутов. Параметр attr представляет собой указатель на объект типа pthread_attr_t. После инициализации attr-объекта значения его атрибутов можно изменить с помощью функций, перечисленных в табл. 4.3. После соответствующей модификации атрибутов значение attr используется в качестве параметра при вызове функции создания потока pthread_create(). При успешном выполнении эта функция возвращает число 0, в противном случае — код ошибки. Функция pthread_attr_init() завершится неуспешно, если для создания объекта в системе недостаточно памяти.

Функцию pthread_attr_destroy() можно использовать для разрушения объекта типа pthread_attr_t, заданного параметром attr. При обращении к этой функ ц ии будут удалены любые скрытые данные, связанные с этим атрибутным объектом потока. При успешном выполнении эта функция возвращает число 0, в противном случае - код ошибки.


Александр Леоненков / 6.2. Состояние

Понятие состояния (state) является фундаментальным не только в метамоде-ли языка UML, но и в прикладном системном анализе. Ранее в главе 1 кратко были рассмотрены особенности представления динамических характеристик сложных систем, традиционно используемых для моделирования поведения. Вся концепция динамической системы основывается на понятии состояния системы. Однако семантика состояния в языке UML имеет целый ряд специфических особенностей.

В языке UML под состоянием понимается абстрактный метакласс, используемый для моделирования отдельной ситуации, в течение которой имеет место выполнение некоторого условия. Состояние может быть задано в виде набора конкретных значений атрибутов класса или объекта, при этом изменение их отдельных значений будет отражать изменение состояния моделируемого класса или объекта.

Следует заметить, что не каждый атрибут класса может характеризовать его состояние. Как правило, имеют значение только такие свойства элементов системы, которые отражают динамический или функциональный аспект ее поведения. В этом случае состояние будет характеризоваться некоторым инвариантным условием, включающим в себя только значимые для поведения класса атрибуты и их значения.

Например, инвариант может представлять статическую ситуацию, когда объект находится в состоянии ожидания возникновения некоторого внешнего события. С другой стороны, инвариант используется для моделирования динамических аспектов, когда в ходе процесса выполняются некоторые действия. В этом случае моделируемый элемент переходит в рассматриваемое состояние в момент начала соответствующей деятельности и покидает данное состояние в момент ее завершения.

Рис. 6.2. Графическое изображение состояний на диаграмме состояний

Состояние на диаграмме изображается прямоугольником со скругленными вершинами (рис. 6.2). Этот прямоугольник, в свою очередь, может быть разделен на две секции горизонтальной линией. Если указана лишь одна секция, то в ней записывается только имя состояния (рис. 6.2, а). В противном случае в первой из них записывается имя состояния, а во второй – список некоторых внутренних действий или переходов в данном состоянии (рис. 6.2, б). При этом под действием в языке UML понимают некоторую атомарную операцию, выполнение которой приводит к изменению состояния или возврату некоторого значения (например, «истина» или «ложь»).