[geeks] Carly's Gone!!! (now AIX)

Jonathan C. Patschke jp at celestrion.net
Fri Feb 11 15:14:59 CST 2005


On Fri, 11 Feb 2005, Kevin wrote:

> What's "Not Unix" about it?  Not contesting the statement, just
> curious.

It's Not Unix.  The system calls are nothing like Unix; in fact, a lot
of what would be system calls on most Unixes are implemented in libc in
AIX and are wrappers around the AIX syscalls.  Resource management
(internally, especially virtual memory and I/O space) isn't very Unixy.
System administration (espeically with regards to the ODM) is way
different.

AIX will run applications written for Unix.  There's plenty of
compatibility there for it to act just like Unix.  In fact, that's why
IBM sells it as a Unix.  But, if you really want to, you can write to
the lower levels of the API and have something totally nonportable and
take advantage of LPAR and the ODM and all the other system facilities
that come with AIX.

You can also use AIX just like Unix.  If you try to admin AIX just like
Unix, though, you're not getting the full power of the OS.  There are
neat little tools to abstract that away.  There's smit for system
administration.  There are command-line tools that hide the ODM (mkuser,
rmuser, chuser, mkfs, mkvg, mklv, mkgroup, etc.), but you can also get
at the ODM directly.  For example, I can get a list of my system swap
spaces like this:

   $ odmget -q "attribute=type AND value=paging" CuAt

   CuAt:
           name = "hd6"
           attribute = "type"
           value = "paging"
           type = "R"
           generic = "DU"
           rep = "s"
           nls_index = 639

And then ask for the description of the device associated with each of
that paging space like this:

   $ odmget -q "name=hd6" CuDv

   CuDv:
           name = "hd6"
           status = 0
           chgstatus = 1
           ddins = ""
           location = ""
           parent = "rootvg"
           connwhere = ""
           PdDvLn = "logical_volume/lvsubclass/lvtype"

How many other OSes let you run database queries against the active and
stored configurations? :)

That query system is exposed through the API, too.  odmget is a -very-
small program that just passes its parameters to a couple of AIX library
routines.  Those library routines understand the query language so you
don't even have to write a parser.

-- 
Jonathan Patschke   )   "Let me hear you make decisions
Elgin, TX          (     without your television."
USA                 )        --Depeche Mode, "Stripped"



More information about the geeks mailing list