1460925585-6f01805c-9962-48d5-8e7e-c95d229ba6aa

I claim:

1. A tooth-bleaching composition for contacting a tooth surface in a subject, comprising:
a hydrogen peroxide-containing compound; and
a matrix for administering the hydrogen peroxide-containing compound to the tooth surface, the matrix comprising a thickening agent, an agent for stabilizing the hydrogen peroxide-containing compound, a pH adjusting agent and a calcium chelating agent, wherein the pH of the tooth-bleaching composition during the bleaching process is substantially constant within a range of pH 6.0-10.
2. A tooth-bleaching composition according to claim 1, wherein the hydrogen peroxide-containing compound is hydrogen peroxide.
3. A tooth-bleaching composition according to claim 1, wherein the hydrogen peroxide-containing compound is carbamide peroxide.
4. A tooth-bleaching composition according to claim 1, wherein the hydrogen peroxide-containing compound is a percarbonate salt.
5. A tooth-bleaching composition according to claim 4, wherein the percarbonate salt is selected from the group consisting of sodium and potassium percarbonate.
6. A tooth-bleaching composition according to claim 1, wherein the composition has a pH in the range of pH 7.0-10.0.
7. A tooth-bleaching composition according to claim 6, wherein the composition has a pH in the range of pH 8.0-9.5.
8. A tooth-bleaching composition, according to claim 1, wherein the calcium chelating agent is selected from the group consisting of EDTA and its salts, citric acid and its salts, gluconic acid and its salts, alkali metal pyrophosphates and alkali metal polyphosphates.
9. A tooth-bleaching composition, according to claim 8, wherein the calcium chelating agent further acts as a stabilizing agent for the peroxide containing composition.
10. A tooth-bleaching composition, according to claim 9, wherein wherein the calcium chelating agent is 1-hydroxyethylidene-1,1-diphosphonic acid.
11. A tooth-bleaching composition according to claim 1, wherein the composition is capable of a detectable tooth-bleaching effect within 30 minutes.
12. A tooth-bleaching composition according to claim 2, wherein the concentration of hydrogen peroxide in the composition is less than 15% by weight of the formulation.
13. A tooth-bleaching composition according to claim 1, further comprising a means for mixing selected components of the composition by the subject prior to administration to the tooth surface.
14. A dosage delivery unit for tooth bleaching, comprising:
a multi-chamber vessel wherein each chamber is responsive to an applied pressure from an external source, such that a mixture of reagents contained within a compartment will be forced to exit the compartment through a mixing baffle in response to the externally-applied pressure, the combined reagents comprising a peroxide-containing composition according to claim 1.
15. A dosage delivery unit according to claim 14, in which the peroxide-containing composition is a percarbonate salt.
16. A method for bleaching teeth comprising:
(a) preparing a composition according to claim 1, and
(b) administering the formulation to the tooth surface.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A computing system, comprising:
a first virtual machine, executing on a processor, and associated with:
a memory region readable by the first virtual machine; and
a first private memory region,

a shareable memory region defined by first data that is readable and writable by the first virtual machine and a second virtual machine,
wherein a mapping is established between the first virtual machine and a particular area of the shareable memory region; and

the second virtual machine, executing on the processor, and associated with:
a second private memory region, and
a reference to the particular area of the shareable memory region,

wherein the mapping enables both the first virtual machine and second virtual machine to read and write second data in the shareable memory region without creating a copy of any portion of the second data in the first and second private memory regions.
2. The computing system of claim 1, wherein the first data is a SharedClassLoader that is obtained from a Java\xae JAR file that is shared among a plurality of virtual machines, wherein the first data corresponds to at least one Java\xae class in the SharedClassLoader.
3. The computing system of claim 2, wherein the SharedClassLoader is serialized, wherein the serialized SharedClassLoader comprises a single reference and an identifier and is used to pass complex objects between the plurality of virtual machines.
4. The computing system of claim 1, wherein the second virtual machine instantiates the second data from the first data.
5. The computing system of claim 1, wherein the shareable memory region comprises at least one shareable heap.
6. The computing system of claim 5, wherein performing garbage collection on the at least one shared heap comprises:
performing garbage collection on the private heap of the first virtual machine and the private heap of the second virtual machine first; and
performing garbage collection on the at least one shareable heap, while locking all the private heaps.
7. The computing system of claim 6, wherein performing garbage collection on the private heap of one of the first virtual machine and the second virtual machine, comprises:
accessing a list of ProcessLocalReferences in the shared memory region;
adding a list of actual references from the ProcessLocalReferences to a list of roots when garbage collection is performed on the private heaps; and
performing garbage collection on the private heaps using the list of roots.
8. The computing system of claim 5, further comprising:
performing garbage collection on the private heap of the first virtual machine;
performing garbage collection on the private heap of the second virtual machine; and
performing garbage collection on the at least one shareable heap.
9. The computing system of claim 8, further comprising:
performing garbage collection on the shareable memory region.
10. A computer-readable storage medium configured to store instructions, that when executed by one or more processors, performs a method for sharing a programmatic module among isolated virtual machines, comprising:
creating first data in a defined shareable memory region that is readable and writable by the first virtual machine;
establishing a mapping between the first virtual machine and a second virtual machine over a particular area of the shareable memory region; and
passing, to the second virtual machine, a reference to a particular area of the shareable memory region,
wherein the mapping enables the second virtual machine to read and write second data in the shareable memory region without creating a copy of any portion of the second data in a private memory region of one selected from a group consisting of the first virtual machine and the second virtual machine.
11. The computer-readable storage medium of claim 10, wherein the programmatic module is a Java\xae JAR file, and wherein the first data corresponds to at least one Java\xae class.
12. The computer-readable storage medium of claim 10, wherein the second virtual machine instantiates the second data from the first data.
13. The computer-readable storage medium of claim 10, wherein the shareable memory region comprises at least one shareable heap.
14. The computer-readable storage medium of claim 13, further comprising instructions for creating, in a private heap of one selected from a group consisting of the first virtual machine and the second virtual machine, at least one object that references an object in the at least one shareable heap.
15. The computer-readable storage medium of claim 14, further comprising instructions for creating, in the at least one shareable heap, at least one special object of type ProcessLocalReference that references an object in a private heap of one selected from a group consisting of the first virtual machine and the second virtual machine.
16. The computer-readable storage medium of claim 15, wherein the instructions for creating the at least one object in the at least one shareable heap further include using an indirect process-private object reference that is valid only for the assigning process.
17. The computer-readable storage medium of claim 16, further comprising instructions for performing garbage collection on the private heap of one selected from a group consisting of the first virtual machine and the second virtual machine and the at least one shareable heap.
18. The computer-readable storage medium of claim 16, wherein the shared memory includes a data structure ProcessLocalReferences providing a mapping of virtual machine identifiers to the indirect process-private object reference.
19. The computer-readable storage medium of claim 18, further comprising instructions for performing garbage collection on the private heap of either the first virtual machine or the second virtual machine, the garbage collection comprising:
accessing the data structure ProcessLocalReferences in the shared memory region;
adding a list of actual references from the ProcessLocalReferences to a list of roots when garbage collection is performed on the private heaps; and
performing garbage collection on the private heaps using the list of roots.
20. The computer-readable storage medium of claim 17, further comprising instructions for:
performing garbage collection on the private heap of the first virtual machine;
performing garbage collection on the private heap of the second virtual machine; and
performing garbage collection on the at least one shareable heap.