СПОСОБ И СИСТЕМА ДЛЯ ОБЕСПЕЧЕНИЯ УДАЛЕНОГО ДОСТУПА К СОСТОЯНИЮ ПРИКЛАДНОЙ ПРОГРАММЫ

1. Способ, содержащий:
a) на серверном компьютере исполнение прикладной программы для выполнения приложения, связанного с ней;
b) на клиентском компьютере, соединенном с серверным компьютером через коммуникационную сеть, исполнение программы удаленного доступа, чтобы обеспечить удаленный доступ к состоянию выполняемого приложения;
c) на клиентском компьютере, генерацию клиентской программы различия, содержащей кодированные данные, указывающие на изменение состояния приложения, полученного последним от серверного компьютера;
d) передачу клиентской программы различия на серверный компьютер;
e) на серверном компьютере исполнение клиентской программы различия для определения обновленного состояния приложения и генерацию серверной программы различия, кодирующей различие между обновленным состоянием приложения и состоянием приложения, посланного последним на клиентский компьютер;
f) передачу серверной программы различия на клиентский компьютер и
g) на клиентском компьютере исполнение серверной программы различия для обновления состояния приложения, полученного последним от серверного компьютера.
2. Способ по п.1, содержащий:
на клиентском компьютере сохранение в его памяти серверных данных клиента, указывающих на состояние приложения, полученного последним от серверного компьютера, и клиентских данных, указывающих на состояние приложения после взаимодействия клиента.
3. Способ по п.2, в котором с) содержит кодирование различия между состоянием приложения после взаимодействия клиента и состоянием приложения, полученного последним от сервера.
4. Способ по п.3, содержащий:
на серверном компьютере сохранение в его памяти серверных данных, указывающих на серверное состояние приложения, и клиентских данных сервера, указывающих на состояние приложения, посланного последним клиенту.
5. Способ по п.4, в котором е) содержит:
определение вторых клиентских данных сервера путем исполнения клиентской программы различия на клиентских данных сервера;
определение обновленных серверных данных путем исполнения клиентской программы различия на серверных данных;
генерацию серверной программы различия, которая кодирует различие между обновленными серверными данными и вторыми клиентскими данными сервера;
определение третьих клиентских данных сервера путем исполнения серверной программы различия на вторых клиентских данных сервера и
замену клиентских данных сервера третьими клиентскими данными сервера.
6. Способ по п.5, в котором g) содержит:
определение вторых серверных данных клиента путем исполнения серверной программы различия на серверных данных клиента;
определение вторых клиентских данных путем исполнения серверной программы различия на клиентских данных;
замену серверных данных клиента вторыми серверными данными клиента и
замену клиентских данных вторыми клиентскими данными.
7. Способ по п.1, содержащий:
на серверном компьютере, сохранение в его памяти серверных данных, указывающих на серверное состояние приложения, и клиентских данных сервера, указывающих на состояние приложения, посланного последним клиенту как серверная программа состояния приложения; и
при этом е) содержит:
определение обновленных серверных данных путем исполнения клиентской программы различия на серверных данных и
генерацию серверной программы различия, которая кодирует различие между обновленными серверными данными и клиентскими данными сервера и
при этом g) содержит:
генерацию данных отображения, указывающих на обновленное состояние приложения, полученного последним от серверного компьютера; и
отображение данных отображения способом, обеспечивающим возможность восприятия человеком.
8. Способ по п.7, содержащий:
на серверном компьютере генерацию серверной программы состояния приложения, содержащей кодированные данные, указывающие на серверное состояние приложения;
передачу серверной программы состояния приложения на клиентский компьютер;
на клиентском компьютере исполнение серверной программы состояния приложения для определения серверного состояния приложения;
генерацию данных отображения, указывающих на обновленное состояние серверного состояния приложения; и
отображение данных отображения способом, обеспечивающим возможность восприятия человеком.
9. Способ по п.1, содержащий:
на клиентском компьютере, генерацию данных отображения, указывающих на обновленное состояние приложения, полученного последним от серверного компьютера; и
отображение данных отображения способом, обеспечивающим возможность восприятия человеком.
10. Способ по п.1, содержащий:
на серверном компьютере исполнение второй клиентской программы различия, полученной от второго клиентского компьютера, для определения второго обновленного состояния приложения и генерации второй серверной программы различия, кодирующей различие между вторым обновленным состоянием приложения и состоянием приложения, посланного последним на второй клиентский компьютер;
передачу второй серверной программы различия на второй клиентский компьютер и
на втором клиентском компьютере исполнение второй серверной программы различия для обновления состояния приложения, полученного последним от серверного компьютера.
11. Способ по п.10, содержащий:
на серверном компьютере генерацию третьей серверной программы различия, кодирующей различие между вторым обновленным состоянием приложения и состоянием приложения, посланного последним на клиентский компьютер;
передачу третьей серверной программы различия на клиентский компьютер и
на клиентском компьютере исполнение третьей серверной программы различия для обновления состояния приложения, полученного последним от серверного компьютера.
12. Способ по п.1, содержащий:
на клиентском компьютере, прием от пользовательского интерфейса, соединенного с ним, данных, указывающих на изменение состояния приложения.
13. Способ по п.1, в котором кодированные данные указывают на путь к изменению в состоянии приложения, тип изменения и значение изменения.
14. Способ по п.1, в котором программы различия включают в себя исполняемые команды для исполнения процессором.
15. Способ по п.1, содержащий исполнение прикладной программы в зависимости от исполненной клиентской программы различия для определения обновленного состояния приложения.
16. Способ по п.1, содержащий исполнение программы удаленного серверного доступа для исполнения клиентской программы различия, осуществления связи с прикладной программой для определения обновленного состояния приложения и генерации серверной программы различия.
17. Способ по п.1, в котором программа удаленного доступа позволяет доступ, ограниченный предопределенной частью состояния приложения.
18. Способ по п.1, содержащий:
на серверном компьютере генерацию серверной программы состояния приложения, содержащей кодированные данные, указывающие на состояние приложения;
передачу серверной программы состояния приложения на клиентский компьютер и
на клиентском компьютере исполнение серверной программы состояния приложения для определения серверного состояния приложения.
19. Носитель данных, содержащий сохраненные на нем исполняемые команды для исполнения на процессоре клиентского компьютера, причем процессор при исполнении команд обеспечивает удаленный доступ к приложению, выполняемому на серверном компьютере, соединенном с ним, при этом процессор выполняет:
генерацию клиентской программы различия, имеющей кодированные данные, указывающие на изменение состояния приложения, полученного последним от серверного компьютера,
передачу клиентской программы различия на серверный компьютер;
прием от серверного компьютера серверной программы различия и
выполнение серверной программы различия для обновления состояния приложения, полученного последним от серверного компьютера.
20. Носитель данных, имеющий сохраненные на нем исполняемые команды для исполнения на процессоре серверного компьютера, причем процессор, при исполнении команд, обеспечивает удаленный доступ к приложению, выполняемому на серверном компьютере, для клиентского компьютера, соединенного с ним, при этом процессор выполняет:
прием от клиентского компьютера клиентской программы различия, имеющей кодированные данные, указывающие на изменение состояния приложения, полученного последним от серверного компьютера;
исполнение клиентской программы различия для определения обновленного состояния приложения и генерации серверной программы различия, кодирующей различие между обновленным состоянием приложения и состоянием приложения, посланного последним на клиентский компьютер; и
передачу серверной программы различия на клиентский компьютер.