САМОУПРАВЛЯЕМОЕ ОБРАБАТЫВАЮЩЕЕ УСТРОЙСТВО
SELF-CONTROLLED PROCESSING DEVICE

Уровень техники
Некоторые обрабатывающие устройства, например персональные компьютеры (PC), имеют встроенные инструменты для поддержки устройства обработки данных. Обычно встроенные инструменты в автономном режиме удовлетворяют основным потребностям поддержки обработки и могут потребовать углубленных знаний компьютера для правильного использования встроенных инструментов. Обычно пользователи обрабатывающего устройства не думают о выборе конфигурации встроенных инструментов до тех пор, пока либо обрабатывающее устройство даст сбой либо данные будут утеряны. Кроме того, пользователи обрабатывающего устройства могут инсталлировать приложения, которые могут стать причиной нестабильности операционной системы. Когда обрабатывающее устройство становится нестабильным или первоначальный запуск не выполняется правильно из-за нестабильности приложения, несоответствий аппаратной конфигурации, потери данных, человеческой ошибки или других проблем, пользователь обрабатывающего устройства может обратиться к изготовителям обрабатывающего устройства, разработчикам приложения или персоналу технической поддержки, таким образом повышая затраты на техническое сопровождение. Однако это может отрицательно сказаться на бесперебойности работы системы, потому что система или обрабатывающее устройство может оказаться недоступным до тех пор, пока персонал поддержки успешно не решит проблему или проблемы, либо обрабатывающее устройство не будет возвращено после проведения ремонта.
Сущность изобретения
Данное изложение сущности изобретения позволяет ознакомиться в доступной форме с выбором концепций, которые затем будут описаны ниже в подробном описании. Данное изложение сущности изобретения не претендует на установление ключевых признаков или существенных признаков заявленного изобретения, также не направлено на ограничение области действия заявленного изобретения.
Почти все проблемы, с которыми сталкиваются сегодня пользователи обрабатывающего устройства, за исключением аппаратных сбоев, могут быть вызваны изменением в состоянии системы обрабатывающего устройства, которое записано на энергонезависимое устройство хранения. Например, обрабатывающее устройство может дать сбой, после того как изменение считано. В отличие от этого, обрабатывающее устройство, которое имеет только энергозависимое запоминающее устройство или энергонезависимое запоминающее устройство только для чтения, обычно не дает сбоев из-за изменения в состоянии системы, потому что изменение не может быть сохранено. Варианты осуществления, согласующиеся с данным раскрытием изобретения, могут сохранять изменение в состоянии системы обрабатывающего устройства или другие данные обрабатывающего устройства в энергонезависимом запоминающем устройстве.
Варианты осуществления, согласующиеся с данным раскрытием изобретения, могут обеспечить самоуправляемое обрабатывающее устройство. Обрабатывающим устройством может быть персональный компьютер (PC), портативный компьютер или другое обрабатывающее устройство. Обрабатывающее устройство может обеспечить некоторые службы для защиты обрабатывающего устройства и сохраненных в нем данных и может обеспечить службы для восстановления рабочего состояния обрабатывающего устройства после сбоя.
Варианты осуществления изобретения обрабатывающего устройства могут обеспечивать защитные службы, включающие в себя антивирусную защиту, защиту от вредоносных программ, защиту с помощью межсетевого экрана, службы управления обновлением средств безопасности или другие защитные службы, но не ограничивающиеся этим. Более того, обрабатывающее устройство может обеспечивать службы резервирования для резервирования и восстановления файлов пользователя, системных файлов, конфигурационной и другой информации. Обрабатывающее устройство может проверять или отслеживать условия производительности и может выполнять любое действие по повышению производительности на основе проверенных или отслеженных условий производительности. Обрабатывающее устройство может отслеживать изменения конфигурации и файла и предоставляет пользователю возможность сохранения или отмены изменений конфигурации, и/или изменений файла для отдельного приложения или для всей системы. Например, в некоторых вариантах осуществления изобретения пользователю может быть предоставлена возможность сохранения или отмены изменений конфигурации и/или изменений файла при загрузке системы, входе пользователя в систему, выходе пользователя из системы, при останове системы.
Некоторые варианты осуществления изобретения обрабатывающего устройства могут включать в себя клавишу или переключатель восстановления, которые при выборе или нажатии могут вызывать восстановление обрабатывающего устройства в рабочее состояние из состояния отказа или могут побуждать обрабатывающее устройство выдать пользователю запрос относительно одного или более типов информации, которая требуется для восстановления обрабатывающего устройства. Различные варианты осуществления изобретения обрабатывающего устройства могут автоматически определять нестабильности и могут автоматически пытаться исправить вероятные причины нестабильностей. Некоторые варианты осуществления изобретения обрабатывающего устройства могут включать в себя дополнительно микропроцессорный набор или код встроенных программ (например, базовая система ввода-вывода (BIOS) или коды других встроенных программ), которые могут выполнить операции резервирования и восстановления в том случае, когда иным образом обрабатывающее устройство не способно к восстановлению после сбоя.
ПЕРЕЧЕНЬ ФИГУР ЧЕРТЕЖЕЙ
Для того чтобы описать способ реализации вышеперечисленных и других преимуществ и признаков, ниже предоставлено более подробное описание со ссылкой на конкретные варианты его осуществления, которые проиллюстрированы приложенными чертежами. Следует иметь в виду, что эти чертежи представляют только типовые варианты осуществления изобретения и поэтому их не следует рассматривать как ограничивающие область действия изобретения, и варианты их реализации будут описаны и объяснены более конкретно, а также детально изложены с помощью сопроводительных чертежей.
ФИГ.1А и ФИГ.1В представляют собой функциональные блок-схемы, иллюстрирующие примерные обрабатывающие устройства, которые могут использоваться в случаях реализации, согласующихся с раскрытием настоящего изобретения.
ФИГ.2А и ФИГ.2В представляют собой блок-схемы примерного способа обеспечения защитных служб и автоматических обновлений, а также сохранения или отмены изменений.
ФИГ.3 представляет собой блок-схему примерного способа поддержки резервирования системных установок и системных файлов, а также обеспечения возможности для восстановления файлов из предыдущей сессии.
ФИГ.4 представляет собой блок-схему примерного способа определения нестабильности и автоматических попыток устранения нестабильностей, а также обеспечения возможности восстановления файлов.
ФИГ.5 представляет собой блок-схему примерного способа мониторинга производительности обрабатывающего устройства и автоматического выполнения некоторого действия для улучшения производительности.
ФИГ.6А и ФИГ.6В представляют собой блок-схемы примерного способа мониторинга изменений, произведенных в файлах и каталогах, и сохранения или отмены отслеженных изменений.
ФИГ.7А и ФИГ.7В представляют собой блок-схемы примерного способа выполнения действия восстановления после нажатия или выбора клавиши либо переключателя восстановления
Подробное описание
Ниже подробно обсуждаются варианты осуществления изобретения. Здесь обсуждаются конкретные примеры реализации, но следует понимать, что они приводятся только для иллюстрации. Квалифицированный в этой области специалист обнаружит, что другие компоненты и конфигурации могут быть использованы без нарушения формы и объема этого раскрытия изобретения.
Обзор
Варианты осуществления, согласующиеся с раскрытием предмета изобретения, могут представлять собой самоуправляемое обрабатывающее устройство. Обрабатывающим устройством может быть персональный компьютер (PC), портативный компьютер или другое обрабатывающее устройство. В различных вариантах осуществления изобретения для обрабатывающего устройства может быть выбрана такая конфигурация, в которой автоматически обеспечиваются защитные службы, например антивирусная защита, защита от вредоносных программ, защита с помощью межсетевого экрана, службы управления обновлением средств безопасности или другие защитные службы.
В некоторых вариантах осуществления изобретения обрабатывающее устройство может также включать в себя службы резервного копирования для создания резервной копии и восстановления файлов пользователя, системных файлов, например драйверов и файлов операционной системы, а также других системных файлов, информации о конфигурации, например, установочных параметров Базовой системы ввода-вывода (BIOS), а также другой информации о конфигурации или иной информации.
В некоторых вариантах осуществления изобретения обрабатывающее устройство может быть сконфигурировано так, чтобы проверять одно или более условий производительности и выполнять действие по повышению производительности, когда определяются некоторые недостатки производительности. Например, в одном варианте осуществления обрабатывающее устройство может периодически проверять фрагментацию файлов в устройстве хранения и может автоматически выполнять дефрагментацию, когда в устройстве хранения достигнут заданный порог фрагментации. Кроме того, в некоторых вариантах осуществления обрабатывающее устройство может автоматически устанавливать размер файла страницы. Обрабатывающее устройство также может выполнять другие проверки обработки и впоследствии может выполнять другие действия в других вариантах осуществления, когда обнаружены некоторые недостатки производительности.
В некоторых вариантах осуществления изобретения обрабатывающее устройство может отслеживать изменения конфигурации и файла и может дать пользователю возможность либо сохранить либо отменить изменения конфигурации и/или изменения файла, выполненные приложением.
Обрабатывающее устройство в некоторых вариантах осуществления может включать в себя клавишу или переключатель восстановления, которые при выборе или нажатии могут вызывать восстановление обрабатывающего устройства в рабочее состояние. Более того, когда клавиша восстановления выбрана или нажата, обрабатывающее устройство может выдать пользователю запрос относительно одного или более типов информации, требующейся для восстановления обрабатывающего устройства.
Некоторые обрабатывающие устройства в вариантах осуществления, согласующихся с данным раскрытием изобретения, могут автоматически определять нестабильности, например сбой в загрузке операционной системы, либо другие нестабильности, и могут автоматически пытаться устранить вероятные причины нестабильностей таким образом, чтобы обрабатывающие устройства смогли успешно загрузить операционную систему.
Кроме того, в некоторых вариантах осуществления обрабатывающие устройства могут включать в себя дополнительный микропроцессорный набор или код встроенных программ (например, BIOS или коды других встроенных программ), которые могут выполнить операции по резервированию и восстановлению в том случае, когда иным образом обрабатывающее устройство не способно к восстановлению после сбоя.
Примерное обрабатывающее устройство
На ФИГ.1А показана функциональная блок-схема, которая иллюстрирует примерное обрабатывающее устройство 100, которое может использоваться для реализации примеров осуществления устройства обработки согласно раскрытию настоящего изобретения. Обрабатывающее устройство 100 может включать в себя: системную шину 102, процессор 104, память 106, постоянное запоминающее устройство (ПЗУ) 108, устройство хранения 110, устройство ввода 112, устройство вывода 114 и клавишу 116 или переключатель восстановления. Системная шина 102 может разрешать связь между компонентами обрабатывающего устройства 100.
Процессор 104 может включать в себя по меньшей мере один стандартный процессор или микропроцессор, который интерпретирует и исполняет команды. Память 106 может быть оперативным запоминающим устройством (ОЗУ) или динамическим устройством хранения данных другого типа, которое хранит информацию и команды для исполнения процессором 104. Память также может хранить временные переменные или другую промежуточную информацию, используемую процессором 104 в ходе исполнения команд. ПЗУ 108 может включать в себя стандартное устройство ПЗУ или статическое устройство хранения данных другого типа, которое хранит статическую информацию и команды для процессора 104. Устройство хранения 110 может включать в себя носитель любого типа для хранения данных и/или команд. В некоторых вариантах осуществления изобретения устройством хранения 110 может быть энергонезависимое устройство хранения.
Устройство ввода 112 может включать в себя один или более обычных механизмов, которые позволяют пользователю вводить информацию в обрабатывающее устройство 100, например, такие как клавиатура, мышь либо другое устройство ввода. Устройство вывода 114 может включать в себя один или более обычных механизмов, которые выводят информацию пользователю, включающие в себя дисплей либо другое устройство вывода.
Клавишей 116 или переключателем восстановления может быть аппаратно реализованная клавиша или переключатель, которые пользователь может нажать или выбрать. Клавиша 116 или переключатель восстановления могут быть подсоединены к процессору 104 через системную шину 102. Когда пользователь нажимает или выбирает клавишу 116 или переключатель восстановления, сигнал может быть послан процессору 104, заставляя процессор 104 запустить исполнение команд для восстановления стабильного состояния обрабатывающего устройства 100 и исполнить команды для восстановления системных установок, системных файлов или файлов пользователя и также другой информации.
Обрабатывающее устройство 100 может выполнять такие функции в ответ на исполнение процессором 104 последовательностей команд, содержащихся в материальном машиночитаемом носителе, например, таком как память 106, либо других носителях. Эти команды могут быть считаны в память 106 из другого машиночитаемого носителя, такого как устройство хранения 110, либо из отдельного устройства через интерфейс связи (не показано).
ФИГ.1В представляет собой функциональную блок-схему, которая иллюстрирует примерное обрабатывающее устройство 128, которое может быть использовано, чтобы реализовать некоторые варианты осуществления, согласующиеся с раскрытием предмета изобретения. Обрабатывающее устройство 128 может включать в себя системную шину 130, первый процессор 132, второй процессор 134, первую память 136, вторую память 138, первое постоянное запоминающее устройство (ПЗУ) 140, второе ПЗУ 144, первое устройство хранения 142, второе устройство хранения 152, устройство ввода 146, устройство вывода 148 и клавишу 154 или переключатель восстановления. Системная шина 130 может разрешать связь между компонентами обрабатывающего устройства 128.
В некоторых вариантах осуществления изобретения второй процессор 134, вторая память 138, второе ПЗУ 144 и второе устройство хранения 152 включаются в отдельный микропроцессорный набор. Когда обрабатывающее устройство 128 испытывает состояние нестабильности или когда обрабатывающее устройство 128 в другом случае не в состоянии восстановиться после сбоя, например, такого как сбой в загрузке операционной системы либо другой сбой, второй процессор 134, второе ПЗУ 144 и второе устройство хранения 152 могут попробовать восстановить стабильное состояние обрабатывающего устройства 128 и/или могут восстановить системные установки и файлы.
Первый процессор 132 и второй процессор 134 могут включать в себя по меньшей мере один стандартный процессор или микропроцессор, который интерпретирует и исполняет команды. Первая память 136 и вторая память 138 могут быть оперативными запоминающими устройствами (ОЗУ) или динамическими устройствами хранения данных другого типа, которые хранят информацию и команды для исполнения соответственно первым процессором 132 или вторым процессором 134. Первая память 136 и вторая память 138 также могут хранить временные переменные или другую промежуточную информацию, используемую соответственно первым процессором 132 или вторым процессором 134 в ходе исполнения команд. Каждое из первого ПЗУ 140 и второго ПЗУ 144 может включать в себя стандартное устройство ПЗУ или статическое устройство хранения данных другого типа, которое хранит статическую информацию и команды для соответственно первого процессора 132 и второго процессора 134. Каждое из первого устройства хранения 142 и второго устройства хранения 152 может включать в себя носитель любого типа для хранения данных и/или команд. В некоторых вариантах осуществления изобретения первым устройством хранения 142 и вторым устройством хранения 152 могут быть энергонезависимые устройства хранения.
Устройство ввода 146 может включать в себя один или более стандартных механизмов, которые позволяют пользователю вводить информацию в обрабатывающее устройство 128, например, такой как клавиатура, мышь, либо другое устройство ввода. Устройство вывода 148 может включать в себя один или более стандартных механизмов, которые выводят информацию пользователю, включающие дисплей либо другое устройство вывода.
Клавишей 154 или переключателем восстановления может быть аппаратно реализованная клавиша или переключатель, которые пользователь может нажать или выбрать. Клавиша 154 или переключатель восстановления могут быть подсоединены к первому процессору 132 через системную шину 130. Когда пользователь нажимает или выбирает клавишу 154 или переключатель восстановления, сигнал может быть послан первому процессору 132, заставляя первый процессор 132 запустить исполнение команд для восстановления стабильного состояния обрабатывающего устройства 128 и исполнить команды для восстановления системных установок, системных файлов или файлов пользователя и также другой информации. В некоторых вариантах осуществления изобретения функция клавиши 154 или переключателя восстановления может осуществляться специальным программным обеспечением. В альтернативном варианте осуществления изобретения, когда клавишу 154 или переключатель восстановления нажимает или выбирает пользователь, сигнал может быть послан второму процессору 134 через системную шину 130, заставляя второй процессор 134 запустить исполнение команд для попытки восстановить стабильное состояние обрабатывающего устройства 128 и исполнить команды для восстановления системных установок, системных файлов или файлов пользователя и также другой информации.
В некоторых вариантах осуществления изобретения второе устройство хранения 152 может включать в себя заводские данные по умолчанию для восстановления обрабатывающего устройства 128, когда обрабатывающее устройство 128 не может быть восстановлено в любое другое известное рабочее состояние. Более того, второе устройство хранения 152 может хранить информацию для сохранения или отмены отслеженных изменений, сохраненных на первом устройстве хранения под номером 142, например метаданных или другой информации. Второе устройство хранения может также включать в себя данные и/или инструкции, которые используются при попытках восстановления первого устройства хранения 142 в рабочее состояние.
Обрабатывающее устройство 128 может выполнять такие функции в ответ на исполняемые последовательности команд первого процессора 132 или второго процессора 134, содержащихся в материальном машиночитаемом носителе, например, таком как первая память 136, вторая память 138 либо другие носители. Такие команды могут быть считаны в первую память 136 или вторую память 138 из другого машиночитаемого носителя, такого как первое устройство хранения 142, второе устройство хранения 152, либо из отдельного устройства через интерфейс связи (не показано).
Примерная обработка
На ФИГ.2А и 2В показаны блок-схемы, которые иллюстрируют примерную обработку в варианте осуществления изобретения, согласующуюся с раскрытием настоящего изобретения. Обработка может начинаться со входа пользователя в обрабатывающее устройство, например, такое как обрабатывающее устройство 100 или обрабатывающее устройство 128 (этап 202). Обрабатывающее устройство может затем определить, запущены ли защитные службы (этап 204). Обрабатывающие устройства включают в себя, но не в ограничительном смысле, антивирусные службы, службы управления обновлением средств безопасности, службы защиты с помощью межсетевого экрана или другие защитные службы. Если обрабатывающее устройство определило, что никакая защитная служба не запущена или не исполняется, то обрабатывающее устройство может автоматически запустить незапущенные защитные службы (этап 206).
После этого обрабатывающее устройство может определить, выбрана ли конфигурация обрабатывающего устройства для автоматического получения обновлений системного программного обеспечения (этап 208). Если конфигурация обрабатывающего устройства не предназначена для автоматического получения обновлений системного программного обеспечения, то обрабатывающее устройство может само выбрать конфигурацию для автоматического получения обновлений системного программного обеспечения (этап 210).
Затем обрабатывающее устройство может определить, должны ли быть оставлены существующими предыдущие изменения, произведенные в предыдущую сессию (этап 212). Предыдущие изменения могли быть ранее отслежены обрабатывающим устройством и могут включать в себя изменения системных файлов, изменения файлов пользователя, изменения установок BIOS либо другие изменения, произведенные пользователем или приложением в течение предыдущей сессии. В некоторых вариантах осуществления изобретения метаданные или другая информация, представляющая предыдущие изменения в системных файлах, файлах пользователя, установках BIOS или других данных, сохраненных на первом устройстве хранения, может сохраняться в отдельном устройстве хранения. В альтернативном варианте осуществления изобретения вместо хранения метаданных в отдельном устройстве хранения метаданные могут быть сохранены в конкретной области первого устройства хранения.
Если обрабатывающее устройство определило, что предыдущие изменения не должны оставаться существующими, то обрабатывающее устройство может отменить эти изменения, так что обработанные системные файлы, файлы пользователя, установки BIOS или другие изменения могут быть восстановлены до исходного состояния или произведен откат до соответствующего состояния до введения изменений (этап 214). В некоторых вариантах осуществления изобретения обрабатывающее устройство может определить, что не следует продолжать оставлять действующими предыдущие изменения, если предыдущие изменения включают в себя несанкционированные изменения или изменения, которые могут привести к нестабильности или плохой конфигурации. В некоторых вариантах осуществления изобретения пользователь, например, такой как системный администратор может выбрать конфигурацию для обрабатывающего устройства таким образом, чтобы разрешить изменения в системных файлах, в файлах пользователя, установках BIOS или другие изменения, которые будут автоматически сбрасываться, когда пользователь опять войдет в систему, когда пользователь выйдет из системы, когда обрабатывающее устройство остановится или когда обрабатывающее устройство запустится или будет загружено.
После этого обрабатывающее устройство может отслеживать изменения, выполненные в обрабатывающем устройстве, например изменения системного файла, изменение файла пользователя, изменения установок BIOS или другие изменения (этап 216).
В какой-то момент далее пользователь может запросить выход из обрабатывающего устройства или обрабатывающее устройство может быть остановлено (этап 218;ФИГ.2В). Обрабатывающее устройство может затем определить, поддерживать ли существующими отслеженные изменения (этап 220). Если обрабатывающее устройство определило, что отслеженные изменения не должны быть поддержаны существующими, то обрабатывающее устройство может отменить изменения, так что обработка системных файлов, файлов пользователя, установок BIOS или другие изменения могут быть восстановлены до исходного состояния или проведен откат до соответствующего состояния до введения изменений (этап 222).
Затем обрабатывающее устройство может определить, был ли запрошен выход пользователем или останов обрабатывающим устройством (этап 224). Если выход был запрошен пользователем, то пользователь может выйти из системы (этап 228). Если останов был запрошен обрабатывающим устройством, то обрабатывающее устройство может быть остановлено (этап 226).
На ФИГ.3 показана блок-схема, которая иллюстрирует примерный процесс поддержки стабильности обрабатывающего устройства в варианте осуществления изобретения, согласующемся с раскрытием настоящего изобретения. Процесс может начинаться с загрузки операционной системы обрабатывающим устройством, например, таким как обрабатывающее устройство 100 или обрабатывающее устройство 128 (этап 300). Обрабатывающее устройство может затем определить, является ли загрузка операционной системы первой загрузкой операционной системы (этап 302). Если это первая загрузка операционной системы, то обрабатывающее устройство может определить, является ли успешной первая загрузка операционной системы (этап 304). Если первая загрузка операционной системы не является успешной, то обрабатывающее устройство может произвести попытку восстановить рабочее состояние обрабатывающего устройства, используя заводские данные для восстановления, которые могут включать в себя заводские настройки по умолчанию. В некоторых вариантах осуществления изобретения заводские данные для восстановления могут сохраняться в устройстве хранения, отдельном от устройства хранения системных файлов, файлов пользователя, установок BIOS.
Если первая загрузка операционной системы была успешна, то обрабатывающее устройство может произвести резервное копирование системных установок, например, таких как установки BIOS или другие системные установки в устройстве хранения, например, в устройстве хранения для резервирования или другом устройстве хранения (этап 306). Затем обрабатывающее устройство может произвести резервное копирование файлов, таких как системные файлы, в устройстве хранения (этап 308). Затем обрабатывающее устройство может контролировать события модификации файловой системы для того, чтобы следить за любыми изменениями файловой системы (этап 310). После этого пользователь может закончить сеанс, например, выйдя из обрабатывающего устройства или остановив обрабатывающее устройство (этап 312).
Если в течение этапа 302 обрабатывающее устройство определяет, что загрузка операционной системы не является первой загрузкой операционной системы, то обрабатывающее устройство может синхронизировать системные установки, например, такие как установки BIOS или другие установки с последним известным набором рабочих системных установок (этап 314). Таким образом последний известный набор рабочих системных установок может быть обновлен, чтобы отразить новые системные установки. Затем обрабатывающее устройство может синхронизировать системные файлы с резервными файлами (этап 316). Таким образом резервные системные файлы могут быть обновлены.
После этого пользователь может войти в обрабатывающее устройство (этап 318). Обрабатывающее устройство может выдать пользователю запрос относительно того, следует ли восстанавливать файлы пользователя в состояние, в котором они находились в начале последней сессии (этап 320). Затем обрабатывающее устройство может определить, восстанавливать ли файлы пользователя на основе ответа пользователя на запрос (этап 322). Если файлы пользователя не надо восстанавливать, то обрабатывающее устройство может сохранить резервную копию модифицированных файлов пользователя (этап 324), и обрабатывающее устройство может отслеживать события модификации файловой системы для того, чтобы следить за любыми изменениями файловой системы (этап 310). После этого пользователь может закончить сессию, например, выйдя из обрабатывающего устройства или остановив обрабатывающее устройство (этап 312).
Если в течение этапа 322 обрабатывающее устройство определяет, что файлы пользователя следует восстанавливать в состояние, в котором они находились в начале последней сессии, то обрабатывающее устройство может вывести на экран список файлов пользователя, модифицированных в течение последней сессии (этап 326), и обрабатывающее устройство может восстановить файлы пользователя из резервной копии (этап 328). Затем обрабатывающее устройство может выполнить этапы 310 и 312.
На ФИГ.4 показана блок-схема примерного процесса, который может исполняться обрабатывающим устройством согласно раскрытию предмета изобретения. Примерный процесс, иллюстрированный на ФИГ.4, может обеспечить службу восстановления для восстановления обрабатывающего устройства в стабильное состояние и для восстановления модифицированных файлов пользователя в предыдущее состояние.
Процесс может начинаться с загрузки обрабатывающим устройством операционной системы (этап 402). Затем обрабатывающее устройство может автоматически определять, является ли загрузка неудавшейся (этап 404). Если загрузка операционной системы была неудавшаяся, тогда обрабатывающее устройство может автоматически скопировать или восстановить один или более модифицированных системных файлов из резервной копии (этап 406). Затем обрабатывающее устройство может попытаться перезагрузить операционную систему (этап 408). Затем обрабатывающее устройство может автоматически определять, является ли перезагрузка неудавшейся (этап 410). Если перезагрузка операционной системы неудавшаяся, тогда обрабатывающее устройство может автоматически скопировать или восстановить системные установки, например, такие как установки BIOS, системные файлы или другие системные установки из резервной копии (этап 412). Затем обрабатывающее устройство может попытаться произвести другую перезагрузку операционной системы (этап 414). Затем обрабатывающее устройство может определять, является ли другая перегрузка неудавшейся (этап 416). Если перезагрузка операционной системы неудавшаяся, тогда обрабатывающее устройство выполняет полное восстановление системы (этап 417). В некоторых вариантах осуществления полное восстановление системы может восстанавливать обрабатывающее устройство, используя заводские данные для восстановления, которые могут сохраняться в устройстве хранения, отдельном от устройства хранения системных установок, системных файлов и данных пользователя.
Если обрабатывающее устройство определило, что загрузка операционной системы была успешной на этапах 404, 410 или 416, тогда пользователь может войти в обрабатывающее устройство (этап 418). После входа в обрабатывающее устройство оно может выдать пользователю запрос относительно того, не желает ли пользователь восстановить файлы из последней сессии (этап 420). Обрабатывающее устройство может определять, желает ли пользователь восстановить файлы, основываясь на ответе, данном пользователем после запроса на этапе 420 (этап 422). В некоторых вариантах осуществления изобретения не все пользователи могут иметь разрешение для исполнения всех операций, например, таких как восстановление файлов или других операций. Например, некоторые пользователи, такие как администраторы, могут быть авторизованы восстанавливать обрабатывающее устройство, используя заводские данные для восстановления, а другие пользователи могут быть авторизованы восстанавливать установки пользователя и файлы пользователя и системные файлы, которые не должны быть изменены. В таких вариантах осуществления, где пользователи не авторизованы восстанавливать файлы, может не выдаваться запрос относительно восстановления файлов.
Если пользователь не указывает, что файлы должны быть восстановлены, то обрабатывающее устройство может синхронизировать файлы пользователя, модифицированные в течение последней сессии, с резервными копиями файлов пользователя (этап 424). Затем обрабатывающее устройство может контролировать события модификации файловой системы, которая включает в себя, но не в ограничительном смысле, события, относящиеся к созданию нового файла, удалению файла или модификации файла (этап 426). После этого пользователь может закончить сессию, например, выйдя из обрабатывающего устройства или остановив обрабатывающее устройство (этап 428).
Если в течение этапа 422 обрабатывающее устройство определяет, что файлы из последней сессии не восстановлены, то обрабатывающее устройство может вывести на экран список файлов пользователя, модифицированных в течение последней сессии (этап 430). Затем обрабатывающее устройство может восстановить из резерва файлы, представленные в списке (этап 432). Затем обрабатывающее устройство может отслеживать события модификации файловой системы, например, при добавлении новых файлов пользователя, исправлении существующих файлов пользователя или других событиях модификации файловой системы (этап 426). Пользователь может закончить сессию, например, выйдя из обрабатывающего устройства или остановив обрабатывающее устройство (этап 428).
На ФИГ.5 показана блок-схема другого примерного процесса, который может исполняться обрабатывающим устройством в варианте осуществления изобретения и который согласуется с раскрытием предмета изобретения. Сначала обрабатывающее устройство может загрузить операционную систему (этап 502). После запуска операционной системы обрабатывающее устройство может контролировать производительность (этап 504). Например, обрабатывающее устройство может контролировать уровень фрагментации диска, сконфигурированный размер файла страницы, использование памяти и другие метрики производительности. После этого обрабатывающее устройство может определять, имеют ли место одно или более условий производительности (этап 506), и если одно или несколько условий производительности имеют место, то обрабатывающее устройство может автоматически выполнить действие по повышению производительности (этап 508). Если обрабатывающее устройство определит, что одно или более условий производительности не удовлетворены, то обрабатывающее устройство может повторить этапы 504 и 506.
В качестве примера обрабатывающее устройство может определить, что фрагментация диска выше определенного порога, например, на 10% или на другое количество процентов. Если фрагментация диска больше определенного порога, обрабатывающее устройство может автоматически выполнить действие по улучшению производительности, такое как дефрагментация. Другой пример, если обрабатывающее устройство определило, что использование памяти выше определенного порога, то обрабатывающее устройство может определить, что одно или более приложений занимают место в памяти и что эти приложения редко используются. В этом случае обрабатывающее устройство может автоматически удалить приложения из памяти или обрабатывающее устройство может выдать пользователю запрос относительно того, могут ли приложения быть удалены из памяти.
На ФИГ.6А и 6В показаны блок-схемы, которые иллюстрируют примерный процесс, который может быть реализован в варианте осуществления изобретения обрабатывающего устройства и в котором изменения, произведенные в одном или более файлах, могут контролироваться для каждого приложения в течение сессии. Сначала пользователь может войти в обрабатывающее устройство (этап 602). После этого обрабатывающее устройство может контролировать модификации файловой системы для каждого приложения (этап 604). Если обрабатывающее устройство определяет, что файл или каталог были удалены (этап 606), то удаленный файл или каталог может быть сохранен во временной области хранения носителя и точка входа может быть записана во временной области хранения для сохранения информации об удаленных файлах или каталогах (этап 608). Если обрабатывающее устройство определяет, что файл или каталог был добавлен (этап 610), то обрабатывающее устройство может записать путь к файлу или каталогу во временной области хранения (этап 612). Если обрабатывающее устройство определяет, что из файла были удалены данные (этап 614), то обрабатывающее устройство может переместить удаленные данные во временную область хранения (этап 616). Если обрабатывающее устройство определяет, что к файлу были добавлены данные (этап 618), то смещение от вновь добавленных к файлу данных может быть записано во временную область хранения (этап 620).
После этого пользователь может закончить сессию, например, выйдя из обрабатывающего устройства или остановив обрабатывающее устройство (этап 622;ФИГ.6В). Обрабатывающее устройство может выдать пользователю запрос относительно того, будут ли отменены изменения, произведенные отдельными приложениями в течение сессии (этап 624). В альтернативном варианте осуществления изобретения системный администратор или другой пользователь может выбрать конфигурацию обрабатывающего устройства таким образом, что изменения, произведенные отдельными приложениями в течение сессии, будут отменяться всегда. Затем обрабатывающее устройство может определить, отменять ли изменения на основе ответа пользователя на запрос (этап 626). Если изменения не надо отменять, то информация, записанная во временной области, может быть использована для сохранения изменений (этап 644).
Если в течение этапа 626 обрабатывающее устройство определяет, что изменения, произведенные отдельными приложениями в течение сессии, будут отменены, то обрабатывающее устройство может определять, включается ли в какие-нибудь изменения удаление файла или каталога (этап 628). Если изменения включают в себя удаление файла или каталога, то обрабатывающее устройство может переместить файл или каталог, сохраненный во временной области, обратно в исходное местоположение (этап 630). Затем обрабатывающее устройство может определить, включают ли изменения в себя добавление файла или каталога (этап 632). Если так, то обрабатывающее устройство может удалить файл или каталог, на которые указывает точка входа, записанная во временной области в течение этапа 612 (этап 634). Затем обрабатывающее устройство может определить, включают ли изменения в себя данные, удаленные из файла (этап 636). Если да, то обрабатывающее устройство может переместить удаленные данные, которые сохранены, из временной области обратно в исходное местоположение (этап 638). После этого обрабатывающее устройство может определить, включают ли изменения в себя данные, которые добавлены в файл (этап 640). Если так, то обрабатывающее устройство может использовать смещения, записанные во временную область (в течение этапа 620), чтобы удалить данные, добавленные в файл.
ФИГ.7А и ФИГ.7В иллюстрируют блок-схемы примерного процесса, который может быть реализован в варианте осуществления изобретения обрабатывающего устройства, согласующийся с раскрытием предмета изобретения. Процесс может выполняться при нажатии или выборе клавиши, или переключателя восстановления. Сначала пользователь входит в обрабатывающее устройство (этап 702). Пользователь может нажать или выбрать клавишу, или переключатель восстановления обрабатывающего устройства (этап 704). Нажатие или выбор клавиши либо переключателя восстановления могут вызвать сигнал, посылаемый процессору обрабатывающего устройства, таким образом побуждая обрабатывающее устройство выдать пользователю запрос для определения типа восстановления (этап 706). В настоящем примерном варианте осуществления изобретения типы восстановления могут включать в себя: восстановление системного файла; восстановление файла данных; восстановление обрабатывающего устройства до заводских настроек по умолчанию и отмена или сохранение изменений сессии. Другие варианты осуществления изобретения могут включать в себя дополнительные или отличные от этих типы восстановления.
Затем обрабатывающее устройство может определить, будут ли восстанавливаться системные файлы (этап 708). Если системные файлы требуется восстановить, то обрабатывающее устройство может взять системные файлы из резервной копии и перезагрузиться (этап 710).
Затем обрабатывающее устройство может определить, будут ли восстанавливаться файлы данных (этап 712). Если обрабатывающее устройство определит, что файлы данных требуется восстановить, то обрабатывающее устройство может взять файлы данных из резервной копии (этап 714).
Если файлы данных не требуется восстанавливать, то обрабатывающее устройство может определить, будет ли обрабатывающее устройство восстанавливаться, используя заводские данные для восстановления, которые могут включать в себя заводские настройки по умолчанию (этап 716). Если обрабатывающее устройство определило, что при восстановлении должны использоваться заводские данные для восстановления, то обрабатывающее устройство может осуществить восстановление системы, используя заводские данные для восстановления, чтобы восстановить рабочее состояние обрабатывающего устройства (этап 718).
Если обрабатывающее устройство не должно восстанавливаться, используя заводские данные для восстановления, то обрабатывающее устройство может определить, следует ли изменения, произведенные в течение сессии, отменить или сохранить (этап 720;ФИГ.7В). Если обрабатывающее устройство определяет, что изменения, произведенные в течение сессии, должны быть отменены или сохранены, то обрабатывающее устройство может отменить или сохранить изменения, произведенные в течение сессии (этап 722).
Если обрабатывающее устройство определяет, что тип восстановления не включает в себя отмену или сохранение изменений сессии, то обрабатывающее устройство может прервать восстановление.
Заключение
Хотя изобретение было описано на языке, характерном для структурных признаков и/или методологических этапов, следует понимать, что изобретение в прилагаемой формуле необязательно ограничивается конкретными признаками или этапами, описанными выше. Скорее, конкретные признаки и этапы, описанные выше, раскрыты как формы примера для реализации формулы изобретения.
Хотя описание, представленное выше, может содержать конкретные детали, они не могут быть никоим образом истолкованы как ограничивающие формулу изобретения. В объем настоящего раскрытия изобретения входят и другие конфигурации для описанной реализации. Более того, реализации, согласующиеся с раскрытием настоящего изобретения, могут иметь больше или меньше этапов, чем здесь описано, или осуществлять эти этапы, в отличном от приведенного порядке. В соответствии с этим, приложенные заявки и их юридически эквивалентные варианты определяют скорее изобретение, а не приведенные конкретные примеры.