GeoSELECT.ru



Программирование / Реферат: OLE VFP (Программирование)

Космонавтика
Уфология
Авиация
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Аудит
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника
Бухгалтерский учет
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Инвестиции
Иностранные языки
Информатика
Искусство и культура
Исторические личности
История
Кибернетика
Коммуникации и связь
Компьютеры
Косметология
Криминалистика
Криминология
Криптология
Кулинария
Культурология
Литература
Литература : зарубежная
Литература : русская
Логика
Логистика
Маркетинг
Масс-медиа и реклама
Математика
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Мифология
Москвоведение
Музыка
Муниципальное право
Налоги
Начертательная геометрия
Оккультизм
Педагогика
Полиграфия
Политология
Право
Предпринимательство
Программирование
Психология
Радиоэлектроника
Религия
Риторика
Сельское хозяйство
Социология
Спорт
Статистика
Страхование
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Физика
Физкультура
Философия
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
   

Реферат: OLE VFP (Программирование)



МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ВОЛГОГРАДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра «САПР и ПК»



Семестровая работа
тема:
«Visual FoxPro 5.0 как OLE-cервер»



Выполнил: студенты группы АС-563
Маштак О.Н.

Проверил:



Волгоград 1999г.
Содержание:

1. Visual FoxPro как OLE-сервер 2
2. Создание OLE-сервера в Visual FoxPro 7
3. OLE-сервер в компьютерной сети 11
4. Automation Manager 14
5. Remote Automation Connection Manager 15
Visual FoxPro как OLE-сервер
Начиная с пятой версии, Visual FoxPro может выполнять функции OLE-
сервера. OLE-сервер — это приложение, которое может предоставить свои
объекты для управления другой программе, поддерживающей OLE Automation.
Эта новая возможность существенно расширяет возможности использования
Visual FoxPro, поэтому остановимся чуть подробнее на том, что же такое OLE-
сервер.
Большинство OLE-серверов являются так называемыми серверами Out-of-
Process. Они представляют из себя исполняемые программы (файлы с
расширением ЕХЕ) и могут взаимодействовать как с 16-bit, так и с 32-bit OLE-
контроллерами. Расплатой за это является невысокая скорость обмена данными
и потребляемые значительные ресурсы памяти. Другой тип OLE-сервера
называется In-Process и представляет из себя DLL-библиотеку, которая
динамически подгружается и выгружается в зависимости от необходимости.
Хорошим примером такого сервера является процессор баз данных СУБД Access
7.0. Обмен данными с этим типом OLE-сервера происходит значительно быстрее,
но работать он может только с OLE-контроллером такой же разрядности.
В Visual FoxPro доступ к объектам выполняется, как и в подавляющем
большинстве других OLE-серверов, с помощью объекта верхнего уровня
Application. В табл. 1 перечислены его свойства, а в табл. 2 — методы.

Свойства Объекта Application
Таблица 1.
|Свойство |Параметры и описание |
|ActiveForm.Property |Property - свойство формы. |
|[ = Setting] |Setting - значение свойства. |
|ActiveForm.Method |Method - метод формы. |
| |Обеспечивает ссылку на активную форму или |
| |объект SCREEN |
|AutoYield [ = IExpr ] |IExpr по умолчанию равен .Т., что |
| |предусматривает приоритет событий Windows. |
| |Значение .F. предотвращает прерывание |
| |выполнения кода Visual FoxPro. При этом |
| |события Windows ставятся в очередь. |
| |Определяет способ обработки событий Windows. |
|Caption [ = cText ] |cText - текст заголовка. |
| |Определяет заголовок окна приложения. |
|DefaultFilePath [ = сPath ] |сPath - обозначение устройству каталога или |
| |путь. |
| |Определяет каталог по умолчанию для |
| |приложения. |
| |Определяет путь и имя файла для запуска копии|
| |Visual FoxPro. |
|Height [ = nHeight ] |nHeight - высота окна приложения. Определяет |
| |высоту окна приложения. |
|Let [ = nDist ] |nDist - расстояние от левого края. |
| |Определяет расположение окна приложения |
| |относительно левого края. |
|Name [ = cName] |cName - имя объекта. |
| |Задает имя объекта для ссылки в коде |
| |программы. |
|OLERequestPendingTimeOut |Nmilliseconds - величина задержки в |
|[ = Nmilliseconds ] |миллисекундах, которая по умолчанию равна |
| |5000 мс. Если параметр равен 0, то сообщение |
| |не появляется. |
| |Определяет задержку, которая происходит перед|
| |появлением сообщения о том, что система |
| |занята в процессе выполнения запроса OLE |
| |Automation, если пользователь использует |
| |клавиатуру или мышь. |
|OLEServerRaiseError |lExpression по умолчанию равен .F. - |
|[ = lExpression ] |сообщение об ошибке будет появляться. Если |
| |параметр равен .Т., сообщения будет. |
| |Определяет появление сообщения об ошибке, |
| |когда истекает время, установленное в |
| |свойстве OLEServerBusyTimeout. |
|OLEServerBusyTimeout |nMilliseconds - величина задержки в |
|[ = Nmilliseconds ] |миллисекундах до появления сообщения о том, |
| |что сервер занят. |
| |Определяет время, в течение которого |
| |происходит повторное выполнение запроса OLE |
| |Automation, если сервер занят. |
|StartMode |Возвращает число, идентифицирующее тип |
| |запускаемого приложения. |
|StatusBar [ = cMessageText ] |cMessageText - строка сообщения. Определяет |
| |текст в статус - строке приложения. |
|Top [ = nDist ] |nDist — расстояние от верхнего края. |
| |Определяет расположение окна приложения |
| |относительно верхнего края. |
|Version |Возвращает в виде строки символов номер |
| |версии запускаемого приложения. |
|Visible [ = lExpr ] |lExpr по умолчанию равен .F., т. е. |
| |запускаемая копия приложения невидима. Если |
| |параметр lExpr равен .Т. - приложение |
| |становится видимым. |
| |Определяет, будет ли запускаемая копия |
| |приложения видима. |
|Width [ = nWidth ] |nWidth — ширина окна приложения. Определяет |
| |ширину окна приложения. |

Методы Объекта Application
Таблица 1.
|Метод |Параметры и описание |
|DataToClip ([ nWorkArea |nWorkArea, cTabieAlias — рабочая область или|
|| cTableAlias ] [, nRecords ] |псевдоним источника данных. |
|[, nClipFormat]) |nRecords — число копируемых записей. |
| |uClipFormat по умолчанию равен 1, при этом |
| |данные полей разделяются пробелами. Если |
| |параметр равен 3, данные разделяются знаком |
| |табуляции. |
| |Копирует записи в буфер обмена в виде |
| |текста, в котором каждая запись занимает |
| |отдельную строку. |
|DoCmd (cCommand) |cCommand - выражение, представляющее команду|
| |VFP. |
| |Позволяет выполнить команду Visual FoxPro из|
| |приложения являющегося OLE-контроллером. |
|Eval (cExpression) |cExpression - выражение, которое необходимо |
| |преобразовать. |
| |Преобразует выражения и возвращает его в |
| |Visual FoxPro. |
|Help ([cFileName] |cFileName - имя и путь к файлу оперативной |
|[, nContexId] [, cHelpTopic]) |помощи. NContextID - идентификатор раздела.|
| |cHelpTopic - тема раздела. |
| |Открывает окно с контекстной справкой. |
|Quit() |Закрывает запущенную копию приложения Visual|
| |FoxPro. |
|RequestData ([nWorkArea | |nWorkArea, cTableAlias - рабочая область или|
|cTableAlias] [, nRecords]) |псевдоним источника данных. nRecords - число|
| |копируемых записей. |
| |Создает массив с данными из источника данных|
| |Visual FoxPro. |

Для ссылки на объект Application можно использовать системную
переменную _VFP.
Visual FoxPro 5.0 имеет следующие коллекции, которые ассоциируются с
объектом Application:
. Forms — формы;
. Objects — объекты;
. Controls — элементы управления;
. Pages — страницы;
. Buttons — кнопки;
. Columns — колонки.
При этом обратите внимание, что эти коллекции являются коллекциями
исключительно OLE-объектов и могут использоваться только с объектом
Application. К этим коллекциям нельзя обращаться, используя ассоциированные
переменные с включенными в них объектами. Вы должны использовать свойство
Application, как это показано ниже:
oFrm = CREATEOBJECT( 'Form')
? oFrm.Application.Forms[1].Controls.Count
Если вы уже писали программы в Visual FoxPro 3.0, то приведенное выше
утверждение может вызвать некоторое удивление. Перечисленные коллекций были
представлены и в третьей версии, это действительно так. Но, так как Visual
FoxPro 3.0 не мог выполнять функции OLE-сервера, то эти коллекции не
отвечали общепринятым стандартам OLE. В первую очередь за счет того, что их
свойства были доступны для изменения. Это удобно, если мы работаем с одним
приложением. По-прежнему нам никто не мешает продолжать использовать эти
возможности. Но, как только мы начинаем использовать приложение как OLE-
сервер, т. е. обращаемся к нему из другого приложения, то должны
использовать объекты Visual FoxPro как OLE-коллекции.
Например, ничто не мешает нам при создании формы в Visual FoxPro
написать такой код:
Frm = CREATEOBJECT ('Form' )
? oFrm.ControlCount &&Число элементов управления в форме
Для OLE-сервера число элементов управления в форме следует определять
так, как это было показано в предыдущем примере, с использованием свойства
Count.

Создание OLE-сервера в Visual FoxPro
Используя Visual FoxPro 5.0, можно создать OLE-сервер,
функциональность которого будет использована несколькими приложениями.
Для создания OLE-сервера используемые в нем классы должны быть описаны
как OLE Public, т. е. доступные для OLE Automation. Для этого в команду
DEFINE CLASS включена новая опция OLEPUBLIC. Если класс создается в
Конструкторе классов, необходимо использовать соответствующий независимый
переключать в диалоговом окне Class Info. Отметка класса как OLE Public
позволяет Project Manager при построении приложения создавать и
регистрировать данный класс как ОLЕ-сервер к которому должен получить
доступ OLE-контроллер.
В Visual FoxPro вы можете создать как In-Process сервер (DLL), так и
Out-of-Process сервер (ЕХЕ). Оба типа сервера при работе используют
библиотеку поддержки приложений Visual FoxPro (runtime), однако существенно
отливаются в использовании памяти.
Сервер ЕХЕ запускается в собственном адресном пространстве, и в этом
плане его запуск ничем не отличается от запуска копии Visual FoxPro.
Сервер DLL использует адресное пространство того приложения, которое
инициировало его запуск. Поэтому он запускается и работает быстрее.
Естественно стремление использовать в первую очередь именно такой тип
сервера, однако не всегда мы можем так поступить. Сервер DLL не может
использоваться как внешний сервер OLE Automation и, таким образом, должен
находиться на локальном компьютере. Он не поддерживает события, т. е. не
может использоваться для интерактивной работы. Следует также учитывать, что
авария сервера DLL, как правило, влечет аварию управляющей программы.
Сервер ЕХЕ имеет еще одно преимущество. Он может выполнять роль OLE-
сервера и обычного приложения Visual FoxPro. Таким образом, если приложение-
контроллер использует сервер для выполнения процесса, который может быть
весьма ресурсоемким, но выполняется локально на этом сервере, мы получим
выигрыш в производительности.
Покажем простейший пример создания OLE-сервера Visual FoxPro. Создадим
новый проект Ole_serv, в котором будет один программный файл со следующим
кодом:
DEFINE CLASS OLE_SERV AS CUSTOM OLEPUBLIC
PROCEDURE INIT
MESSAGEBOX(PROGRAM(), "РАБОТАЕТ МОЙ ПЕРВЫЙ OLE-SERVER")
ENDDEFINE
Нажмем кнопку Build и создадим EXE- или DLL-файл. Если вы внимательно
следили за сообщениями появляющимися в процессе построения файла, то
наверняка заметили сообщение «Creating Type Library and Registering OLE
Server», которое свидетельствует о создании и регистрации нашей программы
как OLE-сервера. Напомним, что это произошло из-за наличия опции OLEPUBLIC
в команде описания класса.
При построении OLE-сервера (OLE_SER.EXE или OLE_SER.DLL) создаются
файлы OLE_SERV.TLB и OLE_SERV.VBR.
Файл TLB — это библиотека OLE-o6ъектов сервера, которая может быть
просмотрена с помощью Visual FoxPro Class Browser, Excel, Visual Basic и
Visual C. Файл VBR - это текстовый файл с данными для записи в Регистре
Windows.
Теперь можно набрать в командном окне следующую строчку:
oObj = CREATEOBJECT("OLE_SERV.OLE_SERV")
После непродолжительного ожидания, требующегося для загрузки сервера
вы увидите окно с заголовком «Работает мой первый OLE-сервер!» и сообщением
с именем выполняемой в данный момент процедуры - Init.
Хотя наш OLE-сервер не выполняет никакой полезной работы,
свидетельством его активности могут служить следующие cтрочки:
? oObj.Application.Name
? oObj.Application.Visible
? TYPE("oObj")
? oObj.Application.Docmd("MESSACEBOX(HOME())")
? oObj.Application.Docmd("_ClipText=HOME()+SYS(2003)+ SYS(2004)")
Обратите внимание на последнюю строку примера. Она записывает в буфер
обмена путь к OLE-серверу с помощью трех функций. Например, это может быть
строка: DWORKSVFP5_SAMPLE. В нашем примере она будет повторена три раза.
Это свидетельствует о том, что OLE начинает поиск сервера с каталога SYSТЕМ
ОС Windows.
Таким образом, при распространении приложения и установке сервера на
различных компьютерах в различных каталогах, мы можем столкнуться с
проблемой указания пути как к серверу, так и используемым им компонентам
(файлам базы данных, форм, отчетов и т. д.). Лучшее решение - это
использование для сервера ЕХЕ-функции Windows API GetModuleFileName(),
которая возвращает полный путь к главному файлу ЕХЕ текущего процесса, если
в качестве первого параметра передается нуль. Для сервера DLL можно
использовать функцию GetModuleHandleQ с именем файла DLL в качестве
параметра для возвращения указателя на сервер. Этот указатель можно
использовать в функции GetModuleFileName() для получения полного пути к
серверу DLL.
Сделаем еще несколько замечаний насчет построения OLE-сервера.
Выберите команду Project Info из меню Project, когда открыт последний
обсуждаемый проект, ив появившемся диалоговом окне перейдите на вкладку
Servers. На этой вкладке сосредоточена информация, которую вы можете
просмотреть или изменить для каждого класса OLE Public в проекте. Обратите
внимание, что эта информация появляется только после того, как будет
построен EXE- или DLL-файл.
Раскрывающийся список Instancing позволяет указать, как будет работать
сервер Out-of-Process. Возможные установки приведены в табл. 3.

Возможные режимы работы OLE-сервера Visual FoxPro
Таблица 3.
|Single Use |Каждый клиент использует свою собственную копию сервера. |
| |Таким образом для нескольких пользователей будет запущено |
| |соответствующие количество копий сервера. |
|Multiple Use |Все клиенты используют одну копию сервера. Для того, чтобы |
| |избежать их взаимного влияния при работе с общими данными, |
| |следует установить значение свойства DataSession равным 2 |
| |(private). |
|Not Creatable |Предотвращает создание OLE-сервера, несмотря на наличие в |
| |проекте класса OLE Public. |

OLE-сервер Visual FoxPro регистрируется автоматически. Для ручной
регистрации сервера ЕХЕ достаточно его запустить с опцией /regserver. Опция
/unregserver позволяет удалить информацию о сервере из Регистра Windows.
Для регистрации сервера DLL вручную запустите утилиту REGSVR32.EXE с именем
файла в качестве первого параметра. Удалить информацию о сервере из
Регистра можно, использовав второй параметр /u. Например:
REGSVR32 OLE_SERV.DLL /u
OLE-сервер Visual FoxPro для своей работы требует присутствия
библиотеки поддержки - файлов VFP500.DLL и VFP5ENU.DLL.

OLE-сервер в компьютерной сети
При коллективное работе с данными OLE-сервер должен обрабатывать
вызовы всех пользователей компьютерной сети и, следовательно, должен
находиться на сервере, а не на каждом компьютеры пользователя. Такой подход
позволяет организовать трехуровневую модель обработки данных. Эта модель
отличается от традиционной модели клиент-сервер, т. к. отображает не просто
физическое взаимное - расположение пользователя и программы, а логику
обработки данных. В трехуровневой модели выделяют следующие логические
процессы:
Пользовательский процесс — представляет возможность работы с данными
пользователю приложения, обеспечивает защиту данных от несанкционированного
доступа.
Бизнес-процесс — обеспечивает единые правила работы с данными с точки
зрения технологии производственного процесса, генерирует информационную
поддержку маркетинга и менеджмента.
Процесс обработки данных — обеспечивает описание и хранение данных
обработку и выполнение запросов, поддержку целостности данных.
Таким образом, в этой логической модели бизнес-процесс может быть
ревизован на основе OLE-сервера, в котором с помощью соответствующих
методов будет организована обработка данных, посылаемых от клиентских
приложений с целью выполнения комплексных расчетов на основе различных
источников, и выработки каких-либо решений для дальнейшей обработки.
Возможность взаимодействия между OLE-контроллером и OLE-сервером
обеспечивается двумя объектами:
Proxy — обеспечивает формирование пакета данных с параметрами вызова для
OLE-сервера. Этот объект работает в адресном пространстве OLE-контроллера и
обеспечивает соединение с соответствующим объектом Stub в адресном
пространстве OLE-сервера.
Stub — принимает пакет данных и обеспечивает переадресацию вызова для
выполнения соответствующих действий на OLE-сервере. Этот объект работает в
адресном пространстве OLE-сервера и связан с соответствующим объектом Proxy
в адресном пространстве OLE-контроллера.
При работе OLE Automation на одном компьютере функционирование
объектов Proxy и Stub обеспечивается системным файлом OLEAUT32.DLL
Если OLE-контроллер и OLE-сервер расположены на разных компьютерах,
для обеспечения связи между ними необходимо использовать дополнительный
компонент, который называется Automation Manager (файл AUTMGR32.EXE). Этот
компонент должен быть установлен на обоих компьютерах.
OLE-контроллер продолжает использовать объект Proxy, но в этом случае
его функционирование обеспечивается файлом AUTPRX32.DLL. На компьютере с
внешним OLE-сервером Automation Manager управляет как объектом Stub для
получения пакетов данных от OLE-контроллера, так и объектом Proxy для
имитации наличия OLE-контроллера на этом компьютере. Таким образом для OLE-
cepвера создаются все условия, чтобы он не ощущал «одиночества» от
отсутствия OLE-контроллера на том же самом компьютере,
Сервер OLE Visual FoxPro 5.0 поддерживает обратные связи. Вы можете
использовать метод на сервере, который будет получать ссылку на объект от
OLE-контроллера как один из параметров. Эта возможность позволяет
устанавливать асинхронную связь с сервером, если эта связь не может быть
установлена немедленно по причине выполнения сервером какого-то длительного
процесса.
В этом случае на сервере, который будет, например, называться
Processor (в Регистр Windows — MyServer.Processor) должен быть описан
класс:
DEFINE CLASS Processor AS Custom OLEPUBLIC
oObjRef = ""
PROCEDURE SetupRef (oRef)
This.oObjRef = oRef
ENDPROC
PROCEDURE DoCallBack
This.oObjRef.Notify ()
ENDPROC
ENDDEFINE
В клиентском приложении запишем:
oObjl = CREATEOBJECT ("Job")
o0bj2 - CREATEOBJECT ("MyServer .Processor")
o0bj2 . SetUpRef ( oObjl)
DEFINE CLASS Job AS Custom
PROCEDURE Notify
= MESSAGEBOX ("Задание выполнено!")
ENDPROC
ENDDEFINE
Как только на сервере вызывается метод DoCallBack, следует выполнение
метода Notify объекта клиентского приложения.
Если связь с OLE-сервером происходит по компьютерной сети то на
компьютере клиентского приложения должен быть установлю Automation Manager.
Первоначально Automation Manager и Remote Automation Manager были
разработаны для Visual Basic 4.0 и в дальнейшем использованы в Visual
FoxPro 5.0 для расширения функциональности в области разработки крупных
проектов при коллективной работе с данными.

Automation Manager
Automation Manager работает в фоновом режиме, т. к. его основное
предназначение заключается в управлении процессом OLE Automation в сети
путем внешних процедурных вызовов. Как отмечалось выше, эти вызовы
формируются за счет взаимодействия между объектами OLE Proxy и OLE Stub.
Без них вы не сможете создать внешний OLE-сервер.
Automation Manager устанавливается на сервере и распределяет вызовы от
объекта Proxy рабочей станции к соответствующему объекту Stub сервера.
Возвращаемые значения Automation Manager направляет OLE-контроллеру через
объект Stub. За Счет этого ни OLE-контроллер, ни OLE-сервер не чувствуют,
что расположены на разных компьютерах.
В большинстве случаев достаточно установки Automation Manager на
сервере. Однако, если приложение предусматривает наличие «обратной связи»
от OLE-сервера, необходима установка Automation Manager и на клиентский
компьютер. Обычно запуск Automation Manager происходит автоматически, как
только система обнаруживает в этом необходимость. Если этого не произошло,
одна из наиболее возможных причин — повреждение или неправильная запись в
Регистре Windows.
В случае необходимости непосредственно из Visual FoxPro
зарегистрировать Automation Manager можно следующей командой:
RUN /n c:vfpautmgr32.exe /regserver
Установки Automation Manager в Регистре Windows имеют следующее
расположение:
HKEY_LOCAL_MACHINESoftwareMicrosoftAutomation Manager/

Remote Automation Connection Manager
Remote Automation Connection Manager (RACMan) написан на Visual Basic
4.0 и поэтому для работы требует наличия библиотеки поддержки Visual Basic.
Его основное назначение заключается в управлении записями Регистра Windows,
которые включают необходимые сведения для внешнего соединения со стороны
клиента и доступа клиента на сервере. RACMan требует регистрации сервера на
клиентском компьютере, поэтому при установке приложения потребуется файл
CLIREG32.EXE, который переписывается автоматически, если вы используете
Setup Wizard. При запуске программа CLIREG32.EXE требует нескольких
параметров, в том числе: имя файла с расширением VBR, который генерируется
автоматически при создании OLE-сервера, сетевое имя компьютера, сетевой
протокол и параметры доступа пользователя. При этом только первый из
указанных параметров является обязательным.
Таким образом, RACMan обеспечивает две функции:
Внешнее соединение на компьютере клиента. Пользователь может изменить
сервер, который уже зарегистрирован на его компьютере, и зарегистрировать
новый OLE-сервер.
Доступ клиента к серверу. Сервер может определять возможность доступа
клиента как с использованием имени компьютера, так и имени пользователя.
При этом для Windows NT обеспечивается интегрированная авторизация доступа.
Установки для внешнего OLE-сервера записываются в Регистре Windows для
данного сервера с ключом CLSID в HKEY_CLASSES__ROOT.
Приведем пример использования OLE-сервера в компьютерной сети для
выполнения расчетов с данными таблицы, хранящейся на файл-сервере. Выполним
последовательно следующие действия:
1. Для создания OLE-сервера напишем следующую программу:
*1*'Создаем подкласс из базового класса Custom
*!* 'Ключевое слово OLEPUBLIC обязательно

*1* 'Именно оно и позволяет сделать наш объект OLE-объектом
DEFINE CLASS Sum_table AS CUSTOM OLEPUBLIC
* Свойство, которое запоминает значение суммы
Sum_paid = О
* Метод для расчета суммы

PROCEDURE Proc Summary
PARAMETERS What
S3T EXCLUSIVE OFF

SELECT SUM (lnv_details.price*lnv_aetails .quantity) AS sum ;
FROM С :OFFICE4DATABASE Invoices, ;

C: OFFICE4DATABASElnv_details ;
WHERE Invoices .kod_id = lnv_deta-ils.kod_id ;
AND Invoices .paid = What ;
INTO CURSOR cur_sum
**"* Возвращаемое значение
SELECT cur_sum
THIS. Sum_paid = cur_sum .sum
USE IN cur_sum
END PROC
ENDDEFINE
Эта программа будет считать сумму выписанных счетов. В зависимости от
значения передаваемого параметра будет считаться сумма по всем счетам или
только по оплаченным.
2. В проекте нажмем кнопку Build, щель нем мышкой на зависимом
переключателе Build Executable и скомпилируем ЕХЕ-файл OLE-сервера с
именем Ole_sum. Напомним, что нам требуется именно этот тип сервера,
если мы собираемся использовать его в сети.
3. Зарегистрируем созданный сервер на файл-сервере, выполнив следующую
команду:
REGSVR32 C:OFFICE4OLE_SUM.EXE
4. Запустим Remote Automation Connection Manager, выберем в списке СОМ
Classes наш класс и установим требуемые параметры доступа.
He забудьте убедиться, что на вкладке Client Access независимый
переключатель Allow Remote Activation включен.
5. Скопируйте файл OLE_SUM.VBR на локальный компьютер.
6. Зарегистрируйте на локальном компьютере OLE-сервер, используя
информацию, содержащуюся в файле VBR. Для этого необходимо выполнить
следующую команду:
C:VFPCLIREG32 С VFPOLE_SUM.VBR
На экране появится диалоговое окно, в котором необходимо указать
сетевое имя файл-сервера
7. На сервере и локальном компьютере запустите Automation Manager.
8. На локальном компьютере запустите Visual FoxPro и наберите в окне
Command следующие команды:
oSum = CREATEOBJECT("ole_sum.sum_table")
oSum.ProcSuitmiary(.T.)
? oSum.Sum_paid
oSum.РrосSummary(.F.)
?oSum.Sum_paid
На экране вы увидите полученный результат.
Широкие возможности использования OLE-сервера Visual FoxPro
заключаются в управлении им из любой другой программы, поддерживающей OLE
Automation. Например, те же действия мы можем выполнить из Excel, используя
следующую процедуру:
Sub mysub()
Dim sum_obj As Object
Set sum_obj = CreateObject("ole_sum.sum_table")
sum_obj.ProcSummary True
Sheets("Лист1").Cells(1,1).Value = sum_obj.Sum_paid
End Sub
Процедура поместит значение суммы в первую ячейку на первый лист
Excel. Этот простейший пример наглядно показывает возможности OLE-сервера
Visual FoxPro, который может играть роль сервера данных в небольшой
компьютерной сети, там, где не требуется вся мощь таких серверов БД, как
SQL Server или Oracle.




Реферат на тему: OS Linux

Владивостокский судостроительный техникум



РЕФЕРАТ

OC LINUX



Выполнил ст. гр. Р-410

Матаненков А.В.
Проверил:



2002

Содержание:

I Особенности ОС Linux
II Сравнение операционных систем.
IV Возможности Linux
V Файловые системы Linux
VI Иерархия каталогов Linux



[pic]



I Особенности OS LINUX

Я считаю, что Microsoft создала объективно плохую
операционную систему, и мне интересно наблюдать,
как это постепенно доходит до людей.
Линус Торвальдс, создатель ОС Linux


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

DOS (MS-DOS, DR-DOS и их клоны); Windows 3.1x;
OS-2;
Windows 9x;
Windows NT (Windows 2000);
Mac OS;
Mac OS X;
семейство UNIX;
FfeeBSD, OpenBSD, NetBSD;
Linux;
BeOS;
QNX.

Конечно, приведенный список далеко не полон, но мы сознательно
ограничим его операционными системами, используемыми наиболее часто.
Рассмотрим этот список с точки зрения человека, которому необходимо иметь
на компьютере операционную систему, удовлетворяющую нескольким, порой
противоречивым, требованиям.
Операционные системы можно классифицировать по многим параметрам. Во-
первых, все они делятся на два вида — платные и бесплатные (условно-
бесплатные). Во-вторых, правомерно разделить их на операционные системы с
открытым исходным кодом (с правом вносить изменения или без права внесения
изменений) и с закрытым исходным кодом. В-третьих, операционные системы
бывают одноплатформенные (способные функционировать только на одной
платформе, например PC-совместимой) и многоплатформенные (способные
функционировать на нескольких платформах, например PC-совместимой,
Macintosh, Sun, PowerPC). В-четвертых, операционные системы могут быть
однозадачными и многозадачными. В-пятых, однопользовательскими и
многопользовательскими. В-шестых, серверными, клиентскими или
универсальными. В-седьмых, иметь текстовый, графический или тот и другой
интерфейсы. В-восьмых, ориентацией на работу с сетью и Интернетом. В-
девятых, по потребляемым ресурсам и т. д. А ведь это только начало.
Критериев, по которым выбирается операционная система, намного больше.
Имеют право на существование и такие критерии, как "Она мне нравится" или
"Друг себе поставил, чем я хуже?" А ведь выбор операционной системы
определяет, как вы будете жить и работать ближайшие несколько Лет (или
десятилетий). Поэтому к выбору операционной системы следует относиться с
большой тщательностью и достаточной долей скептицизма. Сжато охарактеризуем
наиболее популярные операционные системы.

DOS

Производитель — Microsoft. Была создана на заре эры PC. 16-разрядная
однопользовательская, однозадачная система. Платная, закрытый исходный код.
Одноплатформенная (PC-совместимая). Текстовый интерфейс (командная строка).
Достаточно простой процесс установки. Файловая система — FAT 12, FAT 16,
FAT 32. Поддержка локальной сети — драйверы и программы сторонних
производителей. Интернет — аналогично. Морально устарела еще до рождения.
Разрабатывалась поспешно, без учета развития аппаратных и программных
средств. При появлении нового аппаратного обеспечения срочно
дорабатывалась, более или менее устойчивая система появилась только к 1990-
му году (по прошествии 10 лет!). Последняя самостоятельная версия (как
отдельного продукта) — MS-DOS 6.22. Последние версии включали в основном
косметические изменения. Но (благодаря дружбе IBM и Microsoft) — получила
широчайшее распространение, имела малую потребность в ресурсах,
поддерживала практически все выпускаемое для PC аппаратное обеспечение, и
для своей ниши была почти оптимальным решением с точки зрения
цена/ресурсы/производительность. Для DOS было выпущено несметное количество
приложений, последние пять лет новые программные продукты для DOS не
выпускаются. Существовали многочисленные клоны. Наиболее известные — IBM-
DOS, PC-DOS, DR-DOS.



Windows 3.1 х

Строго говоря — это даже не операционная система, а графическая оболочка
или, если хотите, надстройка над DOS. Почему версии З.1х? Потому что, по
большому счету, только к версии 3.1 была достигнута достаточная
стабильность, неплохая функциональность, накоплена критическая масса
приложений и реализована многозадачность. Благодаря Windows в мир PC был
внесен дух однообразия и предсказуемости. Интерфейс приложений стал
стандартизирован, системные библиотеки унифицированы, внедрена поддержка
локальной сети, появился достаточно большой набор драйверов для аппаратного
обеспечения, поставляемых в дистрибутиве Windows. В комплект Windows вошли
несколько десятков приложений, благодаря чему потребитель получал почти
готовую систему для офисной работы. Доступ в Интернет по-прежнему
осуществлялся с помощью программ сторонних производителей. Система
получилась не очень надежная, достаточно часто происходили зависания. Для
Windows 3.1х было выпущено много разнообразного программного обеспечения,
впрочем, после 1996 года новые программные продукты для Windows 3.1х больше
практически не выпускались. Достаточно простой процесс установки. Слабая
поддержка мультимедийных устройств. Платная. Исходный код недоступен.
Последняя версия (16 битная) Windows for Workgroups 3.11. Требования к
аппаратному обеспечению — процессор 386, не менее 2 (лучше 4) Мбайт
оперативной памяти, не менее 16 Мбайт места на жестком диске.



OS/2

Совместная разработка IBM и Microsoft. Впоследствии IBM и Microsoft
разошлись, и OS/2 заканчивала и выпускала в свет только IBM, которая всегда
позиционировала свою операционную систему для корпоративного использования.
Из-за слабой маркетинговой политики IBM, сильной конкуренции со стороны
Microsoft, относительно малого количества разработанных под систему
программных продуктов IBM отказалась от дальнейшего продвижения OS/2. Для
своего времени (а это расцвет DOS и Windows 3.1x) была очйнь прогрессивна.
В дальнейшем (версии 2- 4) получила существенное расширение
функциональности. 32-битная многозадачная операционная система. Отличная
поддержка локальной сети и Интернета. Помимо программ, разработанных
специально для OS/2, система позволяет запускать как DOS-приложения, так и
приложения Windows 3.1x. Разрабатывается приложение Odin, позволяющее
выполнять приложения Windows 9x. Файловая система — HPFS (High Performance
File System). Поддерживает также достаточно большой список файловых систем,
в том числе FAT 12, FAT 16, FAT 32. Требования к аппаратному обеспечению —
процессор Pentium, не менее 32 Мбайт оперативной памяти, не менее 120 Мбайт
места на жестком диске.



Windows 9x

32-битная операционная система с поддержкой 16-битных приложений
(Windows З.1х). Первая версия появилась в 1995 году. Затем в течение почти
трех лет выходили исправления многочисленных ошибок. Попытка Microsoft
объединить лебедя, рака и щуку — в одной операционной системе без проблем
запускать исполняемый код DOS, Windows 3.1х (16 бит) и Windows 9x (32 бит).
В результате получилась не очень устойчивая система, которую удалось
отладить только к 1998 году (Windows 98). Несмотря на то, что Windows 9х
объявлена операционной системой, она по-прежнему базируется на MS-DOS
версии 7.0 со всеми ее рудиментами и наследственностью. В Windows 9х
добавлено программное обеспечение, необходимое для работы в Интернете, и
существенно расширен список драйверов для аппаратного обеспечения.
Windows 98 и последняя версия, Windows ME (Millennium Edition), фирмой
Microsoft рассматриваются как переходный этап к Windows NT (Windows 2000),
поэтому в Windows 9x частично включено программное обеспечение, характерное
для серверов. Простой процесс установки и конфигурации системы/ но
отсутствует возможность тонкой ее настройки без стороннего программного
обеспечения. Хорошая поддержка мультимедийных устройств и игр. Огромнейший
список разработанного под систему программного обеспечения. На сегодняшний
день Windows 9x и MS Office являются стандартом de-facto для настольных
офисных систем. Платная. Исходный код недоступен. Требования к аппаратному
обеспечению — процессор Pentium-166, не менее 32 Мбайт оперативной памяти,
не менее 250 Мбайт места на жестком диске (для Windows ME не менее 64 Мбайт
оперативной памяти, не менее 500 Мбайт места на жестком диске). Файловая
система — FAT 32 (FAT 16).


Windows NT (Windows 2000)

Ощущая бесперспективность развития ветки DOS-Windows 3.1x Microsoft
разработала новую операционную систему Windows NT (New Technology),
базирующуюся на стандарте POSIX и новой файловой системе — NTFS (New
Technology File System). Разработчики Windows NT серьезно взялись за
проектирование операцицнной системы с учетом ее дальнейшего развития
(совсем недавно вышла последняя в этой линейке операционная система —
Windows XP). На сегодняшний день Windows NT — флагманская операционная
система фирмы Microsoft. Существует две ее версии — Windows NT Workstation
и Windows NT Server. Первая версия предназначена для настольных систем,
вторая — серверная платформа. В обеих версиях используется графический
интерфейс, что для сервера — в общем-то излишество и нерациональная трата
ресурсов. Многозадачная, многопользовательская, одноплатформенная (PC),
весьма устойчивая операционная система. Имеет встроенную поддержку
многопроцессорных и кластерных систем. Хорошая поддержка мультимедийных
устройств и игр (однако не все существующие игры надежно работают под
Windows NT). Полного набора серверных приложений не имеет (нет, например,
Web-сервера). Исходный код недоступен. Платная. Windows NT Server рассчитан
на малые и средние рабочие группы, на большие нагрузки пока не рассчитан.
Помимо NTFS поддерживает файловые системы FAT и OS/2 (HPFS). Требования к
аппаратному обеспечению Windows NT Workstation — процессор Pentium, не
менее 128 Мбайт оперативной памяти, не менее 500 Мбайт места на жестком
диске; Windows NT Server — процессор Pentium, не менее 256 Мбайт
оперативной памяти, не менее 500 Мбайт места на жестком диске.


Mac OS

Производитель — Apple. Операционная система для Macintosh и его
пользователей, многозадачная, однопользовательская, графическая. Первая
версия была выпущена более 15 лет назад. С выходом Mac OS X считается
окончательно устаревшей и постепенно сходит со сцены. Великолепная система
для пользователя по эргономичности, дружественности и простоте освоения. За
свою историю накопила достаточно большое количество устаревших концепций,
оставленных для совместимости. Последние версии Mac OS были рассчитаны на
компьютеры Apple, базирующиеся на процессоре Motorola 68040 и PowerPC с не
менее 16 Мбайт оперативной памяти.

Mac OS X

Производитель — Apple. Новая операционная система для компьютеров
Macintosh, базирующихся на процессоре PowerPC. UNIX-подобная, POSIX-
совместимая, многозадачная операционная система с графическим интерфейсом.
Способна выступать как в качестве сервера, так и в качестве клиентской
операционной системы. Платная, закрытый исходный код. Фирма Apple заявила о
скором переносе Mac OS X на платформу Intel. Поддерживает сетевую файловую
систему NFS (Network File System). Mac OS X предназначена для работы на
компьютерах Power Macintosh с процессором G3. Требования — не менее 128
Мбайт оперативной памяти. Рекомендуемый объем жесткого диска — 5 Гбайт.

Семейство UNIX

Группа операционных систем, имеющих общего предка и традиционно носящих
название UNIX. Фирмы производители — AT&T, DEC, Sun, Hewlett-Packard, IBM,
SCO и многие другие. Несмотря на то что первая версия UNIX была выпущена
еще тридцать лет назад, UNIX до сих пор считается наиболее современной,
надежной и динамично развивающиеся операционной системой. Большой вклад в
успех UNIX внесли специалисты AT&T, студенты и преподаватели университета
Беркли. На сегодняшний день UNIX той или иной фирмы-производителя
установлен практически на каждом сервере уровня предприятия, больших
кластерах и мультипроцессорных системах, а также на многих рабочих и
графических станциях. Многоплатформенная, мультизадачная,
многопользовательская операционная система. Поддерживает кластеризацию,
мультипроцессорные системы, распределенные вычислительные среды, массивы
накопителей огромной емкости и многое другое. На сегодняшний день трудно
найти компьютер, на котором не смогла бы работать одна из версий UNIX. Как
правило, UNIX, выпускаемая фирмами, — платная, с закрытым исходным кодом.
Тем не менее, существует достаточно много (например, семейство BSD, Linux)
бесплатных, с открытым исходным кодом UNIX-совместимых операционных систем.
Благодаря стандарту POSIX практически любое приложение можно перенести из
одного представителя семейства UNIX в другой. Благодаря этому для UNIX
имеется огромное количество как бесплатных, так и коммерческих программ.
Как правило, для каждой разновидности UNIX разработана своя файловая
система, но все разновидности UNIX могут работать с распространенными
файловыми системами. В том числе существуют и т. н. журнолируемые файловые
системы. В журналируемых файловых системах для решения проблемы повреждения
структуры файловой системы или хранения данных применяют транзакции,
используемые практически в любой базе данных. Транзакция считается
незавершенной до тех пор, пока все изменения не сохранены на диске. А чтобы
сбои, происходящие до завершения всех операций, входящих в транзакцию, не
приводили к необратимым последствиям, все действия и все изменяемые данные
протоколируются. В том случае, если все-таки сбой произойдет, по протоколу
можно вернуть систему в рабочее состояние. Требования к аппаратной
платформе — самые разнообразные. Как уже упоминалось выше — трудно найти
компьютер, на котором не смогла бы работать одна из версий UNIX.

FreeBSD, OpenBSD, NetBSD

Операционные POSIX-совместимые системы семейства UNIX на основе кода
университета Беркли. Принципиальные различия:
FreeBSD — очень надежная, достаточно консервативная (в хорошем смысле
этого слова). Аппаратная платформа — Intel;
NetBSD — переносимость на большое количество аппаратных платформ;
OpenBSD — попытка объединить достоинства FreeBSD и NetBSD в одном
дистрибутиве.
Бесплатные, открытый исходный код. На сегодняшний день наибольшее
распространение из-за своей особой надежности получила FreeBSD. Двоичная
совместимость со многими программами, построенными под SCO, BSD/OS,
Net/Free/OpenBSD, 386BSD и Linux.

Linux

POSIX-совместимая UNIX-подобная операционная система. На сегодняшний день —
самая распространенная бесплатная операционная система с открытым исходным
кодом. При ее разработке из мира семейства UNIX старались взять все лучшее.
Благодаря участию десятков тысяч разработчиков программного обеспечения и
координации их действий через Интернет Linux и программное обеспечение для
нее развивается очень динамично, ошибки и различные проблемы в программном
обеспечении, как правило, исправляются в считанные часы после их
обнаружения. Большую помощь в развитии и распространении Linux и
сопутствующего, ему программного обеспечения оказали фонд Свободного
программного обеспечения (Free Software Foundation, USA) и лицензия GNU
(The GNU General Public License, Универсальная общественная лицензия GNU)
для программного обеспечения. На сегодняшний день существует одно ядро
Linux, разработку которого координируют его создатели Линус Торвальдс и
Алан Кокс, и множество дистрибутивов (не менее 2-3 десятков), отличающихся
как функциональным назначением, так и составом программного обеспечения,
входящим в дистрибутив. Существуют дистрибутивы, занимающие десяток компакт-
дисков, и дистрибутивы, умещающиеся на одной-двух дискетах. Все, что
справедливо для семейства UNIX — справедливо и для Linux. Широчайшая
поддержка аппаратных платформ, малая требовательность к аппаратным ресурсам
(процессор 486, 8 Мбайт оперативной памяти, винчестер120 Мбайт).
Масштабируемость, поддержка мультипроцессорных систем, кластеризация,
поддержка распределенных вычислений, десятки графических оболочек — и это
далеко не все. Поддерживаются десятки файловых систем, родная файловая
система Ext2. И при всей мощи — достаточно дружественная операционная
система, способная работать как на мощнейшем сервере, так и на стареньком
"пентиуме" где-нибудь в офисе.

BeOS

Производитель — Be Inc. UNIX-подобная графическая операционная
система. Однопользовательская. Сами разработчики позиционируют BeOS как
операционную систему для работы с мультимедиа. Графический интерфейс. Очень
молодая операционная система (по сравнению с ранее рассмотренными), поэтому
относительно небольшой список поддерживаемого оборудования и программного
обеспечения. BeOS поддерживает компьютеры с симметричной мультипроцессорной
архитектурой (SMP) (до 8-ми процессоров), файловая система BFS (Be File
System), 64-битная и журналируемая. Вытесняющая многозадачность, почти
полная POSIX-совместимость. На сегодняшний день существуют две версии
операционной системы — BeOS 5 РЕ (Personal Edition) — бесплатная
(дистрибутив можно взять в Интернете, www.be.com) и BeOS 5 Pro — платная
(поставляется на CD-ROM в коробке и с документацией). Исходный код
недоступен (несколько программ, входящих в BeOS, имеют открытый исходный
код). Поддерживает работу с несколькими файловыми системами — FAT 16, FAT
32 (возможно чтение и запись), NTFS (только чтение). HFS. ext2, CDFS.
Аппаратные требования — Pentium-133, оперативная память — 32 Мбайт, место
на винчестере — 512 Мбайт (минимально — 120 Мбайт). Возможен вариант
установки под Windows и Linux. Аппаратная платформа — PC, PowerPC.

QNX

Производитель QNX — QNX Software Systems. UNIX-подобная POSIX-совместимая
операционная система реального времени. 32-битная, многозадачная,
многопользовательская, микроядерная. Первоначальное предназначение —
промышленная операционная система, предназначенная для работы в режиме
99,999 % надежности ("пять девяток"). Используется для управления
технологическими процессами, начиная от атомных электростанций и заканчивая
производством мороженого. Исходный код закрыт. Проблемы с драйверами (малое
количество). Минимальные требования для промышленного дистрибутива — 386-й
процессор, 8 Мбайт ОЗУ. Помимо промышленных дистрибутивов QNX, стоящих
немалые деньги, существует бесплатный вариант дистрибутива "QNX Real Time
Platform", который загружается с сайта производителя (www.qnx.com).
Минимальные требования для бесплатного дистрибутива — процессор Pentium-
200, 32 Мбайт ОЗУ, 100 Мбайт на жестком диске.

II Сравнение операционных систем.

Что такое пользователь? Понятие «пользователь» не подведеш под
«среднестатистическое» значение. Он многолик и разнообразен. Единственное
что есть у всех пользователей компьютера – они сидят за компьютером.
Пользователи с точки зрения системного администратора – все те, кто входит
в систему в качестве пользователя, «юзера». С точки зрения системного
программиста –все кто запускает компьютер. Для разработчика прикладного
программного обеспечения – пользователи его программы. Для авторов книг –
это люди знающие только то, что у него есть только шнур питания и какая-то
доска с кнопками. И так далее . Если попытаться обобщить, основной
пользователь – это человек, который не разбирается в устройстве
компьютеров, не знает как настроить модем, не обязан знать тонкости
операционной системы и т.д. Пользователь решает на компьютере свои
профессиональные задачи, зачастую не имеющие с компьютером ничего общего.
На практике все это, конечно, не совсем так мрачно. Пользователь для
успешной работы просто обязан знать что такое файл, как настроить рабочий
стол, установить программу, что такое вирусы и как с ними бороться и т.д.
Пользователей можно разделить на 3 группы – не знающий о компьютере ничего,
знающий кое-что и знающий многое. Соответственно, по уровням пользователей
можно разделить операционные системы на 3 категории:

К первой категории можно отнести Mac OS и, в какой-то степени, Mac OS X, а
также BeOS. Ко второй категории Windows 9x, OS/2. К третьей, как ни
странно, — DOS, Windows 3.1.x, Windows NT/2000, UNIX-семейство, BSD-
семейство, Linux, QNX. Такое разбиение операционных систем не всегда
соответствует официальному позиционированию фирм-разработчиков (например,
Microsoft рекламирует Windows 9x как систему для домохозяек — включил и
работай). Однако с точки зрения коллективного разума (по крайней мере, так
считают авторы новостных конференций, посвященных сравнительному обзору
операционных систем) данное нами разбиение операционных систем достаточно
верно. Впрочем, жизнь, как всегда, не стоит на месте. Сейчас уже можно
говорить, что Linux с ее графическими менеджерами окон KDE и GNOME
постепенно переходит, если уже не перешла, ко второй категории (то есть для
пользователей, знающих об операционной системе кое-что), при этом не теряя
ни мощности, ни настраиваемости всего и вся. Семейство Windows постепенно
сдвигается к группе пользователей, не знающих об операционной системе
ничего, при этом вызывая заметное раздражение знающих, или, как у них
говорят — Advanced Users, своей уверенностью, что пользователь системе
приносит только вред, а посему ничего настраивать он не должен, а если
очень хочет — пусть платит за поддержку или специальное программное
обеспечение. В идеале же операционная система должна удовлетворять, по
меньшей мере, семи достаточно противоречивым требованиям.
1. Быть легкой в освоении и дружественной к пользователю (User Friendly).
1. Быть очень мощной и универсальной (способной работать на любом

оборудовании).
2. В ней все должно настраиваться и достаточно просто.
3. Она должна быть очень надежна (в идеале — сверхнадежна).
4. Занимать как можно меньше места.
2. Разработчики моментально должны реагировать на проблемы, обнаруженные в
процессе эксплуатации.
5. Под нее должен быть широкий выбор программного обеспечения.


В нескольких словах рассмотрим эти семь пунктов. Пункт первый. Тут,
собственно, и так все ясно. От того, как быстро человек освоится с
операционной системой и насколько удобно ему в ней работать, напрямую
зависит производительность труда, да и просто хорошее настроение. Пункт
второй. Можно, конечно, возразить, что чем более универсальный инструмент,
тем слабее он для какого-нибудь специфического применения, и чисто
теоретически это так. Но давайте посмотрим на универсальность с другой
стороны. Теоретические принципы построения операционной среды, по большому
счету, одинаковы, что для старенькой 386-й, что для новейших
мультипроцессорных систем. Специфику платформы (тип процессора,
мультипроцессорность, кластеризацию и т. п.) всегда можно учесть при
разработке специфического ядра операционной системы или драйверов.
Некоторая потеря в производительности с лихвой окупается тем, что
пользователю, поработавшему на мощнейшем сервере и перешедшему на офисный
компьютер, графическую станцию или домашний ПК, не придется осваивать
другую операционную систему — его операционная система может работать на
любом компьютере. А способность работать на любом компьютере автоматически
подразумевает, что операционная система должна занимать как можно меньше
места и потреблять мало аппаратных ресурсов. Пункт третий. И тут все
понятно без пространных пояснений. Пользователь должен иметь возможность
настроить операционную систему под свои нужды, не прибегая к стороннему (не
входящему в поставку операционной системы) программному обеспечению. Пункт
четвертый. Правда, больное место? У любого пользователя Windows со стажем
наверняка происходило зависание компьютера, причем в самое неподходящее
время. И каждый пользователь хочет, чтобы зависания никогда не происходили
на его компьютере. Пункт пятый. Это тоже понятно. Уже надоело каждые год-
полтора менять жесткий диск только из-за того, что следующая версия
операционной системы требует "совсем немного, только каких-то 3 Гбайта
места на жестком диске". Пункт шестой. И это очевидно. Пользователь должен
получить исправления к своей операционной системе при обнаружении просчетов
ее разработчиков. Причем, как можно скорее, если операционная система
удовлетворяет п. 4. И притом абсолютно бесплатно, поскольку это просчет
разработчика. Пункт седьмой. Пусть операционная система будет самой
распрекрасной, но если для нее нет программ, она не будет востребована.



Теперь оценим операционные системы на соответствие вышеперечисленным
требованиям.
DOS — не удовлетворяет ни одному пункту, кроме п. 7.
Windows 3.1х- удовлетворяет п.1 с оговорками, частично п. 3 и п. 5,
удовлетворяет п. 7.
OS/2 — удовлетворяет п. 1, п. 2 (с учетом одноплатформенности), п. 3,
частично п. 4, п. 5 и п. 7.
Windows 9х — удовлетворяет п. 1, частично п. 3, безусловно
удовлетворяет п. 7.
Windows NT (Windows 2000) — удовлетворяет п.1, п.2 (с учетом
одноплатформенности и непомерных требований к аппаратному обеспечению),
п. 3 и п. 4 с оговорками, безусловно удовлетворяет п. 7.
Мас ОС — безусловно удовлетворяет п. 1, п. 2 (с учетом
одноплатформенности), частично п. 3, п. 4, п. 5, п. 6, удовлетворяет п.
7.
Мас ОС X — безусловно удовлетворяет п. 1, п. 2 (с учетом
одноплатформенности и завышенных требований к аппаратному обеспечению),
п. 3, ' п. 4, п. 6, пока не удовлетворяет п. 7.
UNIX-семейство — безусловно удовлетворяет всем пунктам, кроме первого,
да и то, в последнее время легкость освоения и дружественность у UNIX-
разработчиков стоят на первом месте.
FreeBSD, OpenBSD, NetBSD — все сказанное о UNIX-семействе справедливо и
для этих операционных систем.
Linux — безусловно удовлетворяет всем пунктам, особенно п. 2, п. 3, п.
6, п. 7.
BeOS — удовлетворяет всем пунктам кроме (пока) п. 7.
QNX — удовлетворяет всем пунктам.

Попробуем выбрать операционную систему, исходя из вышеперечисленных
пунктов. DOS и Windows 3.1х отпадают сразу, как морально и физически
устаревшие продукты. OS/2 — очень неплохая операционная система, имеющая
несколько недостатков: отсутствие перспектив (IBM отказалась от выпуска
следующих версий), не очень большой выбор программного обеспечения,
одноплатформенность. Mac OS, Mac OS X — также неплохие опе-рационные среды
как с точки зрения пользователя, так и с точки зрения администратора. Но -
это операционные системы только для компьютеров фирмы Apple. А в нашей
стране этих компьютеров не наберется и одного процента от общего количества
персональных ЭВМ. QNX — достаточно специфичная система, рассчитанная для
применения в сверхнадежных системах реального времени. Очень хорошая, но
для нашего пользователя она стала доступна относительно недавно, поэтому в
отношении к ней есть элементы недоверия и незнания, кроме того, у нее
относительно малый список программного обеспечения общего назначения
(офисные приложения, работа с графикой, игры, наконец). Что остается —
семейство Windows 9x— Windows NT (включая Windows XP), семейство UNIX, а
также представители "свободного мира" UNIX — FreeBSD, OpenBSD, NetBSD,
Linux и стоящая немного особняком BeOS.

Теперь попытаемся максимально корректно сопоставить Windows-семейство и
семейство UNIX. Сначала проведем четкий водораздел между операционными
системами Windows 9x/ME и Windows NT/2000/XP. Подсознательно (в силу
сходства названий, да и внешнего вида) пользователь, а иногда и
администратор, отождествляет Windows 9x/ME и Windows NT/2000, хотя это
далеко не одно и то же. Если внимательно посмотреть на характеристики
Windows 9x/ME и немного сопоставить факты, станет понятно, что Windows
9х/МЕ — это затянувшийся на шесть лет переход от DOS/Windows 3.1х к Windows
NT/2000, принесший, однако Microsoft огромный доход. С чисто
технологической стороны UNIX-семейство корректно сравнивать только с
Windows NT/2000, поскольку только Windows NT/2000, как система истинно
многозадачная и многопользовательская, поддерживающая мульти-процессорность
и кластеризацию, корректно сопоставима с UNIX-подобными системами. Таким
образом, корректно сравнивать можно только семейство UNIX и Windows
NT/2000. Относительно Windows NT/2000 существует основанное на схожести
интерфейса и названия с Windows 9х/МЕ заблуждение, что настроить Windows
NT/2000 дело пяти минут, и после настройки все работает годами без
вмешательства администратора. Внешнее сходство этих систем с Windows 9x/ME
создает обманчивую иллюзию понимания там, где им и не пахнет, а увеличение
нагрузки на сервер заставляет остро чувствовать программистскую поговорку
"Памяти мало никогда не бывает".

Во-первых, что очень выгодно отличает Linux от Windows — ее
бесплатность. За Windows 9х/МЕ по сегодняшним ценам придется уплатить около
150-200 долларов, а за Windows NT/2000 и того больше. Кроме того, для
работы нужен и Microsoft Office, за стандартный вариант которого придется
уплатить около 600 долларов, и, если надо еще что-то — продолжать платить и
платить. Политика Microsoft очень проста и действенна - раз в полгода-год
выходит новая версия программного продукта, который все вольно или невольно
вынуждены покупать, потому что партнеры присылают вам файлы в формате Excel
97, а ваш Excel 95 отказывается их понимать. В результате за всю жизнь
компьютера (3-5 лет) только на программное обеспечение придется потратить
порядка 2-5 тыс. долларов. С другой стороны, Linux обойдется в 5-15
долларов, за которые можно купить 2-3 компакт-диска, заполненных
бесплатным, с открытым исходным кодом, программным обеспечением. Даже если
скачивать дистрибутив Linux через Интернет — все равно не потратить больше
30 долларов (приблизительно столько стоит месяц неограниченного подключения
к Интернету). И что характерно — с этого дистрибутива можно сколько угодно
раз инсталлировать Linux на абсолютно законных основаниях. Можно возразить,
что за потраченные на продукты Microsoft деньги пользователи получают
поддержку сервис-центра Microsoft. Увы, это не так — нормальной поддержки
на территории СНГ до недавнего времени не было, а звонить сейчас в Москву,
например, из Беларуси или Владивостока и получать телефонную консультацию в
течение пятнадцати- двадцати минут весьма накладно. Поддержку же для Linux
и ее программного обеспечения получить очень просто, нужно только знать,
куда обращаться. Поскольку Linux — дитя Интернета, решение проблем надо
искать там. Помимо Интернета, где находятся тысячи Web-сайтов, посвященных
как Linux в целом, так и конкретному программному продукту для нее,
существуют дес

Новинки рефератов ::

Реферат: История европейского рисунка (Искусство и культура)


Реферат: Каролина и Саксонское зерцало (Теория государства и права)


Реферат: КСЕ (Естествознание)


Реферат: Обшество в послевоенные годы (История)


Реферат: Страхування в Україні (Страхование)


Реферат: Римское государство в период республики. Органы государственного управления (Государство и право)


Реферат: Жизненный цикл продукта (Налоги)


Реферат: Обеспечение качества электроэнергии в распределительных сетях, питающих сельскохозяйственных потребителей (Ботаника)


Реферат: Методика получения аудиторских доказательств. Классификационные формы экономического контроля в Украине (Бухгалтерский учет)


Реферат: "Тарас Бульба" Н.В. Гоголя как историческая повесть: особенности поэтики (Литература : русская)


Реферат: Охранительно-консервативная деятельность русской церкви (Религия)


Реферат: Военный коммунизм, политика, сущность (История)


Реферат: Тренировка и спорт в условиях гипоксии (Спорт)


Реферат: Мораль и политика (Политология)


Реферат: Художник Северного Возрождения: Питер Брейгель (Искусство и культура)


Реферат: Обобщающий урок по природоведению (Педагогика)


Реферат: Изучение состава кадров на промышленном предприятии (Статистика)


Реферат: Народ-труженик в творчестве Н.А. Некрасова (Литература)


Реферат: Гамма функции (Математика)


Реферат: Театрализованные игры (Педагогика)



Copyright © GeoRUS, Геологические сайты альтруист