Upload
selima
View
43
Download
0
Embed Size (px)
DESCRIPTION
6 . Система стандартов окружений открытых систем POSIX ( POSIX OSE ) и эталонная модель RM OSE. Лаборатория Открытых информационных технологий Проф. В.А. Сухомлин. 1. Методология и система стандартов POSIX OSE. - PowerPoint PPT Presentation
Citation preview
6. Система стандартов окружений окружений открытых систем POSIX открытых систем POSIX ((POSIX POSIX OSEOSE)) и и
эталонная модель эталонная модель RM OSERM OSE
Лаборатория Открытых информационных технологий
Проф. В.А. Сухомлин
1. 1. Методология и система стандартов POSIX OSEМетодология и система стандартов POSIX OSE
Методология и система стандартов POSIX OSE (POSIX - Portable Operating System Interface for Computer Environments, OSE - Open System Environment) -разработка IEEE .
Данный подход описан в документе IEEE P1003.0 “Guide to the POSIX Open System Environment” («Руководство по окружению открытых систем POSIX”).
Руководство POSIX предназначено для проектирования и использования открытых систем обработки информации.
2. Область применения2. Область применения
IEEE P1003.0 ориентирован на потребителей систем (consumers), системных интеграторов (systems integrators), разработчиков приложений (application developers), провайдеров систем (systems providers), агентств-поставщиков технологий (procurement agencies).
Область применения POSIX OSE - стандарты спецификаций пользовательских интерфейсов (API), которые в совокупности покрывают все аспекты создания и использования общецелевых систем обработки информации.
IEEE P1003.0 – не стандарт, а руководство по применению стандартов и каталог стандартов.
33. Ц. Цели подхода POSIX OSEели подхода POSIX OSE
Обеспечение для информационных систем:
1. Переносимости приложений на уровне исходных текстов (Application Portability at the Source Code Level)
2. Системной интероперабельности (System Interoperability)
3. Переносимости пользователей (User Portability)
4. Адаптируемости к стандартам (Accommodation of Standards)
5. Адаптируемости к новым технологиям (Accommodation of new IT)
33. Ц. Цели подхода POSIX OSEели подхода POSIX OSE ( (продолжениепродолжение))
6. Масштабируемости платформ (Application Platform Scalability)
7. Масштабируемости распределенных систем (Distributed System Scalability)
8. Прозрачности реализаций (Implementation Transparency)
9. Точности спецификаций пользовательских функциональных требований (User Functional Requirements)
4. Ожидаемый эффект4. Ожидаемый эффект
Руководство 1003.0 предназначено для поддержки решения следующих задач:
- Интеграция информационных систем из компонент различных изготовителей
- Эффективность реализаций и разработок, благодаря точности спецификаций и соответствию передовым стандартам
- Эффективность переноса прикладного программного обеспечения, благодаря использованию стандартных интерфейсов и прозрачности реализации сервисов систем.
5. Формирование системы стандартов5. Формирование системы стандартов
Первый стандарт IEEE на базовые интерфейсы ОС под индексом IEEE Std. 1003.1, известный как POSIX 1, был принят в 1988 г.
В 1990 г. IEEE Std. 1003.1 пересматривается и принимается ISO в качестве международного стандарта (ISO 9945-1:1990).
В последствие был разработан еще ряд стандартов IEEE и ISO на интерфейсы ОС, включая: POSIX 2 (Shell and utilities), POSIX 3 (Test methods), POSIX 4 (Real-time extensions), … POSIX 6 (Security extensions), POSIX 7 (System administration), … POSIX 21 (Distributed real-time).
К середине 90-х годов сложилась достаточно обширная система стандартов POSIX.
5. Индексация стандартов 5. Индексация стандартов POSIXPOSIX
Индексация стандартов POSIX основывалась на использовании для обозначения документов, индексов соответствующих им проектов.
Стандарт POSIX 1 получил индекс 1003.1 (номер соответствующего проекта P1003.1), а многие стандарты стали рассматриваться как его дополнение, поэтому индекс 1003.1 стал префиксом в обозначении ряда стандартов. Например, спецификации POSIX 4 получили индекс 1003.1.b, POSIX 4a - 1003.1.c, POSIX 6 - 1003.1.e.
Стандарты интерфейсов, связанных с оболочкой ОС, получили префикс 1003.2, а методы тестирования – 2003.
55. Структура и состав системы стандартов . Структура и состав системы стандартов POSIXPOSIX
Project Standard/Profile
P1003.0 Guide to the POSIX OSE
P1003.1,.1a System Interfaces
P1003.1b,.1d Realtime
P1003.1c Threads
P1003.1e Security API
P1003.1f Transparent File Access
P1003.1g Protocol-Independent Network Specification
P1003.2,.2b Shell and Utilities
P1003.2c Security Utilities
P1003.2d Batch Queuing Extensions
55. Структура и состав системы стандартов . Структура и состав системы стандартов POSIXPOSIXP1003.5 Ada Bindings
1003.5b Ada Realtime Binding
P1003.9 Fortran Bindings
P1003.10 Supercomputing Profile
P1003.13 Realtime Profile
P1003.14 Multiprocessing
P1003.16 C-Language Bindings
P1003.18 POSIX Platform Profile
P1003.21 Realtime Distributed Systems Communications
P1003.22 Guide to POSIX OSE Security Framework
P1201.1 Uniform API for Graphical User Interfaces
55. Структура и состав системы стандартов . Структура и состав системы стандартов POSIXPOSIXP1201.2 User Interface Drivability
P1224 OSI API – Abstract Data Manipulation
P1224.1 OSI API – X.400 Electronic Mail
P1224.2 OSI API – X.500 Directory Services
P1227.0 OSI API Common Support Functions
P1238.1 OSI API FTAM Test Methods and C Binding
P1224 OSI API Abstract Data Manipulation - C Binding
P1224.1 OSI API X.400 - C Binding
P1224.2 OSI API X.500 - C Binding
P1387.n System Administration
P2003.n Test Methods
66. Общий подход . Общий подход
В POSIX OSE информационная система рассматривается как черный ящик, взаимодействие с которым стандартизовано и осуществляется только через ее интерфейсы.
Через интерфейсы система (платформа) может предоставлять сервисы пользователям (приложениям) и использовать сервисы сущностей внешнего окружения.
Центральным понятием данной модели является понятие окружения открытых систем (Open System Environment – OSE).
Под открытой системой подразумевается система ИТ, реализующая OSE.
77. Определения. Определения
application platform
application program interface (API)
application software
Application Environment Profile (AEP)
base standard
Communications Interface
External Environment Interface (EEI)
external environment
Human/Computer Interface
Information Interchange Interface
77. Определения. Определения ( (продолжениепродолжение))
internationalization
interoperability
language-binding API
language-independent service specification
localization
open specifications
open system
Open System Environment (OSE)
platform profile
portability
77. Определения. Определения ( (продолжениепродолжение))
POSIX Standardized Profile (POSIX SP)
profile
programming language API specification
public specifications
reference model
scalability
specification
standardized profile
standards
validation
88. Принципы п. Принципы построениостроенияя POSIX OSEPOSIX OSE
Стандарты POSIX OSE включают в себя: эталонную модель окружений открытых систем POSIX - OSE RM (Open System Environment Reference Model), обширный набор базовых стандартов и профилей API, методику профилирования разрабатываемых систем, методологию тестирования конформности программных интерфейсов стандартам и профилям, таксономию профилей, абстрактные методы тестирования по существу для каждой спецификации API.
POSIX OSE основывается на эталонной модели RM OSE.В OSE RM определяются два типа интерфейсов (и
сервисов):- интерфейс прикладных программ (Application Program
Interface (API));- интерфейс внешнего окружения (External Environment
Interface (EEI)).
8.1. Схема п8.1. Схема построениостроенияя OSE RM OSE RM
1) В OSE RM стандарты разбиваются на две категории в соответствии с двумя типами интерфейсов:
- стандарты интерфейсов прикладных программ (Application Program Interface (API) Standards);
- стандарты внешнего окружения (External Environment Interface (EEI) Standards).
Первая - специфицирует взаимодействие прикладного программного обеспечения прикладной платформой. (Предназначены для переносимости приложений).
Вторая - определяет взаимодействие системы с ее внешним окружением. (Предназначены для обеспечения интероперабельности систем, переносимости пользователей и данных).
8.1. Г8.1. Главнлавнаяая задач задачаа
Следование стандартам обеих групп позволяет решить главную задачу для потребителей информационных технологий - обеспечить возможность построения информационных систем из компонентов, поставляемых различными изготовителями, и, как следствие, обеспечить независимость от поставщиков технологий в целом.
8.2. Схема п8.2. Схема построениостроенияя OSE RM OSE RM
2) Указанные выше группы сервисов и стандартов, разбиваются на четыре основных категории:
- системные или программные сервисы (System Services)
- коммуникационные сервисы (Communication Services)
- информационные сервисы (Information Services)
- сервисы человеко-машинного взаимодействия (Human/Computer Interaction Services).
8.3. Схема построения OSE RM3) Для каждой категории сервисов определяется функциональное разбиение
на подкатегории сервисов
Service Category Subcategories
1. System Services Language Services
Core System Services
2. Communication Services Communication Services
3. Information Services Database Services
Data Interchange Services
Transaction Processing Services
4. H/C Services User Command Interface S.Character-Based User Interf.S.
Windows System Services
Graphics Services
ASDS Services
8.4. Схема п8.4. Схема построениостроенияя OSE RM OSE RM
4) Определяется общее представление RM OSE.
5) Для каждой подкатегории сервисов конкретизируется общая RM OSE с учетом особенностей ее использования.
6) Для каждой подкатегории сервисов на основе соответствующей RM OSE определяется набор сервисов (функциональность) категории.
7) Для каждого сервиса определяются соответствующие ему ссылки на существующие или разрабатываемые стандарты.
8.4. Схема п8.4. Схема построениостроенияя OSE RM OSE RM
8) В RM POSIX выделены, так называемые, межкатегориальные сервисы (Cross-Category Services), элементы которых могут входить в любую группу сервисов.
К ним относятся:- сервисы интернационализации (Internationalization
Services), - сервисы системной безопасности (System Security
Services), - сервисы административного управления (Systems
Management Services).
9. Общее представление RM OSE
Application Software Entity
Application Platform Entity
External Environment
API – Application Program Interface
EEI – External Environment Interface
API services
EEI services
9.1 RM OSE (entities)
Application Software Entity
Program
Data
Documentation
Application Software Entity
Program
Data
Documentation
Application Platform Entity
External Environment
Communication Entities
Information Interchange
Entities
People
API API Services
EEI
9.2 RM OSE OSE (Interfaces)
Application
Software Entity
Application Platform Entities
External Environment
System Services
Communication Services
Information Services Human/Computer Interaction Services
Communication Services
Information Services Human/Computer
Interaction Services EEI
CSI ISI HCI
API
9.2 API
POSIX OSE API – книжная полка, содержащая стандартизованные спецификации APIs.
POSIX OSE API – полный набор сервисов, предоставляемых прикладной платформой на API.
Сервисы, предоставляемые на API, подразделяются на следующие категории:
- System Services API - Communications Services API- Information Services API- Human/Computer Interaction Services APIПервая категория обеспечивает доступ к внутренним
ресурсам платформы, остальные – к объектам ЕЕ.
9.2 API-спецификации
Формы API-спецификаций:
1) Programming language API specifications – полностью представленные средствами ЯП.
2) Language-independent service specifications – форма представления не зависит от ЯП.
3) Language-binding API specifications – (2), оттранслированные в форму доступа к сервису, соответствующую конкретному языку программирования.
(2) и (3) – наиболее перспективный способ стандартизации API
Поэтому базовые спецификации ЯП и спецификации языково-ориентированного связывания являются главными компонентами API.
9.2 Взаимосвязь сервисов EEI-API
Взаимосвязь может быть сложной – например, storage-сервис на API может предоставлять приложению прозрачный доступ к удаленному файлохранилищу, используя также сетевой сервис.
Доступ в внешним объектам из приложения может осуществляться только через запрос соответствующего сервиса на API.
В POSIX OSE взаимосвязь сервисов интерфейсов детально не конкретизируется, чтобы не ограничивать выбор оптимальных решений при реализации платформ.
9.3 RM OSE OSE (Distributed Systems)
Info
Application Software Entity
Application Platform
Application Platform
HCI Comm System
People People
Information Interchage Entities Communications
Entities
HCI Comm System Info
HCI Comm Info
EEI
HCI Comm Info
API
EEI
API
Application Software Entity
Communications Entities
External Environment
Information Interchage Entities
9.9.33 RMRM OSE OSE OSE OSE (Distributed Systems)(Distributed Systems)
В распределенных окружениях прикладные платформы могут взаимодействовать посредством коммуникационного сервиса на EEI.
Если приложению необходимо взаимодействие с приложением на другой платформе, то оно делает запрос коммуникационного сервиса на своем API.
Запрос на API платформа транслирует в соответствующие действия на EEI.
Платформа может состоять из нескольких компонент, взаимодействующих через внутриплатформенный интерфейс.
9.4 RM OSE. Platform Internal Interface
Application Software Entity
Application Platform Entity
API – Application Program Interface
API services
Service Component
Service Component
Service Component
PII
10. Категории сервисов10. Категории сервисов
System Services: Language ServicesSystem Services
Communications Services: Network ServicesInformation Services:
Database ServicesData Interchange ServicesTransaction Processing Services
Human-Computer Interaction Services:User Command Interface ServicesCharacter-Based User Interf. Ss.Windowing System ServicesGraphic ServicesASDSS
10.1 Методика описания категорий сервисов10.1 Методика описания категорий сервисов
Для описания каждой категории сервисов используется следующая схема:
4.__n.1 Overview and Rationale
4.__n.2 Scope
4.__n.3 Reference Model
4.__n.4 Services
4.__n.5 Standards, Specifications, and Gaps
4.__n.6 POSIX OSE Cross-Category Services
4.__n.7 Related Standards
4.__n.8 Open Issues
11. Language Services
Application Software
Application Platform
External Environment
Language Services at the API Arithmetic Operation Services Code Structure Services Data Definition Services Data Representation Services Error Handling Services I/O Operation Services Math Function Services Program Control Services Concurrency Control Services Low-Level Programming
Facility Services
11.1 Стандарты языков программирования11.1 Стандарты языков программирования
Ada ISO 8652
C ISO/IEC 9899
C++ ISO/IEC 14882
COBOL ISO 1989
FORTRAN ISO 1539
12. Core System Services
Application Software
Application Platform
External Environment
- Process and Thread Mgmt Ss - Environment Services - Node Internal Comm and Sync Ss - Generalized I/O Services - File Storage Services - Event, Error, Exception Mgmt Ss - Time and Timer Services - Memory Management Services - Logical Naming Services
12.1 12.1 Process and Thread Management ServicesProcess and Thread Management Services
- Stop and restart execution of a process or thread (suspend, resume)
- Modify processor allocation to a process or thread (priority, time slice)
- Modify scheduling of the process or thread based on timer (or other) events
- Protect the process or thread from interruption during critical periods
- Create a process or thread and make it ready for execution
- Destroy a process or thread and recover its resources
- Evaluate a reference to a process
- Evaluate a connection to a process or thread, where a connection is a logical communication path between any two concurrency entities
12.2 12.2 Environment ServicesEnvironment Services
- Attributes specific to entity (process/thread): identification, priority, stack size, scheduling attributes, status, memory allocation)
- Processor-specific attributes (node identification, electronic nameplate information)
- User-specific attributes (user identification and terminal ID, user interaction profile)
- Environment variables (command-line arguments, menu selections)
- Current time and date
12.3 12.3 Node Internal Comm and Sync ServicesNode Internal Comm and Sync Services
- Create, delete, open, close, read, and write shared memory
- Create, delete, read, and write event flags
- Create, delete, set, and wait on semaphores
- Create/send and receive signals
- Create, delete, open, close, send to, get from, and control message queues (IPC)
- Create, delete, send, and receive streams
12.4 Core System Services Standards
Process and Tread Management ISO/IEC 9945-1 Task Management ISO/IEC 9945-1 Environment Services ISO/IEC 9945-1 Node Internal Comm/Synch ISO/IEC 9945-1 Generalized I/O ISO/IEC 9945-1 File Oriented Services ISO/IEC 9945-1 Event, Error, and Exception ISO/IEC 9945-1 Time Services ISO/IEC 9945-1 Memory Management ISO/IEC 9945-1 Logical Naming ISO/IEC 9945-1 Scheduling Services ISO/IEC 9945-1Asynchronous I/O IEEE Std 1003.b-1Asynchronous I/O IEEE Std 1003.b-1Realtime Signals IEEE Std 1003.b-1
13. 13. Communications ServicesCommunications Services
Application Software
Application Platform
External Environment
Communication services at the API: - Transparent Network Services - Directory Services - Application-to-Platform Services - Application-to-Application Comm Ss - Distributed System Services
Communication services at the EEI: - Network Connectivity Services - Incoming Connection Services - Network User Interface Services
13.1 13.1 Application-to-Platform Communication Application-to-Platform Communication ServicesServices
Запрашивается приложением, выполняется платформой от имени данного приложения, посредством взаимодействия с удаленным приложением:
1) File transfer
2) Virtual Terminal
3) Electronic mail
13.2 13.2 Application-to-Application Communication Application-to-Application Communication ServicesServices
- RPC Services
- Simple Network Services
- Detailed Network Services
- Distributed System Services
13.3 13.3 EEI ServicesEEI Services. . Incoming Connection ServicesIncoming Connection Services
- Virtual terminal
- Remote execution of commands
- File transfer services
- Remote authentication
- Remote data access
- Remote status information
- Mail delivery services
- Directory services
14. 14. ТТаксономии профилей аксономии профилей OSEOSE POSIXPOSIX
PSEab-HIPHigh Performance Application Environmentsa b Substructure 1 0 Supercomputing Application Environment1 1 Multiprocessor Application EnvironmentPSEab-P Realtime Application Environmenta b Substructure 5 1 Minimal Realtime System Profile5 2 Realtime Controller System Profile5 3 Dedicated Realtime System ProfilePSEab-IP Realtime Application Environmenta b Substructure 5 4 Multipurpose Realtime System Profile
115. Развитие стандартов 5. Развитие стандартов POSIXPOSIX
В настоящее время ведется разработка стандартов POSIX нового поколения, получивших название POSIX 200х. В их разработке участвуют организации Austin Group (http://www.opengroup.org/austin) IEEE, Open Group, JTC1 ISO, а также крупнейшие производители компьютерных систем Hewlett-Packard Company, IBM, Novell, Open Software Foundation, Sun Microsystems и др.
К началу 2000 г. разработан в качестве проекта международного стандарта фундаментальный документ, получивший название EEE Std. 1003.1-200x. Объем этого документа превышает три с половиной тысячи страниц.
IEEE Std. 1003.1-200x определяет стандарт основного интерфейса операционной системы и окружения, включая интерфейс командного интерпретатора (‘‘shell’’), а также программы общих утилит.