Date: Fri, 29 Mar 2024 13:37:06 +0000 (UTC)
Message-ID: <1160195184.1359.1711719426256@34fc92c9345b>
Subject: Exported From Confluence
MIME-Version: 1.0
Content-Type: multipart/related;
boundary="----=_Part_1358_103317009.1711719426255"
------=_Part_1358_103317009.1711719426255
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Content-Location: file:///C:/exported.html
JDK Glossary of Terms
JDK Glossary of Terms
A work in progress, from my blog at http://blogs.oracle.com/kto/entry/glossary_for_jdk_builds.
- 32bit build=20
- Builds done on 32bit machines, or creating 32bit native code object fil=
es, libraries, and executables. A 32bit JDK build always includes a complet=
e JDK image.
- 6-open=20
- Release name for OpenJDK 6.
- 64bit build=20
- Builds done on 64bit capable machine and creating 64bit native code obj=
ect files, libraries, and executables. On Linux 64bit and Windows 64bit, a =
64bit build is a complete JDK build, and although a 32bit build could be do=
ne on a 64bit Linux or Windows machines, it's not common practice. On Solar=
is, a 64bit build is just the native code object files, libraries, and exec=
utables, which means that a Solaris 64bit build needs to be 'added on' to a=
Solaris 32bit build. Only on Solaris can you run one JDK and ask for eithe=
r a 32bit execution (-d32) or a 64bit execution (-d64).
- ARCH_DATA_MODEL=20
- Makefile variable setting that determines if it is a 32 or 64 bit build=
. Set to 32 or 64.
- ALT_setting
- Makefile variable naming convention used in JDK Makefiles to select alt=
ernative paths, locations, or settings.
- ALT_BINARY_PLUGS_PATH=20
- Location of OpenJDK binary plugs.
- ALT_BOOTDIR=20
- Location of JDK used to build the JDK, usually the previously released =
JDK.
- ALT_COMPILER_PATH=20
- Alternative location for the native compiler to use.
- ALT_CORBA_DIST=20
- The location of the corba "dist" directory to get the corba files from.=
- ALT_CUPS_HEADERS_PATH=20
- Location of the CUPS include files.
- ALT_DEPLOY_MSSDK=20
- Location of Platform SDK installation (Windows only).
- ALT_DXSDK_PATH=20
- Location of DirectX 9 SDK installation (Windows only).
- ALT_FREETYPE_HEADERS_PATH=20
- Location of the freetype native include files.
- ALT_FREETYPE_LIB_PATH=20
- Location of the freetype native libraries.
- ALT_JAXP_DIST=20
- The location of the jaxp "dist" directory to get the jaxp files from.=
li>
- ALT_JAXWS_DIST=20
- The location of the jaxws "dist" directory to get the jaxws files from.=
- ALT_JDK_IMPORT_PATH=20
- The location of the JDK import image. This is used to fill in the gaps =
when doing partial builds of the jdk. This should be a recent build of the =
same version of the JDK you are building.
- ALT_LANGTOOLS_DIST=20
- The location of the langtools "dist" directory to get the javac files f=
rom.
- ALT_PARALLEL_COMPILE_JOBS=20
- On Linux and Solaris, the parallel build feature of GNU make is used to=
build all the object files for a library in parallel, based on this settin=
g. Depending on the number of CPUs you have, this number should be set to s=
omething between nCPUS+1 and nCPUS*2. Each system is different and some exp=
erimentation may be required.
- ALT_PREVIOUS_JDK_IMAGE=20
- When doing a full control build, one of the last steps is to compare th=
e JDK image you just created with a previous JDK image. This is the image y=
ou will compare with. Often this is the previous JDK release, and could be =
the same as ALT_BOOTDIR.
- ALT_SLASH_JAVA=20
- Many of the default paths for the various ALT_* settings are rooted at =
the path "/java/" or "J:/" on Windows. This variable allows you to change t=
hat root in case you have created an exact copy of the "/java/" area in a l=
ocal disk area or faster access location. Unfortunately, this layout isn't =
completely documented and may need to be deduced from the output of 'gnumak=
e sanity' output.
- BOOTDIR=20
- BUG=20
- BugID=20
- CCC=20
- JDK compatibility process for developers. TBD for OpenJDK.
- CR=20
- Change Request=20
- A Change Request or CR (also referred to as a bug, rfe, or bugid) is an=
entry in the Sun bug tracking system. These can be seen partially from http:=
//bugs.sun.com. The OpenJDK bug tracking system is TBD, but for now CR'=
s will have to do. A CR number is a 7 digit number, and one of these is req=
uired for every change made to the JDK sources. If you see the 7 character =
pattern "NoBugID" used, it means that no official CR was created for this c=
hange, you should rarely if ever see them.
- Core libraries=20
- A subset of the JDK is considered to be the Core Libraries.
- DSCM=20
- Distributed Source Code Management (SCM) system. Some examples are Team=
Ware, Mercurial, and git. Users can 'clone' or create child repositories or=
workspaces that are complete copies allowing for distributed development t=
hat can optionally be merged back into the primary branch of development or=
not. CVS and SubVersion are not distributed, there is only one instance of=
a repository.
- GTEE=20
- An internal Sun testing grid system used to test JDK promotions and rel=
eases.
- HotSpot=20
- The JDK VM or JVM. There are various implementations of the HotSpot VM:=
client, server, tiered, and kernel.
- Hotspot Express=20
- A new release model which somewhat disconnects the Hotspot VM releases =
from the JDK releases. Depending on the JDK release or the update release, =
the Hotspot team will choose which version of Hotspot will be integrated in=
to that JDK. This creates a separate version and build number for the Hotsp=
ot VM inside the JDK, seen when you run 'java -version' saying something li=
ke "build 11.0-b15" or Hotspot version 11 build 15.
- JAVA_HOME=20
- An environment variable used to trigger the 'java' found in your PATH t=
o use a different JDK image. Unfortunately, not all 'java' startup scripts =
obey this env variable. It's also used by many java tool startup scripts to=
determine what 'java' to run, bypassing the 'java' found in the PATH setti=
ng. Setting this variable during a JDK build is a bad idea, don't do it.
- JDK_IMPORT_PATH=20
- JPRT=20
- An internal Sun build system that was created from the hotspot specific=
PRT build system.
- MASTER=20
- The name given to the primary or master copy of the sources for a relea=
se. It is the MASTER sources that JDK promotion builds are built from.
- NoBugID=20
- PIT=20
- A formal testing process that integrators are required to go thorough p=
rior to integrating their source changes into the MASTER area.
- Platform SDK=20
- Also spelled "PlatformSDK" or just 'PSDK". This is a Platforms specific=
SDK kit that must be installed on Windows systems in order to build the JD=
K. With Windows 32bit, the Visual Studio 2003 compiler installation may inc=
lude at least a partial PlatformSDK image, but the full Windows Platform SD=
K may also need to be installed on 32bit systems. On Windows 64bit systems,=
the PlatformSDK is critical because the native compiler for 64bit will com=
e from this SDK. The specific version of the PlatformSDK you install is cri=
tical, and depends on the version of the JDK you are building.
- PRT=20
- PSDK=20
- RFE=20
- SCCS=20
- Source Code Control System. Unix per-file source code change system. Us=
ed by TeamWare to manage the changes to individual files.
- SCCS keyword=20
- A pattern of a '%' uppercase letter and another '%', e.g. %W%, that whe=
n used in a source file controlled by SCCS would get expanded on a 'sccs ge=
t' operation and not expanded during the edit of a source file. Lots of dif=
ferent types of keywords were available, e.g. version numbers of files, dat=
es of changes, etc.
- SCCS revision=20
- The commit of a change to an SCCS file creates an SCCS rev for that fil=
e.
- SDK=20
- Software Development Kit. A horribly overused term which means a big ba=
g of stuff that is usually associated with helping you develop some kind of=
software that uses a particular API or platform.
- SOS8=20
- Version 8 of the Sun Studio native compilers and tools. This version wa=
s used in the jdk5 release.
- SOS9=20
- Version 9 of the Sun Studio native compilers and tools. This version wa=
s never used for any jdk releases.
- SS10=20
- Version 10 of the Sun Studio native compilers and tools. This version w=
as used for the Solaris X64 bits of jdk5, and for the initial builds of jdk=
6 before it was released.
- SS11=20
- Version 11 of the Sun Studio native compilers and tools. This version w=
as used for the jdk6 release, and what is being used now for the jdk7 build=
s.
- SS12=20
- Version 12 of the Sun Studio native compilers and tools. Most recent re=
lease, and will probably be one used to build jdk7. This release also has L=
inux X86 compilers, use of the Linux release is being investigated.
- VC6=20
- The old Microsoft C/C++ compilers and tools used to build jdk5 on Windo=
ws 2000 32bit.
- VS2003=20
- Visual Studio 2003 .NET. Used to build jdk6 on Windows 2000 32bit.
- VS2005=20
- Visual Studio 2005 .NET. Some kind of preliminary VS2005 64bit version =
was part of the PlatformSDK used to build jdk6 and jdk7 Windows 2003 64bit =
builds.
- ant=20
- Build tool used by some parts of the jdk7 sources.
- approval=20
- Term used to indicate either approval of a webrev by a fellow engineer,=
or higher level approval by a group that indicates the changes have been a=
pproved for putback or integration.
- binary plugs=20
- The missing parts of the JDK whose source is not available in the OpenJ=
DK. These are quickly being replaced with open source versions, so the hope=
is that some day we would talk about these in the past tense, e.g. "Rememb=
er when we had those painful binary plugs?". :^)
- bringover=20
- TeamWare action of pulling changes from one workspace to another. Confl=
icts are allowed and would have to be resolved.
- build flavor=20
- Usually "product", "debug", or "fastdebug", and reflects how the source=
code was compiled. The product build flavor is usually optimized code with=
no assert type checking left in the product and little debugging informati=
on. The debug build is usually not optimized at all, has all assert checkin=
g in place and complete debug information. The fastdebug build is a debug b=
uild but with as much optimization of the code as feasible.
- ccc=20
- changeset=20
- Mercurial term used to describe a complete change. Can include file cha=
nges, file deletes, file renames, and file additions.
- code review=20
- commit=20
- Mercurial action that actually creates a formal changeset.
- conflict=20
- When separate changes are made to the same file and they have to be res=
olved or merged.
- control=20
- The name of the jdk workspace that controls the complete jdk build.
- control build=20
- Using the control workspace to build the jdk.
- corba=20
- The jdk workspace that contains all the corba contributions to jdk7.
- cygwin=20
- Windows open source software than can be used to build the jdk.
- deploy=20
- The jdk workspace that contains the plugins and java webstart.
- extension=20
- Mercurial term for adding functionality, e.g. the "forest extension".=
li>
- findbugs=20
- Software that can be used to find common bug patterns in classfiles and=
Java sources.
- gatekeeper=20
- gcc=20
- The GNU C compiler, sometimes also refers to the GNU C++ compiler g++.<=
/li>
- header files=20
- hg=20
- The Mercurial command name.
- hgrc=20
- Mercurial resource file. Users have a ~/.hgrc file, repositories have a=
.hg/hgrc file, and the installation of Mercurial has a etc/mercurial/hgrc =
file.
- hooks=20
- Mercurial feature that allows repository actions to be checked or monit=
ored.
- images=20
- After building a jdk, the Makefile target "images" is used to create th=
e actual jdk and jre install images.
- include files=20
- Native code files that contain global type, variable and/or function de=
clarations and prototypes.
- install=20
- The name of a closed workspace that creates the official install bundle=
s, but also a general term for the act of installing something. DUH.
- install image=20
- The actual jdk disk image that represents what the end user would see a=
fter an install. Typically contains the following directories: bin, lib, in=
clude, man, and demos.
- integration=20
- The act of doing the putback or push of the changes into a shared team =
or MASTER source tree area.
- javah=20
- The javah tool is run over class files to create header or include file=
s that can be used with the native code to implement the "native" java meth=
ods.
- j2se=20
- Java 2 Standard Edition. Old name, don't use it anymore. Use jdk. Never=
let marketing control your version numbers or product name. ;^) This is al=
so the name of the primary jdk workspace that built most of the jdk classes=
and jni support libraries (minus hotspot and the plugins).
- jaxp=20
- The jdk workspace that contains the JAXP team contribution to jdk7. In =
jdk6 and jdk5, these sources were part of the j2se workspace.
- jaxws=20
- The jdk workspace that contains the JAX-WS team contribution to jdk7. C=
ontains JAXB and JAF classes too.
- jdk=20
- Java Development Kit or Jim's Designer Kitchen.
- jdk5=20
- The 1.5 release of the jdk, also jdk 1.5, jdk 1.5.0, or just jdk 5.
- jdk5 update=20
- Update release of jdk5. DUH.
- jdk6=20
- The 6 release of the jdk, also jdk 1.6.0, or just jdk 6.
- jdk6 update=20
- Update release of jdk6. DUH.
- jdk7=20
- jplan=20
- Sun internal tool used for jdk planning.
- jtreg=20
- Tool available on OpenJDK site, used to run the regression tests in the=
OpenJDK sources. A command script over the JavaTest framework.
- langtools=20
- The jdk workspace that contains the javac team contribution to jdk7. In=
jdk6 and jdk5, these sources were part of the j2se workspace.
- mercurial=20
- merge=20
- Mercurial term used to merge changesets. With Mercurial there needs to =
be one changeset that represents the state of the entire repository, so whe=
n changesets mix, a merge changeset needs to be created so we have one chan=
geset again.
- mks=20
- Unix tools for Windows than can be used instead of cygwin for building =
the jdk.
- motif=20
- A former jdk workspace that is no longer needed in jdk7.
- native code=20
- C, C++, or assembly code that creates native object files, libraries, o=
r executables. Header files or include files are also considered native cod=
e.
- openjdk=20
- Original open source of the jdk.
- openjdk6=20
- The 6-open release of the OpenJDK.
- openjdk7=20
- The original OpenJDK release that will be used to create jdk7.
- partial build=20
- Any build of a jdk that doesn't include the complete set of jdk sources=
. A partial build will typically rely on a JDK_IMPORT_PATH setting to impor=
t the non-built parts of the jdk.
- platform build=20
- Building on a particular platform. The current platforms that the jdk7 =
is built on regularly are: Solaris 10 X86, Solaris 10 X64, Solaris 10 SPARC=
, Solaris 10 SPARCV9, Windows 2000 X86, Windows 2003 X64, Linux RedHat 2.1A=
S X86, and Linux SuSE SLES-8.1 X84. But jdk7 is buildable on many more plat=
forms than these.
- pubs=20
- Source of jdk documents. Currently not "open".
- pull=20
- Mercurial command that pulls changesets from one Mercurial repository t=
o another repository.
- push=20
- Mercurial command that pushes changesets from one Mercurial repository =
to another repository.
- putback=20
- TeamWare command that pushes changed SCCS files from one TeamWare works=
pace to another workspace.
- regression tests=20
- In the jdk, tests that are in the source tree test directory. Policy di=
ctates that any bug fix should have an associated regression test to verify=
that the fix works.
- repository=20
- The term Mercurial uses for a managed source tree.
- resolve=20
- TeamWare command used to resolve conflicts in file changes between diff=
erent SCCS revisions.
- review=20
- The action of doing a code review, usually using a webrev.
- SCM=20
- Source Code Management system.
- server=20
- Horribly overused term that in this case indicates a machine that holds=
the files of a workspace or repository.
- slot=20
- Integrations into MASTER are treated special. Integrators into the MAST=
ER area are given a time "slot", usually a AM or PM time slot where they ha=
ve putback or push rights to the MASTER area reserved. During this time the=
integrator would be expected to sync, build, and test prior to integrating=
his changes into the MASTER sources.
- source bundle=20
- A zip or tarball of a source tree.
- source tree=20
- The sources that are managed by a SCM, minus any SCM support files or d=
irectories.
- sponsors=20
- The name for a closed jdk workspace.
- ssh=20
- Secure shell. A more secure and better way to access machines on a netw=
ork. Replaces things like telnet, rsh and rlogin.
- ssh key=20
- The basic way ssh works is with keys. Run ssh-keygen to create your ssh=
key.
- SunJDK=20
- sync=20
- The action of pulling the latest changes from a MASTER or team integrat=
ion area into your own changes and merging it all together.
- teamware=20
- TeamWare is a distributed source code management system. A Sun product.=
- webrev=20
- A script or tool that creates browsable pages for a change to a managed=
source tree. Also used to describe these browsable pages, e.g. using webre=
v to create a webrev. Used for all code reviews, and all code changes must =
be reviewed. With Mercurial, browsing a changeset is very similar to browsi=
ng a webrev.
- workspace=20
- TeamWare term for s managed source tree.
------=_Part_1358_103317009.1711719426255--