1. At a computer system, the computer system including a software repository used to store software related items for a plurality of software units, each software related item being associated with a software unit from among the plurality of software units, a method for storing a software related item in the software repository in a manner that indicates the software related item is associated with a specified software unit, the method comprising:
an act of accessing a software related item that is to be stored in the software repository;
an act of identifying a specified software unit, from among the plurality of software units, associated with the software related item;
an act of referring to a container version mapping to locate a repository container version that corresponds to the specified software unit;
an act of retrieving a container version ID for the repository container from version the container version mapping; and
an act of storing the software related item along with the container version ID in the software repository to indicate that the software related item is associated with the software unit such that if the software repository is queried for software related items associated with the software unit, the software related item, as well as any other software related items stored along with the container version ID, are returned in response to the query.
2. The method as recited in claim 1, wherein the act of accessing a software related item that is to be stored in the software repository comprises an act of accessing metadata describing one or more of the structure of software components, the behavior of software components, and other characteristics useful for organization and control of software components.
3. The method as recited in claim 1, wherein the act of accessing a software related item that is to be stored in the software repository comprises an act of accessing metadata related to one of a programming class, a programming method, and a programming interface.
4. The method as recited in claim 1, wherein the act of accessing a software related item that is to be stored in the software repository comprises an act of accessing software related item that is to be stored in a software repository that stores software related items for different types of software components in different tables
5. The method as recited in claim 1, wherein the act of accessing a software related item that is to be stored in the software repository comprises an act of receiving a user entered request to store the software related item.
6. The method as recited in claim 5, further comprising:
an act of referring to container version security data to determine that the user has sufficient rights to store software related items in the repository container version.
7. The method as recited in claim 1, wherein the act of identifying a specified software unit comprises an act of identifying a specified version of an application, a framework, or a service.
8. The method as recited in claim 1, wherein the act of storing the software related item along with the container version ID in the software repository comprises an act of storing the software related item along with the container version ID in the same row of a database table.
9. At a computer system, the computer system including a software repository used to store software related items for a plurality of software units, each software related item being associated with a software unit from among the plurality of software units, a method for performing an operation for a specified software unit, the method comprising:
an act of receiving a command to perform a specified operation on a software unit;
an act of referring to a container version mapping to locate a repository container version that corresponds to the software unit;
an act of retrieving a container version ID for the repository container version from the container version mapping;
an act of querying the software repository for any software related items that are stored along with container version ID for the repository container;
an act of receiving references to a plurality of software related items from the software repository in response the query; and
an act of performing the specified operation on each software related item in the plurality of referenced software related items to effectuate performing the specified operation on the software unit.
10. The method as recited in claim 9, wherein the act of receiving a command to perform a specified operation on a software unit comprises an act of receiving a command to replicate or partition a software unit.
11. The method as recited in claim 9, wherein the an act of receiving a command to perform a specified operation on a software unit comprises an act of receiving a user entered command to a specified operation on a software unit.
12. The method as recited in claim 11, further comprising:
an act of referring to container version security data to determine that the user has sufficient rights to perform the specified operation in the repository container version.
13. The method as recited in claim 9, wherein the act of querying the software repository for any software related items that are stored along with container version ID for the repository container version comprises an act of querying a plurality of different tables in the software repository for software related items designated by the container version ID as corresponding to the repository container version.
14. The method as recited in claim 9, wherein an act of receiving references to a plurality of software related items from the software repository in response the query comprises an act of receiving references to rows of a plurality of different database tables within the software repository.
15. The method as recited in claim 9, wherein an act of performing the specified operation on each software related item in the plurality of referenced software related items comprises an act of replicating each software related item in the plurality of referenced software related items to effectuate replicating the software unit.
16. The method as recited in claim 9, wherein an act of performing the specified operation on each software related item in the plurality of referenced software related items comprises an act of partitioning each software related item in the plurality of referenced software related items to effectuate partitioning the software unit
17. The method as recited in claim 9, wherein an act of performing the specified operation on each software related item in the plurality of referenced software related items comprises an act of performing the specified operation on metadata describing one or more of the structure of software components, the behavior of software components, and other characteristics useful for organization and control of software components.
18. The method as recited in claim 9, wherein an act of performing the specified operation on each software related item in the plurality of referenced software related items comprises an act of performing the specified operation on metadata corresponding to a specific version of an application, framework, or service.
19. A computer system, comprising:
one or more processors;
system memory; and
one or more physical recordable-type computer-readable media having stored thereon a data structure representing a container version mapping and a data structure representing a software repository;
the container version mapping including for each software unit:
a software unit field storing a deployable unit value that identifies the software unit, from among the plurality of software units; and
a container version ID field storing a container version identifier value, the container version identifier value used within the software repository to identify a repository container version mapped to the software unit identified by the software unit value stored in the software unit field; and
the software repository configured to store software related items for a plurality of software units, each software related item being associated with a software unit from among the plurality of software units, the software repository including a plurality of tables storing software related items by item type, each table including:
a plurality of rows of software related items corresponding to a specified item type, each row including
a software related item data field storing software related data; and
a container version ID field storing a container version ID value from a container version mapping for a software unit, the container version ID value designating that the software related data stored in the software related item data field corresponds to the repository container version that is mapped to the software unit.
20. The computer system as recited in claim 19, wherein the one or more physical recordable-type computer-readable media have stored thereon repository version security data represent rights for accessing repository container versions, the repository version security data including a user entry for a plurality of different user identifiers, entry including:
a container version ID field storing a container version identifier value, the container version identifier value used within the software repository to identify a repository container version for a software unit; and
a rights field storing rights data indicating the rights of a user to perform operations on software related item data stored in the repository container version identified by the container version ID field stored in the container version ID field of the repository version security data.
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 method of fabricating a semiconductor device, comprising:
forming a buffer pattern on a substrate, the buffer pattern including germanium;
recrystallizing the buffer pattern to form a strained relaxation buffer pattern; and
forming a tensile silicon cap on the strained relaxation buffer pattern, the cap being under tensile strain.
2. The method as claimed in claim 1, wherein a concentration of germanium in the strained relaxation buffer pattern increases in a direction from the substrate toward the cap.
3. The method as claimed in claim 1, wherein the buffer pattern is a silicon-germanium buffer pattern.
4. The method as claimed in claim 1, wherein the buffer pattern is a germanium buffer pattern.
5. The method as claimed in claim 1, wherein recrystallizing the buffer pattern includes a LEG process.
6. The method as claimed in claim 5, wherein the LEG process includes irradiating a laser onto the buffer pattern so as to melt the buffer pattern and a surface of the substrate underneath the buffer pattern.
7. The method as claimed in claim 1, further comprising, prior to recrystallizing the buffer pattern, forming an isolation layer defining an active region in the substrate, and recessing a top surface of the active region.
8. The method as claimed in claim 7, wherein the isolation layer is formed prior to forming the buffer pattern.
9. The method as claimed in claim 1, wherein the buffer pattern is formed to a thickness of about 1 nm to about 300 nm.
10. The method as claimed in claim 1, wherein the buffer pattern is formed to a thickness of about 10 nm to about 20 nm.
11. The method as claimed in claim 1, further comprising forming a gate electrode over the cap, such that the cap is interposed between the gate electrode and the strained relaxation buffer pattern, and the strained relaxation buffer pattern crosses beneath the gate electrode.
12. The method as claimed in claim 11, wherein the gate electrode is a gate electrode of an NMOS transistor, the method further comprising forming a PMOS transistor adjacent to the NMOS transistor.
13. The method as claimed in claim 12, wherein forming the PMOS transistor includes:
forming a second buffer pattern on the substrate, the second buffer pattern including germanium,
forming a second cap on the second buffer pattern, and
forming a second gate electrode on the second cap.
14. The method as claimed in claim 13, wherein the buffer pattern and the second buffer pattern are formed at the same time.
15. The method as claimed in claim 13, wherein the buffer pattern and the second buffer pattern have a same thickness, and
the cap and the second cap have a same thickness.
16. The method as claimed in claim 13, wherein the second buffer pattern is not recrystallized.
17. The method as claimed in claim 16, further comprising, prior to recrystallizing the buffer pattern, forming a mask pattern that exposes the buffer pattern and covers the second buffer pattern, and
recrystallizing the buffer pattern using a LEG process.
18. The method as claimed in claim 16, wherein forming the PMOS transistor further includes introducing a P-type impurity into the second buffer pattern on opposite sides of the second gate electrode.
19. The method as claimed in claim 13, wherein the second buffer pattern is recrystallized to form a second strained relaxation buffer pattern prior to forming the second cap.