Providing a reliable operating system for clients of a net-booted environment
First Claim
Patent Images
1. A computer implemented method comprising:
- a network computer (NC) client booting from a boot image provided by an NC server, the boot image including information identifying a location of one or more system volumes on the NC server, the one or more system volumes containing operating system software to establish an operating environment for the NC client; and
in response to an attempt to modify contents of the one or more system volumes, the NC client causing information identifying a modification associated with the attempt to be recorded on the NC server separate from the one or more system volumes in a storage area associated with the NC client, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table.
0 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus are provided for supplying a reliable and maintainable operating system in a net-booted environment. According to one embodiment, a network computer (NC) client boots from a boot image provided by an NC server. The boot image includes information identifying the location of one or more system volumes on the NC server that contain operating system software. In response to an attempt to modify the contents of the one or more system volumes, the NC client causes information identifying the modification to be recorded on the NC server separate from the one or more system volumes in a storage area associated with the NC client.
133 Citations
18 Claims
-
1. A computer implemented method comprising:
-
a network computer (NC) client booting from a boot image provided by an NC server, the boot image including information identifying a location of one or more system volumes on the NC server, the one or more system volumes containing operating system software to establish an operating environment for the NC client; and in response to an attempt to modify contents of the one or more system volumes, the NC client causing information identifying a modification associated with the attempt to be recorded on the NC server separate from the one or more system volumes in a storage area associated with the NC client, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A network computer (NC) client comprising:
-
a bootstrapping means for booting from a boot image provided by an NC server, the boot image including information identifying a location of one or more system volumes on the NC server, the one or more system volumes containing operating system software to establish an operating environment for the NC client; and a redirecting means, responsive to an attempt to modify contents of the one or more system volumes, for causing information identifying a modification associated with the attempt to be recorded on the NC server separate from the one or more system volumes in a storage area associated with the NC client, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table. - View Dependent Claims (7)
-
-
8. A computer-implemented method comprising:
-
a network computer (NC) client booting from a boot image provided by an NC server, the boot image including information identifying a location of one or more system volumes on the NC server, the one or more system volumes containing operating system software to establish an operating environment for the NC client; the NC client mounting the one or more system volumes; and in response to a write request from a file system of the NC client that contains a modification to the one or more system volumes, a block device driver of the NC client redirecting the write request and causing information identifying the modification to be recorded on the NC server in a storage area associated with the NC client that is separate from the one or more system volumes, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table.
-
-
9. A computer-implemented method comprising:
-
a network computer (NC) client booting from a boot image provided by an NC server, the boot image including information identifying a location of one or more system volumes on the NC server, the one or more system volumes containing operating system software that has one or more customizable attributes; and in response to a change to an attribute of the one or more customizable attributes, the NC client causing information identifying the change to be recorded on the NC server in a storage area associated with the NC client that is separate and distinct from the one or more system volumes, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table.
-
-
10. A computer-implemented method comprising:
-
a network computer (NC) server providing a boot image to an NC client, the boot image including information identifying a location on the NC server of one or more system volumes containing operating system software to establish an operating environment for the NC client; and in response to a write request from the NC client that contains a modification to the operating system software, the NC server recording information identifying the modification on the NC server in a storage area associated with the NC client that is separate from the one or more system volumes, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A network computer (NC) server comprising:
-
a boot server means for providing a boot image to an NC client, the boot image including information identifying a location on the NC server of one or more system volumes containing operating system software to establish an operating environment for the NC client; and a storage management means for recording information identifying a modification to the operating system software in a storage area associated with the NC client that is separate from the one or more system volumes, the storage management means operative in response to a write request from the NC client that contains the modification, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table.
-
-
16. A machine-readable storage medium having stored thereon data representing sequences of instructions, the sequences of instructions which, when executed by a processor, cause the processor to perform:
-
providing a boot image to a network computer (NC) client, the boot image including information identifying a location on an NC server of one or more system volumes containing operating system software to establish an operating environment for the NC client; and in response to a write request from the NC client that contains a modification to the operating system software, recording information identifying the modification in a storage area associated with the NC client that is separate from the one or more system volumes, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table.
-
-
17. In a network computer (NC) system, a method comprising:
-
an NC server providing a boot image to an NC client, the boot image including information identifying a location on the NC server of one or more system volumes containing operating system software to establish an operating environment for the NC client; the NC client booting from the boot image provided by the NC server; the NC client mounting the one or more system volumes; in response to a write request from a file system of the NC client that contains a modification to the one or more system volumes, a block device driver of the NC client redirecting the write request to a storage area on the NC server that is associated with the NC client and which is separate from the one or more system volumes; the NC server receiving the write request from the NC client; and the NC server causing information identifying the modification to be recorded in the storage area associated with the NC client, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table.
-
-
18. A network computer (NC) system comprising:
-
an NC server configured to provide a boot image to one or more NC clients associated with the NC system, the boot image including information identifying a location on the NC server of one or more system volumes containing operating system software to establish an operating environment for the NC client; and an NC client coupled in communication with the NC server, the NC client configured to receive and boot from the boot image, the NC client including a file system process and a block device driver, the block device driver configured to redirect write requests directed to the one or more system volumes to a storage area on the NC server that is associated with the NC client and which is separate from the one or more system volumes, wherein the recorded information identifying the modification is stored in a separate volume separated from the one or more system volumes, wherein the separate volume is partitioned into a plurality of bands, each band having a predetermined number of blocks, wherein the separate volume is written in a band increments rather than as an entire file, wherein a modification to a file in the one or more system volumes is partitioned into one or more bands and only those bands that have actually been modified are stored in one or more bands of the separate volume, and wherein the modified bands of the file in the one or more system volumes and the corresponding one or more bands of the separate volume are mapped by a band table.
-
Specification