Настольные субд: Настольные СУБД

Содержание

Настольные СУБД, их достоинства и недостатки — Студопедия

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

Достоинства настольных СУБД:

· они являются простыми для освоения и использования;

· обладают дружественным пользовательским интерфейсом;

· ориентированы на класс ПК, на самую широкую категорию пользователей – непрофессионалов;

· обеспечивают хорошее быстродействие при работе с небольшими БД.

Недостатки настольных СУБД:

· при росте объемов хранимых данных и увеличении числа пользователей снижается их производительность и могут возникать сбои при обработке данных;

· контроль за целостностью совершается внутри пользовательского приложения, что может вызывать нарушение целостности данных;

· очень малая эффективность работы в компьютерной сети.

Известно более десятка настольных СУБД. Наиболее популярными, исходя из числа проданных копий признаются DBASE, Visual DBASE, Paradox, Microsoft FoxPro, Visual FoxPro, Access.


55.Клиент/серверные системы: клиенты, серверы, клиентские приложения, серверы баз данных.

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

серверами, занимаются обработкой БД.

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


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

На компьютере-клиенте приложение-клиент формирует запрос к БД. Серверная СУБД обеспечивает интерпретацию запроса, его выполнение, формирование результата запроса и пересылку его по сети на клиентский компьютер.

Клиентское приложение интерпретирует его необходимым образом и представляет пользователю. Клиентское приложение может также посылать запрос на обновление БД и серверная СУБД внесет необходимые изменения в БД.

В архитектуре клиент/сервер функции клиентского приложения и серверной СУБД разделены.

56.Функции клиентского приложения и сервера баз данных при обработке запросов. Преимущества клиент/серверной обработки.

Функции клиентского приложения разбиваются на следующие группы:

§ввод-вывод данных (презентационная логика) – это часть кода клиентского приложения, которая определяет, что пользователь видит на экране, когда работает с приложением;

§бизнес-логика – это часть кода клиентского приложения, которая определяет алгоритм решения конкретных задач приложения;

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

§Сервер баз данных в общем случае осуществляет целый комплекс действий по управлению данными. Основными среди них являются следующие:

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

·хранение и резервное копирование данных;

·поддержка ссылочной целостности данных согласно определенным в БД правилам;

·обеспечение авторизованного доступа к данным на основе проверки прав и привилегий пользователя;

·протоколирование операций и ведение журнала транзакций.

Преимущества архитектуры клиент/сервер

· При клиент/серверной обработке уменьшается сетевой трафик, так как через сеть передаются только результаты запросов.

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

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

· Повышается уровень непротиворечивости данных и существенно повышается степень безопасности БД, так как правила целостности данных определяются в серверной СУБД и являются едиными для всех приложений, использующих эту БД.

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

ТОП-10 систем управления базами данных в 2019 году

Умение выбрать СУБД важно при разработке любого ПО. Мы собрали 10 систем управления базами данных и разобрались в их преимуществах.

Популярные системы управления базами данных

Разработчик Лицензия Написана на
Oracle Oracle Corporation  Проприетарная Assembly, C, C++
MySQL Oracle Corporation GPL v2 или проприетарная C, C++
Microsoft SQL Server Microsoft Corporation  Проприетарная C, C++
PostgreSQL PostgreSQL Global Development Group Лицензия PostgreSQL (бесплатное ПО с открытым исходным кодом, либеральная лицензия) C
MongoDB MongoDB Inc. Различные варианты лицензирования C++, C, JavaScript
DB2  IBM Проприетарная EULA Assembly, C, C++
Microsoft Access Microsoft Corporation Пробное ПО
Redis Salvatore Sanfilippo Лицензия BSD ANSI C
Рейтинг СУБД

SQL-базы данных

1. Oracle

Oracle RDBMS (она же Oracle Database) на первом месте среди СУБД. Система популярна у разработчиков, проста в использовании, у нее понятная документация, поддержка длинных наименований, JSON, улучшенный тег списка и Oracle Cloud.

  • Разработчик: Oracle Corporation
  • Написана на:Assembly, C, C++
  • Блог: Oracle NoSQL
  • Скачать: Oracle NoSQL
  • Последняя версия: 18.3

Особенности

  • Обрабатывает большие данные.
  • Поддерживает SQL, к нему можно получить доступ из реляционных БД Oracle.
  • Oracle NoSQL Database с Java/C API для чтения и записи данных.

2. MySQL

MySQL работает на Linux, Windows, OSX, FreeBSD и Solaris. Можно начать работать с бесплатным сервером, а затем перейти на коммерческую версию. Лицензия GPL с открытым исходным кодом позволяет модифицировать ПО MySQL.

Эта система управления базами данных использует стандартную форму SQL. Утилиты для проектирования таблиц имеют интуитивно понятный интерфейс. MySQL поддерживает до 50 миллионов строк в таблице. Предельный размер файла для таблицы по умолчанию 4 ГБ, но его можно увеличить. Поддерживает секционирование и репликацию, а также Xpath и хранимые процедуры, триггеры и представления.

  • Разработчик: Oracle Corporation
  • Написана на C, C++
  • Последняя версия: 8.0.16
  • Скачать: MySql

Особенности

  • Масштабируемость.
  • Лёгкость использования.
  • Безопасность.
  • Поддержка Novell Cluster.
  • Скорость.
  • Поддержка многих операционных систем.

3. Microsoft SQL Server

Самая популярная коммерческая СУБД. Она привязана к Windows, но это плюс, если вы пользуетесь продуктами Microsoft. Зависит от платформы. И графический интерфейс, и программное обеспечение основаны на командах. Поддерживает SQL, непроцедурные, нечувствительные к регистру и общие языки баз данных.

Особенности

  • Высокая производительность.
  • Зависимость от платформы.
  • Возможность установить разные версии на одном компьютере.
  • Генерация скриптов для перемещения данных.

4. PosgreSQL

Масштабируемая объектно-реляционная база данных, работающая на Linux, Windows, OSX и некоторых других системах. В PostgreSQL 10 есть такие функции, как логическая репликация, декларативное разбиение таблиц, улучшенные параллельные запросы, более безопасная аутентификация по паролю на основе SCRAM-SHA-256.

  • Разработчик: PostgreSQL Global Development Group
  • Написана на C
  • Используется в компаниях: Apple, Cisco, Fujitsu, Skype, and IMDb
  • Последняя версия: 11.2
  • Блог: PostgreSQL
  • Скачать: PostgreSQL

Особенности

  • Поддержка табличных пространств, а также хранимых процедур, объединений, представлений и триггеров.
  • Восстановление на момент времени (PITR).
  • Асинхронная репликация.

NoSQL-базы данных

5. MongoDB

Самая популярная NoSQL система управления базами данных. Лучше всего подходит для динамических запросов и определения индексов. Гибкая структура, которую можно модифицировать и расширять. Поддерживает Linux, OSX и Windows, но размер БД ограничен 2,5 ГБ в 32-битных системах. Использует платформы хранения MMAPv1 и WiredTiger.

  • Разработчик: MongoDB Inc. в 2007
  • Написана на C++
  • Последняя версия: 4.1.9
  • Блог: MongoDB
  • Скачать: MongoDB

Особенности

  • Высокая производительность.
  • Автоматическая фрагментация.
  • Работа на нескольких серверах.
  • Поддержка репликации Master-Slave.
  • Данные хранятся в форме документов JSON.
  • Возможность индексировать все поля в документе.
  • Поддержка поиска по регулярным выражениям.

6. DB2

Работает на Linux, UNIX, Windows и мейнфреймах. Эта СУБД идеально подходит для хост-сред IBM. Версию DB2 Express-C нельзя использовать в средах высокой доступности (при репликации, кластеризации типа active-passive и при работе с синхронизируемым доступом к разделяемым данным).

  • Разработчик: IBM
  • Написана на C, C++, Assembly
  • Последняя версия: 11.1
  • Скачать: DB2

Особенности DB2 11.1

  • Улучшенное встроенное шифрование.
  • Упрощённая установка и развёртывание.

7. Microsoft Access

Система управления базами данных от Microsoft, которая сочетает в себе реляционное ядро БД Microsoft Jet с графическим интерфейсом пользователя и инструментами разработки ПО.

Идеально подходит для начала работы с данными, но производительность не рассчитана на большие проекты. В MS Access можно использовать C, C#, C++, Java, VBA и Visual Rudimental.NET. Access хранит все таблицы БД, запросы, формы, отчёты, макросы и модули в базе данных Access Jet в виде одного файла.

  • Разработчик: Microsoft Corporation
  • Последняя версия: 16.0
  • Скачать: Microsoft Access

Особенности

  • Можно использовать VBA для создания многофункциональных решений с расширенными возможностями управления данными и пользовательским контролем.
  • Импорт и экспорт в форматы Excel, Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server и Oracle.
  • Формат базы данных Jet.

8. Cassandra

СУБД активно используется в банковском деле, финансах, а также в Facebook и Twitter. Поддерживает Windows, Linux и OSX. Для запросов к БД Cassandra используется SQL-подобный язык — Cassandra Query Language (CQL).

  • Разработчик: Apache Software Foundation
  • Написана на: Java
  • Последняя версия: 3.11.4
  • Блог: Cassandra
  • Скачать: Cassandra

Особенности

  • Линейная масштабируемость.
  • Быстрое время отклика.
  • Поддержка MapReduce и Apache Hadoop.
  • Максимальная гибкость.
  • P2P архитектура.

9. Redis

Redis или Remote Dictionary Server — СУБД с открытым исходным кодом, которая снабжена механизмами журналирования и снимков. Поддерживаются списки, строки, хэши, наборы. Используется для БД, брокеров сообщений и кэшей. Все операции в Redis атомарные. Система написана на языке C и поддерживается практически всеми языками программирования.

  • Разработчик: Salvatore Sanfilippo
  • Последняя версия: 5.0.5
  • Блог: Redis
  • Скачать: Redis

Особенности

  • Автоматическая обработка отказа.
  • Транзакции.
  • Сценарии LUA.
  • Вытеснение LRU-ключей.
  • Поддержка Publish/Subscribe.

10. Elasticsearch

Легко масштабируемая поисковая система корпоративного уровня с открытым исходным кодом. Благодаря обширному и продуманному API обеспечивает чрезвычайно быстрый поиск, работает в том числе с приложениями для обнаружения данных. Используется такими компаниями, как Википедия, The Guardian, StackOverflow, GitHub. ElasticSearch позволяет создавать копии индексов и сегментов.

  • Разработчик: Elastic NV
  • Написана на Java
  • Последняя версия: 7.2.0
  • Блог: Elasticsearch
  • Скачать: Elasticsearch

Особенности

  • Масштабируемость вплоть до нескольких петабайт структурированных и неструктурированных данных.
  • Многопользовательская поддержка.
  • Масштабируемый поиск, поиск в режиме реального времени.

Рейтинги СУБД

Рейтинг СУБД Модель базы данных Балл
Июль
2017
Июнь
2017
Июль
2016
Июль
2017
Июнь
2017
Июль
2016
1 1 1 Oracle Реляционная СУБД 1374.88 +23.11 -66.65
2 2 2 MySQL Реляционная СУБД 1349.11 +3.8 -14.18
3 3 3 Microsoft SQL Server Реляционная СУБД 1226 +27.03 +33.11
4 4 5 PostgreSQL Реляционная СУБД 369.44 +0.89 +58.28
5 5 4 MongoDB Документная СУБД 332.77 -2.23 +17.77
6 6 6 DB2 Реляционная СУБД 191.25 +3.74 +6.17
7 7 8 Microsoft Access Реляционная СУБД 126.13 -0.42 +1.23
8 8 7 Cassandra СУБД типа BigTable 124.12 -0.0 -6.58
9 9 10 Redis СУБД типа «ключ-значение» 121.51 +2.63 +13.48
10 11 11 Elasticsearch Поисковая система 115.98 +4.42 +27.36

 

А какую СУБД предпочитаете вы? Аргументируйте свой выбор 😉

67. Настольные субд, их достоинства и недостатки.

Настольные СУБД используют в модели вычислений с сетью и файловым сервером (архитектура «файл-сервер»).

Достоинства настольных СУБД:

  • они являются простыми для освоения и использования;

  • обладают дружественным пользовательским интерфейсом;

  • ориентированы на класс ПК, на самую широкую категорию пользователей – непрофессионалов;

  • обеспечивают хорошее быстродействие при работе с небольшими БД.

Недостатки настольных СУБД:

  • при росте объемов хранимых данных и увеличении числа пользователей снижается их производительность и могут возникать сбои при обработке данных;

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

  • очень малая эффективность работы в компьютерной сети.

Известно более десятка настольных СУБД. Наиболее популярными, исходя из числа проданных копий признаются DBASE, Visual DBASE, Paradox, Microsoft FoxPro, Visual FoxPro, Access.

68. Клиент/серверные системы: клиенты, серверы, клиентские приложения, серверы баз данных.

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

69. Функции клиентского приложения и сервера бд при обработке запросов. Преимущества клиент/серверной обработки.

В архитектуре клиент/сервер функции клиентского приложения и серверной СУБД разделены. Функции клиентского приложения разбиваются на следующие группы:

  • ввод-вывод данных (презентационная логика) – это часть кода клиентского приложения, которая определяет, что пользователь видит на экране, когда работает с приложением;

  • бизнес-логика – это часть кода клиентского приложения, которая определяет алгоритм решения конкретных задач приложения;

  • обработка данных внутри приложения (логика базы данных) – это часть кода клиентского приложения, которая связывает данные сервера с приложением. Для этой связи используется процедурный язык запросов SQL, с помощью которого осуществляется выборка и модификация данных в серверных СУБД.

Сервер баз данных в общем случае осуществляет целый комплекс действий по управлению данными. Основными среди них являются следующие:

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

  • хранение и резервное копирование данных;

  • поддержка ссылочной целостности данных согласно определенным в БД правилам;

  • обеспечение авторизованного доступа к данным на основе проверки прав и привилегий пользователя;

  • протоколирование операций и ведение журнала транзакций.

Преимущества клиент/серверной обработки:

  • уменьшается сетевой трафик, так как через сеть передаются только результаты запросов.

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

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

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

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

3.5.1. Настольные субд

Настольные СУБД используются для сравнительно небольших задач (небольшой объем обрабатываемых данных, малое количество пользователей). С учетом этого, указанные СУБД имеют относительно упрощенную архитектуру, в частности, функционируют в режиме файл-сервер, поддерживают не все возможные функции СУБД (например, не ведется журнал транзакций, отсутствует возможность автоматического восстановления базы данных после сбоев и т. п.). Тем не менее, такие системы имеют достаточно обширную область применения.Прежде всего, это государственные (муниципальные) учреждения, сфера образования, сфера обслуживания, малый и средний бизнес. Специфика возникающих там задач заключается в том, что объемы данных не являются катастрофически большими, частота обновлений не бывает слишком высокой, организация территориально обычно расположена в одном небольшом здании, количество пользователей колеблется от одного до 10–15 человек. В подобных условиях использование настольных СУБД для управления информационными системами является вполне оправданным, и они с успехом применяются.

Одними из первых СУБД были так называемые dBase-совместимые программные системы, разработанные разными фирмами. Первой широко распространенной системой такого рода была системаdBaseIII–PLUS(фирмаAchton-Tate). Развитый язык программирования, удобный интерфейс, доступный для массового пользователя, способствовали широкому распространению системы. В то же время работа системы в режиме интерпретации обусловливала низкую производительность на стадии выполнения. Это привело к появлению новых систем-компиляторов, близких к системеdBaseIII–PLUS:Clipper(фирмаNantucketInc.),FoxPro(фирмаFoxSoftware),FoxBase+ (фирмаFoxSoftware),VisualFoxPro(фирмаMicrosoft). Одно время достаточно широко использовалась СУБДPARADOX(фирмаBorlandInternational).

В последние годы очень широкое распространение получила система управления базами данных MicrosoftAccess, которая входит в целый ряд версий пакетаMicrosoftOffice(фирмаMicrosoft).

3.5.2.Серверные субд

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

Основными производителями таких систем обработки и хранения данных являются 3 корпорации: Oracle, Microsoft и IBM. Диаграмма соотношения объемов продаж соответствующих систем (источник: IDC Report, Май 2006) приводится на рис. 3.4.

Рис. 3.4. Продажи ПО систем хранения данных в мире

Наиболее распространенными клиент-серверными системами здесь соответственно являются системы Oracle (разработчик компания Oracle), MS SQL Server (разработчик компания Microsoft), DB2 , Informix Dynamic Server (компания IBM).

Дадим краткую характеристику этим системам.

MS SQL Server

К настоящему времени разработано несколько версий систем: MS SQL Server-2000, MS SQL Server -2005, MS SQL Server-2008. Приведем информацию о системе MS SQL Server-2008 с сервера Microsoft (http://www.microsoft.com/rus/SQL/2008/default.mspx)

Microsoft® SQL Server™ 2008 — это законченное предложение в области баз данных и анализа данных для быстрого создания масштабируемых решений электронной коммерции, бизнес-приложений и хранилищ данных. Оно позволяет значительно сократить время выхода этих решений на рынок, одновременно обеспечивая масштабируемость, отвечающую самым высоким требованиям. В SQL Server включена поддержка языка XML и протокола HTTP, средства повышения быстродействия и доступности, позволяющие распределить нагрузку и обеспечить бесперебойную работу, функции для улучшения управления и настройки, снижающие совокупную стоимость владения

Платформа бизнес-анализа SQL Server 2008, тесно интегрированная с Microsoft Office, предоставляет развитую маштабируемую инфраструктуру для внедрения мощных возможностей бизнес-анализа в рабочий процесс всех бизнес-подразделений вашей компании, открывая доступ к нужной бизнес-информации через знакомый интерфейс MS Excel и MS Word.

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

MS SQL Server-2008 предоставляет масштабируемый и высокопроизводительный «процессор данных» — для самых ответственных и требовательных бизнес-приложений, тем, кому необходим высочайший уровень надежности и защиты, позволяя при этом снизить совокупную стоимость владения за счет расширенных возможностей по управлению серверной инфраструктурой.

MS SQL Server-2008 предлагает разработчикам развитую, удобную и функциональную среду программирования, включая средства работы с веб службами, инновационные технологии доступа к данным – все, что необходимо для эффективной работы с данными любых типов и форматов.

Отдельные аспекты MSSQLServer– 2008 будут описаны в лекциях 10 и 14.

Oracle

К настоящему времени разработано несколько версий систем, каждая из которых включает целую линейку продуктов, например Oracle 8, Oracle 9i, Oracle 10g.

Соответствующие линейки продуктов включают как собственно СУБД (например Oracle Database 10g,Oracle Database 11g) , так и средства разработки и анализа данных.

Приведем информацию о системе с сервера Oracle http://www.oracle.com/global/ru/mid/ oracle_products/database.html).

Oracle предлагает комплексные, открытые, доступные и удобные в использовании технологические решения.

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

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

интеграции геофизическихданных медиа-контента в бизнес-процеcc и т.д.

Серверы баз данных компании IBM

К настоящему времени разработаны линейки продуктов DB2 и Informix, включающая как собственно СУБД так и средства разработки и анализа данных (DB2 Universal Database DB2 Personal Edition,DB2 Enterprise 9 и др., а также Informix Dynamic Server,Informix Dynamic Server Express, Informix Extended Parallel Server и др.

Приведем информацию о части таких систем с сервера (http://www-01.ibm.com/ software/ru/data/?pgel=ibmhzn)

Универсальный сервер баз данных DB2 Universal Database — это масштабируемая, обьектно-реляционная система управления базами данных с интегрированной поддержкой мультимедиа и Web, работающая на системах от персональных компьютеров и серверов на процессорах Intel до Unix, от однопроцессорных систем до симметричных многопроцессорных систем (SMP) и систем с массовым параллелизмом (MPP), на хостах AS/400 и мейнфреймах. DB2 Universal Database объединяет в себе высокую производительность систем обработки транзакций в режиме on-line, объектно-реляционные расширения, усовершенствованные средства оптимизации с возможностями параллельной обработки и поддержкой очень больших баз данных. DB2 Universal Database также имеет новые встроенные средства для облегчения переноса на свою базу приложений, разработанных на других системах управления базами данных, таких как Oracle, Microsoft, Sybase и Informix. Помимо этого, DB2 Universal Database включает в себя дополнительные средства поддержки систем аналитической обработки в реальном времени (OLAP) и систем поддержки принятия решений, множество простых в использовании расширений (DB2 extenders). DB2 Universal Database доступна на абсолютном большинстве ключевых платформ, что дает заказчикам ту гибкость, которая им необходима.

Кроме вышеуказанных зарубежных систем отметим и отечественную разработку – СУБД НИКА, преемницу широко распространенной в Советском Союзе СУБД ИНЕС для ЕС ЭВМ.

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

Краткие

итоги.В лекции рассмотрены различные архитектурные решения, используемые при реализации многопользовательских СУБД. Централизованная архитектура. Технология с сетью и файловым сервером (архитектура «файл-сервер»). Архитектура «клиент – сервер» (распределенная модель вычислений). Трехзвенная (многозвенная) архитектура) клиент – сервер. Дан обзор современных СУБД (настольные СУБД, серверные СУБД).

Контрольные тесты

Задача 1. Какие технологии работы с базой данных поддерживают многопользовательский режим?

Вариант 1.

Какие технологии работы с базой данных поддерживают многопользовательский режим?

ð+ технология с централизованной архитектурой базы данных

ð+ технология с сетью и файловым сервером

ð+ технология клиент-сервер

ð+ технология с трехзвенной архитектурой

Вариант 2.

С чем связано развитие многопользовательских технологий работы с базами данных?

ð+ с развитием СУБД

ð+ с развитием вычислительных сетей

 с развитием технологий программирования

 с ростом квалификации программистов

Вариант 3.

Основные достоинства многопользовательского режима работы с базой данных

 возможность использования прикладных программ других пользователей

 сокращение затрат машинного времени

ð+ возможность работы многих пользователей с базой данных

 сокращение количества обращений к базе данных

Задача 2. Что такое архитектура файл-сервер?

Вариант 1.

Где расположена база данных в такой архитектуре?

 на компьютере пользователя

ð+ на специально выделенном компьютере – сервере

 на компьютере пользователя и на специально выделенном компьютере – сервере

 на всех компьютерах пользователей в локальной сети

Вариант 2.

Где расположены программы пользователя и программы СУБД?

ð+ на компьютере пользователя

 на специально выделенном компьютере – сервере

 программа пользователя на компьютере пользователя, СУБД на

специально выделенном компьютере – сервере

ð+ СУБД расположена на всех компьютерах пользователей в локальной сети

Вариант 3.

На каком компьютере происходит работа с базой данных?

ð+ на компьютере одного пользователя

 на специально выделенном компьютере – сервере

 прикладные программы работают на компьютере пользователя, программы работают на специально выделенном компьютере – сервере

ð+ прикладные программы и программы СУБД работают на компьютере пользователя.

Задача 3. Как идет обмен информацией между компьютерами в технологии файл-сервер?

Вариант 1.

Что делает компьютер пользователя?

ð+ выполняет прикладную программу

ð+ выполняет программы СУБД

ð+ реализует запросы пользователя к базе данных

ð+ выполняет прикладную программу и программы СУБД

Вариант 2.

Что делает файл-сервер?

 формирует ответы на запросы к базе данных

ð+ используется как внешняя память для хранения базы данных

 выполняет программы СУБД

 выполняет прикладные программы и программы СУБД

Вариант 3.

Как идет обмен информацией между компьютерами в технологии файл-сервер?

 в компьютер пользователя считываются все файлы базы данных

 в компьютер пользователя считываются только данные, удовлетворяющие запросу пользователя

ð+ в компьютер пользователя считываются только те файлы базы данных, которые необходимы для выполнения запросов

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

Задача 4. Что такое архитектура клиент-сервер

Вариант 1.

Где расположена база данных в такой архитектуре?

 на компьютере пользователя

ð+ на специально выделенном компьютере – сервере

 на компьютере пользователя и на специально выделенном компьютере – сервере

 на всех компьютерах пользователей в локальной сети

Вариант 2.

Где расположены программы пользователя и программы СУБД в архитектуре клиент-сервер?

 на компьютере пользователя

 на специально выделенном компьютере – сервере

ð+ программа пользователя на компьютере пользователя, СУБД на

специально выделенном компьютере – сервере

 СУБД расположена на всех компьютерах пользователей в локальной сети

Вариант 3.

На каком компьютере происходит работа с базой данных в архитектуре клиент-сервер?

 на компьютере одного пользователя

ð+ на специально выделенном компьютере – сервере

ð+ прикладные программы работают на компьютере пользователя, программы СУБД работают на специально выделенном компьютере – сервере

ð+ прикладные программы и программы СУБД работают на компьютере пользователя.

Задача 5. Как идет обмен информацией между компьютерами в технологии клиент-сервер?

Вариант 1.

Что делает компьютер – клиент?

 выполняет прикладную программу

 выполняет программы СУБД

 реализует запросы пользователя к базе данных

ð+ выполняет прикладную программу и программы СУБД

Вариант 2.

Что делает сервер?

ð+ формирует ответы на запросы к базе данных

 используется как внешняя память для хранения базы данных

ð+ выполняет программы СУБД

 выполняет прикладные программы и программы СУБД

Вариант 3.

Как осуществляется обмен информацией между компьютером-клиентом и сервером?

 в компьютер-клиент считываются все файлы базы данных

ð+ в компьютер-клиент считываются только данные, удовлетворяющие запросу пользователя

 в компьютер-клиент считываются только те файлы базы данных, которые необходимы для выполнения запросов

 в компьютер-клиент считываются файлы базы данных, указанные в прикладной программе

Задача 6. Что такое трехзвенная (многозвенная) архитектура

Вариант 1. Что отличает трехзвенную архитектуру от архитектуры клиент-сервер?

 большее количество компьютеров пользователей

 большее количество серверов баз данных

ð+ наличие серверов других типов

 другой способ взаимодействия с сервером баз данных

Вариант 2. Где выполняются программы пользователя в трехзвенной архитектуре?

 на компьютере пользователя

 на сервере баз данных

ð+ на компьютере пользователя и сервере приложений

 на сервере приложений

Вариант 3. Что делает сервер приложений?

 выполняет прикладные программы пользователя

ð+ формирует запросы к базе данных и обрабатывает результаты запросов

 формирует интерфейс пользователя

 отображает результаты обработки на компьютере пользователя

Задача 7. Сравнение архитектуры клиент-сервер с файл-серверной архитектурой.

Вариант 1.

Какие черты характерны для компьютеров-клиентов в архитектуре клиент-сервер по сравнению с файл-серверной архитектурой?

 увеличение объема прикладной программы

 уменьшение объема прикладной программы

ð+ уменьшение объема производимых вычислений

ð+ увеличение объема занимаемой памяти

 уменьшение объема занимаемой памяти

Вариант 2.

Как меняется объем данных, передаваемых по локальной сети в архитектуре клиент-сервер по сравнению с файл-серверной архитектурой?

 немного уменьшается

 увеличивается

 остается таким же

ð+ существенно уменьшается

Вариант 3.

За счет чего улучшаются характеристики целостности и безопасности данных?

 из-за уменьшения объема передаваемых данных

 за счет более эффективного формирования запросов

 за счет реализации соответствующих функций СУБД на клиентских компьютерах

ð+ за счет реализации соответствующих функций СУБД на сервере баз данных

Задача 8. Как классифицируются современные СУБД?

Вариант 1.

Какие СУБД относятся к клиент-серверным?

 ACCESS

ð+ MS SQL-сервер

ð+ ORACLE

ð+ DB2

Вариант 2.

Какие СУБД относятся к файл-серверным?

ð+ ACCESS

 MS SQL-сервер

 ORACLE

ð+ FoxPro

Вариант 3.

Какие СУБД используются для организации баз данных в крупных организациях (относятся к промышленным)?

 ACCESS

ð+ MS SQL-сервер

ð+ ORACLE

 FoxPro

Архитектура файл/сервер. Обработка запросов в ней. Причины неэффективности архитектуры файл/сервес. Настольные СУБД, их достоинства и недостатки

Сетевые версии настольных СУБД отличаются от локальных версий тем, что они обладают некоторыми специальными механизмами, позволяющими многим пользователям совместно обращаться к общим ресурсам данных из централизованной базы данных. СУБД на каждой рабочей станции посылает запросы файловому серверу по всем необходимым ей данным, которые хранятся на диске файлового сервера. Все данные из БД пересылаются на компьютер пользователя, независимо от того, сколько реально их нужно для выполнения запроса. В результате на компьютере пользователя создается локальная копия БД (время от времени обновляемая из реальной БД на сервере). Затем СУБД пользователя выполняет запрос. Недостатки: 1. при совместном использовании файлов по локальной сети передаются большие объемы данных.2. системы с совместным использованием файлов редко используются для обработки больших объемов данных.3. При такой архитектуре вся тяжесть выполнения запроса к БД и управления целостностью БД ложится на СУБД пользователя.4. На каждой рабочей станции должна находиться сама сетевая версия настольной СУБД, что требует наличия больших объемов оперативной памяти на компьютере пользователя.5. Доступ к одним и тем же файлам могут осуществлять сразу несколько пользователей, что усложняет управление целостностью, восстановлением БД на сервере.

Настольные СУБД используют в модели вычислений с сетью и файловым сервером (архитектура «файл-сервер»).


Достоинства настольных СУБД:

•они являются простыми для освоения и использования;

•обладают дружественным пользовательским интерфейсом;

•ориентированы на класс ПК, на самую широкую категорию пользователей – непрофессионалов;

•обеспечивают хорошее быстродействие при работе с небольшими БД.

Недостатки настольных СУБД:

•при росте объемов хранимых данных и увеличении числа пользователей снижается их производительность и могут возникать сбои при обработке данных;

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

•очень малая эффективность работы в компьютерной сети.

Известно более десятка настольных СУБД. Наиболее популярными, исходя из числа проданных копий признаются DBASE, Visual DBASE, Paradox, Microsoft FoxPro, Visual FoxPro, Access.

68. Клиент/серверные системы: клиенты, серверы, клиентские приложения, серверы баз данных


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

46.Клиент/серверные системы: клиентские приложения, серверы БД. Выполнение запросов в архитектуре клиент/сервер. Преимущества клиент/серверной обработки. Характеристики серверов БД.

В архитектуре клиент/сервер функции клиентского приложения и серверной СУБД разделены. Функции клиентского приложения разбиваются на следующие группы:

•ввод-вывод данных (презентационная логика) – это часть кода клиентского приложения, которая определяет, что пользователь видит на экране, когда работает с приложением;

•бизнес-логика – это часть кода клиентского приложения, которая определяет алгоритм решения конкретных задач приложения;

•обработка данных внутри приложения (логика базы данных) – это часть кода клиентского приложения, которая связывает данные сервера с приложением. Для этой связи используется процедурный язык запросов SQL, с помощью которого осуществляется выборка и модификация данных в серверных СУБД.

Сервер баз данных в общем случае осуществляет целый комплекс действий по управлению данными. Основными среди них являются следующие:

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

•хранение и резервное копирование данных;

•поддержка ссылочной целостности данных согласно определенным в БД правилам;

•обеспечение авторизованного доступа к данным на основе проверки прав и привилегий пользователя;

•протоколирование операций и ведение журнала транзакций.

Преимущества клиент/серверной обработки:

•уменьшается сетевой трафик, так как через сеть передаются только результаты запросов.

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

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

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

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

Характеристики серверов баз данных

Современные серверные СУБД:

•существуют в нескольких версиях для различных платформ, как правило, для различных коммерческих версий UNIX – Solaris, HP/UX. Многие производители также выпускают версии своих серверов баз данных для Windows NT Workstation Windows 95/98, а также версии для Linux;

•в большинстве случаев поставляются с удобными административными утилитами;

•осуществляют резервное копирование и архивацию данных и журналов транзакций;

•поддерживают несколько сценариев репликаций;

•позволяют осуществлять параллельную обработку данных в многопроцессорных системах. Серверы, допускающие параллельную обработку, разрешают нескольким процессорам обращаться к одной БД, что обеспечивает высокую скорость обработки транзакций;

•поддерживают создание хранилищ данных и OLAP. Хранилище данных – это совокупность данных, полученных прямо или косвенно их информационных систем, которые содержат текущую и деловую информацию, а также из некоторых внешних источников.

•выполняют распределенные запросы и транзакции;

•дают возможность использовать различные средства проектирования схем данных – универсальные или ориентированные на конкретную СУБД;

•имеют средства разработки клиентских приложений и генераторы отчетов;

•поддерживают публикацию баз данных в Интернет;

•обладают широкими возможностями управления пользовательскими привилегиями и правами доступа к различным объектам БД.

К современным серверам баз данных относятся Oracle 9 (Oracle), MS SQL Server 2000 (MS), Informix (Informix), Sybase (Sybase), Db2 (IBM).

35) Настольные субд

Настольные СУБД используются для сравнительно небольших задач (небольшой объем обрабатываемых данных, малое количество пользователей). С учетом этого, указанные СУБД имеют относительно упрощенную архитектуру, в частности, функционируют в режиме файл-сервер, поддерживают не все возможные функции СУБД (например, не ведется журнал транзакций, отсутствует возможность автоматического восстановления базы данных после сбоев и т. п.). Тем не менее, такие системы имеют достаточно обширную область применения. Прежде всего, это государственные (муниципальные) учреждения, сфера образования, сфера обслуживания, малый и средний бизнес. Специфика возникающих там задач заключается в том, что объемы данных не являются катастрофически большими, частота обновлений не бывает слишком высокой, организация территориально обычно расположена в одном небольшом здании, количество пользователей колеблется от одного до 10–15 человек. В подобных условиях использование настольных СУБД для управления информационными системами является вполне оправданным, и они с успехом применяются.

Одними из первых СУБД были так называемые dBase-совместимые программные системы, разработанные разными фирмами. Первой широко распространенной системой такого рода была система dBase III – PLUS (фирма Achton-Tate). Развитый язык программирования, удобный интерфейс, доступный для массового пользователя, способствовали широкому распространению системы. В то же время работа системы в режиме интерпретации обусловливала низкую производительность на стадии выполнения. Это привело к появлению новых систем-компиляторов, близких к системе dBase III – PLUS: Clipper (фирма Nantucket Inc.), FoxPro (фирма Fox Software), FoxBase+ (фирма Fox Software), Visual FoxPro (фирма Microsoft). Одно время достаточно широко использовалась СУБД PARADOX (фирма Borland International).

В последние годы очень широкое распространение получила система управления базами данных Microsoft Access, которая входит в целый ряд версий пакета Microsoft Office(фирма Microsoft).

36) Серверные субд и унаследованные данные

Одной из наиболее распространенных проблем, связанных с модернизацией эксплуатируемых информационных систем, является использование в них данных, унаследованных от прежних версий и содержащихся, как правило, в форматах настольных СУБД. В частности, вопросы модернизации устаревших систем на основе xBase и переноса их на платформу Oracle, а также этапы модернизации с организационной точки зрения были подробно проанализированы Алексеем Ярцевым в статье «Миграция из xBase в Oracle» («Компьютер -Пресс», 1997, N 8, стр.137-140).

В данной работе хотелось бы рассмотреть некоторые технические аспекты проблемы использования унаследованных данных применительно к С++Builder.

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

37) История возникновения и развития технологий баз данных может рассматриваться как в широком, так и в узком аспекте.

В широком аспекте понятие истории баз данных обобщается до истории любых средств, с помощью которых человечество хранило и обрабатывало данные. В таком контексте упоминаются, например, средства учёта царской казны и налогов в древнем Шумере (4000 г. до н. э.),[8] узелковая письменность инков — кипу, клинописи, содержащие документы Ассирийского царства и т. п. Следует помнить, что недостатком этого подхода является размывание понятия «база данных» и фактическое его слияние с понятиями «архив» и даже «письменность».

История баз данных в узком аспекте рассматривает базы данных в традиционном (современном) понимании. Эта история начинается с 1955 года, когда появилось программируемое оборудование обработки записей. Программное обеспечение этого времени поддерживало модель обработки записей на основе файлов. Для хранения данных использовались перфокарты.[8]

Оперативные сетевые базы данных появились в середине 1960-х. Операции над оперативными базами данных обрабатывались в интерактивном режиме с помощью терминалов. Простые индексно-последовательные организации записей быстро развились к более мощной модели записей, ориентированной на наборы. За руководство работой Data Base Task Group (DBTG), разработавшей стандартный язык описания данных и манипулирования данными, Чарльз Бахман получил Тьюринговскую премию.

В это же время в сообществе баз данных COBOL была проработана концепция схем баз данных и концепция независимости данных.

Следующий важный этап связан с появлением в начале 1970-х реляционной модели данных, благодаря работам Эдгара Ф. Кодда. Работы Кодда открыли путь к тесной связи прикладной технологии баз данных с математикой и логикой. За свой вклад в теорию и практику Эдгар Ф. Кодд также получил премию Тьюринга.

Сам термин database (база данных) появился в начале 1960-х годов, и был введён в употребление на симпозиумах, организованных фирмой SDC (System Development Corporation) в 1964 и 1965 годах, хотя понимался сначала в довольно узком смысле, в контексте систем искусственного интеллекта. В широкое употребление в современном понимании термин вошёл лишь в 1970-е годы.[

НОУ ИНТУИТ | Лекция | Системы управления базами данных

Аннотация: Вводится понятие системы управления базами данных (СУБД). Дается характеристика основных функций системы управления базами данных

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

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

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

Роль интерфейса между прикладными программами и базой данных, обеспечивающего их независимость, играет программный комплекс – система управления базами данных ( СУБД ) ( рис. 2.1).

СУБД – программный комплекс поддержки интегрированной совокупности данных, предназначенный для создания, ведения и использования базы данных многими пользователями (прикладными программами).


Рис. 2.1. Обеспечение независимости прикладных программ и базы данных

Определим еще одно понятие.

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

Перечислим основные функции системы управления базами данных.

1. Определение структуры создаваемой базы данных, ее инициализация и проведение начальной загрузки.

Как правило, создание структуры базы данных происходит в режиме диалога. СУБД последовательно запрашивает у пользователя необходимые данные. В большинстве современных СУБД база данных представляется в виде совокупности таблиц. Рассматриваемая функция позволяет описать и создать в памяти структуру таблицы, провести начальную загрузку данных в таблицы. Примеры таких действий для СУБД MS Access приведены на рисунке 2.2.

2. Предоставление пользователям возможности манипулирования данными (выборка необходимых данных, выполнение вычислений, разработка интерфейса ввода/вывода, визуализация).

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

В MS Access реализация данной функции может быть реализована созданием запросов и форм ввода с помощью графического интерфейса ( рис. 2.3).

Для клиент-серверных СУБД существуют средства, позволяющие выполнять запросы, и программные средства, позволяющие создавать графический интерфейс пользователя.

3. Обеспечение независимости прикладных программ и данных (логической и физической независимости).

Важнейшим свойством СУБД является возможность поддерживать два независимых взгляда на базу данных – «взгляд пользователя», воплощаемый в логическом представлении данных, и его отражения в прикладных программах; и «взгляд системы» – физическое представление данных в памяти ЭВМ. Обеспечение логической независимости данных предоставляет возможность изменения (в определенных пределах) логического представления базы данных без необходимости изменения физических структур хранения данных. Таким образом, изменение логического представления данных в прикладных программах не приводит к изменению структур хранения данных. Обеспечение физической независимости данных предоставляет возможность изменять (в определенных пределах) способы организации базы данных в памяти ЭВМ не вызывая необходимости изменения «логического» представления данных. Таким образом, изменение способов организации базы данных не приводит к изменению прикладных программ.

Удлинители для квадроциклов — СУбД

Расширения SketchUp, работающие с квадроциклами

Инструменты QuadFace

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

Получить инструменты QuadFace

Руководство по инструментам QuadFace

AutoSmooth

Автоматически смягчает и сглаживает автоматически сложенные края, созданные в исходном коде Инструменты перемещения, поворота и масштабирования.

Получить AutoSmooth

Curviloft

Curviloft — это скрипт, посвященный Loft и Skinning, то есть генерации поверхности по контурам.

Получить Curviloft

Flowify

Flowify — это расширение, которое сгибает группы или компоненты вдоль четырехугольника. поверхность. Геометрия источника связана с сеткой проекции и Затем геометрия отображается на четырехугольную целевую поверхность.

Получить Flowify

MoveAlong

MoveAlong — это автономный скрипт, который является частью FredoTools. Это позволяет Перемещение и копирование объектов, а также поворот компонентов и групп с помощью их центр по осям.

Получите MoveAlong

ThruPaint

Расширение Fredo ThruPaint поддерживает квадроциклы для UV-отображения среди своих широких возможностей. набор функций УФ-картографии.

Получить ThruPaint

TopoShaper

TopoShaper позволяет создавать ландшафты из группы изоконтуров. в результате получается четырехугольная сетка.

Получить TopoShaper

Vertex Tools

При манипулировании вершинами с помощью Vertex Tools это гарантирует, что новые ребра создано Auto-Fold края становятся совместимыми с инструментами QuadFace.Это означает, что вы можете пусть копланарные грани дышат в два треугольника, и они все равно будут обработаны как одиночный квад.

Получить инструменты для вершин

.

рабочих мест — Windows Sysinternals | Документы Microsoft

  • 2 минуты на чтение

В этой статье

Марк Руссинович

Дата публикации: 17 октября 2012 г.

Загрузить рабочие столы (61 КБ)
Запустить сейчас из Sysinternals Live.

Введение

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

Использование настольных компьютеров

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

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

Скриншот


Диалоговое окно конфигурации


Окно переключателя рабочего стола лотка

Загрузить рабочие столы (61 КБ)

Запустите сейчас из Sysinternals Live.

Работает на:

  • Клиент: Windows Vista и выше.
  • Server: Windows Server 2008 и выше.
.

Размещение вашего приложения в меню рабочего стола

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

В отличие от Windows или MacOS, в GNOME пользовательские меню автоматически строится из списка зарегистрированных Приложения.Каждое опубликованное приложение определяет набор категории, к которым он принадлежит, и системное меню конфигурация сортирует и упорядочивает их. Этот механизм следует стандарты входа и меню рабочего стола freedesktop.org.

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

В GNOME и других рабочих столах, совместимых с freedesktop.org, приложение регистрируется в меню рабочего стола через запись на рабочем столе, которая представляет собой текстовый файл с .desktop расширение. Этот файл рабочего стола содержит список конфигураций для вашего приложения. Рабочий стол берет информацию из этого файла и использует ее для:

  • поместите приложение в. Чтобы найти список действительные категории, загляните в FreeDesktop.орг Рабочий стол Спецификация меню.
  • перечислить приложение в Run Диалог приложения …
  • создать соответствующие пусковые установки в меню или на рабочем столе.
  • свяжите название и описание приложения.
  • используйте соответствующий значок.
  • распознавать типы MIME, которые он поддерживает для открытия файлов.

Чтобы добавить пункт меню для вашего приложения, создайте рабочий стол файл. У него должно быть уникальное имя файла, и нет ограничения по длине, поэтому избегайте сокращений и не стесняйтесь включать торговые марки.Однако не ставьте пробелы или международные символы в имени файла. Например, «foocorp-painter-pro.desktop» было бы хорошим именем файла для выберите, но «fcpp.desktop» будет плохим именем, как и «FooCorp Painter Pro.desktop». Файл должен быть в кодировке UTF-8. закодирован и должен напоминать следующий шаблон:

 [Desktop Entry]
Имя = FooCorp Painter Pro
Exec = foocorp-painter-pro
Значок = foocorp-painter-pro
Тип = Приложение
Категории = GTK; GNOME; Утилита;

Эти файлы рабочего стола содержат метаданные о вашем приложении, и играть центральную роль в интеграции программы с Рабочие столы, совместимые с GNOME и другими стандартами.Шаблон представленный здесь является самым основным из возможных. Файл может быть лингвистически переведен, чтобы отображалось название вашего приложения на родном языке пользователя.

Поместите этот файл в каталог / usr / share / applications, чтобы он доступен каждому или в ~ / .local / share / applications, если только вы желаете сделать его доступным для одного пользователя. Что используется должно зависеть от того, установлено ли ваше приложение по всей системе или в домашний каталог пользователя. Мониторы GNOME эти каталоги для изменений, поэтому просто скопируйте файл в в правильном месте достаточно, чтобы зарегистрировать его в рабочий стол.

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

Помимо первой строки, определяющей файл рабочего стола, порядок строк не важен. В примере 1-1 строка Type = Application может быть второй строкой, пятая строка или последняя строка, и результатом будет те же самые.

Однако ключи чувствительны к регистру. Тип = Приложение не является то же, что и type = Application или ТИП = Приложение.

Пример 1-1 Пример файла рабочего стола

 [Desktop Entry]
Тип = Приложение
Кодировка = UTF-8
Name = Пример имени приложения
Комментарий = образец приложения
Exec = приложение
Значок = приложение.PNG
Терминал = ложь
 

Таблица 1-1 Построчное объяснение

Линия Описание
[Desktop Entry] Первая строка каждого файла рабочего стола и раздела заголовок для идентификации блока связанных пар ключ-значение с рабочим столом. Необходимо, чтобы рабочий стол распознал файл правильно.
Тип = Приложение Сообщает рабочему столу, что этот файл рабочего стола относится к приложение.Другие допустимые значения для этого ключа: Ссылка и Справочник.
Кодировка = UTF-8 Описывает кодировку записей на этом рабочем столе. файл.
Имя = Пример имени приложения Названия вашего приложения для главного меню и любых пусковых установок.
Комментарий = Пример приложения Описывает приложение. Используется как всплывающая подсказка.
Exec = приложение Команда, запускающая это приложение из ракушка.У него могут быть аргументы.
Значок = application.png Имя значка, связанного с этим приложением.
Клемма = ложь Описывает, должно ли приложение запускаться в терминале.

Если ваше приложение может принимать аргументы командной строки, вы можете укажите это, используя поля, как показано в Таблице 1-2.

Таблица 1-2 Переменные Exec

Добавить … Принимает…
% f одно имя файла.
% F несколько имен файлов.
% и единый URL.
% U несколько URL-адресов.
% d единый каталог. Используется вместе с % f, чтобы найти файл.
% D несколько каталогов. Используется вместе с % F для поиска файлов.
% n одно имя файла без пути.
% № несколько имен файлов без путей.
% к URI или локальное имя файла расположения файл рабочего стола.
% против имя записи устройства.

Чтобы создать локализованные имена и комментарии, дополнительные строки для необходимо добавить каждую локаль. Например, чтобы добавить шведский версии комментария добавьте следующую строку:

Комментарий [sv] = Exempelprogramnamn

Нет ограничений на количество переводов в файле.

Поскольку ведение длинного списка переводов в файле — это громоздкий, лучший способ создать эти переводы — использовать пакет intltool. Увидеть мужчину страницы для intltool-extract и intltool-merge для получения дополнительной информации Информация.

.

Desktop Entry Specification

Desktop Entry Specification


Как в среде рабочего стола KDE, так и в GNOME приняты аналогичные формат для «записей рабочего стола» или файлов конфигурации, описывающих, как конкретная программа должна быть запущена, как она отображается в меню и т. д. Единый стандарт должен быть на пользу более широкому сообществу. согласованы всеми сторонами таким образом, чтобы взаимодействие между двумя среды, а также любые дополнительные среды, реализующие спецификация, становится проще.

Файлы записей рабочего стола должны иметь расширение .desktop . расширение, кроме файлов Тип Справочник , который должен иметь . Каталог расширение. Определение типа файла на основе расширения позволяет очень легко и быстро определить тип файла. Если расширение файла отсутствует, настольная система должна вернуться к распознаванию с помощью «магического обнаружения».

Для приложений часть имени файла рабочего стола перед .настольное расширение должно быть действительным D-автобус известное имя. Это означает, что это последовательность непустые элементы, разделенные точками (U + 002E FULL STOP), ни один из который начинается с цифры, и каждая из которых содержит только символы из набора [A-Za-z0-9-_] : ASCII буквы, цифры, тире (U + 002D ДЕФИС-МИНУС) и подчеркивание (НИЗКАЯ ЛИНИЯ U + 005F).

Имя записи на рабочем столе должно следовать за «обратным DNS». соглашение: он должен начинаться с перевернутого имени домена DNS контролируется автором приложения строчными буквами.В после доменного имени должно быть указано имя приложения, которое обычно пишется со словами, соединенными вместе и начальным заглавным буквы (CamelCase). Например, если владелец example.org пишет «Foo Viewer», они могут выбрать имя org.example.FooViewer , в результате получается файл с именем org.example.FooViewer.desktop .

Хорошо известные имена, содержащие тире, разрешены, но не рекомендуются. потому что тире не разрешено в некоторых связанных использованиях обратного DNS-имена, такие как пути к объектам D-Bus и имена интерфейсов, и Flatpak идентификаторы приложений.Если в доменном имени автора есть тире, замените его с подчеркиванием рекомендуется: это не может вызвать двусмысленности, потому что символы подчеркивания не разрешены в доменных именах DNS.

Если доменное имя автора содержит метку, начинающуюся с цифры, (что недопустимо в широко известных именах D-Bus), добавив перед рекомендуется подчеркивать этот элемент имени записи рабочего стола. Например, 7-zip.org может выпустить приложение с именем орг._7_zip.Archiver .

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

Чтобы определить идентификатор файла рабочего стола, сделайте его полный путь относительно компонент $ XDG_DATA_DIRS , в котором установлен файл рабочего стола, удалите «приложения /» префикс и превратите ‘/’ в ‘-‘.

Например / usr / share / applications / foo / bar.рабочий стол имеет идентификатор файла рабочего стола foo-bar.desktop .

Если несколько файлов имеют одинаковый идентификатор файла рабочего стола, первый из Используется порядок приоритета $ XDG_DATA_DIRS.

Например, если $ XDG_DATA_DIRS содержит пути по умолчанию / usr / local / share: / usr / share, то /usr/local/share/applications/org.foo.bar.desktop и /usr/share/applications/org.foo.bar.рабочий стол оба имеют тот же файл рабочего стола ID org.foo.bar.desktop , но только первый один будет использован.

Если существуют и foo-bar.desktop , и foo / bar.desktop , не определено, что выбрано.

Если файл рабочего стола не установлен в подкаталог приложений одного компонентов $ XDG_DATA_DIRS у него нет идентификатора.

Файлы записей рабочего стола кодируются в UTF-8.Файл интерпретируется как серия строк, разделенных символами перевода строки. Дело значимо везде в файле.

Совместимые реализации НЕ ДОЛЖНЫ удалять какие-либо поля из файла, даже если они их не поддерживают. Такие поля должны храниться в список где-нибудь, и если файл «переписать», они будут включены. Это гарантирует, что любые расширения для настольных компьютеров будут сохранены. даже если другая система обращается к файлу и изменяет его.

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

Строки комментариев не интерпретируются и могут содержать любой символ. (кроме LF). Однако использование UTF-8 для строк комментариев, содержать символы, не входящие в ASCII, приветствуются.

Заголовок группы с именем имя группы — это строка в формат:

 [название группы] 

Имена групп могут содержать все символы ASCII, кроме [ и ] и управляющие символы.

Несколько групп могут иметь разные имена.

Все {ключ, значение} пар, следующих за заголовком группы, пока новый заголовок группы принадлежит группе.

Базовый формат файла записи рабочего стола требует, чтобы заголовок группы с именем Desktop Entry . Может быть другими группами, присутствующими в файле, но это самая важная группа, которую явно нужно поддерживать. Эта группу также следует использовать как «волшебный ключ» для автоматического MIME определение типа.Этой группе не должно быть ничего предшествующего в файл записи рабочего стола, но, возможно, один или несколько комментариев.

Записи в файле — {ключ, значение} пар в формат:

 Ключ = значение 

Пробелы до и после знака равенства следует игнорировать; то = знак — фактический разделитель.

Только символы A-Za-z0-9- могут использоваться в ключевые имена.

Поскольку регистр имеет значение, ключи , имя, и ИМЯ не эквивалентны.

Несколько ключей в одной группе могут иметь разные имена. Ключи в разные группы могут иметь одно и то же имя.

Распознаваемые типы значений: строка , строка , iconstring , логическое и числовой .

  • Значения типа строка могут содержать все ASCII символы, кроме управляющих символов.

  • Значения типа localestring отображаются пользователем, и закодированы в UTF-8.

  • Значения типа iconstring — это названия значков; это могут быть абсолютные пути или символические имена для значков, расположенных с использованием алгоритм, описанный в значке Спецификация темы. Такие значения не отображаются пользователем, и закодированы в UTF-8.

  • Значения типа boolean должны быть либо строкой правда или ложь .

  • Значения типа numeric должны быть допустимыми плавающими номер точки, как определено спецификатором % f для scanf в локали C .

Управляющие последовательности \ s , \ n , \ t , \ r , и \ поддерживаются для значений типа строка , строка и iconstring , что означает Пробел ASCII, новая строка, табуляция, возврат каретки и обратная косая черта соответственно.

Некоторые ключи могут иметь несколько значений. В таком случае значение ключа указывается во множественном числе: например, строка (строки) .В несколько значений следует разделять точкой с запятой, а значение Ключ может быть опционально завершен точкой с запятой. Завершающие пустые строки всегда должен заканчиваться точкой с запятой. Точка с запятой в этих значениях необходимо экранировать с помощью \; .

Локализованные значения ключей

Ключи с типом , строка и iconstring может иметь постфиксный [ LOCALE ], где LOCALE — тип локали вход. МЕСТНЫЙ должен иметь вид язык _ СТРАНА . КОДИРОВАНИЕ @ МОДИФИКАТОР , где _ СТРАНА , . КОДИРОВАНИЕ , и @ МОДИФИКАТОР может быть опущено. Если встречается постфиксный ключ, то же самое ключ также должен присутствовать без постфикса.

При чтении файла записи рабочего стола значение ключа равно выбирается путем сопоставления текущей локали POSIX для LC_MESSAGES категория против LOCALE постфиксов всех вхождений ключа, с . КОДИРОВАНИЕ часть раздели.

Сопоставление выполняется следующим образом. Если LC_MESSAGES имеет вид язык _ СТРАНА . КОДИРОВАНИЕ @ МОДИФИКАТОР , тогда он будет соответствовать ключу формы язык _ СТРАНА @ МОДИФИКАТОР . Если такой ключ не существует, он попытается сопоставить язык _ СТРАНА с последующим lang @ МОДИФИКАТОР . Затем сопоставление с lang отдельно будет предпринята попытка.Наконец, если соответствующий ключ не найден, используется необходимый ключ без указания локали. Кодировка из LC_MESSAGES значение игнорируется при сопоставлении.

Если LC_MESSAGES не имеет МОДИФИКАТОР поле, то ни один ключ с модификатором не будет сопоставлен. Аналогично, если LC_MESSAGES не имеет СТРАНА поле, то ни один ключ с указанной страной не будет сопоставлен.Если LC_MESSAGES имеет только поле lang , тогда он будет соответствовать ключу с аналогичным значением. В В следующей таблице перечислены возможные совпадения различных значений LC_MESSAGES в порядок, в котором они совпадают. Обратите внимание, что КОДИРОВАНИЕ Поле не отображается.

Таблица 1. Соответствие языку

LC_MESSAGES значение Возможные ключи в порядке совпадения
9000 МОДИФИКАТОР язык _ СТРАНА @ МОДИФИКАТОР , язык _ СТРАНА , язык @ МОДИФИКАТОР , язык , значение по умолчанию
язык _ СТРАНА язык _ СТРАНА , язык , значение по умолчанию
язык @ МОДИФИКАТОР язык @ МОДИФИКАТОР , язык , значение по умолчанию
язык язык , значение по умолчанию

Например, если текущее значение категории LC_MESSAGES это sr_YU @ Latn , а файл рабочего стола включает:

 Name = Foo
 Имя [sr_YU] =...
 Имя [sr @ Latn] = ...
 Имя [sr] = ... 

тогда используется значение Name с ключом sr_YU .

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

Распознаваемые клавиши входа на рабочий стол

Ключи являются ДОПОЛНИТЕЛЬНЫМИ или ОБЯЗАТЕЛЬНЫМИ.Если ключ является ДОПОЛНИТЕЛЬНЫМ, он может или может не присутствовать в файле. Однако, если это не так, реализация стандарта не должна взорваться, она должна обеспечивать некоторые нормальные значения по умолчанию.

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

Если ОБЯЗАТЕЛЬНЫЙ ключ действителен только в контексте другого ключа, установленного в определенное значение, то оно должно присутствовать, только если другой ключ установлен на конкретное значение. Например, ключ URL должен быть присутствует тогда и только тогда, когда значение Тип ключ - Ссылка .

Некоторые примеры ключей: Имя [C] , Комментарий [it] .

Таблица 2. Стандартные ключи

Ключ Описание Тип значения REQ? Тип
Тип Эта спецификация определяет 3 типа записей рабочего стола: Приложение (тип 1), Ссылка (тип 2) и Справочник (тип 3).Чтобы в будущем можно было добавлять новые типы, реализации должны игнорировать записи на рабочем столе с неизвестный тип. строка ДА
Версия Версия спецификации Desktop Entry, которую запись на рабочем столе соответствует требованиям. Записи, подтверждающие это версия спецификации должна использовать 1.1 . Обратите внимание, что поле версии не обязательно. строка NO 1-3
Имя Конкретное имя приложения, например «Mozilla». localestring ДА 1-3
GenericName Общее название приложения, например «Веб-браузер». localestring NO 1-3
NoDisplay NoDisplay означает «это приложение существует, но не отображает его в меню».Это может быть полезно, например, свяжите это приложение с типами MIME, чтобы он запускается из файлового менеджера (или других приложений), без меню запись для этого (для этого есть масса веских причин, в том числе, например, netscape -remote , или kfmclient openURL типа ). логическое НЕТ 1-3
Комментарий Всплывающая подсказка для записи, например "Просмотр сайтов на Интернет ».Значение не должно повторяться со значениями Имя и GenericName . localestring NO 1-3
Значок Значок для отображения в файловом менеджере, меню и т. Д. имя - абсолютный путь, данный файл будет используемый. Если имя не является абсолютным путем, описанный алгоритм в иконе Спецификация темы будет использоваться для поиска значка. iconstring NO 1-3
Скрытый Скрытый должен был называться Удален . Значит пользователь удален (на его уровне) что-то, что присутствовало (на верхнем уровне, например, в системных каталогах). Это строго эквивалентен файлу .desktop , который вообще не существует, поскольку этот пользователь обеспокоен. Это также можно использовать для «удаления» существующих файлов (например, из-за переименования) - разрешив make install установить файл с Hidden = true в нем. булево NO 1-3
OnlyShowIn , NotShowIn

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

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

Если $ XDG_CURRENT_DESKTOP установлен, то он содержит Список строк, разделенных двоеточиями. По порядку каждая строка считается. Если соответствующая запись найдена в OnlyShow В отображается файл рабочего стола. Если запись найдена в NotShowIn , то файл рабочего стола не отображается. Если ни одна из строк не соответствует, то выполняется действие по умолчанию (как указано выше).

$ XDG_CURRENT_DESKTOP должен быть установлен менеджером входа в систему, согласно значение DesktopNames , найденное в файле сеанса. Запись в Файл сеанса имеет несколько значений, разделенных обычным образом: точкой с запятой.

Одно и то же имя рабочего стола может не отображаться на обоих OnlyShowIn и NotShowIn из группа.

строка (и) NO 1-3
DBusActivatable Логическое значение, указывающее, поддерживается ли активация D-Bus для этого приложения. Если этот ключ отсутствует, значение по умолчанию false . Если значение истинно тогда реализации должны игнорировать ключ Exec и отправить сообщение D-Bus на запустите приложение.См. Раздел Активация D-Bus для получения дополнительной информации о как это работает. Приложения по-прежнему должны включать строки Exec = в свои файлы рабочего стола для совместимость с реализациями, которые не понимают ключ DBusActivatable. логическое НЕТ
TryExec Путь к исполняемому файлу на диске, используемый для определения того, фактически установлен. Если путь не является абсолютным, файл ищется в переменной окружения $ PATH.Если файл не присутствует или, если он не исполняется, запись может быть проигнорирована (не используется, например, в меню). строка NO 1
Exec Программа для выполнения, возможно, с аргументами. Увидеть Exec key для получения подробной информации о том, как этот ключ работает. Ключ Exec требуется, если DBusActivatable не является установлено значение , истинное значение .Даже если DBusActivatable true , Exec следует указать для совместимости с реализации, которые не понимают DBusActivatable . строка NO 1
Путь Если запись имеет тип Приложение , рабочий каталог для запуска программы. строка NO 1
Клемма Работает ли программа в окне терминала. логическое НЕТ 1
Действия Идентификаторы действий приложения. Это можно использовать, чтобы сообщить приложение для выполнения определенного действия, отличного от действия по умолчанию поведение. Действия приложения Раздел описывает, как работают действия. строка (и) NO 1
MimeType Тип (ы) MIME, поддерживаемый этим приложением. строка (и) NO 1
Категории Категории, в которых запись должна отображаться в меню (для возможные значения см. на рабочем столе Спецификация меню). строка (и) NO 1
Приспособления Список интерфейсов, которые реализует это приложение. По умолчанию файл рабочего стола не реализует интерфейсы.См. Интерфейсы для получения дополнительной информации о том, как это работает. строка (и) NO
Ключевые слова Список строк, которые можно использовать в дополнение к другим метаданные для описания этой записи. Это может быть полезно, например, к облегчить поиск по записям. Значения не означают для отображения, и не должны повторяться со значениями Имя или GenericName . localestring (s) NO 1
StartupNotify Если это правда, то ИЗВЕСТНО, что приложение отправит "удалить" сообщение при запуске с установленной переменной среды DESKTOP_STARTUP_ID. Если false, это ЗНАЕТ, что приложение не работает с уведомлением о запуске (не показывает ни одного окна, ломается даже при использовании StartupWMClass и т. д.). Если отсутствует, разумная обработка зависит от реализаций (при условии false, с помощью StartupWMClass и т. д.). (Подробнее см. Спецификацию протокола уведомлений о запуске). логическое НЕТ 1
Запуск WMClass Если указано, известно, что приложение отобразит хотя бы один окно с заданной строкой в ​​качестве его класса WM или подсказки имени WM (подробности см. в Спецификации протокола уведомлений о запуске). строка NO 1
URL Если запись имеет тип ссылки, URL-адрес для доступа. строка ДА 2
PrefersNonDefaultGPU Если это правда, приложение предпочитает работать на более мощном дискретном графическом процессоре, если он доступен, который мы описываем как «графический процессор, отличный от используемого по умолчанию» в этой спецификации, чтобы избежать необходимости чтобы определить, что такое дискретный графический процессор и в каких случаях его можно считать более мощным чем графический процессор по умолчанию. Этот ключ является лишь подсказкой, и поддержка может отсутствовать в зависимости от реализации. логическое НЕТ 1

Ключ Exec должен содержать командную строку. Командная строка состоит из исполняемой программы, за которой можно следовать одним или несколькими аргументами. Исполняемая программа может быть указана с полным путем или только с именем исполняемого файла. Если не указан полный путь, исполняемый файл ищется в переменной среды $ PATH, используемой среда рабочего стола.Имя или путь исполняемой программы не может содержать равных знак ("="). Аргументы разделяются пробелом.

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

Цитирование должно быть выполнено путем заключения аргумента в двойные кавычки. и экранирование символа двойной кавычки, символа обратной кавычки (""), знак доллара ("$") и символ обратной косой черты ("\"), поставив перед ним знак дополнительный символ обратной косой черты.Реализации должны отменить цитирование перед расширение кодов полей и перед передачей аргумента в исполняемый файл программа. Зарезервированные символы: пробел (""), табуляция, новая строка, двойное цитата, одинарная кавычка ("'"), символ обратной косой черты ("\"), знак "больше" (">"), знак "меньше" ("<"), тильда ("~"), вертикальная черта ("|"), амперсанд ("&"), точка с запятой (";"), знак доллара ("$"), звездочка ("*"), вопросительный знак ("?"), решетка ("#"), круглые скобки ("(") и (")") и обратный апостроф ("` ").

Обратите внимание, что общее правило перехода для значений типа string гласит, что символ обратной косой черты также может быть экранирован как ("\\") и что этот Правило escape применяется перед правилом цитирования. Таким образом, чтобы однозначно представляет собой буквальный символ обратной косой черты в кавычках аргумент в файле записи рабочего стола требует использования четырех последовательных символы обратной косой черты ("\\\\"). Точно так же буквальный знак доллара в цитируемый аргумент в файле записи рабочего стола однозначно представлен с ("\\ $").

Определен ряд специальных кодов полей, которые будут расширяется файловым менеджером или программой запуска при обнаружении в командной строке. Коды полей состоят из символа процента ("%"), за которым следует альфа-символ. Буквальные символы процентов должны быть экранированы как %% . Устаревшие коды полей следует удалить из командной строки и игнорируется. Коды полей раскрываются только один раз, строка, которая используется для заменить код поля не следует проверять коды полей как таковые.

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

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

Хотя ключ Exec определен как имеющий значение строки типа, которая ограничена символами ASCII, код поля расширение может вводить в аргументы символы, отличные от ASCII. Реализации должны позаботиться о том, чтобы все символы в аргументах переданные в исполняемую программу правильно закодированы в соответствии с применимый параметр локали.

Распознанные коды полей следующие:

Код Описание
% f Одно имя файла (включая путь), даже если выбрано несколько файлов. Система чтение записи на рабочем столе должно признать, что программа в вопрос не может обрабатывать несколько аргументов файла, и он должен вероятно, должен порождать и выполнять несколько копий программы для каждого выбранного файла, если программа не может обработать дополнительные аргументы файла.Если файлы не находятся в локальной файловой системе (т.е. находятся в местах HTTP или FTP), файлы будут скопированы на локальный файловая система и % f будет расширен, чтобы указать на временный файл. Используется для программ, которые не понимают синтаксис URL.
% F Список файлов. Используйте для приложений, которые могут открывать несколько локальных файлы сразу. Каждый файл передается как отдельный аргумент в исполняемая программа.
% и Единый URL. Локальные файлы могут быть переданы как файл: URL-адреса или путь к файлу.
% U Список URL-адресов. Каждый URL-адрес передается как отдельный аргумент в исполняемая программа. Локальные файлы могут быть переданы как файл: URL-адреса или путь к файлу.
% d Устарело.
% D Устарело.
% n Устарело.
% № Устарело.
% i Клавиша Icon записи на рабочем столе раскрывается как два аргумента, первый - значок , а затем значение Значок ключ. Не должно расширяться до любого аргументы, если ключ Icon пуст или отсутствует.
% в Переведенное название приложения, как указано в соответствующий Имя ключ в запись на рабочем столе.
% k Расположение файла рабочего стола как URI (если для пример, полученный из системы vfolder) или локальный имя файла или пусто, если местоположение неизвестно.
% против Устарело.
% м Устарело.

Командная строка может содержать не более одного кода поля% f,% u,% F или% U. Если приложение не должно открываться файла, коды полей% f,% u,% F и% U должны быть удалены из командная строка и игнорируется.

Коды полей нельзя использовать внутри аргумента в кавычках, результат расширение кода поля внутри аргумента в кавычках не определено.% F и Коды полей% U могут использоваться только как аргументы сами по себе.

Приложения, которые поддерживают запуск с помощью D-Bus, должны реализовывать следующий интерфейс (указанный в D-Bus формат XML интроспекции):

  
    <имя метода = 'Активировать'>
      
    
    <имя метода = 'Открыть'>
      
      
    
    <имя метода = 'ActivateAction'>
      
      
      
    
  
     

Приложение должно назвать свой файл рабочего стола в соответствии с рекомендациями по именованию в вводный раздел (e.г. имя файла должно иметь вид org.example.FooViewer.desktop ). В приложении должна быть активирована служба D-Bus с известным именем, равным рабочему столу. имя файла с удаленной частью .desktop (в нашем примере

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *