Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы 1-10.docx
Скачиваний:
18
Добавлен:
25.09.2019
Размер:
54.49 Кб
Скачать

1). История кс

История КС связана как с развитием собственно ЭВМ, входящих в состав сети, так и с развитием телекоммуникаций.

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

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

Основным недостатком СТД являются невысокие быстродействия (9600 кбит/с, реально 2400 бит/с). Поэтому одним из направлений СТД явилась разработка цифровых телефонных коммутаторов.

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

Третьим направлением перехода к сетям была разработка высокоскоростных шин для обеспечения взаимодействия нескольких больших ЭВМ.

Четвертым направлением развития сетей была реализация распределенной обработки данных.

К середине 80-х годов с появлением ПЭВМ все отмеченные тенденции развития сетей стали сближаться, что привело к разработке современных КС

2). Программный механизм вызова удалённых процедур

Remote Procedure Call (RPC) – класс технологий, позволяющих компьютерным программам вызывать функции и процедуры в другом адресном пространстве.

Механизмы работы RPC:

Перед непосредственным вызовом на клиентской и серверной стороне должны быть созданы спецструктуры (процедуры, файлы) – это так называемые клиентский стаб (stab) и серверный скелетон (skeleton), которые необходимы для корректной работы RPC.

При удалённом вызове процедуры в распределённой системе происходят следующие действия:

  1. Процедура клиента вызывает стаб как обычную процедуру. Стаб упаковывает параметры (маршрутизация, marshaling).

  2. Стаб обращается к ядру ОС.

  3. Ядро посылает сообщение на удалённую машину (ядру удалённого ПК).

  4. Передача полученного процесса скелетону серверного процесса.

  5. Распаковка параметров (демаршализация). Вызов требуемой процедуры.

  6. Процедура на сервере выполняется. Возвращает результаты скелетону.

  7. Скелетон упаковывает результат.

  8. Передача результата ядру.

  9. Ядро сервера передаёт сообщение по сети ядру клиента.

  10. Ядро клиента обращается к стабу. Стаб распаковывает полученный результат.

  11. Передача от стаба клиентскому процессору.

Пример XML-RPC:

<?xml version=”1.0”?>

<methodCall>

<methodName>examples.getStateName</methodName>

<params>

<param>

<value><i4>41</i4></value>

</param>

</params>

</methodCall>

3). История, современное состояние, типовое программное обеспечение, перспективы развития наиболее известных мировых компьютерных сетей.

Всеми́рная паути́на (англ. World Wide Web) — распределенная система, предоставляющая доступ к связанным между собой документам, расположенным на различных компьютерах, подключенных к Интернету. Всемирную паутину образуют миллионы web-серверов. Большинство ресурсов всемирной паутины представляет собой гипертекст. Гипертекстовые документы, размещаемые во всемирной паутине, называются web-страницами. Несколько web-страниц, объединенных общей темой, дизайном, а также связанных между собой ссылками и обычно находящихся на одном и том же web-сервере, называются web-сайтом. Для загрузки и просмотра web-страниц используются специальные программы —браузеры. Всемирная паутина вызвала настоящую революцию в информационных технологиях и бум в развитии Интернета. Часто, говоря об Интернете, имеют в виду именно Всемирную паутину, однако важно понимать, что это не одно и то же. Для обозначения Всемирной паутины также используют слово веб(англ. web) и аббревиатуру WWW.

Изобретателями всемирной паутины считаются Тим Бернерс-Ли и, в меньшей степени, Роберт Кайо. Тим Бернерс-Ли является автором технологий HTTP, URI/URL и HTML. В1980 году он работал в Европейском совете по ядерным исследованиям консультантом по программному обеспечению. Именно там, в Женеве (Швейцария), он для собственных нужд написал программу «Энквайр», которая использовала случайные ассоциации для хранения данных и заложила концептуальную основу для Всемирной паутины.

В 1989 году, работая в CERN над внутренней сетью организации, Тим Бернерс-Ли предложил глобальный гипертекстовый проект, теперь известный как Всемирная паутина. Проект подразумевал публикацию гипертекстовых документов, связанных между собой гиперссылками, что облегчило бы поиск и консолидацию информации для учёных CERN. Для осуществления проекта Тимом Бернерсом-Ли (совместно с его помощниками) были изобретены идентификаторы URI, протокол HTTP и язык HTML. Это технологии, без которых уже нельзя себе представить современный Интернет. В период с 1991 по 1993 год Бернерс-Ли усовершенствовал технические спецификации этих стандартов и опубликовал их. Но, всё же, официально годом рождения Всемирной паутины нужно считать 1989 год.

В рамках проекта Бернерс-Ли написал первый в мире веб-сервер httpd и первый в мире гипертекстовый веб-браузер, называвшийся WorldWideWeb. Этот браузер был одновременно и WYSIWYG-редактором, его разработка была начата в октябре 1990 года, а закончена в декабре того же года. Программа работала в среде NeXTStep и начала распространяться по Интернету летом 1991 года.

Первый в мире веб-сайт был размещён Бернерсом-Ли 6 августа 1991 года на первом веб-сервере доступном по адресу http://info.cern.ch/. Ресурс определял понятие Всемирной паутины, содержал инструкции по установке веб-сервера, использования браузера и т. п. Этот сайт также являлся первым в мире интернет-каталогом, потому что позже Тим Бернерс-Ли разместил и поддерживал там список ссылок на другие сайты.

И всё же теоретические основы веба были заложены гораздо раньше Бернерса-Ли. Ещё в 1945 году Ванна́вер Буш разработал концепцию Memex — вспомогательных механических средств «расширения человеческой памяти». Memex — это устройство, в котором человек хранит все свои книги и записи (а в идеале — и все свои знания, поддающиеся формальному описанию) и которое выдаёт нужную информацию с достаточной скоростью и гибкостью. Оно является расширением и дополнением памяти человека. Бушем было также предсказано всеобъемлющее индексирование текстов и мультимедийных ресурсов с возможностью быстрого поиска необходимой информации. Следующим значительным шагом на пути к Всемирной паутине было создание гипертекста (термин введён Тедом Нельсоном в 1965 году).

С 1994 года основную работу по развитию Всемирной паутины взял на себя консорциум Всемирной паутины (англ. World Wide Web Consortium, W3C), основанный и до сих пор возглавляемый Тимом Бернерсом-Ли. Данный консорциум — организация, разрабатывающая и внедряющая технологические стандарты для Интернета и Всемирной паутины. Миссия W3C: «Полностью раскрыть потенциал Всемирной паутины путём создания протоколов и принципов, гарантирующих долгосрочное развитие Сети». Две другие важнейшие задачи консорциума — обеспечить полную «интернационализа́цию Сети́» и сделать Сеть доступной для людей с ограниченными возможностями.

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

Перспективы развития:

В настоящее время наметились две тенденции в развитии Всемирной паутины: семантическая паутина и социальная паутина.

Семантическая паутина предполагает улучшение связности и релевантности информации во Всемирной паутине через введение новых форматов метаданных.

Социальная паутина полагается на работу по упорядочиванию имеющейся в Паутине информации, выполняемую самими пользователями Паутины. В рамках второго направления наработки, являющиеся частью семантической паутины, активно используются в качестве инструментов (RSS и другие форматы веб-каналов, OPML, микроформаты XHTML). Частично семантизированные участки Дерева категорий «Википедии» помогают пользователям осознанно перемещаться в информационном пространстве, однако, очень мягкие требования к подкатегориям не дают основания надеяться на расширение таких участков. В связи с этим интерес могут представлять попытки составления атласов Знания.

Существует также популярное понятие Web 2.0, обобщающее сразу несколько направлений развития Всемирной паутины.

Сегодня существует по меньшей мере 40 тыс. серверов WWW. Именно за счет WWW Сеть растёт так стремительно. Пользуясь несложным языком описания, можно составлять гипермедийные документы для их последующей публикации в Сети. Чтобы увидеть содержание документа так, как его представляет себе его автор нужно иметь на компьютере- клиенте программу просмотра – броузер (первый появился в 1993г – Mosaic).

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

4). CGI-механизм взаимодействия приложения-клиента с приложением - сервером, достоинства и недостатки метода.

CGI (от англ. Common Gateway Interface — «общий интерфейс шлюза») — стандарт интерфейса, используемого для связи внешней программы с веб-сервером. Программу, которая работает по такому интерфейсу совместно с веб-сервером, принято называть шлюзом, хотя многие предпочитают названия «скрипт» (сценарий) или «CGI-программа».

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

Все скрипты, как правило, помещают в каталог cgi (или cgi-bin) сервера, но это необязательно: скрипт может располагаться где угодно, но при этом большинство веб-серверов требуют специальной настройки. В веб-сервере Apache, например, такая настройка может производиться при помощи общего файла настроек httpd.conf или с помощью файла .htaccess в том каталоге, где содержится этот скрипт.

CGI является одним из наиболее распространённых средств создания динамических веб-страниц.

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

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

Сценарий

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

Основными преимуществами интерфейса CGI являются его простота, независимость от используемого языка и типа Web-сервера, а так же его широкое распространение.

- прозрачность использования;

- "языковая" независимость – CGI-программы могут быть написаны на любом языке программирования или командном языке, имеющем средства работы со строками;

- процессная изолированность – при запуске CGI-програмы на сервере порождается отдельный процесс и ошибочный CGI-скрипт не может сломать web-сервер или получить доступ к закрытой информации;

- открытость стандарта – CGI интерфейс применим на каждом web-сервере;

- архитектурная независимость – CGI не зависит от особенностей реализации архитектуры сервера (однопоточности, многопоточности и т. д.).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]