Вопросы программирования

     скачать программу бесплатный интернет 3049 url cambridge press 4405    

Пособие по практике программирования

Приходилось ли вам когда-нибудь:

  • тратить кучу времени на то, чтобы закодировать неверный алгоритм?
  • использовать слишком сложную структуру данных?
  • при тестировании программы пропустить очевидную проблему?
  • тратить день на то, чтобы обнаружить ошибку, которую можно было бы найти за пять минут?
  • сталкиваться с тем, что программа должна работать в три раза быстрее и использовать меньше памяти?
  • затрачивать титанические усилия на то, чтобы перевести программу с рабочей станции на PC или наоборот?
  • пытаться внести изменения в чужую программу?
  • переписывать программу целиком, потому что разобраться в ней не удалось?

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



Введение
Стиль
Алгоритмы и структуры данных
Проектирование и реализация

Интерфейсы
Отладка
Тестирование

Производительность
Переносимость
Нотация
Свод правил

Цвет и цветовоспроизведение

Действие на органы зрения излучений, длины волн которых находятся в диапазоне 400—700 нм, приводит к возникновению зрительных ощущений. Эти ощущения различа­ются, количественно и качественно. Их количественная характеристика называется светлотой, качественная -цветностью. Физические свойства излучения — мощность и длина волны — тесно связаны со свойствами возбуждаемого им ощущения. С изменением мощности изменяется светлота, а с изменением длины волны — цветность.
Первоначальное представление о светлоте и цветности можно проиллюстрировать, поместив окрашенную поверхность частично на прямой солнечный свет, а частично — в тень. Обе части ее имеют одинаковую цветность, но разную светлоту.
Совокупность этих характеристик обозначается термином «цвет». Строгое определение термина можно дать только после излучения свойств цветового ощущения. Однако целесообразно в начале курса дать определение, понимание которого не требует предварительной подготовки. Оно предложено известным физиком Шредингером (1920 г.). По Шредингеру, цвет есть свойство спектральных составов излучений, не различаемых человеком визуально.
В связи с ролью цветовых ощущений в жизни и деятельности человека возникла наука о цвете — теория цвета, или цветоведение. Она изучает круг вопросов, связанных с оп­тикой и физиологией зрения, психологией восприятия цвета, а также теоретические основы и технику измерения к воспроизведения цветов.
Так как причиной возникновения цветового ощущения является действие света, то один из разделов теории цвета— физика цвета — рассматривает свойства света, главным образом распределение светового потока по спектрам испускания и отражения, а также способы получения этих спектров, аппаратуру и приемники излучения.

Цвет и объекты изучаемые теорией цвета
Частичные изображения оригинала

CAN протоколы высокого уровня

Рассмотрим основные возможности, которые предоставляют протоколы высокого уровня:
система назначения идентификатора для сообщения
метод обмена данных процесса
прямая(peer-to-peer) связь
метод установления связей для обмена данных процесса
сетевое управление
Модели и профайлы устройств

Основные возможности протоколов на базе CAN

Программирование для IBM OS2

Если вы раньше программировали только для операционной системы MS-DOS , то вы уже создавали текстовые приложения. В составе MS-DOS нет удобных средств для организации текстового или графического вывода, поэтому большинство программ MS-DOS работают напрямую с видеопамятью, физически расположенной на плате видеоадаптера.
Операционная система IBM OS/2 Warp использует защищенный режим работы процессора, причем в большинстве случаев приложениям запрещается обращаться к портам периферийных устройств и видеопамяти в обход соответствующих драйверов. Это ограничение, однако, с лихвой компенсируется удобными и быстродействующими функциями, доступными приложениям в рамках программного интерфейса IBM OS/2 Warp. Поэтому в целом программирование экранного вывода для текстового режима IBM OS/2 Warp заметно проще, чем для операционной системы MS-DOS .

Базовые понятия и определения
Глобальные переменные
Файл slider.h

Учебник по созданию shareware программ

Shareware — это не просто способ распространения программ, при котором пользователь платит за нее не сразу, а по истечении некоторого срока, во время которого он имеет возможность тестировать продукт. Это еще и уникальная возможность для каждого программиста полностью изменить свою жизнь, сделать себе имя, начать работать на самого себя. И при этом -продолжать заниматься своим любимым делом, т. е. программированием.
Shareware — это не последний этап в развитии продукта, когда созданная программа начинает продаваться на мировом рынке программного обеспечения. На любой стадии работы над программой — проектирование, разработка пользовательского интерфейса, написание документации, размещение в Интернете — ориентация на рынок shareware оказывает очень большое влияние. При осуществлении проекта нельзя не учитывать законы и тенденции, наблюдающиеся в shareware-индустрии. И если при взгляде на оглавление книги можно сделать вывод о том, что shareware посвящена только последняя, десятая глава, то при чтении других глав вы заметите, что все вопросы в них рассматриваются именно с точки зрения применения на shareware-рынке.

Введение
Что такое shareware?
С чего начинать
Немного об авторском нраве

Как работает правильная программа
Пользовательский интерфейс
Защита программ
Документация
Подготовка к выпуску программы
Ваша программа в Интернете

Организация продаж и маркетинг
Приложение
Заключение

Стили и методы программирования

Программирование на языках появилось одновременно с вычислительными машинами. Конрад фон Цузе, построивший первую в мире серию программно-управляемых вычислительных машин (Германия, 1938-1944 г.), создал язык Plankalkul для записи программ. Квалифицированные сотрудники писали программы на этом языке, а техники затем вручную переводили их в машинные коды. Сейчас наиболее широко используются традиционные языки. В их число входят FORTRAN, Pascal, C/C++, Ada, Java и т. п.

Введение
Традиционная модель
Конструкции традиционных языков
Различные стороны определения языка

Конкретизация
Общие концепции
Развитие языка Prolog
Списки и функциональные выражения
Автоматные задачи
Анализ состояния дел

Требования к автоматической трансляции таблиц
Пример
Событие, сообщение, демон
Общая характеристика структурного программирования
Естественный параллелизм алгоритмов
Что нужно для переиспользования
Почему нет универсальных методов?

SW-CMM (Модель зрелости процессов разработки ПО)

Одной из наиболее популярных, востребованных и весомых методик на сегодняшний день является модель построения зрелых процессов разработки программного обеспечения SW-CMM (Capability Maturity Model for Software). До сих пор эта модель, разработанная Институтом программной инженерии при Университете Карнеги-Меллон (США), была почти неизвестна в России. Основной причиной этого было отсутствие материалов по этому стандарту на русском языке.
Данный перевод текстов стандарта SW-CMM призван устранить этот пробел и предназначается для всех ИТ специалистов: топ-менеджеров компаний, руководителей проектов, а также рядовых разработчиков. Мы надеемся, что изложенный в книге материал о модели SW-CMM и изложенный в ней опыт успешных и развитых компаний помогут отечественным специалистам повысить эффективность своей работы, выстроить процессы разработки ПО в соответствии с современными требованиями рынка, лучше взаимодействовать с заказчиками и отвечать их запросам.

Обзор модели зрелости процессов разработки
Обеспечение качества ПО

Программирование модемов

В последнее время модемы все чаще становятся неотъемлемой частью компьютера. Установив модем на свой компьютер, вы фактически открываете для себя новый мир. Ваш IBM PC превращается из обособленного компьютера в звено глобальной сети.
Модем позволит вам, не выходя из дома (буквально не вставая из-за стола), получить доступ к базам данных, которые могут быть удалены от вас на многие тысячи километров, разместить сообщение на BBS (электронной доске объявлений), доступной другим пользователям, скопировать с той же BBS интересующие вас файлы, интегрировать домашний компьютер в сеть вашего офиса, при этом (не считая низкой скорости обмена данными) создается полное ощущение работы в сети офиса. Кроме того, воспользовавшись глобальными сетями (Relcom, FidoNet) можно принимать и посылать электронные письма не только внутри города, но фактически в любой конец земного шара. Например, вы можете отправить сообщение президенту фирмы Microsoft, если вы считаете, что он им заинтересуется. Глобальные сети дают возможность не только обмениваться почтой, но и участвовать во всевозможных конференциях, получать новости практически по любой интересующей вас тематике.

Последовательный асинхронный адаптер
Сигнальные лампы для внутреннего модема

Индустрия программирования

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

Механизмы межпроцессных взаимодействий в операционной системе Unix
Сложные проекты на базе современных информационных технологий

Системное программирование

Программы и программное обеспечение
Определение (ГОСТ)
Программа - это данные, предназначенные для управления конкретными компонентами системы обработки информации (СОИ) в целях реализации определенного алгоритма.
Определения даются по: ГОСТ 19781-90. Обеспечение систем обработки информации программное. Термины и определения. - М.:Изд-во стандартов, 1990.
Обратить внимание: программа - это данные. Один из основных принципов машины фон Неймана - то, что и программы, и данные хранятся в одной и той же памяти. Сохраняемая в памяти программа представляет собой некоторые коды, которые могут рассматриваться как данные. Возможно, с точки зрения программиста программа - активный компонент, она выполняет некоторые действия. Но с точки зрения процессора команды программы - это данные, которые процессор читает и интерпретирует. С другой стороны программа - это данные с точки зрения обслуживающих программ, например, с точки зрения компилятора, который на входе получает одни данные - программу на языке высокого уровня (ЯВУ), а на выходе выдает другие данные - программу в машинных кодах.

Программы и программное обеспечение

Основы программирования

Понятие алгоритма - одно из основных понятий программирования и математики. Алгоритм - это последовательность команд, предназначенная исполнителю, в результате выполнения которой он должен решить поставленную задачу. Алгоритм записывается на формальном языке, исключающем неоднозначность толкования. Исполнитель - это человек, компьютер, автоматическое устройство и т.п. Он должен уметь выполнять все команды, составляющие алгоритм, причем механически, "не раздумывая".
Запись алгоритма на формальном языке называется программой. Иногда само понятие алгоритма отождествляется с его записью, так что слова "алгоритм" и "программа" - почти синонимы. Небольшое различие заключается в том, что при упоминании алгоритма, как правило, имеют в виду основную идею его построения, общую для всех алгоритмических языков. Программа же всегда связана с записью алгоритма на конкретном формальном языке.

Общее понятие алгоритма
Типы переменных
Символьные переменные
Значения "минус" и "плюс бесконечность"

Алгоритм Евклида вычисления наибольшего общего делителя
Устройство компьютера
RTL: машинно-независимый Ассемблер
Основы языка Си
Управляющие конструкции

Представление матриц и многомерных массивов
Структуры данных
Ссылочные реализации структур данных

Параллельное программирование

Реализация языка логического программирования ПРОЛОГ на ВС SPMD-архитектуры Рассмотрим упрощенную задачу в виде ПРОЛОГ-программы, содержащую все характерные элементы решения задачи удовлетворения (сложной) цели на основе базы знаний.

Реализация языка логического программирования ПРОЛОГ на ВС SPMD-архитектуры
Принцип работы БД с циркулирующей информацией
Вычислительные комплексы на базе локальной сети

Предпосылки методов
Постановка задачи и планы решения
Параллельное решение задач НП при линейных ограничениях
Неформальная постановка задач параллельного программирования ВС
Общая схема параллельных вычислений при обслуживании потока заявок (в АСУ)

Схема организации параллельного процесса
Частичная упорядоченность работ отсутствует
Средства синхронизации параллельных процессов
Оценка производительности ВС
Основные направления исследований в области Grid-технологий

Администрирование Oracle

Поскольку система баз данных ORACLE может быть весьма большой  и может иметь  много пользователей,  должно существовать  лицо или группа лиц,  управляющих этой  системой.  Такое  лицо называется администратором базы данных (АБД).
В  любой  базе  данных   должен  быть  хотя  бы   один  человек, выполняющий административные  обязанности;  если  база   данных большая,   эти   обязанности   могут   быть   распределены между несколькими администраторами.

Сотрудники службы безопасности
Работа с динамическими операторами SQL

Oracle для профессионалов

Значительную часть времени я провожу, работая с программным обеспечением СУБД Oracle или, точнее, с людьми, которые это программное обеспечение используют. В течение последних двенадцати лет я работал над многими проектами, как успешными, так и закончившимися неудачно, и если бы потребовалось обобщить приобретенный при этом опыт несколькими фразами, я бы сказал следующее:
* успех или неудача разработки приложения базы данных (приложения, зависящего от базы данных) определяется тем, как оно использует базу данных;
* в команде разработчиков должно быть ядро "программистов базы данных", обеспечивающих согласованность логики работы с базой данных и настройку производительности системы.

Разработка успешных приложений для Oracle
Архитектура
Хранимые процедуры на языке Java

Базы данных Oracle - статьи

С течением времени бизнес-приоритеты изменяются. Предприятия реорганизуются, приобретают другие предприятия, “наращивают мускулы” некоторых приложений и сокращают использование других. При всех этих изменениях компании сталкиваются с проблемой эффективного и экономного предоставления своих ресурсов для приведения их в соответствие с бизнес-приоритетами. Чтобы получить данные там, где вы этого хотите, и когда вы испытываете в них необходимость, требуются сложные технологии интеграции информации.
Oracle Database 10g предлагает устойчивые и полные решения для разрешения всех ваших требований к интеграции информации. Эти решения обеспечивают доступ к информации тогда и в том месте, где в ней возникает необходимость, оптимизируя доступ к этой информации независимо от ее физического местоположения. Они интегрируют информацию во всей распределенной среде, будь то в пределах grid, или для нескольких автономных систем, или для некоторой их комбинации.

Порядок срабатывания триггеров
Установка Oracle Real Time Decisions
Сжатие таблиц в СУБД Oracle9i Release 2: Анализ эффективности
Заморочки от Oracle, или знать бы, где упасть
Сценарии возникновения
Шифруем свои ресурсы данных
Как организовать горячий резерв БД
К каждой строке охранника приставишь!

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

База данных Oracle 10g: Построение
Назначение SQL*Plus
Получение рекомендаций в виде готового сценария
Телеком – модель бизнес-процессов – eTOM – Oracle
В версии Oracle10 «виртуальные частные базы данных» данных стали избирательнее

Расширенная оптимизация подзапросов в Oracle

Сращивание подзапросов (subquaery coalescing) — это метод, при применении которого при определенных условиях два подзапроса могут быть срощены в один подзапрос, что позволяет вместо выполнения нескольких операций сканирования таблиц и соединения ограничиться единственным сканированием таблицы и единственным соединением. Хотя сращивание подзапросов определяется как бинарная операция, она может последовательно применяться к любому числу подзапросов. Сращивание подзапросов оказывается возможным, поскольку подзапрос действует как предикат фильтрации таблиц внешнего запроса.

Продолжение

Шифрование паролей в СУБД Oracle

Система шифрования паролей является достаточно консервативным элементом СУБД, ибо ее малейшее изменение влияет на возможность/невозможность подключения клиентов к базе данных. Таким образом, частое изменение этой подсистемы СУБД нежелательно. Видимо, этот фактор сказался на том, что подсистема шифрования паролей была неизменной много лет, по моим оценкам - около 15. Изменение системы шифрования повлекло бы за собой ряд сообщений ORA-xxxxx, сообщающих об ошибках в системе шифрования и в технической документации были бы упомянуты причины и способы их решения. Судя по отсутствию этих проблем в технической документации и Интернет, можно сделать вывод, что в СУБД Oracle подсистема шифрования паролей была неизменной достаточно длительное время, где-то последние 15 лет.

Продолжение

Конфигурирование сервера Oracle для сверхбольших баз данных

Эта статья поможет читателю настраивать сверхбольшие базы данных Oracle (Very Large Database, в дальнейшем — VLDB) для достижения высокой производительности и высокой доступности при низких издержках на эксплуатацию. Она описывает решения выбора размера блока данных Oracle, применения RAID-технологий, использования «линейных» устройств (raw-devices), конфигурирования журнальных файлов, разбиения табличных пространств на разделы, выбора параметров хранения и настройки сегментов отката. Статья описывает технологии и связанные с ними ограничения, а также технически детальные методы для оптимизации конфигурации в рамках этих ограничений.

Продолжение

Руководство разработчика информационных систем субд Oracle

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

Методы проектирования информационных систем
Поддержка национальных языков

Аппаратные средства ЭВМ. Компьютерные сети

Из этого пособия вы сможете узнать об основных узлах и компонентах IBM PC-совместимого компьютера, о большинстве периферийных устройств, которые могут к нему подключаться, о факторах окружающей среды, влияющих на работу вычислительной техники, а также об основах построения компьютерных сетей. Изложение материала построено исходя из того, что «знание некоторых принципов заменяет знание многих фактов». Вот почему основной упор сделан на описание принципов функционирования и используемых технологий. Действительно, стремительные изменения в элементной базе и схемотехнике в ряде случаев исключают возможность рассказа о конкретных технических решениях. Ведь хорошо известно, что, например, новые варианты системных плат появляются почти через каждые два месяца. Именно поэтому основной упор сделан на описание принципов функционирования и используемых технологий.
В этой книге речь идет об аппаратном обеспечении IBM PC, а точнее, об IBM PC-совместимых (и не совсем совместимых) компьютерах. Можно сказать, что в 1981 году появление первого IBM PC (Personal Computer) произвело настоящую информационную революцию.

Общие сведения о работе вычислительных устройств
Выбор подходящего ИБП

Конструирование и технология ЭВМ

Все виды РЭА подвергаются воздействию внешних механических нагрузок, которые передаются к каждой детали, входящей в конструкцию. Механические воздействия имеют место в работающей РЭА, если она установлена на подвижном объекте, или только при транспортировке ее в нерабочем состоянии, как в случае стационарной и некоторых видов возимой РЭА.
На транспортируемую ЭВМ в процессе ее эксплуатации воздействуют вибрации, ударные нагрузки и линейные ускорения.
Гармонические вибрации характеризуются частотой, амплитудой, ускорением.
Ударные нагрузки
характеризуются числом одиночных ударов или их серией (обычно оговаривают максимальное число ударов), длительностью ударного импульса и его формой, мгновенной скоростью при ударе, перемещением соударяющихся тел.

Виды механических воздействий на ЭВА
Можно ли самому построить ЭВМ?

Логические и арифметические основы и принципы работы ЭВМ

Любая форма человеческой деятельности, любой процесс функционирования технического объекта связаны с передачей и преобразованием информации. Информацией называются сведения о тех или иных явлениях природы, событиях в общественной жизни и процессах в технических устройствах. Информация, воплощенная и зафиксированная в материальной форме, называется сообщением. Сообщения могут быть непрерывными и дискретными (цифровыми). Непрерывное (аналоговое) сообщение представляется физической величиной (электрическим напряжением, током и т. д.), изменения которой во времени отображают протекание рассматриваемого процесса.
Для дискретного сообщения характерно наличие фиксированного набора элементов, из которых в определенные моменты времени формируются различные последовательности. ЭВМ или компьютеры являются преобразователями информации. В них исходные данные задачи преобразуются в результат ее решения. В соответствии с используемой формой представления информации машины делятся на 2 класса: непрерывного действия – аналоговые и дискретного действия – цифровые. Мы изучаем ЭВМ (цифровые).

Алгебра логики
Понятие функциональной полноты ФАЛ
Метод Квайна – Мак – Класки
Операция (стрелка) Пирса

Система счисления
Фиксированная запятая
Умножение чисел со старших разрядов в прямом коде
Деление в прямом коде со сдвигом и автоматическим восстановлением остатка
Классические основы построения ЭВМ

Система кодирования команд
Системы логических элементов
Структура 16-разрядного микропроцессора

Операционные системы супер-ЭВМ

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

Продолжение

Операционная система OS2 Warp

Все вы хорошо помните те времена, когда IBM и Microsoft работали над операционными системами DOS, OS/2, Windows, а также вели другие совместные проекты. Теперь эти крупнейшие фирмы стали конкурентами, каждая из них предлагает собственные решения в области компьютерных технологий.
Microsoft делает главную ставку на Windows-95 и Windows NT. Первая из этих двух операционных систем по сообщениям Microsoft появится осенью 1995 года и будет предназначена, в первую очередь, для замены операционных систем Windows 3.1 и Windows for Workgroups 3.11. В операционной системе Windows-95 будет реализован объектно-ориентированный интерфейс пользователя. Кроме того, Windows-95 будет иметь встроенную поддержку локальных сетей и расширенный состав приложений (например, упрощенную версию текстового процессора Word for Windows версии 2.0).
Что же касается Windows NT, то эта операционная система выпускается в двух модификациях: Windows NT Advanced Server и Windows NT Workstation. Операционная система Windows NT Advanced Server предназначена в первую очередь для файл-серверов и серверов СУБД. Она требует для нормальной работы много ресурсов. Например, объем оперативной памяти должен быть не менее 16 Мбайт (а лучше установить 32 Мбайт). Модификация Windows NT Workstation предназначена для оснащения мощных рабочих станций. Даже и не думайте работать с этой операционной системой, если в вашем компьютере меньше 16 Мбайт оперативной памяти или установлен процессор i386.

Состав и особенности IBM OS/2 Warp
Минимизация и максимизация окна
Настройка виртуальной машины DOS
Синхронизация задач

Руководство по выработке правил разграничения доступа к ЭВМ

Те, на кого рассчитана эта книга, - это администраторы систем и лица, принимающие решения (которых обычно и называют "администраторами" или "специалистами среднего звена управления") на местах . Этот документ не рассчитан на программистов или тех, кто пробует создать программы или системы безопасности. Задача этой книги состоит в том, чтобы показать какие ПРД и СРД должны быть реализованы в вашей организации для поддержки всех механизмов защиты, имеющихся в вашей организации.
В первую очередь эта работа ориентирована на организации, являющиеся членами сообщества Internet. Тем не менее, эта книга может быть полезной любой организации, чьи ЭВМ взаимодействуют с ЭВМ других организаций. Как общее руководство по ПРД, эта книга может быть также полезна и для организаций с изолированными сетями.

Организационные вопросы
Создание СРД
Проверка безопасности СРД

Имейте план, которому вы будете следовать в случае инцидента
Ликвидация уязвимых мест
Cсылки
Аннотиpованная библиогpафия

Организация ЭВМ и систем

Исторически первыми появились однопроцессорные архитектуры. Клас­сическим примером однопроцессорной архитектуры является архитектура фон Неймана со строго последовательным выполнением команд: процессор по очереди выбирает команды программы и также по очереди обрабатывает данные. По мере развития вычислительной техники архитектура фон Нейма­на обогатилась сначала конвейером команд, а затем многофункциональной обработкой и по классификации М.Флина получила обобщенное название SISD (Single Instruction Single Data — один поток команд, один поток дан­ных). Основная масса современных ЭВМ функционирует в соответствии с принципом фон Неймана и имеет архитектуру класса SISD.

Архитектуры, характеристики ЭВМ
Список литературы

Организация ЭВМ и систем. Однопроцессорные ЭВМ

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

Два класса ЭВМ
Построение внутренней памяти
Принципы ввода / вывода в микро ЭВМ
Представление информации в ЭВМ
Генератор звуковой последовательности

Чего не могут ЭВМ

Книга американского философа Хьюберта Дрейфуса посвящена методологическим проблемам кибернетики, точнее, вопросу о возможностях и пределах машинной имитации и "усиления" человеческого разума. В научной литературе эта область исследований известна как кибернетическое моделирование познавательных процессов и разработка систем "искусственного интеллекта". Под последним понимаются системы, которые по некоторым своим характеристикам существенно приближаются к процессам функционирования чисто человеческих феноменов восприятия и мышления и их проявления в разумном поведении.
Следует подчеркнуть, что в нашей стране данная область кибернетики является предметом активных исследований. Так в Академии наук СССР имеется Научный совет по искусственному интеллекту, являющийся одновременно секцией Научного совета по комплексной проблеме "Кибернетика" при Президиуме Академии. Модельно-кибернетические исследования интенсивно ведутся в Институте кибернетики АН УССР и многих других научных центрах. В этой работе советские ученые деятельно сотрудничают со своими зарубежными коллегами: в 1975 г. в Тбилиси была проведена IV Международная объединенная конференция по искусственному интеллекту, в которой приняла участие большая группа американских кибернетиков; б апреле 1977 г. в Ленинграде состоялось Международное совещание по искусственному интеллекту, на котором специалисты из Советского Союза обсуждали проблемы кибернетического моделирования познавательных процессов совместно со своими коллегами из США и других зарубежных стран. За последние годы в нашей стране был переведен ряд книг и статей, написанных видными американскими кибернетиками, с многими из которых автор полемизирует в предлагаемой читателю монографии.

Критика искусственного разума
Эпистемологическое допущение
В гуще споров

Информатика и вычислительная техника

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

Информация и ее свойства
Режимы работы ЭВМ и формы обслуживания пользователей

Курс лекций по вычислительной технике

Проблема автоматизации вычислительных работ встала перед человечеством с момента появления счета: пальцы, камешки, счеты.
Естественно усилия творцов были направлены на создание механических машин, причем развитие двигалось как в направлении создания дискретных счетно-решающих устройств, так и аналоговых.
Первую механическую машину для выполнения арифметических действий описал Леонардо да Винчи, но обнаружено это было сравнительно недавно. Была забыта и машина Вильяма Шиккарда (1623г).
Наиболее известна машина Блеза Паскаля (1645г.), в которой была решена задача переноса десятков. Было сделано несколько машин, но неизвестно использовались ли они.
В машине Г. Лейбница уже имелся валик, имеющий переменное число зубцов, разработанный итальянцем Джиованни Пеленом.
Англичанин Чарльз Бэббидж (1792-1871) известен как автор двух машин: разностной (вычисление любой функции, заданной ее первыми пятью разностями - не была реализована из-за отсутствия средств) и аналитической (вычисления по формулам). Работа была закончена его сыном, который применил ее для ряда вычислительных работ.
По своей структуре машина Бэббиджа предвосхищала первые электронные машины середины 20-го века. В ней были выделены такие функциональные устройства, как арифметические, запоминающие (на 1000 50-разрядных 10-чных чисел), устройство управления от программы на перфокартах. Имелась возможность менять ход вычислений в зависимости от полученного результата.

Продолжение

Организация вычислительных систем

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

История развития вычислительной техники
Анализ развития процессоров фирмы Intel IA-32
Структура микропроцессоров IA-32
Реальный режим (Real Mode)

Физическое окружение вычислительной техники

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

Классификация устройств защиты
Понятие компьютерной сети
Процессоры с умножением частоты

Возможности вычислительных машин и человеческий разум

В 1935 г. Майкл Поляни, тогда заведующий кафедрой физической химии в университете Виктория (Victoria University) в Манчестере (Великобритания), был потрясен, столкнувшись с философскими вопросами, под воздействием которых он находился всю дальнейшую жизнь. Причиной шока были слова одного общественного деятеля о том, что концепция "науки ради науки" исчезнет, поскольку интересы ученых самопроизвольно переключатся на задача текущего времени. Поляни тогда почувствовал, что "научное мировоззрение, по-видимому, породило механистическую концепцию человека и истории, в которой нет места для собственно науки". Более того, "эта концепция одновременно отрицает неотъемлемую силу, заключенную в мысли, и, таким образом; исключает любые основания для провозглашения свободы мысли".
Я не знаю, сколько времени Поляни предполагал посвятить обоснованию противоположной концепции человека и истории. Сильнейшее потрясение, испытанное им, свидетельствует о его глубоком несогласии с услышанным и, следовательно, о том, что у него уже было другое представление о человеке, хотя он и не смог бы сформулировать свою концепцию в явном виде. Возможно, Поляни решил противопоставить этой концепции позицию, основанную исключительно на собственном опыте ученого. Как оказалось, борьба с такой концепцией с этого момента полностью поглотила внимание Поляни.

Об орудиях труда
Машинные модели в психологии
Против инструментального мышления

Применение полупроводниковых индикаторов

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

Частотометр, измеритель ёмкости и индуктивности – FCL meter (2)
Электронно-оптический индикатор
Подключение LCD-индикатора к LPT-порту компьютера
Блокиратор со световой индикацией
Подключение LCD-индикатора к компьютеру
Индикатор влажности древесины ИВМ-1
Блок индикации источника питания

Импульсные источники вторичного электропитания
Преобразователь напряжения
Резервное питание
Фильтр питания
Ремонт аккумуляторных батарей для портативной аппаратуры
Стабилизированные выпрямители для питания транзисторной аппаратуры
Аккумуляторы
Регулируемый биполярный блок питания с микроконтроллером

Web-designed

Используя методы Alert, Confirm и Prompt можно выводить сообщения пользователю. Сообщение, выводимое с помощью метода alert, используется для вывода предупреждений, какой-нибудь информации. Метод confirm используется для сообщений, требующих принятия решения пользователем - в окне находяться две кнопки - "Ok" и "Отмена". При использовании метода prompt диалог кроме самого сообщения содержит поле для ввода текста.

Кнопки.
Web-дизайн. Тонкости, хитрости и секреты

Статьи по Web-дизайну

Итак, Вы желаете сделать полезный, красивый и удобный сайт. Что же для этого нужно? Какие факторы влияют на популярность web-сайта? С чего лучше всего начать создание собственного сайта? И какие ошибки могут подстерегать на этом пути?
Я попробовал выделить основные причины, которые, по моему личному мнению, влияют на популярность сайта

Аппаратная конфигурация компьютера
Определение типа и версии броузера

WEB Анимация

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

Введение
Особенности GIF-анимации
Интерфейс Animation Shop 3
Интерфейс Adobe ImageReady 3.0

Интерфейс Macromedia Flash 5
Интерфейс Corel R.A.V.E. 2.0
Интерфейс After Effects 4
Заключение

WEB графика

Первые три главы являются базовыми. Здесь вы узнаете, что такое цвет, как с ним работать, как корректировать изображения и сохранять их в файлах. Хотя материал в этих главах ориентирован преимущественно на Photoshop и Flash, его можно взять за основу и при работе с другими графическими программами. Материал всех последующих глав связан, так или иначе, с первыми тремя. Если вам лишь эпизодически приходится заниматься графикой и некогда вникать в тонкости, то можете ограничиться только этими главами и пятой главой, посвященной сканированию. Это — минимальный набор сведений по компьютерной графике для тех. кто не стремится стать специалистом, но хотел бы научиться избегать грубых ошибок при обработке изображений. Ведь нередки еще случаи, когда в иллюстрированные прайс-листы вставляют картинки, имеющие объем в сотни к тысячи килобайт.

Цвет
Коррекция изображений
Форматы файлов
Мониторы
Сканеры и сканирование
Инструментарий Photoshop
Уроки Photoshop
Рисование в Flash
Анимация в Flash
Элементы языков HTML И JAVASCRIP

Оптимизация Web-графики

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

Продолжение

Самоучитель по WEB-графике

Книга посвящена компьютерной графике. Однако не всей. Мы рассматриваем методы и средства создания и обработки изображений, предназначенные преимущественно для вывода на монитор компьютера и публикации в Интернете. Специальные вопросы предпечатной подготовки (например, цветоделение) и создание трехмерной графики здесь не рассматриваются. Это, конечно, не означает, что вы не сможете распечатать свою картину на принтере. Просто все предпечатные изыски мы оставляем без особого внимания. Подготовка буклетов, рекламных плакатов, обложек и шикарных иллюстраций книг на высоком уровне требует особых знаний, навыков и опыта, которыми обладают специалисты верстки.
Из всех программных средств работы с графикой мы выбрали Adobe Photoshop и Macromedia Flash, а также Dynamic HTML. Photoshop является признанным лидером обработки растровых (точечных) изображений, a Flash — широко известный редактор векторной графики, ориентированный на создание анимации, которая может сопровождаться звуком. Файлы, создаваемые Flash, компактны и могут встраиваться в Web-страницы. Другими словами, векторную графику и серьезную анимацию, которые удается вставить в Web-страницу. можно подготовить в Flash. Динамический HTML (HyperText Markup Language — язык разметки гипертекста) обеспечивает создание несущей конструкции Web-сайта. Это основное средство Web-дизайна имеет свои инструменты для работы с графикой. Корректировать сканированные изображения и делать коллажи лучше всего в Photoshop, а рисовать на «чистом листе бумаге» — в Flash. И то, и другое обычно требуется в Web-дизайне.

Цвет
Коррекция изображений
Форматы файлов
Мониторы
Сканеры и сканирование
Инструментарий Photoshop
Уроки Photoshop
Рисование в Flash
Анимация во Flash
Элементы языков HTML И Javascript
Горячие клавиши Photoshop
Загружайте поменьше дополнительных модулей
Тэги HTML
Справочник по Javascript
Справочник по Actionscript

Web-инжиниринг

По умолчанию все слова в параграфе прижаты влево. Левый край параграфа, таким образом, оказывается выравненным. Аналагичным образом может быть выравнен правый край параграфа или блока текста, и даже оба края вместе.
В обычной HTML-разметке этот эфект достигается за счет применения атрибута align, как это сделано на страницах данного пособия :)

...
Аналогичный результат в CSS достигается засчет атрибута text-align

Align
Base
Array

Основы web-технологий

Под Web-технологиями будем понимать всю совокупность средств для организации WWW Поскольку в каждом сеансе взаимодействуют две стороны – сервер и клиент, Web-технологии разделяются на две группы – технологии стороны сервера (server-side) и технологии стороны клиента (client-side). Благодаря Web-технологиям, пользователю WWW доступны не только статические документы, но и такие ресурсы, как программы или базы данных. Публикация баз данных в Internet в последнее время приобрела огромную популярность и практически стала отдельной отраслью компьютерной науки.

Продолжение

Тестирование web-приложений на скриптовых языках

Как уже было отмечено ранее, при работе с Web-приложением пользователь непосредственно взаимодействует с посредником в виде Web-браузера. Браузер, в свою очередь, взаимодействует с Web-сервером, на котором работает приложение, по протоколу HTTP (конечно, возможно использование других посредников и других протоколов, однако они применяются достаточно редко, и здесь мы их рассматривать не будем). Для передачи данных Web-браузера серверу протоколом HTTP [11] предусмотрено несколько методов передачи параметров, из которых в большинстве Web-приложений используются два — GET и POST. Параметры GET — это параметры, передаваемые непосредственно в адресной строке Web-браузера. Параметры POST передаются вместе с пакетами данных (и используются, как правило, либо для передачи больших объемов данных, поскольку не имеют ограничений на размер, либо чтобы не загромождать адресную строку браузера).
Чтобы протестировать приложение, необходимо знать, какие имена параметров оно ожидает увидеть в запросе и какие значения должны принимать эти параметры, чтобы выполнилась та или иная часть программы. Для выполнения этих задач необходим анализ потока данных в приложении. В общем случае эта задача нетривиальна и требует использования методов статического анализа кода; однако для каждого конкретного приложения с большой вероятностью такой анализ может быть достаточно простым. Тем более что при создании тестов не обязательно задаваться целью проанализировать все возможные варианты поведения приложения в зависимости от входных данных — следует исходить из желаемого соотношения качества тестов ко времени и ресурсам, необходимым для их разработки. Сложность создания инструмента для анализа потока данных зависит от структуры исходного кода приложения. Как будет показано ниже, во многих случаях за короткое время можно создать инструмент, производящий достаточно подробный разбор потока данных.

Извлечение имен параметров и их значений

Интеграция приложений на основе WebSphere MQ

Современные корпоративные системы характеризуются как сверхсложные и гетерогенные, распределенные по различным платформам. Положение большинства предприятий в настоящее время во многом определяется тем, что логика интеграции и взаимодействия систем встроена в отдельные приложения. Технология взаимодействия приложений ограничена транспортными механизмами для передачи данных. Потребности бизнеса и набирающего силу электронного бизнеса диктуют необходимость связи и интеграции этих гетерогенных систем и платформ. Современным корпорациям требуются надежные и тотально-распределенные вычислительные инфраструктуры, интегрирующее middleware, решающее задачи интеграции различных прикладных систем между собой. Появился даже специальный термин – Enterprise Application Integration (EAI) – Интеграция Приложений.
Общепринятый в мировой практике подход к интеграции заключается в уходе от создания прямых интерфейсов приложений и в использовании интеграционного связующего программного обеспечения (ПО), которое способно обеспечить выполнение всех функций, необходимых крупной корпорации. В результате становятся возможными централизация и стандартизация подхода к интеграции, что позволит предприятиям разработать интеграционную среду, которую можно будет совершенствовать и изменять в соответствии с эволюцией бизнес среды.

Установка WebSphere MQ на платформе Windows NT
Кластер WebSphere MQ
Архитектура и функции интеграционного решения

Вебсервер в домашних условиях

Данная статья написана мной по мотивам частых вопросов службе поддержки хостинг-провайдера RunWeb.Ru (к которой я имею непосредственное отношение) по тестированию скриптов и настроек Apache на домашнем компьютере. Первоначально этот материал публиковался на сервере RunWeb.Ru и в рассылке "PHP для начинающих". Постепенно он расширялся по мере поступления вопросов от наших пользователей. Когда же набралось достаточно информации, я собрал ее в отдельную статью и решил, что она может быть полезна не только нашим пользователям хостинга, но и остальным жителям сети.
Поводом для статьи послужило желание создать единое руководство для пользователей, которое помогло бы им тестировать скрипты в домашних условиях, а также использовать возможности настроек Apache для дальнейшего использования на нашем сервере.

Продолжение

Учебник по Delphi 4

Пользователю предоставляется возможность использовать опцию Use CAB file compression, которая позволяет сжать элемент управления ActiveX или форму ActiveForm и любые дополнительные файлы, такие как файлы DPL или файлы лицензий. Эта возможность поддерживается только при использовании броузера Internet Explorer 3.01. На сегодняшний день броузер Netscape Navigator не поддерживает САВ-файлы. По умолчанию библиотека ActiveX, модули (если такие есть) и дополнительные файлы упаковываются в три САВ-файла. Возможна также упаковка всех файлов в один САВ-файл, но делать это не рекомендуется. Разделяя файлы по различным архивам CAB, вы можете избежать загрузки излишних файлов, которые уже установлены на компьютере пользователя.

Использование модулей выполнения
Свойства TForm
Просмотр значений переменных

Разработка Web-приложений на примере Microsoft Active Server Pages

Проблема ASP-приложений: смесь HTML, SQL и VBScript, с трудом поддающаяся осмыслению
Появление Active Server Pages(ASP) для многих стало знаменательным событием. Технологии-конкуренты - Personal (в начале подразумевался Perl) Home Pages(PHP), Java Server Pages(JSP), ColdFusion Markup Language(CFML) и PL/SQL Server Pages (PSP) появились позднее и, частично, носили подражательный характер (что не уменьшает их достоинств).

Продолжение

Отладка серверных Web-приложений

Если разработано достаточно сложное Web-приложение в стандарте ISAPI(NSAPI), его необходимо отладить. Этот процесс существенно отличается от общепринятой отладки обычных Windows-приложений в среде Delphi, так как созданное Web-приложение запускается лишь в ответ на запросы, получаемые от браузера клиента через Web-сервер. Запуск даже самого простого Web-приложения непосредственно из среды Delphi 5.0 невозможен, поскольку теряется его связь с Web-сервером. Тогда и приложение не может получать запросы от клиента и, следовательно, реагировать на них. Методы отладки определяются также типом Web-сервера.
Продолжение