Adaptive GUI pre-fetching
First Claim
1. A method performed by a computing device, the method comprising:
- receiving a command from a user to initiate a graphical user interface (GUI) session on a client device, the GUI session providing the user with control over a system via a set of GUI pages;
selecting, with reference to user profile data associated with the user, a strict subset of the set of GUI pages, the user profile data indicating a plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions, the strict subset consisting of the plurality of GUI pages; and
causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device, the pre-fetched pages being accessible by the user faster than GUI pages which have not been pre-fetched;
wherein;
the system is a data storage system; and
particular GUI pages of the set of GUI pages are associated with particular data storage system management tasks;
certain other GUI pages of the set of GUI pages are associated with certain other storage system management tasks which depend on one of the particular data storage system management tasks having already been performed;
the strict subset of the set of GUI pages includes as least one GUI page of the particular GUI pages of the set of GUI pages, the at least one GUI page being associated with a particular data storage system management task;
the strict subset of the set of GUI pages includes at least one other GUI page of the certain other GUI pages of the set of GUI pages, the at least one other GUI page being associated with another storage system management task which depends on the particular data storage system management task having already been performed; and
causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device includes causing the at least one GUI page to be pre-fetched into memory prior to causing the at least one other GUI page to be pre-fetched into memory.
9 Assignments
0 Petitions
Accused Products
Abstract
One embodiment is directed to a method performed by a computing device. The method includes (1) receiving a command from a user to initiate a graphical user interface (GUI) session on a client device, the GUI session providing the user with control over a system via a set of GUI pages, (2) selecting, with reference to user profile data associated with the user, a strict subset of the set of GUI pages, the user profile data indicating a plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions, the strict subset consisting of the plurality of GUI pages, and (3) causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device, the pre-fetched pages being accessible by the user faster than GUI pages which have not been pre-fetched.
-
Citations
16 Claims
-
1. A method performed by a computing device, the method comprising:
-
receiving a command from a user to initiate a graphical user interface (GUI) session on a client device, the GUI session providing the user with control over a system via a set of GUI pages; selecting, with reference to user profile data associated with the user, a strict subset of the set of GUI pages, the user profile data indicating a plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions, the strict subset consisting of the plurality of GUI pages; and causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device, the pre-fetched pages being accessible by the user faster than GUI pages which have not been pre-fetched; wherein; the system is a data storage system; and particular GUI pages of the set of GUI pages are associated with particular data storage system management tasks; certain other GUI pages of the set of GUI pages are associated with certain other storage system management tasks which depend on one of the particular data storage system management tasks having already been performed; the strict subset of the set of GUI pages includes as least one GUI page of the particular GUI pages of the set of GUI pages, the at least one GUI page being associated with a particular data storage system management task; the strict subset of the set of GUI pages includes at least one other GUI page of the certain other GUI pages of the set of GUI pages, the at least one other GUI page being associated with another storage system management task which depends on the particular data storage system management task having already been performed; and causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device includes causing the at least one GUI page to be pre-fetched into memory prior to causing the at least one other GUI page to be pre-fetched into memory. - View Dependent Claims (7, 8, 9)
-
-
2. A method performed by a computing device, the method comprising:
-
receiving a command from a user to initiate a graphical user interface (GUI) session on a client device, the GUI session providing the user with control over a system via a set of GUI pages; selecting, with reference to user profile data associated with the user, a strict subset of the set of GUI pages, the user profile data indicating a plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions, the strict subset consisting of the plurality of GUI pages; and causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device, the pre-fetched pages being accessible by the user faster than GUI pages which have not been pre-fetched; wherein; the user profile data indicating the plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions includes data associating each GUI page of the plurality of GUI pages with particular previous GUI sessions during which the user accessed that GUI page; the data associating each GUI page of the plurality of GUI pages with particular previous GUI sessions associates each GUI page with particular previous GUI sessions drawn from N most recent previous GUI sessions; the data associating each GUI page of the plurality of GUI pages with particular previous GUI sessions drawn from N most recent previous GUI sessions includes a set of N previous user session lists, each previous user session list listing GUI pages accessed by the user in a distinct previous user session; each previous user session list includes a respective order in which the user accessed the GUI pages in the respective distinct previous user session of that previous user session list; selecting, with reference to the user profile data associated with the user, the strict subset of the set of GUI pages includes providing an ordering for the plurality of GUI pages of the strict subset based on the orders of the previous user session lists; and causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device includes causing GUI pages of the strict subset which are higher on the ordering to be pre-fetched before pages of the strict subset which are lower on the ordering. - View Dependent Claims (3, 4, 5, 6)
-
-
10. A computer program product comprising a non-transitory computer-readable storage medium storing a set of instructions, which, when executed by a computer causes the computer to perform the operations of:
-
receiving a command from a user to initiate a graphical user interface (GUI) session on a client device, the GUI session providing the user with control over a system via a set of GUI pages; selecting, with reference to user profile data associated with the user, a strict subset of the set of GUI pages, the user profile data indicating a plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions, the strict subset consisting of the plurality of GUI pages; and causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device, the pre-fetched pages being accessible by the user faster than GUI pages which have not been pre-fetched; wherein; the user profile data indicating the plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions includes data associating each GUI page of the plurality of GUI pages with particular previous GUI sessions during which the user accessed that GUI page; the data associating each GUI page of the plurality of GUI pages with particular previous GUI sessions associates each GUI page with particular previous GUI sessions drawn from N most recent previous GUI sessions; the data associating each GUI page of the plurality of GUI pages with particular previous GUI sessions drawn from N most recent previous GUI sessions includes a set of N previous user session lists, each previous user session list listing GUI pages accessed by the user in a distinct previous user session; each previous user session list includes a respective order in which the user accessed the GUI pages in the respective distinct previous user session of that previous user session list; selecting, with reference to the user profile data associated with the user, the strict subset of the set of GUI pages includes providing an ordering for the plurality of GUI pages of the strict subset based on the orders of the previous user session lists; and causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device includes causing GUI pages of the strict subset which are higher on the ordering to be pre-fetched before pages of the strict subset which are lower on the ordering. - View Dependent Claims (11, 12, 13)
-
-
14. An apparatus comprising:
-
memory, the memory storing; a set of graphical user interface (GUI) pages; and user profile data associated with a user; and a processor, the processor being configured to; receive a command from a user to initiate a GUI session on a client device, the GUI session providing the user with control over a system via the set of GUI pages; select, with reference to the user profile data associated with the user, a strict subset of the set of GUI pages, the user profile data indicating a plurality of GUI pages of the set of GUI pages that the user has accessed in previous GUI sessions, the strict subset consisting of the plurality of GUI pages; and cause the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device, the pre-fetched pages being accessible by the user faster than GUI pages which have not been pre-fetched; wherein; the system is a data storage system; and particular GUI pages of the set of GUI pages are associated with particular data storage system management tasks; certain other GUI pages of the set of GUI pages are associated with certain other storage system management tasks which depend on one of the particular data storage system management tasks having already been performed; the strict subset of the set of GUI pages includes as least one GUI page of the particular GUI pages of the set of GUI pages, the at least one GUI page being associated with a particular data storage system management task; the strict subset of the set of GUI pages includes at least one other GUI page of the certain other GUI pages of the set of GUI pages, the at least one other GUI page being associated with another storage system management task which depends on the particular data storage system management task having already been performed; and causing the plurality of GUI pages of the strict subset to be pre-fetched into memory of the client device includes causing the at least one GUI page to be pre-fetched into memory prior to causing the at least one other GUI page to be pre-fetched into memory. - View Dependent Claims (15, 16)
-
Specification