АРХИТЕКТУРА, МОДЕЛЬ ПРОГРАММИРОВАНИЯ И API
ARCHITECTURE, PROGRAMMING MODEL AND API

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННЫЕ ЗАЯВКИ
Данная заявка претендует на приоритет предварительной патентной заявки США с серийным № 60/606281, поданной 1 сентября 2004, озаглавленной «SYSTEM AND METHODS THAT FACILITATE RFID SERVER PROGRAMMING MODEL AND API'S», и предварительной патентной заявки США с серийным № 60/606577, поданной 2 сентября 2004, озаглавленной «FACILITATE RFID SERVER PROGRAMMING MODEL AND API'S». Данная заявка также соотносится к находящимся в процессе одновременного рассмотрения патентными заявками США с серийными номерами 11/025702, 11/061356 и 11/061337, зарегистрированными 29 декабря 2004 г., 18 февраля 2005 г. и 18 февраля 2005 г. соответственно. Совокупность этих заявок включена в данное описание в качестве ссылки.
ОБЛАСТЬ ТЕХНИКИ
Данное изобретение в общем случае относится к радиочастотной идентификации (РЧИД, RFID), а более конкретно - к системе и/или способу, которые генерируют структуру для создания и/или выполнения приложения РЧИД.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ ИЗОБРЕТЕНИЯ
Многие предприятия розничной торговли, производственные предприятия и предприятия-распространители применяют различные инновационные способы работы для увеличения эффективности. Эти предприятия могут контролировать хранящиеся запасы для облегчения оптимизации спроса и предложения по отношению к потребителям. Один из аспектов получения максимальной прибыли зависит от надлежащего накопления запасов так, чтобы их пополнение происходило вместе с истощением запасов товаров и/или продуктов (изделий). Например, розничный торговец, продающий компьютеры и/или видеомагнитофоны, должен осуществлять поставки компьютеров в соответствии с их продажами населению и видеомагнитофонов в соответствии с их продажами населению. Таким образом, если на компьютеры существует повышенный спрос (например, их продается большее количество), чем на видеомагнитофоны, то розничный торговец может чаще поставлять компьютеры для оптимизации спроса и предложения и, в свою очередь, прибыли. Контроль запасов и сопутствующих продаж может быть сложной задачей, причем результирующая деятельность сопоставима с «черным ящиком», так как внутренняя работа - неизвестна; тем не менее контроль продуктов является критическим элементом эффективности учета запасов/продуктов.
Технология автоматической идентификации и сбора данных (АИСД, AIDC), а более конкретно радиочастотной идентификации (РЧИД), была разработана, основываясь по меньшей мере на необходимости исправить неточности обычных систем контроля и/или методологий (например, считывающих устройств штрихового кода, штриховых кодов и/или универсальных товарных кодов (УТК, UPC)). РЧИД - методика удаленного хранения и извлечения данных, которая использует радиометки. Так как системы РЧИД основаны на радиочастоте и соответствующих сигналах, многочисленные выгоды и/или преимущества превосходят традиционные методики контроля продуктов. Технология РЧИД не требует, чтобы продукт находился в поле зрения для контроля продуктов и/или приема сигналов от радиометок. Таким образом, не нужно ручное сканирование, при котором сканер должен находиться в непосредственной близости от адресата (например, продукта). Тем не менее при РЧИД расстояние ограничено в зависимости от радиочастоты, размера радиометки и соответствующего источника энергии. Дополнительно, системы РЧИД позволяют множество считываний в секунду, обеспечивая быстрое сканирование и идентификацию. Другими словами, система РЧИД предоставляет возможность считывать и/или идентифицировать множество радиометок, когда радиометки находятся в пределах диапазона действия считывающего устройства РЧИД. Вызывает восхищение возможность многочисленных считываний в системе РЧИД, а также способность обеспечивать информационные радиометки, которые содержат уникальный идентифицирующий код для каждого отдельного продукта.
Кроме того, системы и/или методологии РЧИД обеспечивают в реальном времени данные, которые связаны с помеченным элементом. Потоки данных в реальном времени предоставляют розничному торговцу, дистрибьютору и/или изготовителю возможность точно контролировать запасы и/или продукты. Использование РЧИД может дополнительно облегчать доставку продуктов при внешнем распределении (например, от розничного торговца к потребителю) и внутреннем распределении (например, от дистрибьютора/изготовителя к розничному торговцу). Дистрибьюторы и/или изготовители могут контролировать отгрузку товаров, качество, количество, время отправки и т.д. Кроме того, розничные торговцы могут отслеживать количество принятых запасов, расположение таких запасов, качество, срок годности и т.д. Описанные выгоды демонстрируют гибкость технологии РЧИД при функционировании во многих областях, таких как внешняя доставка, внутренняя доставка, система распределения, производство, розничная продажа, автоматизация и т.д.
Система РЧИД состоит по меньшей мере из радиометки и приемопередатчика РЧИД. Радиометка может содержать антенну, которая обеспечивает прием и/или передачу радиочастотных запросов от приемопередатчика РЧИД. Радиометка может быть маленьким объектом, таким как, например, клейкая этикетка, гибкая метка и интегрированный чип и т.д. Обычно существуют радиометки, которые используют четыре различных вида частот: низкочастотные радиометки (приблизительно между 125-134 килогерцами), высокочастотные радиометки (приблизительно 13,56 мегагерц), радиометки УВЧ (приблизительно 868-956 мегагерц) и микроволновые радиометки (приблизительно 2,45 гигагерца).
В общем случае система РЧИД может включать в себя многочисленные компоненты: радиометки, считывающие устройства радиометок (например, приемопередатчики радиометок), записывающие устройства радиометок, станции программирования радиометок, считывающие устройства обращения, сортировочное оборудование, цифровые зонды учета радиометок и т.д. Кроме того, различные марки, модели, типы и/или приложения могут быть связаны с соответствующими компонентами (например, радиометками, считывающими устройствами радиометок, станциями программирования радиометок, считывающими устройствами обращения, сортировочным оборудованием, цифровыми зондами учета радиометок...), которые могут усложнить обнаружение, конфигурирование, настройку, осуществление связи, обслуживание, обеспечение безопасности и/или совместимость в пределах системы РЧИД и с другими системами РЧИД. Ввиду приведенной выше информации существует потребность обеспечить единообразный способ обнаружения, конфигурирования, настройки и осуществления связи с устройствами РЧИД по отношению к изготовителю и соответствующие спецификации.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Далее представлено упрощенное описание сущности изобретения для обеспечения основного понимания некоторых аспектов изобретения. Эта сущность не является обширным обзором изобретения. Она не предназначена ни для идентификации ключевых или критических элементов изобретения, ни для очерчивания формы изобретения. Единственная цель состоит в том, чтобы представить некоторые концепции изобретения в упрощенной форме как вводную часть к более подробному описанию, которое представлено позднее.
Данное изобретение относится к системам и/или способам, которые облегчают воплощение модели, которая может использоваться для создания процесса РЧИД во время проектирования и для выполнения процесса РЧИД во время выполнения. Компонент приемника может принимать данные, причем компонент модели может создавать модель, основываясь по меньшей мере частично на принятых данных, которая облегчает создание приложения РЧИД во время проектирования и выполнение приложения РЧИД во время выполнения. Компонент приемника может получать данные, такие как внешняя вводимая информация (например, вводимая конечным пользователем информация, вводимая разработчиком приложения информация и т.д.), относящиеся к устройству данные (например, данные антенн, данные конфигурации, идентификацию, адрес, версию...), относящиеся к средству доступа данные, данные радиометки, совокупность устройств, политику фильтрации, политику оповещения, логический источник (причем логический источник может содержать, например, совокупность (совокупности) устройств, дополнительные политики фильтрации и/или оповещения и/или дополнительный обработчик событий), обработчик событий, событие..., но которые не ограничены ими. Модель, созданная с помощью компонента модели, может использоваться для облегчения создания, использования, выполнения и/или обслуживания процесса РЧИД. Кроме того, компонент модели может использовать конвейер обработки событий, причем конвейерное событие может использовать узлы обработки. Узлы обработки конвейерных событий могут быть по меньшей мере одним из фильтрации (например, недопустимой радиометки, дубликата радиометки, удаленной радиометки и т.д.), оповещения (например, обнаружение воровства, пустой радиометки и т.д.) и обработчика событий (например, внутреннего перемещения, события, относящегося к определенному виду деятельности, и т.д.). Событие может обогащаться и/или заполняться данными, когда оно продвигается по конвейеру.
В соответствии с одним из аспектов данного изобретения компонент модели может использовать структуру (которая может быть объектом (например, устройством, логическим источником, политикой фильтрации, политикой оповещения, обработчиком событий, средством слежения, обработчиком записи, объектом процесса РЧИД, хранилищем и т.д.), классом структуры, иерархической структурой по меньшей мере одного класса, интерфейсом, исключением, компонентом архитектуры, схемой, объектной моделью, прикладным программным интерфейсом (API)...., но не ограничена ими), которая облегчает создание и выполнение процесса РЧИД. Логический источник может представлять поток считываемой информации от физического устройства на сервер, который сводит в единое целое объект и может представлять обрабатываемые данные радиометки в пределах процесса РЧИД. Следует признать, что компонент модели может охватывать по меньшей мере одно из: управления устройствами, управления средствами доступа, управления хранилищами, контроля работоспособности, проектирования процесса, использования процесса и его выполнения.
В соответствии с другим аспектом данного изобретения компонент модели может создавать и/или выполнять различные приложения РЧИД, такие как процесс производства (например, запись радиометки на окончательном этапе производства продукта и т.д.), экспортный процесс (например, выбор определенным образом отмеченного продукта, выбор упакованного определенным образом отмеченного продукта, отгрузка выбранного определенным образом отмеченного продукта, прием определенным образом отмеченного продукта и т.д.), связанный с определенным видом деятельности процесс, общая операция..., но которые не ограничены ими.
В соответствии с еще одним аспектом данного изобретения компонент модели может включать в себя компонент объектной модели (ОМ), который создает объектную модель и/или прикладной программный интерфейс (API) для облегчения использования модели, которая основана на данной структуре. Компонент модели может вызывать объектную модель, которая может быть OM процесса РЧИД, OM выполнения процесса РЧИД, OM диспетчера сервера, OM обнаружения, OM хранилища и OM авторизации, но которая не ограничена ими. Следует признать, что компонент модели может охватывать по меньшей мере одно из: управления устройствами, управления средствами доступа, управления хранилищами, контроля работоспособности, проектирования процесса, использования процесса и его выполнения. Созданная OM может использоваться для облегчения создания и/или выполнения процесса РЧИД во время проектирования и во время выполнения соответственно.
В соответствии с еще одним аспектом данного изобретения способ обеспечивает реализацию структуры для предоставления возможности создания процесса РЧИД во время проектирования и выполнения процесса РЧИД во время выполнения. Таким образом, реализация, создание и выполнение процесса РЧИД могут воплощаться, используя данную модель. Дополнительно, в соответствии с данным изобретением используют способ, который облегчает создание, использование и управление логическим процессом РЧИД, а также физическими устройствами единообразным способом. Кроме того, с помощью данного приложения обеспечивают способ и/или систему для осуществления всего жизненного цикла процесса РЧИД.
Последующее описание и прилагаемые чертежи подробно формулируют конкретные иллюстративные аспекты изобретения. Однако эти аспекты показывают только некоторые из различных способов, в которых могут использоваться принципы данного изобретения, и данное изобретение должно включать в себя все такие аспекты и их эквиваленты. Другие преимущества и новые особенности изобретения будут очевидны из последующего подробного описания изобретения при его рассмотрении вместе с чертежами.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 показывает структурную схему примерной системы, которая облегчает использование модели для создания и/или выполнения приложения РЧИД.
Фиг. 2 показывает структурную схему примерной системы, которая облегчает использование модели для осуществления процесса РЧИД.
Фиг. 3 показывает структурную схему примерной системы, которая облегчает использование логического источника.
Фиг. 4 показывает структурную схему примерной системы, которая облегчает разработку и создание процесса РЧИД.
Фиг. 5 показывает структурную схему примерной системы, которая облегчает использование объектной модели для создания приложения РЧИД.
Фиг. 6 показывает структурную схему примерной системы, которая облегчает использование модели, которая использует интерфейс, сервис API, исключение и безопасность.
Фиг. 7 показывает структурную схему примерной системы, которая облегчает использование модели для создания и использования процесса РЧИД.
Фиг. 8 показывает структурную схему примерной системы, которая облегчает использование модели во время проектирования.
Фиг. 9 показывает структурную схему примерной системы, которая облегчает использование модели во время выполнения.
Фиг. 10 показывает структурную схему примерной системы, которая облегчает осуществление иерархической структуры классов, основанных на модели, для создания приложения РЧИД.
Фиг. 11 показывает структурную схему примерной системы, которая облегчает осуществление иерархической структуры классов, основанных на модели, для создания приложения РЧИД.
Фиг. 12 показывает примерную последовательность операций для использования структуры модели для разработки и создания процесса РЧИД.
Фиг. 13 показывает примерную последовательность операций для создания процесса РЧИД.
Фиг. 14 показывает примерную сетевую конфигурацию, в которой могут использоваться новые аспекты данного изобретения.
Фиг. 15 показывает примерную конфигурацию, которая может использоваться в соответствии с данным изобретением.
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
В данной заявке термины «компонент», «система», «структура», «объектная модель», «модель» и т.п. относятся к связанному с компьютером объекту, или к аппаратным средствам, или к программному обеспечению (например, при выполнении), и/или к аппаратно-программному обеспечению. Например, компонент может быть процессом, выполняющимся в процессоре, процессором, задачей, исполняемым файлом, программой и/или компьютером. Для иллюстрации, и приложение, выполняющееся на сервере, и сервер могут быть компонентом. Один или большее количество компонентов могут находиться в пределах процесса, и компонент может быть локализован на одном компьютере и/или распределен между двумя или большим количеством компьютеров.
Данное изобретение описано со ссылкой на чертежи, на которых одинаковые обозначения используются для ссылки к подобным элементам по всему документу. В последующем описании в целях объяснения многочисленные конкретные подробности сформулированы для обеспечения полного понимания данного изобретения. Однако очевидно, что данное изобретение может воплощаться без этих конкретных подробностей. В других случаях известные структуры и устройства показаны в форме структурной схемы для облегчения описания данного изобретения.
Теперь переходя к фигурам, фиг. 1 показывает систему 100, которая облегчает использование модели, основываясь по меньшей мере на структуре, которая может использоваться для создания приложения РЧИД. Компонент 102 приемника может принимать данные и передавать эти данные компоненту 104 модели, который может создавать модель 106, основываясь по меньшей мере частично на этих данных. Модель 106 может использоваться для облегчения создания приложения РЧИД. Компонент 102 приемника может получать данные, такие как внешние вводимые данные (например, данные, вводимые конечным пользователем, данные, вводимые разработчиком приложения, и т.д.), относящиеся к устройству данные (например, данные антенн, данные конфигурации, идентификацию, адрес, версию...), относящиеся к средству доступа данные, данные радиометки, совокупность устройств, политику фильтрации, политику оповещения, логический источник (причем логический источник может содержать, например, совокупность(и) устройств, дополнительные политики фильтрации и/или оповещения и/или дополнительный обработчик событий), обработчик событий, событие..., но не ограничены ими. Хотя изображенный компонент 102 приемника показан как отдельный компонент, следует признать, что компонент 102 приемника можно внедрять в компонент 104 модели, и такой пример (даже когда его внедряют в другой компонент или в автономный компонент) не должен рассматриваться в качестве ограничения.
Модель 106 может использоваться для создания приложения РЧИД, которое обеспечивает общие операции и/или определенные для вида деятельности сценарии. Например, различные приложения РЧИД могут создаваться, основываясь по меньшей мере на модели 106, такие как процесс производства (например, запись радиометки на окончательном этапе производства продукта и т.д.), экспортный процесс (например, выбор определенным образом помеченного продукта, выбор упакованного определенным образом помеченного продукта, отгрузка выбранного определенным образом помеченного продукта, прием определенным образом помеченного продукта и т.д.), связанный с определенным видом деятельности процесс..., но не ограничены ими. Следует признать, что компонент 104 модели может создавать множество приложений РЧИД, имеющих различные характеристики и/или спецификации, относящиеся к принятым данным. Кроме того, компонент 104 модели может создавать приложения РЧИД поверх OM (например, использовать OM, которая раскрыта с помощью данной структуры) для удовлетворения их функциональных возможностей.
Кроме того, компонент 104 модели может создавать модель 106 так, чтобы существовала по меньшей мере одна структура, которую можно использовать для создания по меньшей мере одного приложения РЧИД. Следует признать, что структура может включать в себя объект (например, устройство, логический источник (причем логический источник может содержать, например, совокупность устройств, дополнительные политики фильтрации и/или оповещения и/или дополнительный обработчик событий), политику фильтрации, политику оповещения, обработчик событий, средство слежения, обработчик записи, объект процесса РЧИД, хранилище и т.д.), класс структуры, иерархическую структуру по меньшей мере одного класса, интерфейс, исключения, компонент архитектуры, схемы, объектную модель, прикладной программный интерфейс (API)..., но не ограничена ими. Например, компонент 102 приемника может принимать данные, относящиеся по меньшей мере к одному устройству. Это устройство может быть считывающим устройством РЧИД, записывающим устройством РЧИД, устройством запуска РЧИД, приемником РЧИД, датчиком, событием реального времени, сигналом РЧИД... Другими словами, устройство может быть любым соответствующим компонентом, способным принимать события реального времени, причем устройство не обязательно должно быть относящимся к РЧИД объектом. Компонент 102 приемника может обеспечивать данные к компоненту 104 модели. Компонент 104 модели может генерировать модель 106, основываясь по меньшей мере частично на принятых данных. Следует признать, что модель 106 может использоваться для создания по меньшей мере одного процесса РЧИД, который может обеспечивать общую операцию и/или определенный для вида деятельности сценарий вместе по меньшей мере с одним устройством. Другими словами, компонент 104 модели создает модель 106, основываясь по меньшей мере частично на информации устройства. В другом примере приложение РЧИД может быть приложением процесса производства. Устройство, такое как считывающее устройство/записывающее устройство РЧИД, может записывать радиометку на поддоне товаров (например, готовом для отправки потребителям). Используя модель 106, приложение РЧИД может записывать радиометку на поддоне при, например, обнаружении события считывания радиометки, сигнале внешнего события и т.д. Следует признать и понять, что структура может обеспечивать логическое планирование обработки, которая может представлять логический процесс, причем логический процесс можно связывать с физическим устройством во время выполнения для обеспечения полного разделения логической модели и физической модели. Другими словами, разработчик и/или пользователь может записать однажды и использовать где угодно.
Кроме того, компонент 104 модели может использовать конвейер обработки событий, причем конвейерное событие может использовать узлы обработки. Узлы обработки конвейерного события могут быть по меньшей мере одним из фильтрации (например, недопустимой радиометки, дубликата радиометки, удаленной радиометки и т.д.), оповещения (например, обнаружение воровства, пустой радиометки и т.д.) и обработчика событий (например, внутреннее перемещение, относящееся к определенному виду деятельности событие и т.д.). Событие может обогащаться и/или заполняться данными, когда оно продвигается по конвейеру. Например, информацию от источника могут принимать с помощью средства правил (СП) (не показано), причем СП может выполнять политику фильтрации и/или политику оповещения. СП может затем передавать источник к N компонентам (например, EventHandler 1 (обработчику событий 1), EventHandler 2 (обработчику событий 2), ... EventHandler N (обработчику событий N)), где N - целое число, которое больше 1. Последний компонент в обрабатывающем события конвейере может обеспечивать выходную информацию, которую заполняют и/или обогащают.
Следует признать, что компонент 104 модели может быть моделью, которая используется в течение всего жизненного цикла процесса РЧИД. Сначала создают логический источник по меньшей мере с помощью одного из: совокупности устройств, политики событий и обработчика событий. Затем может воплощаться заказной компонент, такой как политика и/или обработчик событий. Затем логический источник(и) может объединяться вместе со средством слежения и/или опциями безопасности для создания процесса. Устройство(а) может конфигурироваться, совокупности считывающих устройств могут связываться в данном процессе с физическим устройством и затем использоваться. Информация может извлекаться из выполняющегося процесса/процессов, управляемого устройства и/или процесса. Кроме того, процессы могут реконфигурироваться с помощью динамического изменения политики (например, во время выполнения процесса).
Фиг. 2 показывает систему 200, которая облегчает использование модели для создания и выполнения приложения РЧИД. Компонент 202 модели может использоваться для создания модели (не показана), которая облегчает формирование приложения РЧИД для обеспечения общей операции и/или определенного для вида деятельности сценария. Компонент 202 модели может включать в себя по меньшей мере один объект, который облегчает создание и выполнение приложения/процесса РЧИД. Следует признать, что компонент 202 модели может по существу быть подобен компоненту 102 модели, который показан на фиг. 1. Кроме того, компонент приемника (не показан) может принимать данные, которые могут помочь в создании приложения/процесса РЧИД. Хотя он и не показан, компонент приемника может быть внедренным (встроенным) компонентом в пределах компонента 202 модели, автономным модулем и/или их комбинацией, но не ограничен ими.
Компонент 202 модели может включать в себя компонент 204 устройства. Компонент 204 устройства может быть считывающим устройством РЧИД, записывающим устройством РЧИД, передатчиком РЧИД, приемником РЧИД, принтером РЧИД, ретранслятором, приемопередатчиком..., но не ограничен ими. Следует признать, что компонент 202 модели может включать в себя множество компонентов 204 устройства, но для краткости показан только один. Компонент 204 устройства может осуществлять связь с радиометкой через радиоволны и/или передавать информацию в цифровой форме к хосту. Кроме того, компонент 204 устройства может записывать и/или программировать по меньшей мере одну радиометку (например, если радиометка совместима с такой функцией). Компонент 204 устройства могут обнаруживать и/или конфигурировать для выполнения функции совместно с приложением/процессом РЧИД. Дополнительно, компонент 204 устройства конфигурируют с помощью одного из: установки идентификации устройства, присваивания имени для ссылки, считывания запускающих событий и/или других определенных для выполнения параметров, записи запускающих событий и/или других определенных для выполнения параметров...
В соответствии с одним из аспектов данного изобретения компонент 204 устройства может быть принтером РЧИД, который получает команду от хоста для выполнения радиометкой. Напротив, типичные методики получают информацию от радиометки и передают информацию к хосту. Например, принтер может получать идентификацию радиометки, а также штриховой код и печатать его на радиометке.
Кроме того, может существовать выборка компонентов 204 устройства, которые связаны друг с другом, основываясь по меньшей мере на физическом расположении. Выборка компонентов 204 устройства, связанных друг с другом, может формировать совокупность логических устройств и/или может определяться как логические устройства записи. Следует признать, что обычная операция (например, запуск считывания, запуск записи, запуск передачи и т.д.) может определяться для одного или большего количества компонентов 204 устройства. Например, компонентами устройства могут быть считывающие устройства РЧИД на двери A склада, на двери B склада и на двери C склада. Считывающие устройства РЧИД (например, компоненты 204 устройства) могут объединяться вместе как совокупность устройств, которую могут называть «совокупностью устройств отгрузки».
Компонент 202 модели может дополнительно включать в себя компонент 206 логического источника, который объединяет по меньшей мере одно из: совокупности устройств (например, совокупность устройств содержит один или большее количество компонентов 204 устройства), фильтрации, оповещения, обработчика событий (обсуждаются ниже) и дополнительного логического источника(ов). Компонент 206 логического источника может представлять данные радиометки и/или то, как данные радиометки обрабатывают в процессе РЧИД до передачи к приемнику (определен ниже). Следует признать, что основная форма компонента 206 логического источника - совокупность устройств, причем всю считываемую/записываемую информацию из совокупности устройств непосредственно посылают к приемнику.
Компонент 206 логического источника может использовать набор семантик выполнения, используя по меньшей мере одно из следующего: совокупность устройств и/или логический источник для создания события считывания радиометки и/или событие базовой системы; дополнительный фильтр, который может использовать событие считывания-записи радиометки и/или отфильтровывать нежелательную информацию считывания-записи; дополнительное оповещение, которое может потреблять событие считывания-записи радиометки и/или событие для оценки оповещения и выполнения одного или большего количества действий; дополнительный обработчик событий, который может использовать событие считывания-записи радиометки и обрабатывать по существу подобное событие считывания радиометки. Следует признать, что фильтрацию, оповещение и обработку событий выполняют в порядке, определяемом с помощью вводимой информации (например, через пользователя, разработчика приложения и т.д.) процесса РЧИД. Например, пользователь может определять следующий порядок и/или описание компонентов в пределах компонента 206 логического источника, где знак «->» имеет значение «определяют с помощью»: alertpolicy1 (политика оповещения 1) -> посылают администратору сообщение (например, сообщение службы коротких сообщений (SMS)), если радиометку считывают между X и Y, где X связан с датой и/или временем и Y связан с последующей относительно X датой и/или временем; filterpolicy1 (политика фильтрации 1) -> удаляют считанные дубликаты радиометок, используя методику устранения дублирования; eventhandler1 (обработчик событий 1) -> если элемент соответствует условию (например, пальто, которое является серым), то обогащают данные через запись радиометки; filterpolicy2 (политика фильтрации 2) -> игнорируют пальто, которые стоят меньше 500 $ (например, этот фильтр основан на данных, которые были добавлены с помощью eventhandler1 (обработчика событий 1)); alertpolicy2 (политика оповещения 2) -> проверяют запасы новых пальто и оповещают администратора об уровне запасов (например, большие или маленькие запасы); и т.д. Из предыдущего примера следует, что оповещение, фильтрацию и обработку событий выполняют в порядке, определяемом с помощью вводимой информации и/или пользователя. Следует признать, что выходную информацию последнего компонента в обработчике событий определяют как выходную информацию компонентов 206 логического источника.
Обращаясь кратко к фиг. 3, на ней показан логический источник 302, который может использоваться для создания модели, которая используется для создания приложения РЧИД. В частности, логический источник 302 считывает и/или записывает поток радиометок. Поток считываемой информации может обрабатываться, что приводит к другому потоку считываемой информации. Следует признать, что логический источник 302 может рекурсивно содержать по меньшей мере один другой логический источник. Группу событий и/или считываемую информацию 304 радиометки можно посылать к средству 306 правил, где могут выполняться дополнительные фильтрация и/или оповещения. Группой событий и/или считываемой информацией 304 радиометки могут быть N логических источников, где N больше или равно одному, и/или М совокупностей устройств, где М больше или равно одному. После средства 306 правил группу событий и/или считанную информацию 304 радиометки можно передавать к компоненту 308. Может существовать N компонентов 308, где N больше или равно одному. Кроме того, компонент 308 может быть обработчиком событий.
Возвращаясь к фиг. 2, компонент 202 модели может включать в себя компонент 208 политики, который может обеспечивать дополнительную политику фильтрации и/или дополнительную политику оповещения. Фильтр в общем случае является логической конструкцией, которую выполняют с входящими потоками необработанных данных, и она может определяться для компонента 206 логического источника через ряд логических правил (например, для входящего события считывания радиометки), которые могут группироваться в политику. Политика фильтрации предоставляет возможность пропускать список допустимых радиометок, причем правила в политике - ограничения, которые не нарушают. При нарушении радиометку (например, которую называют дефектной радиометкой), которая нарушила ограничение, удаляют из списка радиометок. Результатом является список допустимых радиометок, которые разрешены политикой фильтрации. Например, поддон/коробка/элемент может быть фильтром, который предоставляет возможность устройству считывать радиометки определенного типа и/или удалять считанные радиометки определенного типа, которые не должны обрабатываться.
Оповещение - другой механизм для выражения правил, которые используются для оценки потоков данных. Оповещения могут выражаться как ряд логических правил, сгруппированных в политику, которые оценивают многочисленные события, которые могут включать в себя событие считывания-записи радиометки. Действия, связанные с этими правилами, могут быть одним или большим количеством определяемых пользователем видов оповещения. Например, оповещение может быть установлено так, что если считывание радиометки зарегистрировано между 6 вечера и 6 утра с помощью компонента 206 логического источника, то активизируют сигнал тревоги, и может оповещаться одно из: супервизора, агентства безопасности и т.д. Кроме того, оповещение может быть по меньшей мере одним из: подачи звукового сигнала, передачи текстового сообщения, блокировки здания, передачи сообщения электронной почты, световой сигнализации, выполнения видеосъемки, перемещения... Следует признать, что модель, созданная с помощью компонентов 202 модели, предоставляет пользователю возможность осуществления фильтрации и/или оповещения системы через методику «включай и работай». Например, система может использовать средство правил (СП), которое может оценивать правила/условия и/или принимать меры при событии, основываясь на оценке.
Компонент 202 модели может дополнительно включать в себя компонент 210 обработчика событий для управления событием от компонента 206 логического источника. Компонент 210 обработчика событий может использоваться по меньшей мере для одного из следующего: для применения логики в реальном времени для событий считывания радиометки и/или обогащения события определенным образом; для использования события приложением более высокого уровня; для обратной записи на радиометке, когда обнаружено событие считывания пустой радиометки и т.д. Компонент 210 обработчика событий может определять действия, когда происходят исключения, такие как ошибка при считывании и ошибка при записи, но которые не ограничены ими. Следует понимать, что исключения могут передаваться от компонента 206 логического источника во время выполнения (например, при управлении определенным для процесса событием).
В соответствии с одним из аспектов данного изобретения модель, созданная компонентом 202 модели, позволяет определять и использовать заказное воплощение компонента 210 обработчика событий. Например, если средство правил (СП) не позволяет выполнять фильтрацию и/или оповещение, то компонент 210 обработчика событий может обеспечивать такие функциональные возможности. Кроме того, компонент обработчика событий 210 может быть осуществлен как «всеобъемлющий» компонент, который может использоваться по существу подобно фильтрации и/или оповещению. Все еще обращаясь к фиг. 2, компонент 202 модели может включать в себя компонент 212 обработчика записи, который дает возможность процессу РЧИД посылать команды компоненту 204 устройства, основываясь по меньшей мере на внешней вводимой информации и/или событиях от компонентов 206 логического источника, причем событием являются событие считывания радиометки, событие записи радиометки и событие проверки работоспособности считывающего устройства. Обработчик событий может также использоваться для генерации относящегося к торговле события (например, внутреннее перемещение, событие доставки, основанное на логике заказов/оценке входящих потоков событий, а также на внешних источниках данных).
Компонент 202 модели может включать в себя компонент 214 процесса РЧИД, который является uber и/или объектом высокого уровня, который обеспечивает модель имеющей значение элементом выполнения. Например, компонент 214 процесса РЧИД может быть процессом доставки, который представляет многочисленные устройства в различных дверях склада, которые работают вместе для выполнения считывания радиометок, фильтрации, обогащения считываемой информации, оценки оповещения и хранения данных в приемнике для извлечения/обработки приложения хоста. В другом примере компоненты 214 процесса РЧИД могут выполнять процесс производства, причем устройства конфигурируют для считывания, а также для записи в зависимости от расположения. Кроме того, дополнительные функции, такие как фильтрация, обогащение и т.д., могут осуществляться в данном расположении. В еще одном примере компонент 214 процесса РЧИД может осуществлять запись для процесса радиометки, когда компонент 212 обработчика записи записывает радиометку в реальном времени, основываясь по меньшей мере на вводимой информации. Процесс записи может также проверять, закончилась ли запись успешно, с помощью считывания и передачи данных обратно к хосту.
Компонент 202 модели может включать в себя хранилище 216 данных (запоминающее устройство), которое хранит и извлекает объект структуры (например, устройство, конфигурацию устройства, процесс РЧИД, отображение логического объекта в процессе РЧИД на физическое устройство). Следует признать, что хранилище 216 данных может быть съемным для пользователя. Кроме того, хранилище 216 данных может быть, например, или энергозависимым запоминающим устройством, или энергонезависимым запоминающим устройством или может включать в себя и энергозависимое, и энергонезависимое запоминающее устройство. Для иллюстрации, а не в качестве ограничения, энергонезависимое запоминающее устройство может включать в себя постоянное запоминающее устройство (ПЗУ), программируемое постоянное запоминающее устройство (ППЗУ), электрически программируемое постоянное запоминающее устройство (ЭППЗУ), электрически стираемое программируемое постоянное запоминающее устройство (ЭСППЗУ) или флеш-память. Энергозависимое запоминающее устройство может включать в себя оперативную память (ОП), которая работает как внешняя кэш-память. Для иллюстрации, а не в качестве ограничения, ОП доступна во многих формах, таких как статическая ОП (SRAM), динамическая ОП (DRAM), синхронная динамическая ОП (SDRAM), синхронная динамическая ОП с двойной скоростью передачи данных (DDR SDRAM), расширенная синхронная динамическая ОП (ESDRAM), динамическая ОП консорциума Synchlink (SLDRAM), прямая ОП корпорации Rambus (RDRAM), прямая динамическая ОП корпорации Rambus (DRDRAM) и динамическая ОП корпорации Rambus (RDRAM). Хранилище 216 данных в данных системах и способах содержит, без ограничения, эти и любые другие соответствующие виды памяти. Кроме того, следует признать, что хранилище 216 данных может быть сервером и/или базой данных. В частности, хранилище 216 данных может быть компьютером, который предоставляет компьютерам клиента очень эффективный доступ к файлам базы данных.
Фиг. 4 показывает систему 400, которая облегчает создание и выполнение процесса РЧИД. Может использоваться компонент 402 модели, который разрабатывает модель программирования (не показана), которая предоставляет возможность создания и/или выполнения процесса РЧИД. Следует признать, что модель программирования может быть моделью программирования на основе событий. Например, модель программирования на основе событий может создавать по меньшей мере один логический процесс РЧИД, который может иметь ядро описательных характеристик конвейера обработки событий (обсуждаемого выше). Модель программирования на основе событий может использовать поддержку проектирования для взаимодействия с логическим устройством. Кроме того, модель программирования может поддерживать логику работы предприятия через правила, такие как правило фильтрации, правило оповещения, правило преобразований..., но которые не ограничены ими. Дополнительно, модель программирования на основе событий может обеспечивать описательную характеристику конечных точек процесса и/или поддержку использования для связи и взаимодействия с физическим устройством. Компонент 402 модели может быть по существу подобен компонентам модели 202 на фиг. 2 и 104 на фиг. 1, причем предварительно описанные функциональные возможности предыдущих компонентов могут воплощаться всеми компонентам 402 модели. Следует признать, что компонент 402 модели может использоваться для создания модели программирования для облегчения формирования приложения/процесса РЧИД, связанного с общей операцией и/или определенным для вида деятельности сценарием.
Компонент 402 модели может включать в себя компонент 404 настройки, который настраивает и/или конфигурирует процесс РЧИД и/или настраивает и/или конфигурирует определение процесса РЧИД. Компонент 404 настройки инициирует устройство, которое может быть устройством РЧИД, считывающим устройством РЧИД, устройством записи РЧИД..., но не ограничено ими. Компонент 404 настройки настраивает устройство с помощью обнаружения по меньшей мере одного устройства. Следует признать, что такое обнаружение может быть автоматическим обнаружением, ручным обнаружением (например, используя файл конфигурации), их комбинацией..., но не ограничено ими. Кроме того, обнаружение устройств, используя компонент 404 настройки, может быть независимым от разработки процесса РЧИД. В соответствии с одним из аспектов данного изобретения компонент 404 настройки может конфигурировать пользовательские свойства для устройства. Другими словами, если свойства по умолчанию связаны с устройством, то такие свойства не применяют, пока устройство не отображают на совокупность устройств.
Компонент 404 настройки может создавать совокупность логических устройств и/или логическое устройство записи в контексте процесса РЧИД. Совокупность устройств может группироваться в логический источник, который может иметь дополнительные конструкции, такие как фильтр, оповещение, обработчик событий..., но которые не ограничены ими. Следует признать, что дополнительные конструкции могут определяться и/или конфигурироваться для логического источника. Процесс РЧИД затем создают с помощью компонента 404 настройки, связывая устройства и логический источник верхнего уровня с такими устройствами. Дополнительно могут определяться отслеживающий уровень и/или уровень опции/регистрации отслеживания выполнения процесса.
Компонент 402 модели может также включать в себя компонент 406 использования/выполнения, который использует и/или обслуживает по меньшей мере один процесс РЧИД. Следует признать, что использование может включать в себя считывание данных радиометки и/или запись данных радиометки. Компонент 406 использования/выполнения использует процесс РЧИД, используя определяемое пользователем отображение логического объекта в процессе на физический объект в сети. Логический объект может быть совокупностью устройств, логическим устройством записи, совокупностью устройств записи, совокупностью считывающих устройств..., но не ограничен ими. Физический объект в сети может быть устройством, считывающим устройством, устройством записи, устройством РЧИД, принтером..., но не ограничен ими.
В соответствии с одним из аспектов данного изобретения отображение может быть отображением совокупности логических устройств в пределах процесса РЧИД на физическое считывающее устройство. Например, отображение может выполняться на одно из следующего: на определенные адреса интернет-протокола (IP) считывающего устройства (например, 168.192.38.21, 168.192.38.22, 168.192.38.23); на совокупность с подстановочными знаками (например, 168.192.38. *), где * является подстановочным знаком, который определяет любой подходящий соответствующий символ; на комбинацию определенного IP-адреса и подстановочных знаков (например, 168.192.38.21, 168.38.22, 168.192.39. *). Следует признать, что воплощение совокупности с подстановочными знаками может быть более универсальным при расширении физических устройств. Например, используя подстановочные знаки, пользователь может назначить IP-адрес в пределах диапазона совокупности с подстановочными знаками, причем адрес отображения совместим с существующим процессом РЧИД. Если используются конкретные IP-адреса, то такой новый назначенный IP-адрес необходимо внедрять в отображение.
В соответствии с другим аспектом изобретения отображение может быть отображением логического устройства записи в пределах процесса РЧИД на физическое устройство записи. Следует понимать, что одно логическое устройство записи можно отображать на одно физическое устройство записи. Устройства, которые не имеют пользовательских свойств, конфигурируют в соответствии с логическим объектом (например, в соответствии с совокупностью устройств и/или логическим устройством записи). Для устройства, которое имеет пользовательское свойство, применяют конфигурацию по умолчанию, которая сопровождается пользовательской конфигурацией.
Компонент 406 использования/выполнения может дополнительно выполнять процесс РЧИД. Процесс РЧИД может включать в себя считывающие устройства, сконфигурированные для считывания (например, сбор и оценка/обогащение данных; хранение данных и обработка событий); и записывающие устройства (например, запись информации радиометки и проверка). Выполнение процесса РЧИД с помощью компонента 406 использования/выполнения влечет за собой обработку информации от совокупности устройств (например, от устройств, которые принадлежат совокупности устройств). Обработка может быть, например, передачей события (например, актуальных радиометок РЧИД или предыдущего/последующего события считывающего устройства...) через различные и/или дополнительные компоненты (например, фильтр, оповещение, обработчик событий...) в логическом источнике. Следует понимать, что обработчик событий может обогащать и/или преобразовывать входящие данные с помощью дополнительных полей/пользовательских полей через поиск во внешнем источнике и генерацию дополнительного события(й) в реальном времени. Обработчик событий могут также конфигурировать для записи информации радиометки, когда радиометку обнаруживают. Кроме того, обработанные события сохраняют в приемнике. Следует признать, что выполнение процесса РЧИД может повлечь за собой передачу компоненту записывающего устройства (не показан) команды для записи некоторых данных радиометки, независимо от события считывания радиометки. С помощью разделения создания и использования процесса РЧИД компонент 402 модели может создавать модель программирования, которая предоставляет возможность пользователю/предприятию создавать и использовать процессы РЧИД модульным и гибким способом.
Кроме того, компонент 408 обслуживания обеспечивает управление по меньшей мере одним процессом РЧИД. Управление процессом РЧИД может сосредотачиваться на процессах, определенных при выполнении процесса РЧИД (который обсуждается выше) в течение всего периода жизни такого процесса. Процессы РЧИД могут запускаться и останавливаться, используя менеджер процесса (не показан). В одном из примеров период жизни процесса РЧИД может зависеть от запуска и/или остановки сервиса операционной системы. Если процесс РЧИД выполняется, то он может быть остановлен, изменен и перезапущен, когда сервер работает.
Фиг. 5 показывает систему 500, которая облегчает использование объектной модели для создания приложения РЧИД. Компонент 502 модели может использоваться для создания и/или выполнения приложения РЧИД, используя объектную модель и/или прикладной программный интерфейс (API). Следует признать, что компонент 502 модели может быть по существу подобен компонентам модели 402, 202 и 104 на фиг. 4, 2 и 1 соответственно. Кроме того, компонент 502 модели может создавать объектную модель и/или API относительно процесса РЧИД для обеспечения общей операции и/или определенного для вида деятельности сценария.
Компонент 502 модели может включать в себя компонент 504 объектной модели (OM) процесса РЧИД, который предоставляет пользователю, конечному пользователю и/или инструментальному средству возможность создавать и/или сохранять процесс РЧИД. Процесс РЧИД может включать в себя следующее: по меньшей мере один логический источник (например, логический источник - логическое соединение и/или группировка устройств); средство слежения, которое может использоваться для отслеживания во время выполнения; обработчик записи для взаимодействия (например, с помощи передачи к устройству вводимых пользователем данных и/или команд пользователя) с устройством, которое имеет возможности записи; и т.д., но не ограничен ими.
Компонент 502 модели может включать в себя компонент 506 OM обнаружения, который получает метаданные устройства, независимо от типа устройства. Кроме того, компонент 506 OM обнаружения может получать средства доступа в форме свойств метаданных. Следует признать, что компонент 506 OM обнаружения может предоставлять пользователю возможность проверки, допустимо ли устройство (например, доступно для соединения, отвечает на опрос, может осуществлять связь и т.д.). В общем случае компонент 506 OM обнаружения использует интерфейс веб-службы обработчика устройства. Обработчик устройства может предоставлять пользователю возможность принимать свойства, поддерживаемые конкретным устройством, причем данные свойства являются допустимыми свойствами, которые могут находиться в профиле свойств устройства. Также следует понимать, что обработчик устройства может проверять, допустимо ли данное устройство.
Компонент 508 выполнения процесса РЧИД может предоставлять возможность конечному пользователю и/или инструментальному средству использовать процесс РЧИД. Компонент 508 OM выполнения процесса РЧИД может иметь интерфейс веб-службы, такой как менеджер процесса, но не ограничен им. Менеджер процесса может управлять и/или контролировать множество процессов РЧИД, причем он управляет механизмом процесса, связанным с каждым процессом РЧИД. Управление процессами РЧИД может включать в себя запуск и/или остановку процесса РЧИД, но не ограничено ими. Кроме того, порядок и/или последовательность выполнения процесса РЧИД могут определяться компонентом 508 OM выполнения процесса РЧИД.
Компонент 502 модели может дополнительно включать в себя компонент 510 OM хранилища, который предоставляет пользователю единообразный набор API для хранения, извлечения и удаления объекта структуры РЧИД (например, процесса РЧИД, устройства...). Единообразный набор API может предоставлять возможность инструментальному средству конечного пользователя получать доступ, хранить и/или изменять объект структуры РЧИД (например, процесс РЧИД, записывающее устройство, считывающее устройство, принтер...) из постоянного хранилища единообразным и/или непротиворечивым способом. Следует признать, что API применяют через интерфейс веб-службы хранилища. В соответствии с одним из аспектов данного изобретения сервер может осуществляться с помощью компонента 510 OM хранилища, который может содержать процесс РЧИД и устройство в соответствующей таблице(ах) в пределах базы данных РЧИД.
Компонент 502 модели может включать в себя компонент 512 OM диспетчера сервера, который может управлять сервером РЧИД. Компонент 512 OM диспетчера сервера может предоставлять возможность внешнему приложению конфигурировать и/или управлять (например, настраивать) поведение сервера РЧИД. Другими словами, компонент 512 OM диспетчера сервера предоставляет возможность устанавливать свойства сервера РЧИД. Следует признать, что компонент 512 OM диспетчера сервера может управлять по меньшей мере одним средством доступа к устройству, причем средство доступа к устройству может быть по существу подобно драйверу для устройства РЧИД. Средство доступа к устройству может обеспечивать единообразный интерфейс с устройствами так, что сервер РЧИД может взаимодействовать со средством доступа к устройству вместо конкретных устройств. Компонент 512 OM диспетчера сервера может включать в себя различные интерфейсы веб-службы, такие как диспетчер сервера и менеджер средства доступа, но которые не ограничены ими.
Компонент 514 OM авторизации может использоваться компонентом 502 модели для предоставления доступа по меньшей мере к одному из процесса РЧИД и/или объекта устройства. Доступ к процессу РЧИД и/или объекту устройства может основываться по меньшей мере на списке группы авторизации, связанной с конкретным процессом РЧИД. Группа авторизации может включать в себя определяемое пользователем название группы авторизации, флажок, который определяет уровень доступа считывание-выполнение/изменение-удаление/ и то, и другое, и список пользователей/групп. В общем случае группа авторизации может быть поименованным объектом, который определяет хранящийся список пользователей РЧИД и уровень доступа к продукту для пользователей, когда продукт связан с процессом РЧИД и устройством. Группы авторизации обычно могут конфигурироваться, основываясь на ролях пользователей (и/или на соответствующих точках зрения на различные продукты) в организации, таких как заведующий складом, складской служащий, DC диспетчер, служащий хранилища и т.д., но которые не ограничены ими.
Например, если авторизация активизирована, когда экземпляр процесса РЧИД или устройства создается в хранилище, только пользователь, который его создал, имеет доступ к этому продукту и для считывания/выполнения, и для изменения/удаления. Компонент 514 OM авторизации может обеспечивать API для связи списка групп авторизации с процессом РЧИД или устройством, которое может отменять полномочия по умолчанию для данного продукта. Следует признать, что независимо от настройки авторизации для продукта владелец и/или пользователи с полномочиями администратора могут иметь неограниченный доступ к продукту. Кроме того, группа авторизации может устанавливать связь с процессом РЧИД на уровне хранилища (например, отдельно от способа поддержки сохранения группы авторизации на уровне хранилища, может также существовать соответствующий API для связи таких групп с процессом РЧИД).
Фиг. 6 показывает систему 600, которая облегчает использование модели, которая может использоваться для создания и/или выполнения процесса РЧИД. Компонент 602 модели может использоваться для создания модели (не показана), причем пользователь и/или конечный пользователь могут создавать процесс РЧИД для общей операции и/или для определенного для вида деятельности сценария, основываясь на такой модели. Следует признать и/или понять, что компонент 602 модели может быть по существу подобен компоненту модели 502 на фиг. 5, 402 на фиг. 4, 202 на фиг. 2 и 104 на фиг. 1.
Компонент 602 модели может включать в себя компонент 604 интерфейса обработчика событий/записи, который может обрабатывать события из логического источника и/или посылать команду устройствам, основываясь на логическом источнике. В частности, компонент 604 интерфейса обработчика событий/записи может использовать по меньшей мере один интерфейс для обработки события из логического источника и/или передачи команды, основываясь на логическом источнике. Например, интерфейс, указанный с помощью «IEventHandler», может реализовываться с помощью структуры, указанной как «ParameterMetaData» и «ParameterData», используя следующий код:
Следует признать, что «ParameterMetaData» и «ParameterData» могут быть конструкторами, причем «ParameterData» содержит доступные только для считывания свойства. Кроме того, конструктор «ParameterData» может проверять достоверность данных относительно метаданных в «ParameterMetaData». Что касается «IEventHandler», порядок массива данных будет по существу таким же, как порядок, возвращаемый функцией «GetParameterMetaData()». Также следует понимать, что «IEventHandler» может быть интерфейсом, который действует в соответствии со считанной информацией радиометки и/или событием из совокупности устройств.
В частности, приведенный выше код использует «tagReadEvent» в качестве входного параметра. Количество радиометок в списке радиометок может изменяться, чтобы обеспечивать обработку меньшего и/или большего количества радиометок с помощью последующего компонента. Кроме того, массив «GenericEvent[]» (например, событие, которое показывает внутреннее перемещение) обрабатывают по меньшей мере с помощью одного последующего компонента. Основываясь на полученном типе события, его передают к соответствующей функции в последующем компоненте. Например, если «GenericEvent» является «TagReadEvent», то его можно передать к функции «HandleTagReadEvent()» в последующем компоненте.
Класс, который указывают с помощью «EventBase», может использоваться для того, чтобы он содержал методики для доступа к определенным для события данным. Например, следующий код может использоваться в своей совокупности для определения параметров и/или ссылок при реализации интерфейса «IEventHandler» для доступа к определенным для события данным:
Кроме того, компонент интерфейса обработчика событий/записи может использовать следующий код для воплощения интерфейса обработчика записи:
Компонент 602 модели может включать в себя компонент 606 исключения, который обеспечивает по меньшей мере одно из исключения и/или превышения времени ожидания (таймаута) для компонента приложения. Например, исключения и/или превышения времени ожидания могут обрабатываться с помощью вызова способа «Dispose()» в пределах интерфейса «IDisposable» для этого конкретного компонента. Следует признать, что исключения, определяемые с помощью компонентов, воплощающих обсуждаемые выше интерфейсы, должны получаться из «RFIDException». Например, следующий код может использоваться для облегчения обеспечения исключений и/или превышений времени ожидания в связи с процессом РЧИД:
Приведенные выше исключения и/или превышения времени ожидания являются общими для более одного интерфейса, обсуждаемого выше. Кроме того, исключения и/или превышения времена ожидания могут сбрасываться компонентом, который поддерживает по меньшей мере одно из следующего: фильтр (например, IFilter), оповещение (например, IAlert), действие (например, IAction), источник данных радиометки, такой как «ITagDataSource» (например, когда вызывают способ инициализации)...
Кроме того, компонент 602 модели может включать в себя компонент 608 безопасности, который обеспечивает модель обеспечения безопасности. Компонент 608 безопасности может обеспечивать учетную запись пользователя, которая может выполниться в связи с сервисом операционной системы. Учетная запись пользователя может использовать привилегию для доступа по меньшей мере к одному ресурсу, причем ресурс может быть системным реестром, файловой системой, хранилищем, базой данных приемника и т.д., но не ограничен ими. В одном из примеров привилегия, связанная с компонентом 608 безопасности, не позволяет внешнему компоненту (например, обработчику события, обработчику записи, средству правил (СП)...) унаследовать привилегии, связанные с учетной записью пользователя. В этом примере внешнему компоненту могут предоставлять минимальные привилегии для выполнения кода. Например, не будут предоставляться следующие разрешения: разрешение выполнять неуправляемый код; доступ к файловой системе и/или системному реестру; прямой доступ к устройству и т.д. Следует признать и понять, что, если внешний компонент требует специальных привилегий для доступа к ресурсу, привилегии могут быть получены на индивидуальном основании. Например, имя пользователя и/или пароль пользователя могут быть связаны с привилегиями, предоставляющими возможность доступа к таким ресурсам.
Все еще обращаясь к фиг. 6, компонент 602 модели может обеспечивать компонент 610 сервиса API для воплощения определения класса по меньшей мере для одного API в структуре РЧИД, который доступен как веб-служба. Компонент 610 сервиса API может использовать хранилище (например, для хранения объекта устройства, списка объектов устройств, признаков устройств, информации связывания, имен устройств...), обработчик устройства (например, проверяя информацию устройства, которая представляет допустимое устройство), менеджер процесса (например, запуская и/или останавливая процесс и/или рассматриваемый процесс), диспетчер сервера (например, управляя сервером РЧИД и/или устанавливая свойство считывающего устройства), менеджер средства доступа (например, идентифицируя загруженные средства доступа; обеспечивая один тип из поддерживаемых метаданных, профиль свойств по умолчанию, аннулируя профиль по умолчанию, профиль свойств с самыми актуальными установками...), менеджер компонентов (например, возвращая по меньшей мере одно из: списка опубликованных и/или используемых названий политик, списка объединения обработчиков записи; регистрируя по меньшей мере одно из: объединения обработчиков событий, объединения обработчиков записи...) и т.д., но не ограничен ими.
Фиг. 7 показывает систему 700, которая облегчает использование модели, которая может использоваться во время проектирования и/или во время выполнения для создания и/или выполнения процесса/приложения РЧИД. Интерфейс службы доступа к устройству (ИСДУ, DSPI) 704 может обеспечивать единообразное осуществление связи к и/или от физической/технической архитектуры 702. Физическая/техническая архитектура 702 может быть конфигурацией по меньшей мере одного физического устройства, использующего РЧИД и/или радиометку. DSPI 704 может принимать и/или передавать данные к физической/технической архитектуре 702 через протокол устройство-хост. Следует признать, что DSPI 704 может использовать проводные и/или беспроводные сети, такие как локальные сети (ЛС) и глобальные сети (ГС), но которые не ограничены ими. Технология ЛС включает в себя интерфейс передачи данных по оптоволокну (FDDI), распределенный интерфейс проводной передачи данных (CDDI), стандарт Ethernet, стандарт «маркерное кольцо» и т.п. Технология ГС включает в себя каналы связи двухточечного соединения, сети с коммутацией каналов, такие как цифровые сети с предоставлением комплексных услуг (ISDN) и их разновидности, сети с коммутацией пакетов и цифровые абонентские линии (DSL), но не ограничена ими.
Компонент 706 модели времени проектирования может взаимодействовать с DSPI 704 для создания и/или хранения процесса РЧИД, который используется вместе с физической/технической архитектурой 702. Компонент 706 модели времени проектирования может создавать модель программирования и/или структуру, которая может использоваться для создания процесса/приложения РЧИД. Следует признать, что компонент 706 времени проектирования может создавать и/или хранить по меньшей мере один процесс РЧИД, причем процесс РЧИД хранится в компоненте 708 OM хранилища. Компонент 708 OM хранилища может дополнительно использоваться для передачи такого процесса РЧИД, который осуществляют во время выполнения с помощью компонента 710 модели. Во время выполнения компонент 710 модели может выполнить процесс РЧИД, созданный с помощью компонента 706 модели времени проектирования. Кроме того, по существу подобная модель программирования и/или структура может использоваться во время проектирования и/или во время выполнения для создания и выполнения конкретного процесса РЧИД, который должен быть связан с физической/технической архитектурой 702. Как показано, во время выполнения компонент 710 модели может использовать DSPI 704 для передачи и/или приема данных, что позволяет выполнять процесс РЧИД по меньшей мере в одном физическом устройстве в пределах физической/технической архитектуры 702.
Фиг. 8 показывает систему 800, которая облегчает использование модели во время проектирования. Компонент модели времени проектирования 802 может создавать модель, используя описанную архитектуру. Система 800 изображает архитектуру компонентов структуры для процесса РЧИД, который будет создан и/или сохранен, причем по меньшей мере один компонент является по меньшей мере одним из следующего: осуществленный структурой, обеспеченной структурой и/или подключенный - в структуре. В частности, следующее (которые обсуждались выше): компонент 804 логического источника, обработчик 806 событий, политика 808, компонент 810 приемника, устройство 812 и обработчик 814 устройства - могут использоваться для воплощения структуры. Компонент 816 OM определения процесса РЧИД, компонент 818 OM устройства и компонент 820 OM хранилища (все обсуждается выше) могут обеспечиваться с помощью структуры. Однако компонент 822 создания процесса РЧИД может быть подключаемым (сменным) компонентом для данной структуры.
Фиг. 9 показывает систему 900, которая облегчает использование модели во время выполнения. Компонент 902 времени выполнения модели может создавать модель, используя описанную архитектуру. Система 900 показывает компоненты структуры архитектуры для процесса РЧИД, который будет извлекаться и/или выполнятся, причем по меньшей мере один компонент является по меньшей мере одним из следующих: воплощаемый с помощью структуры, обеспечиваемый с помощью структуры и/или подключаемый к структуре. В частности, для воплощения структуры могут использоваться: приемник 904, событие 906, загрузчик 908, механизм кэширования РЧИД 910 и компонент 912 авторизации (которые все обсуждались выше). Компонент 914 создания процесса РЧИД, компонент 916 менеджера процесса и компонент 918 OM хранилища (которые все обсуждались выше) могут обеспечиваться с помощью данной структуры. Однако компонент 920 бизнес-приложения может быть дополнительным подключаемым компонентом в данной структуре.
Фиг. 10 и фиг. 11 показывают зависимость между классами и/или иерархическое представление классов структуры РЧИД. Зависимость между классами и/или иерархическое представление классов структуры РЧИД на фиг. 10 и фиг. 11 могут включать в себя зависимость между классами, которую можно увидеть в приведенной ниже таблице, но не ограничены ею.
Класс
Содержит
RFIDProcess (процесс РЧИД)
1 логический источник1 приемник0... 1 средство слежения0... 1 совокупность групп авторизации
ProcessManager (менеджер процесса)
(запуск/останов) 1.. N процессов РЧИД
Хранилище
0... N процессов РЧИД0... N устройств0... N совокупность групп авторизации
DeviceHandler (обработчик устройства)
Используется для обнаружения и конфигурирования устройств
LogicalSource (логический источник)
0... N логических источников1... N совокупностей логических устройств0... N политик событий0... 1 обработчиков событий0... 1 обработчиков записи
DeviceCollection (совокупность устройств)
От 1 до N устройств
EventPolicy (политика событий)
Интерфейсный класс для фильтров и оповещений
EventHandler (обработчик событий)
Логика обработки событий
WriteHandler (обработчик записи)
1... N списков логических устройств записи
LogicalWriterList (список логических устройств записи)
1... N логических устройств
LogicalWriter (логическое устройство записи)
1 устройство
AuthorizationGroupCollection (совокупность групп авторизации)
0... N групп авторизации
AuthorizationGroup (группа авторизации)
0... N пользователей РЧИД
RFIDUser (пользователь РЧИД)
Содержит 1 или большее количество пользователей и/или групп в сервисе операционной системы
Фиг. 12-13 показывают методологии в соответствии с данным изобретением. Для простоты объяснения методологии изображены и описаны как последовательность действий. Следует понять и признать, что данное изобретение не ограничено показанными действиями и/или последовательностью действий, например действия могут происходить в другом порядке и/или одновременно, а также с другими действиями, которые не представлены и не описаны. Кроме того, не все показанные действия могут требоваться для воплощения методологий в соответствии с данным изобретением. Кроме того, специалисты должны понять и признать, что методологии могут альтернативно быть представлены как последовательность взаимосвязанных состояний через диаграмму состояний или события.
Фиг. 12 показывает методологию 1200, которая облегчает использование структуры для обеспечения модели программирования для создания и/или выполнения процесса РЧИД. Модель программирования может использоваться во время проектирования, когда процесс РЧИД может создаваться и сохраняться. Когда процесс РЧИД должен выполняться, процесс РЧИД могут передавать (загружать) из запоминающего устройства (например, диска) и/или непосредственно воплощать после создания. Таким образом, процесс РЧИД создают и выполняют, используя модели программирования во время проектирования и во время выполнения соответственно.
На этапе 1202 реализуют структуру модели, которая использует по меньшей мере принятые данные. Принятые данные могут быть внешней вводимой информацией (например, вводимой информацией конечного пользователя, вводимой информацией разработчика приложений и т.д.), относящимися к устройству данными (например, данными антенн, данными конфигурации, идентификации, адресом, версией...), относящимися к средству доступа данными, данными радиометки, совокупностью устройств, политикой фильтрации, политикой оповещения, логическим источником, обработчиком событий, событием..., но не ограничены ими. Дополнительно, следует признать, что структура может включать в себя объект (например, устройство, логический источник, политику фильтрации, политику оповещения, обработчик событий, средство слежения, обработчик записи, объект процесса РЧИД, хранилище и т.д.), класс структуры, иерархическую структуру по меньшей мере одного класса, интерфейс, исключения, компонент архитектуры, схемы, объектную модель, прикладной программный интерфейс (API)..., но не ограничена ими. В соответствии с одним из аспектов данного изобретения структура модели может включать в себя компонент архитектуры, обеспечивающий по меньшей мере одно из следующего: компонент, который воплощают с помощью структуры; компонент, который обеспечивают с помощью структуры; и компонент, который подключают к структуре (например, компонент, который представлен в качестве интерфейса и который может воплощаться при необходимости для соответствия определенным для применения сценариям). Следует признать и понять, что структура модели не ограничена архитектурой компонентов, которая описана выше.
На этапе 1204 выполняют генерацию процесса РЧИД. Разработка процесса РЧИД вовлекает настройку и/или конфигурирование устройства, причем устройства могут обнаруживаться с помощью процесса, который является автоматическим, ручным и/или их комбинацией. Дополнительно, совокупность логических устройств (например, совокупность логических считывающих устройств, совокупность логических записывающих устройств, логические записывающие устройства...) создают в контексте процесса РЧИД. Например, совокупность логических устройств может определяться пользователем во время проектирования. Затем во время разработки процесса РЧИД совокупность устройств (например, совокупность считывающих устройств, совокупность записывающих устройств, совокупность принтеров...) группируют в логический источник, который имеет дополнительные необязательные конструкции, такие как фильтрация, оповещение, обработчик событий, но не ограничен ими. Затем создают процесс РЧИД, устанавливая связь между устройством и логическим источником верхнего уровня с помощью процесса РЧИД. В соответствии с одним из аспектов данного изобретения уровни отслеживания могут определяться, и/или возможности отслеживания/уровни регистрации могут выполняться для процесса РЧИД.
На этапе 1206 используют и обслуживают процесс РЧИД. Процесс РЧИД используют с помощью отображения логического объекта в процессе РЧИД на физический объект. Следует признать, что логические объекты могут быть совокупностью устройств, совокупностью считывающих устройств, логическим записывающим устройством..., но не ограничены ими. Кроме того, следует признать, что физические объекты могут быть устройством, считывающим устройством, устройством записи, принтером..., но не ограничены ими. Отображение логических объектов на физические объекты может включать в себя одно из следующего: совокупность логических устройств в пределах процесса РЧИД отображается на физические устройства; совокупность логических считывающих устройств в пределах процесса РЧИД отображается на физические считывающие устройства; логические устройства записи в пределах процесса РЧИД отображаются на физические устройства записи; и т.д. Кроме того, обслуживание процесса РЧИД обеспечивают с помощью управления процессами в течение всего времени существования. Процессы РЧИД могут запускаться и/или останавливаться с использованием диспетчера. Следует признать, что если процесс РЧИД выполняется, то он может быть остановлен, изменен и перезапущен, пока сервер работает.
На этапе 1208 процесс РЧИД выполняют с помощью использования структуры модели. Таким образом, структура модели используется во время проектирования процесса РЧИД и во время выполнения процесса РЧИД. Выполнение процесса РЧИД влечет за собой обработку информации, которая приходит от физических устройств в пределах совокупности устройств. Обработка может быть передачей события через компонент в логическом источнике. Следует признать, что обработчик событий может обогащать и/или преобразовывать поступающие данные с помощью дополнительных полей/пользовательских полей для генерации дополнительных событий в реальном времени. Кроме того, обработчик событий может записывать информацию радиометки, когда радиометка обнаружена.
Следует признать, что данное изобретение может обеспечивать весь жизненный цикл процесса РЧИД. Сначала создают логический источник по меньшей мере с помощью одного из: совокупности устройств, политики события и обработчика событий. Затем может воплощаться пользовательский компонент, такой как политика и/или обработчик событий. Затем логические источники могут соединяться вместе для создания процесса со средством слежения и/или опциями безопасности. Устройство(а) может конфигурироваться, совокупности считывающих устройств могут связываться в процессе с физическим устройством и затем использоваться. Информация может извлекаться из процесса/процессов выполнения, управляемого устройства и/или процесса. Кроме того, процессы могут реконфигурироваться с помощью динамического изменения политики (например, во время выполнения процесса).
Фиг. 13 показывает методологию 1300, которая облегчает создание процесса РЧИД, используя структуру модели, которая включает по меньшей мере одну концепцию структуры. На этапе 1302 получают от сервера устройство, представляющее интерес. Устройство, представляющее интерес, может быть устройством, которое имеет пользовательскую конфигурацию свойств, но не ограничено им. В соответствии с одним из аспектов данного изобретения устройство может получаться и/или обнаруживаться с помощью автоматического обнаружения. Например, устройство может передавать сигнал для того, чтобы показать, что оно доступно. Таким образом, сервер может принимать сигнал и регистрировать, что устройство доступно. В соответствии с другим аспектом данного изобретения обнаружение может быть ручным конфигурированием. Например, файл конфигурации может использоваться для загрузки конфигурации устройства и для использования устройства при определении процесса РЧИД. Альтернативно, устройство может индивидуально загружаться в хранилище сервера, используя механизм хранилища (например, предполагая физическое использование устройств, которые отображают конфигурацию устройств, которая существует во время выполнения). Независимо от того, используется ли автоматическое обнаружение или ручное конфигурирование, когда устройства обнаружены, приложение РЧИД может принимать информацию устройств, в которых оно заинтересовано. На этапе 1304 конфигурируют соответствующие вручную обнаруженные устройства (для чего должен быть установлен настроенный профиль свойств). Такая конфигурация может включать в себя идентификацию считывающего устройства (например, название/идентификатор, расположение), установки считывания/записи, параметры сбора данных, битовый образец основного фильтра считывания, параметр сглаживания/генерации событий и/или пользовательское свойство, но не ограничена ими. Следует признать, что эти операции могут достигаться с помощью программного использования компонента OM устройства, как обсуждается выше. Затем на этапе 1306 отображают совокупность данных из устройства. Таким образом, совокупность данных из устройства отображается и обрабатывается через, например, совокупность логических устройств, совокупность логических считывающих устройств, совокупность логических устройств записи... Когда обрабатывается отображение коллекции данных, она представлена в логическом источнике. Затем на этапе 1308 применяют дополнительное конфигурирование и/или установление связи. Фильтр может дополнительно конфигурироваться и связываться с логическим источником через политику фильтрации. Дополнительно, оповещение может конфигурироваться и связываться через политику оповещения. По меньшей мере один доступный обработчик событий может конфигурироваться и связываться с логическим источником.
На этапе 1310 создают и/или сохраняют процесс РЧИД. Процесс РЧИД может создаваться с помощью объединения логического источника и устройства в единый объект. Следует признать и понять, что доступное средство слежения может использоваться для определения возможности отслеживания для процесса РЧИД. После создания процесс РЧИД можно сохранять в хранилище. Кроме того, следует признать, что этапы, обозначенные как 1306, 1308, 1310, могут выполняться, используя компонент ОМ определения процесса РЧИД, обсуждаемый выше. Затем на этапе 1312 выполняют и/или используют процесс РЧИД. Выполнение и/или использование могут включать в себя один или большее количество процессов РЧИД, созданных на основе структуры модели. Кроме того, выполнение и/или использование влекут за собой установку отображения логических объектов в процессе РЧИД на физические устройства. На этапе 1314 выполнение процесса РЧИД может проверяться и/или контролироваться. Например, для проверки могут обеспечивать ввод моделируемых данных и наблюдение за выходным потоком выполнения. В другом случае результаты выполнения могут контролироваться как отслеживание выполнения процесса РЧИД, ошибки, исключения, события проверки работоспособности устройства..., но не ограничены ими.
Для обеспечения дополнительного контекста для воплощения различных аспектов данного изобретения фиг. 14-15 и последующее обсуждение предназначены для обеспечения краткого, обобщенного описания соответствующей вычислительной конфигурации, в которой могут воплощаться различные аспекты данного изобретения. Хотя изобретение было описано выше в общем контексте выполняемых компьютером команд компьютерной программы, которая выполняется на локальном компьютере и/или на удаленном компьютере, специалисты должны признать, что данное изобретение может также воплощаться в комбинации с другими модулями программ. В общем случае модули программ включают в себя подпрограммы, программы, компоненты, структуры данных и т.д., которые выполняют конкретные задачи и/или воплощают определенные абстрактные типы данных.
Кроме того, специалисты должны признать, что изобретенные способы могут воплощаться с помощью других конфигураций компьютерной системы, которые включают в себя один процессор или многопроцессорные компьютерные системы, мини-компьютеры, универсальные компьютеры, а также персональные компьютеры, карманные вычислительные устройства и/или программируемую бытовую электронику на основе микропроцессора и т.п., каждый из которых может быть функционально связан с одним или большим количеством соответствующих устройств. Показанные аспекты изобретения могут также воплощаться в распределенных вычислительных конфигурациях, где определенные задачи выполняют с помощью удаленных устройств обработки, которые связаны через систему коммуникаций. Однако некоторые, если не все, аспекты изобретения могут воплощаться в автономных компьютерах. В распределенной вычислительной конфигурации модули программ могут располагаться в локальных и/или в удаленных запоминающих устройствах.
Фиг. 14 - схематическая структурная схема типовой вычислительной конфигурации 1400, с которой может взаимодействовать данное изобретение. Система 1400 включает в себя один или большее количество клиентов 1410. Клиент(ы) 1410 может быть аппаратными средствами и/или программным обеспечением (например, потоками, процессами, вычислительными устройствами). Система 1400 также включает в себя один или большее количество серверов 1420. Сервер(ы) 1420 может быть аппаратными средствами и/или программным обеспечением (например, потоками, процессами, вычислительными устройствами). Серверы 1420 могут содержать потоки для выполнения преобразований, например, используя данное изобретение.
Одной из возможностей осуществления связи между клиентом 1410 и сервером 1420 может быть передача в форме пакета данных, настроенного для передачи данных между двумя или большим количеством компьютерных процессов. Система 1400 включает в себя коммуникационную структуру 1440, которая может использоваться для облегчения связи между клиентом(ами) 1410 и сервером(ами) 1420. Клиент(ы) 1410 функционально связан с одним или большим количеством хранилищ 1450 данных клиента, которые могут использоваться для хранения информации, локальной для клиента(ов) 1410. Точно так же сервер(ы) 1420 функционально связан с одним или большим количеством хранилищ 1430 данных сервера, которые могут использоваться для хранения информации, локальной для сервера 1440.
Обращаясь к фиг. 15, примерная конфигурация 1500 оборудования для осуществления различных аспектов изобретения включает в себя компьютер 1512. Компьютер 1512 включает в себя процессор 1514, системную память 1516 и системную шину 1518. Системная шина 1518 соединяет с процессором 1514 компоненты системы, которые включают в себя системную память 1516, но не ограничены ею. Процессор 1514 может быть любым из различных доступных процессоров. Дуальные (сдвоенные) микропроцессоры и другие многопроцессорные структуры также могут использоваться в качестве процессора 1514.
Системная шина 1518 может быть любой из нескольких видов шинных структур, которые включают в себя шину памяти или контроллер памяти, периферийную шину или внешнюю шину и/или локальную шину, которые используют любую из разнообразия доступных шинных архитектур, которые включают в себя, но не ограничены ими, архитектуру, соответствующую промышленному стандарту (ISA), микроканальную архитектуру (MSA), расширенную ISA (EISA), интеллектуальный интерфейс дисков (IDE), локальную шину ассоциации по стандартам в области видеоэлектроники (VESA) (VLB), стандарт соединения периферийных устройств (PCI), шину плат, универсальную последовательную шину (USB), расширенный графический порт (AGP), шину международной ассоциации производителей плат памяти для персональных компьютеров (PCMCIA), стандарт высокопроизводительной последовательной шины Firewire (IEEE 1394) и интерфейс малых вычислительных систем (SCSI).
Системная память 1516 включает в себя энергозависимую память 1520 и энергонезависимую память 1522. Базовая система ввода-вывода (BIOS), которая содержит основные подпрограммы для перемещения информации между элементами в пределах компьютера 1512, например, во время запуска, хранится в энергонезависимой памяти 1522. Для иллюстрации, а не в качестве ограничения, энергонезависимая память 1522 может включать в себя постоянное запоминающее устройство (ПЗУ), программируемое постоянное запоминающее устройство (ППЗУ), электрически программируемое постоянное запоминающее устройство (ЭППЗУ), электрически стираемое программируемое постоянное запоминающее устройство (ЭСППЗУ) или флеш-память. Энергозависимая память 1520 включает в себя оперативную память (ОП), которая работает как внешняя кэш-память. Для иллюстрации, а не в качестве ограничения, ОП доступна во многих формах, таких как статическая ОП (SRAM), динамическая ОП (DRAM), синхронная динамическая ОП (SDRAM), синхронная динамическая ОП с двойной скоростью передачи данных (DDR SDRAM), расширенная синхронная динамическая ОП (ESDRAM), динамическая ОП консорциума Synchlink (SLDRAM), прямая ОП корпорации Rambus (RDRAM), прямая динамическая ОП корпорации Rambus (DRDRAM) и динамическая ОП корпорации Rambus (RDRAM).
Компьютер 1512 также включает в себя съемные/несъемные, энергозависимые/энергонезависимые компьютерные носители данных. Фиг. 15 показывает, например, дисковое запоминающее устройство 1524. Дисковое запоминающее устройство 1524 включает в себя такие устройства, как запоминающее устройство на магнитных дисках, накопитель на гибких магнитных дисках, накопитель на магнитной ленте, дисковод Jaz, дисковод Zip, дисковод LS-100, плата флеш-памяти или карта памяти, но не ограничено ими. Кроме того, дисковое запоминающее устройство 1524 может включать в себя носители данных отдельно или в комбинации с другими носителями данных, которые включают в себя оптический дисковод, такой как привод компакт-диска только для считывания (CD-ROM), привод записываемых компакт-дисков (привод CD-R), привод перезаписываемых компакт-дисков (привод CD-RW) или привод цифрового универсального диска только для считывания (DVD-ROM), но не ограничены ими. Для облегчения связи дисковых запоминающих устройств 1524 с системной шиной 1518 обычно используется съемный или несъемный интерфейс (средство сопряжения), такой как интерфейс 1526.
Следует признать, что фиг. 15 описывает программное обеспечение, которое работает в качестве посредника между пользователями и основными компьютерными ресурсами, описанными в соответствующей рабочей конфигурации 1500. Такое программное обеспечение включает в себя операционную систему 1528. Операционная система 1528, которая может храниться в дисковом запоминающем устройстве 1524, предназначена для управления и распределения ресурсов компьютерной системы 1512. Системные приложения 1530 управляют ресурсами с помощью операционной системы 1528 через модули 1532 программ и данные 1534 программ, которые хранятся или в системной памяти 1516 или в дисковом запоминающем устройстве 1524. Следует признать, что данное изобретение может воплощаться с помощью различных операционных систем или комбинаций операционных систем.
Пользователь вводит команды или информацию в компьютер 1512 через устройство(а) 1536 ввода данных. Устройства 1536 ввода данных включают в себя устройство позиционирования, такое как «мышь», шаровой манипулятор («трекболл»), перо, сенсорную панель, клавиатуру, микрофон, джойстик, игровой планшет, спутниковую антенну, сканер, плату телевизионного тюнера, цифровой фотоаппарат, цифровую видеокамеру, веб-камеру и т.п., но не ограничены ими. Эти и другие устройства ввода данных соединяют с процессором 1514 через системную шину 1518 через порт(ы) 1538 интерфейса. Порт(ы) 1538 интерфейса включает в себя, например, последовательный порт, параллельный порт, игровой порт и универсальную последовательную шину (USB). Устройство(а) 1540 вывода данных использует некоторые из портов того же самого вида, какие использует устройство(а) 1536 ввода данных. Таким образом, например, порт USB может использоваться для обеспечения ввода информации в компьютер 1512 и для вывода информации из компьютера 1512 на устройство 1540 вывода данных. Адаптер 1542 вывода данных обеспечивают для того, чтобы показать, что существуют некоторые устройства 1540 вывода данных, такие как мониторы, динамики и принтеры, среди других устройств 1540 вывода данных, которые требуют использования специальных адаптеров. Адаптеры 1542 вывода данных включают в себя, в качестве иллюстрации, а не в качестве ограничения, видео- и звуковые платы, которые обеспечивают средство сопряжения между устройством 1540 вывода данных и системной шиной 1518. Следует отметить, что другие устройства и/или системы устройств обеспечивают обе возможности и ввода, и вывода данных, например, с помощью удаленного компьютера(ов) 1544.
Компьютер 1512 может работать в сетевой среде, используя логические соединения с одним или большим количеством удаленных компьютеров, таких как удаленный компьютер(ы) 1544. Удаленный компьютер(ы) 1544 может быть персональным компьютером, сервером, маршрутизатором, сетевым ПК, рабочей станцией, прибором на основе микропроцессора, равноправным устройством сети или другим обычным сетевым узлом и т.п. и обычно включает в себя многие или все элементы, описанные относительно компьютера 1512. Для краткости, только запоминающее устройство 1546 показано вместе с удаленным компьютером(ами) 1544. Удаленный компьютер(ы) 1544 логически связан с компьютером 1512 через сетевой интерфейс 1548 и затем физически связан через коммуникационное соединение 1550. Сетевой интерфейс 1548 охватывает проводные и/или беспроводные коммуникационные сети, такие как локальные сети (ЛС) и глобальные сети (ГС). Технологии ЛС включают в себя интерфейс передачи данных по оптоволокну (FDDI), распределенный интерфейс проводной передачи данных (CDDI), стандарт Ethernet (офисная сетевая система), «маркерное кольцо» и т.п. Технологии ГС включают в себя каналы связи двухточечного соединения, сети с коммутацией каналов, такие как цифровые сети с предоставлением комплексных услуг (ISDN) и их разновидности, сети с коммутацией пакетов и цифровые абонентские линии (DSL), но не ограничены ими.
Коммуникационное соединение(я) 1550 относится к аппаратным средствам/программному обеспечению, используемым для подключения сетевого интерфейса 1548 к шине 1518. Хотя коммуникационное соединение 1550 показано для иллюстративных целей внутри компьютера 1512, оно может также быть внешним для компьютера 1512. Аппаратные средства/программное обеспечение, необходимые для соединения с сетевым интерфейсом 1548, включают в себя, только в качестве примера, внутренние и внешние устройства, такие как модемы, которые включают в себя обычные телефонные модемы, кабельные модемы и модемы DSL, адаптеры ISDN и платы стандарта Ethernet.
Описанное выше включает в себя примеры данного изобретения. Конечно, невозможно описать каждую мыслимую комбинацию компонентов или методологий в целях описания данного изобретения, но специалист должен признать, что возможны множество дополнительных комбинаций и изменений данного изобретения. Соответственно, данное изобретение охватывает все такие изменения, модификации и разновидности, которые находятся в пределах объема и формы прилагаемой формулы изобретения.
В частности, по отношению к различным функциям, выполняемым с помощью описанных выше компонентов, устройств, схем, систем и т.п., термины (которые включают в себя ссылку к «средству»), используемые для описания таких компонентов, должны соответствовать, если иначе не указано, любому компоненту, который выполняет указанную функцию описанного компонента (например, функциональный эквивалент), даже при том, что он не является структурным эквивалентом раскрытой структуре, которая выполняет данную функцию в показанных примерных аспектах изобретения. В этом отношении следует также признать, что данное изобретение включает в себя систему, а также считываемый компьютером носитель, на котором имеются выполняемые компьютером команды для выполнения действий и/или событий различных способов данного изобретения.
Кроме того, хотя конкретная особенность изобретения, возможно, была раскрыта только относительно одного из нескольких воплощений, такая особенность может объединяться с одной или большим количеством других особенностей другого воплощения, что может быть необходимо и выгодно для любого заданного или определенного приложения. Кроме того, до той степени, до которой термины «включают в себя» и «включающий в себя» и их варианты используются или в подробном описании, или в формуле изобретения, эти термины являются «охватывающими», таким же образом, как термин «содержащий».