2011-09-13 17:44:24 +00:00
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=UTF-8" / >
< title > Chapter 1. Introduction to Porting Berkeley DB< / title >
< link rel = "stylesheet" href = "gettingStarted.css" type = "text/css" / >
< meta name = "generator" content = "DocBook XSL Stylesheets V1.73.2" / >
< link rel = "start" href = "index.html" title = "Porting Berkeley DB" / >
< link rel = "up" href = "index.html" title = "Porting Berkeley DB" / >
< link rel = "prev" href = "moreinfo.html" title = "For More Information" / >
< link rel = "next" href = "portprocess.html" title = "Berkeley DB Porting Process" / >
< / head >
< body >
< div xmlns = "" class = "navheader" >
< div class = "libver" >
< p > Library Version 11.2.5.2< / p >
< / div >
< table width = "100%" summary = "Navigation header" >
< tr >
< th colspan = "3" align = "center" > Chapter 1. Introduction to Porting Berkeley DB < / th >
< / tr >
< tr >
< td width = "20%" align = "left" > < a accesskey = "p" href = "moreinfo.html" > Prev< / a > < / td >
< th width = "60%" align = "center" > < / th >
< td width = "20%" align = "right" > < a accesskey = "n" href = "portprocess.html" > Next< / a > < / td >
< / tr >
< / table >
< hr / >
< / div >
< div class = "chapter" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
< h2 class = "title" > < a id = "introduction" > < / a > Chapter 1. Introduction to Porting Berkeley DB < / h2 >
< / div >
< / div >
< / div >
< div class = "toc" >
< p >
< b > Table of Contents< / b >
< / p >
< dl >
< dt >
< span class = "sect1" >
< a href = "introduction.html#porttypes" > Types of Berkeley DB ports< / a >
< / span >
< / dt >
< dd >
< dl >
< dt >
< span class = "sect2" >
2011-12-20 00:07:10 +00:00
< a href = "introduction.html#id3891772" > When Oracle Has Agreed to Support Berkeley DB on the New Platform< / a >
2011-09-13 17:44:24 +00:00
< / span >
< / dt >
< dt >
< span class = "sect2" >
2011-12-20 00:07:10 +00:00
< a href = "introduction.html#id3891691" > When Oracle has Not Agreed to Support Berkeley DB on the New Platform< / a >
2011-09-13 17:44:24 +00:00
< / span >
< / dt >
< / dl >
< / dd >
< dt >
< span class = "sect1" >
< a href = "portprocess.html" > Berkeley DB Porting Process< / a >
< / span >
< / dt >
< / dl >
< / div >
< p >
Berkeley DB is an open source database product that supports a
variety of platforms. When there is a need to run Berkeley DB on a
platform that is currently not supported, DB is distributed in
source code form that you can use as base source to port Berkeley
DB to that platform.
< / p >
< p >
Berkeley DB is designed to be as portable as possible, and has been ported to a wide
variety of systems, from Wind River's Tornado system, to VMS, to
Windows/NT and Windows/95, and most existing UNIX platforms. It runs
on 16-bit, 32-bit, and 64-bit machines, little or big-endian. The difficulty of
a port depends on how much of the ANSI C and POSIX 1003.1 standards the
new architecture offers.< / p >
< p >
Before you begin actually porting Berkeley DB, you need an
understanding of the:
< / p >
< div class = "itemizedlist" >
< ul type = "disc" >
< li >
< p >
< a class = "xref" href = "introduction.html#porttypes" title = "Types of Berkeley DB ports" > Types of Berkeley DB ports< / a >
< / p >
< / li >
< li >
< p >
< a class = "xref" href = "portprocess.html" title = "Berkeley DB Porting Process" > Berkeley DB Porting Process< / a >
< / p >
< / li >
< / ul >
< / div >
< div class = "sect1" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
< h2 class = "title" style = "clear: both" > < a id = "porttypes" > < / a > Types of Berkeley DB ports< / h2 >
< / div >
< / div >
< / div >
< div class = "toc" >
< dl >
< dt >
< span class = "sect2" >
2011-12-20 00:07:10 +00:00
< a href = "introduction.html#id3891772" > When Oracle Has Agreed to Support Berkeley DB on the New Platform< / a >
2011-09-13 17:44:24 +00:00
< / span >
< / dt >
< dt >
< span class = "sect2" >
2011-12-20 00:07:10 +00:00
< a href = "introduction.html#id3891691" > When Oracle has Not Agreed to Support Berkeley DB on the New Platform< / a >
2011-09-13 17:44:24 +00:00
< / span >
< / dt >
< / dl >
< / div >
< p >
There are several types of Berkeley DB ports:
< / p >
< div class = "itemizedlist" >
< ul type = "disc" >
< li >
< p >
Ports developed and supported by Oracle
< / p >
< / li >
< li >
< p >
Ports developed by a customer or a partner, but which Oracle has
agreed to support.
< / p >
< / li >
< li >
< p >
Ports developed, maintained, and supported by a customer or partner.
< / p >
< / li >
< / ul >
< / div >
< p >
For a port developed by a customer or a partner, the general steps for porting
Berkeley DB to a new platform are the same whether or not Oracle has agreed to
support Berkeley DB on the new platform. For example, after you complete the port
you send it to Berkeley DB as described in < a class = "xref" href = "sourceintegrate.html" title = "Integrating Changes into the Berkeley DB Source Code" > Integrating Changes into the Berkeley DB Source Code< / a > .
However, there are some differences.
< / p >
< div class = "sect2" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2011-12-20 00:07:10 +00:00
< h3 class = "title" > < a id = "id3891772" > < / a > When Oracle Has Agreed to Support Berkeley DB on the New Platform< / h3 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
When porting Berkeley DB to a platform that Oracle has agreed to support,
you need to have Berkeley DB engineering review your port at various points.
These review points are discussed more fully in
< a class = "xref" href = "sourceintegrate.html" title = "Integrating Changes into the Berkeley DB Source Code" > Integrating Changes into the Berkeley DB Source Code< / a > ,
< a class = "xref" href = "modifytest.html" title = "Modifying the Tests" > Modifying the Tests< / a > , and
< a class = "xref" href = "testreview.html" title = "Reviewing the Results of the Tests" > Reviewing the Results of the Tests< / a > .
< / p >
< p >
It is up to you to submit the results of the tests (test_micro,
test_mutex, and, if possible, the entire tcl test
suit) for review by Oracle Berkelely DB engineering in order for Oracle to
consider providing support for Berkeley DB on a new platform.
< / p >
< p >
You must also assign copyrights for your changes to any part of Berkeley DB
to "Oracle Corporation" and attest to the fact that you are not infringing
on any software patents for the changes to be included in the general
Berekely DB distribution.
< / p >
< p >
Once the port is certified, Oracle provides support for Berkeley DB on the
new platform in the same manner that it does for Berkeley DB running on
other established platforms.
< / p >
< / div >
< div class = "sect2" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2011-12-20 00:07:10 +00:00
< h3 class = "title" > < a id = "id3891691" > < / a > When Oracle has Not Agreed to Support Berkeley DB on the New Platform< / h3 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< p >
When Oracle has < span class = "emphasis" > < em > not< / em > < / span > agreed to support
Berkeley DB on the new platform, the customer or partner assume the
responsibility of front-line support. When it is determined that there is a
problem in the code that was not modified by the customer or partner, then
Berkeley DB engineering provides support to the customer or vendor who
implemented the port, However, in these cases, Oracle needs access to the
platform and hardware for diagnosing, debugging, and testing.
< / p >
< / div >
< / div >
< / div >
< div class = "navfooter" >
< hr / >
< table width = "100%" summary = "Navigation footer" >
< tr >
< td width = "40%" align = "left" > < a accesskey = "p" href = "moreinfo.html" > Prev< / a > < / td >
< td width = "20%" align = "center" > < / td >
< td width = "40%" align = "right" > < a accesskey = "n" href = "portprocess.html" > Next< / a > < / td >
< / tr >
< tr >
< td width = "40%" align = "left" valign = "top" > For More Information < / td >
< td width = "20%" align = "center" >
< a accesskey = "h" href = "index.html" > Home< / a >
< / td >
< td width = "40%" align = "right" valign = "top" > Berkeley DB Porting Process< / td >
< / tr >
< / table >
< / div >
< / body >
< / html >