# bibtab

bibtype: book
filename: unix.bib
label: Siever:2005:LN
author: Ellen Siever
title: Linux in a nutshell
publisher: pub-ORA
address: pub-ORA:adr
edition: Fifth
pages: xiv + 928
year: 2005
ISBN: 0-596-00930-5 OR 0596009305
ISBN13: 978-0-596-00930-4 OR 9780596009304
LCCN: QA76.76.O63; QA76.76.O63 H453 2005eb; QA76.76.O63 H453 2005; QA76.76.O63 L5459 2003
bibdate: Tue Aug 5 17:45:57 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 17:45:57 MDT
series: In a nutshell
URL: http://www.oreilly.com/catalog/9780596009304
remark: A Desktop Quick Reference.
subject: Operating systems (Computers); Linux
acknowledgement: ack-nhfb
rawauthor: Ellen Siever
rawtitle: {Linux} in a nutshell
entry:
@Book{Siever:2005:LN,
  author =       "Ellen Siever",
  title =        "{Linux} in a nutshell",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  edition =      "Fifth",
  pages =        "xiv + 928",
  year =         "2005",
  ISBN =         "0-596-00930-5",
  ISBN-13 =      "978-0-596-00930-4",
  LCCN =         "QA76.76.O63; QA76.76.O63 H453 2005eb; QA76.76.O63 H453
                 2005; QA76.76.O63 L5459 2003",
  bibdate =      "Tue Aug 5 17:45:57 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  series =       "In a nutshell",
  URL =          "http://www.oreilly.com/catalog/9780596009304",
  acknowledgement = ack-nhfb,
  remark =       "A Desktop Quick Reference.",
  subject =      "Operating systems (Computers); Linux",
}


bibtype: book
filename: unix.bib
label: Silberschatz:2005:OSC
author: Abraham Silberschatz and Peter B. Galvin and Greg Gagne
title: Operating System Concepts
publisher: pub-WILEY
address: pub-WILEY:adr
edition: Seventh
pages: xxii + 921
year: 2005
ISBN: 0-471-69466-5 (hardcover) OR 0471694665 (hardcover)
ISBN13: 978-0-471-69466-3 (hardcover) OR 9780471694663 (hardcover)
LCCN: QA76.76.O63 S5583 2005
bibdate: Mon Apr 2 16:14:20 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.04.02 16:14:20 MDT
subject: Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Abraham Silberschatz and Peter B. Galvin and Greg Gagne
rawtitle: Operating System Concepts
URL:
http://www.loc.gov/catdir/enhancements/fy0618/2004059084-b.html; http://www.loc.gov/catdir/enhancements/fy0618/2004059084-d.html; http://www.loc.gov/catdir/toc/wiley051/2004059084.html

entry:
@Book{Silberschatz:2005:OSC,
  author =       "Abraham Silberschatz and Peter B. Galvin and Greg
                 Gagne",
  title =        "Operating System Concepts",
  publisher =    pub-WILEY,
  address =      pub-WILEY:adr,
  edition =      "Seventh",
  pages =        "xxii + 921",
  year =         "2005",
  ISBN =         "0-471-69466-5 (hardcover)",
  ISBN-13 =      "978-0-471-69466-3 (hardcover)",
  LCCN =         "QA76.76.O63 S5583 2005",
  bibdate =      "Mon Apr 2 16:14:20 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0618/2004059084-b.html;
                 http://www.loc.gov/catdir/enhancements/fy0618/2004059084-d.html;
                 http://www.loc.gov/catdir/toc/wiley051/2004059084.html",
  acknowledgement = ack-nhfb,
  subject =      "Operating systems (Computers)",
}


bibtype: article
filename: unix.bib
label: Simon-Hurtado:2005:LUF
author: Ma Aranzazu Simon-Hurtado and Carlos Vivaracho-Pascual
title: Learning UNIX in first year of computer engineering
journal: j-SIGCSE
volume: 37
number: 3
pages: 392--392
month: sep
monthnumber: 9
year: 2005
CODEN: SIGSD3
DOI: https://doi.org/10.1145/1151954.1067595
ISSN: 0097-8418 (print), 2331-3927 (electronic) OR 00978418 (print), 23313927 (electronic)
ISSNL: 0097-8418 OR 00978418
bibdate: Sat Nov 17 16:57:19 MST 2012
bibtimestamp: 2012.11.17 16:57:19 MST
fjournal: SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J688
rawauthor: Ma Ar{\'a}nzazu Sim{\'o}n-Hurtado and Carlos Vivaracho-Pascual
rawtitle: Learning {UNIX} in first year of computer engineering
bibsource:
http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib

abstract:
We describe an experience of cooperative learning for teaching the UNIX operating system in first year of Computer Engineering that helps the students to work with constancy, motivates them to attend the laboratory sessions, stay with the subject, and promotes social and communication skills. This methodology has been very satisfactorily valued by the students.

rawabstract:
We describe an experience of cooperative learning for teaching the UNIX operating system in first year of Computer Engineering that helps the students to work with constancy, motivates them to attend the laboratory sessions, stay with the subject, and promotes social and communication skills. This methodology has been very satisfactorily valued by the students.

entry:
@Article{Simon-Hurtado:2005:LUF,
  author =       "Ma Ar{\'a}nzazu Sim{\'o}n-Hurtado and Carlos
                 Vivaracho-Pascual",
  title =        "Learning {UNIX} in first year of computer
                 engineering",
  journal =      j-SIGCSE,
  volume =       "37",
  number =       "3",
  pages =        "392--392",
  month =        sep,
  year =         "2005",
  CODEN =        "SIGSD3",
  DOI =          "https://doi.org/10.1145/1151954.1067595",
  ISSN =         "0097-8418 (print), 2331-3927 (electronic)",
  ISSN-L =       "0097-8418",
  bibdate =      "Sat Nov 17 16:57:19 MST 2012",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  abstract =     "We describe an experience of cooperative learning for
                 teaching the UNIX operating system in first year of
                 Computer Engineering that helps the students to work
                 with constancy, motivates them to attend the laboratory
                 sessions, stay with the subject, and promotes social
                 and communication skills. This methodology has been
                 very satisfactorily valued by the students.",
  acknowledgement = ack-nhfb,
  fjournal =     "SIGCSE Bulletin (ACM Special Interest Group on
                 Computer Science Education)",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J688",
}


bibtype: book
filename: unix.bib
label: Sloan:2005:HPL
author: Joseph D. (Joseph Donald) Sloan
title: High performance Linux clusters with OSCAR, Rocks, openMosix, and MPI
publisher: pub-ORA
address: pub-ORA:adr
pages: xv + 350
year: 2005
ISBN: 0-596-00570-9 OR 0596005709
ISBN13: 978-0-596-00570-2 OR 9780596005702
LCCN: QA76.58; QA76.58 .S56 2005eb; QA76.58 .S56 2005; QA76.58 .S58 2005; QA76.58 .S595 2005
bibdate: Tue Aug 5 17:41:39 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 17:41:39 MDT
URL: http://www.oreilly.com/catalog/9780596005702
acknowledgement: ack-nhfb
rawauthor: Joseph D. (Joseph Donald) Sloan
rawtitle: High performance {Linux} clusters with {OSCAR}, {Rocks}, {openMosix}, and {MPI}
subject:
Linux; Parallel processing (Electronic computers); Electronic data processing; Distributed processing

entry:
@Book{Sloan:2005:HPL,
  author =       "Joseph D. (Joseph Donald) Sloan",
  title =        "High performance {Linux} clusters with {OSCAR},
                 {Rocks}, {openMosix}, and {MPI}",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xv + 350",
  year =         "2005",
  ISBN =         "0-596-00570-9",
  ISBN-13 =      "978-0-596-00570-2",
  LCCN =         "QA76.58; QA76.58 .S56 2005eb; QA76.58 .S56 2005;
                 QA76.58 .S58 2005; QA76.58 .S595 2005",
  bibdate =      "Tue Aug 5 17:41:39 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9780596005702",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Parallel processing (Electronic computers);
                 Electronic data processing; Distributed processing",
}


bibtype: book
filename: unix.bib
label: Smith:2005:DL
author: Roderick Smith and Jeff Duntemann
title: Degunking Linux
publisher: pub-PARAGLYPH
address: pub-PARAGLYPH:adr
pages: xx + 332
year: 2005
ISBN: 1-933097-04-3 OR 1933097043
ISBN13: 978-1-933097-04-6 OR 9781933097046
LCCN: QA76.76.O63 S58 2005
bibdate: Tue Aug 5 18:30:00 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 18:30:00 MDT
URL: http://www.oreilly.com/catalog/9781933097046
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Roderick Smith and Jeff Duntemann
rawtitle: Degunking {Linux}
entry:
@Book{Smith:2005:DL,
  author =       "Roderick Smith and Jeff Duntemann",
  title =        "Degunking {Linux}",
  publisher =    pub-PARAGLYPH,
  address =      pub-PARAGLYPH:adr,
  pages =        "xx + 332",
  year =         "2005",
  ISBN =         "1-933097-04-3",
  ISBN-13 =      "978-1-933097-04-6",
  LCCN =         "QA76.76.O63 S58 2005",
  bibdate =      "Tue Aug 5 18:30:00 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9781933097046",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Smith:2005:DLH
author: Roderick Smith and Jeff Duntemann
title: Degunking Linux
publisher: Paraglyph Press
address: Scottsdale, AZ, USA
pages: xx + 332
year: 2005
LCCN: QA76.76.O63 S65 2005
bibdate: Thu Oct 6 07:25:50 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2005.10.06 07:25:50 MDT
URL: ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://site.ebrary.com/lib/ucsc/Doc?id=10080003
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Roderick Smith and Jeff Duntemann
rawtitle: Degunking {Linux}
entry:
@Book{Smith:2005:DLH,
  author =       "Roderick Smith and Jeff Duntemann",
  title =        "Degunking {Linux}",
  publisher =    "Paraglyph Press",
  address =      "Scottsdale, AZ, USA",
  pages =        "xx + 332",
  year =         "2005",
  ISBN =         "????",
  ISBN-13 =      "????",
  LCCN =         "QA76.76.O63 S65 2005",
  bibdate =      "Thu Oct 6 07:25:50 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/;
                 http://site.ebrary.com/lib/ucsc/Doc?id=10080003",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Smith:2005:LNS
author: Peter G. Smith
title: Linux network security
publisher: pub-CHARLES-RIVER-MEDIA
address: pub-CHARLES-RIVER-MEDIA:adr
pages: xviii + 541
year: 2005
ISBN: 1-58450-396-3 (pbk. with CD-ROM) OR 1584503963 (pbk. with CDROM)
ISBN13: 978-1-58450-396-5 (pbk. with CD-ROM) OR 9781584503965 (pbk. with CDROM)
LCCN: TK5105.59 .S59 2005
bibdate: Fri Dec 9 06:47:17 MST 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2005.12.09 06:47:17 MST
series: Administrator's advantage series
subject: Computer networks; Security measures; Linux
acknowledgement: ack-nhfb
rawauthor: Peter G. Smith
rawtitle: {Linux} network security
URL:
ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/toc/ecip056/2005000312.html

entry:
@Book{Smith:2005:LNS,
  author =       "Peter G. Smith",
  title =        "{Linux} network security",
  publisher =    pub-CHARLES-RIVER-MEDIA,
  address =      pub-CHARLES-RIVER-MEDIA:adr,
  pages =        "xviii + 541",
  year =         "2005",
  ISBN =         "1-58450-396-3 (pbk. with CD-ROM)",
  ISBN-13 =      "978-1-58450-396-5 (pbk. with CD-ROM)",
  LCCN =         "TK5105.59 .S59 2005",
  bibdate =      "Fri Dec 9 06:47:17 MST 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "Administrator's advantage series",
  URL =          "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/;
                 http://www.loc.gov/catdir/toc/ecip056/2005000312.html",
  acknowledgement = ack-nhfb,
  subject =      "Computer networks; Security measures; Linux",
}


bibtype: book
filename: unix.bib
label: Smith:2005:LWW
author: Roderick W. Smith
title: Linux in a Windows world
publisher: pub-ORA-MEDIA
address: pub-ORA-MEDIA:adr
pages: xiv + 478
year: 2005
ISBN: 0-596-00758-2 OR 0596007582
ISBN13: 978-0-596-00758-4 OR 9780596007584
LCCN: QA76.76.O63 S548 2005
bibdate: Tue Aug 2 10:55:32 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2005.08.02 10:55:32 MDT
URL: http://www.oreilly.com/catalog/9780596007584
subject: GNU/Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Roderick W. Smith
rawtitle: {Linux} in a {Windows} world
entry:
@Book{Smith:2005:LWW,
  author =       "Roderick W. Smith",
  title =        "{Linux} in a {Windows} world",
  publisher =    pub-ORA-MEDIA,
  address =      pub-ORA-MEDIA:adr,
  pages =        "xiv + 478",
  year =         "2005",
  ISBN =         "0-596-00758-2",
  ISBN-13 =      "978-0-596-00758-4",
  LCCN =         "QA76.76.O63 S548 2005",
  bibdate =      "Tue Aug 2 10:55:32 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.oreilly.com/catalog/9780596007584",
  acknowledgement = ack-nhfb,
  subject =      "GNU/Linux; Operating systems (Computers)",
}


bibtype: article
filename: unix.bib
label: Spinellis:2005:WUT
author: Diomidis Spinellis
title: Working with Unix Tools
journal: j-IEEE-SOFTWARE
volume: 22
number: 6
pages: 9--11
month: nov
monthnumber: 11
year: 2005
CODEN: IESOEG
DOI: https://doi.org/10.1109/MS.2005.170
ISSN: 0740-7459 (print), 0740-7459 (electronic) OR 07407459 (print), 07407459 (electronic)
ISSNL: 0740-7459 OR 07407459
bibdate: Thu Nov 10 09:16:26 MST 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2005.11.10 09:16:26 MST
fjournal: IEEE Software
acknowledgement: ack-nhfb
journalURL: http://www.computer.org/portal/web/csdl/magazines/software
rawauthor: Diomidis Spinellis
rawtitle: Working with {Unix} Tools
entry:
@Article{Spinellis:2005:WUT,
  author =       "Diomidis Spinellis",
  title =        "Working with {Unix} Tools",
  journal =      j-IEEE-SOFTWARE,
  volume =       "22",
  number =       "6",
  pages =        "9--11",
  month =        nov # "\slash " # dec,
  year =         "2005",
  CODEN =        "IESOEG",
  DOI =          "https://doi.org/10.1109/MS.2005.170",
  ISSN =         "0740-7459 (print), 0740-7459 (electronic)",
  ISSN-L =       "0740-7459",
  bibdate =      "Thu Nov 10 09:16:26 MST 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "IEEE Software",
  journal-URL =  "http://www.computer.org/portal/web/csdl/magazines/software",
}


bibtype: article
filename: unix.bib
label: Stanik:2005:NLO
author: John Stanik
title: News 2.0: Losing our Edge? The Real Cost of Linux; Say No to Crackberries
journal: j-QUEUE
volume: 3
number: 5
pages: 14--14
month: jun
monthnumber: 6
year: 2005
CODEN: AQCUAE
ISSN: 1542-7730 (print), 1542-7749 (electronic) OR 15427730 (print), 15427749 (electronic)
ISSNL: 1542-7730 OR 15427730
bibdate: Mon Aug 1 06:01:27 MDT 2005
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2005.08.01 06:01:27 MDT
fjournal: ACM Queue: Tomorrow's Computing Today
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J882
rawauthor: John Stanik
rawtitle: News 2.0: Losing our Edge? {The} Real Cost of {Linux}; Say No to Crackberries
entry:
@Article{Stanik:2005:NLO,
  author =       "John Stanik",
  title =        "News 2.0: Losing our Edge? {The} Real Cost of {Linux};
                 Say No to Crackberries",
  journal =      j-QUEUE,
  volume =       "3",
  number =       "5",
  pages =        "14--14",
  month =        jun,
  year =         "2005",
  CODEN =        "AQCUAE",
  ISSN =         "1542-7730 (print), 1542-7749 (electronic)",
  ISSN-L =       "1542-7730",
  bibdate =      "Mon Aug 1 06:01:27 MDT 2005",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Queue: Tomorrow's Computing Today",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J882",
}


bibtype: article
filename: unix.bib
label: Stanik:2005:NRW
author: John Stanik
title: News 2.0: ``Ransom-ware'' on the loose; Adopt IPv6 or die; IBM Steps up on Linux training
journal: j-QUEUE
volume: 3
number: 6
pages: 10--10
month: jul
monthnumber: 7
year: 2005
CODEN: AQCUAE
ISSN: 1542-7730 (print), 1542-7749 (electronic) OR 15427730 (print), 15427749 (electronic)
ISSNL: 1542-7730 OR 15427730
bibdate: Fri Oct 21 05:53:50 MDT 2005
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2005.10.21 05:53:50 MDT
fjournal: ACM Queue: Tomorrow's Computing Today
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J882
rawauthor: John Stanik
rawtitle: News 2.0: {``Ransom-ware''} on the loose; Adopt {IPv6} or die; {IBM} Steps up on {Linux} training
entry:
@Article{Stanik:2005:NRW,
  author =       "John Stanik",
  title =        "News 2.0: {``Ransom-ware''} on the loose; Adopt {IPv6}
                 or die; {IBM} Steps up on {Linux} training",
  journal =      j-QUEUE,
  volume =       "3",
  number =       "6",
  pages =        "10--10",
  month =        jul,
  year =         "2005",
  CODEN =        "AQCUAE",
  ISSN =         "1542-7730 (print), 1542-7749 (electronic)",
  ISSN-L =       "1542-7730",
  bibdate =      "Fri Oct 21 05:53:50 MDT 2005",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Queue: Tomorrow's Computing Today",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J882",
}


bibtype: book
filename: unix.bib
label: Stevens:2005:APU
author: W. Richard Stevens and Stephen A. Rago
title: Advanced Programming in the Unix Environment
publisher: pub-AW
address: pub-AW:adr
edition: Second
pages: xxviii + 927
year: 2005
ISBN: 0-201-43307-9 (hardcover) OR 0201433079 (hardcover)
ISBN13: 978-0-201-43307-4 (hardcover) OR 9780201433074 (hardcover)
LCCN: QA76.76.O63 S754 2005
bibdate: Tue Jul 19 14:11:18 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2005.07.19 14:11:18 ???
subject: Operating systems (Computers); UNIX (Computer file)
acknowledgement: ack-nhfb
rawauthor: W. Richard Stevens and Stephen A. Rago
rawtitle: Advanced Programming in the {Unix} Environment
URL:
ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.aw-bc.com/catalog/academic/product/0,1144,0201433079,00.html; http://www.loc.gov/catdir/toc/ecip059/2005007943.html

entry:
@Book{Stevens:2005:APU,
  author =       "W. Richard Stevens and Stephen A. Rago",
  title =        "Advanced Programming in the {Unix} Environment",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  edition =      "Second",
  pages =        "xxviii + 927",
  year =         "2005",
  ISBN =         "0-201-43307-9 (hardcover)",
  ISBN-13 =      "978-0-201-43307-4 (hardcover)",
  LCCN =         "QA76.76.O63 S754 2005",
  bibdate =      "Tue Jul 19 14:11:18 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/;
                 http://www.aw-bc.com/catalog/academic/product/0,1144,0201433079,00.html;
                 http://www.loc.gov/catdir/toc/ecip059/2005007943.html",
  acknowledgement = ack-nhfb,
  subject =      "Operating systems (Computers); UNIX (Computer file)",
  xxURL =        "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/;
                 http://www.aw-bc.com/catalog/academic/product/0,1144,0201433079,00.html;
                 http://www.loc.gov/catdir/toc/ecip059/2005007943.html",
}


bibtype: book
filename: unix.bib
label: Taylor:2005:LUM
author: Dave Taylor
title: Learning UNIX for Mac OS X Tiger
publisher: pub-ORA-MEDIA
address: pub-ORA-MEDIA:adr
edition: Fourth
pages: xviii + 260
year: 2005
ISBN: 0-596-00915-1 OR 0596009151
ISBN13: 978-0-596-00915-1 OR 9780596009151
LCCN: QA76.76.O63 T388 2005
bibdate: Thu Oct 6 07:24:07 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2005.10.06 07:24:07 MDT
acknowledgement: ack-nhfb
rawauthor: Dave Taylor
rawtitle: Learning {UNIX} for {Mac OS X Tiger}
remark:
First 2 edition have title: Learning Unix for Mac OS X; 3rd edition has title: Learning Unix for Mac OS X Panther. Unlock the power of UNIX.

subject:
UNIX (Computer file); Mac OS; TIGER System (Information retrieval system); Operating systems (Computers)

entry:
@Book{Taylor:2005:LUM,
  author =       "Dave Taylor",
  title =        "Learning {UNIX} for {Mac OS X Tiger}",
  publisher =    pub-ORA-MEDIA,
  address =      pub-ORA-MEDIA:adr,
  edition =      "Fourth",
  pages =        "xviii + 260",
  year =         "2005",
  ISBN =         "0-596-00915-1",
  ISBN-13 =      "978-0-596-00915-1",
  LCCN =         "QA76.76.O63 T388 2005",
  bibdate =      "Thu Oct 6 07:24:07 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  acknowledgement = ack-nhfb,
  remark =       "First 2 edition have title: Learning Unix for Mac OS
                 X; 3rd edition has title: Learning Unix for Mac OS X
                 Panther. Unlock the power of UNIX.",
  subject =      "UNIX (Computer file); Mac OS; TIGER System
                 (Information retrieval system); Operating systems
                 (Computers)",
}


bibtype: book
filename: unix.bib
label: Teer:2005:SSP
author: Rich Teer
title: Solaris systems programming
publisher: pub-AW
address: pub-AW:adr
pages: xxxvi + 1211
year: 2005
ISBN: 0-201-75039-2 OR 0201750392
ISBN13: 978-0-201-75039-3 OR 9780201750393
LCCN: QA76.76.O63 T4314 2005
bibdate: Wed Oct 5 06:01:58 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2005.10.05 06:01:58 MDT
subject: Solaris (Computer file); Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Rich Teer
rawtitle: {Solaris} systems programming
entry:
@Book{Teer:2005:SSP,
  author =       "Rich Teer",
  title =        "{Solaris} systems programming",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xxxvi + 1211",
  year =         "2005",
  ISBN =         "0-201-75039-2",
  ISBN-13 =      "978-0-201-75039-3",
  LCCN =         "QA76.76.O63 T4314 2005",
  bibdate =      "Wed Oct 5 06:01:58 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  acknowledgement = ack-nhfb,
  subject =      "Solaris (Computer file); Operating systems
                 (Computers)",
}


bibtype: article
filename: unix.bib
label: Thomas:2005:RBC
author: Marlin Thomas
journal: j-QUEUE
volume: 3
number: 4
pages: 60--60
month: may
monthnumber: 5
year: 2005
CODEN: AQCUAE
ISSN: 1542-7730 (print), 1542-7749 (electronic) OR 15427730 (print), 15427749 (electronic)
ISSNL: 1542-7730 OR 15427730
bibdate: Thu Jun 23 16:38:50 MDT 2005
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2005.06.23 16:38:50 MDT
fjournal: ACM Queue: Tomorrow's Computing Today
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J882
rawauthor: Marlin Thomas
title:
Review of em Building Clustered Linux Systems by Robert W. Lucke, Prentice Hall PTR, 2004, $49.99, ISBN: 0-13-144853-6

rawtitle:
Review of {{\em Building Clustered Linux Systems\/} by Robert W. Lucke, Prentice Hall PTR, 2004, \$49.99, ISBN: 0-13-144853-6}

entry:
@Article{Thomas:2005:RBC,
  author =       "Marlin Thomas",
  title =        "Review of {{\em Building Clustered Linux Systems\/} by
                 Robert W. Lucke, Prentice Hall PTR, 2004, \$49.99,
                 ISBN: 0-13-144853-6}",
  journal =      j-QUEUE,
  volume =       "3",
  number =       "4",
  pages =        "60--60",
  month =        may,
  year =         "2005",
  CODEN =        "AQCUAE",
  ISSN =         "1542-7730 (print), 1542-7749 (electronic)",
  ISSN-L =       "1542-7730",
  bibdate =      "Thu Jun 23 16:38:50 MDT 2005",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Queue: Tomorrow's Computing Today",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J882",
}


bibtype: book
filename: unix.bib
label: Toporek:2005:MXT
author: Chuck Toporek
title: Mac OS X Tiger: pocket guide
publisher: pub-ORA-MEDIA
address: pub-ORA-MEDIA:adr
edition: Fourth
pages: xi + 223
year: 2005
ISBN: 0-596-00914-3 (paperback) OR 0596009143 (paperback)
ISBN13: 978-0-596-00914-4 (paperback) OR 9780596009144 (paperback)
LCCN: QA76.76.O63 T668 2005
bibdate: Thu Oct 6 07:24:05 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2005.10.06 07:24:05 MDT
subject: Mac OS; Operating systems (Computers); Macintosh (Computer); Programming
acknowledgement: ack-nhfb
rawauthor: Chuck Toporek
rawtitle: {Mac OS X Tiger}: pocket guide
remark:
Previous editions of this book were published under the titles Mac OS X Pocket Reference, Mac OS X Pocket Guide, and Mac OS X Panther Pocket Guide. A user's guide to Mac OS X.

entry:
@Book{Toporek:2005:MXT,
  author =       "Chuck Toporek",
  title =        "{Mac OS X Tiger}: pocket guide",
  publisher =    pub-ORA-MEDIA,
  address =      pub-ORA-MEDIA:adr,
  edition =      "Fourth",
  pages =        "xi + 223",
  year =         "2005",
  ISBN =         "0-596-00914-3 (paperback)",
  ISBN-13 =      "978-0-596-00914-4 (paperback)",
  LCCN =         "QA76.76.O63 T668 2005",
  bibdate =      "Thu Oct 6 07:24:05 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  acknowledgement = ack-nhfb,
  remark =       "Previous editions of this book were published under
                 the titles Mac OS X Pocket Reference, Mac OS X Pocket
                 Guide, and Mac OS X Panther Pocket Guide. A user's
                 guide to Mac OS X.",
  subject =      "Mac OS; Operating systems (Computers); Macintosh
                 (Computer); Programming",
}


bibtype: article
filename: unix.bib
label: Tung:2005:FMF
author: Michael M. Tung
title: FORM matters: Fast symbolic computation under UNIX
journal: j-COMPUT-MATH-APPL
volume: 49
number: 7--8
pages: 1127--1137
month: may
monthnumber: 5
year: 2005
CODEN: CMAPDK
ISSN: 0898-1221 (print), 1873-7668 (electronic) OR 08981221 (print), 18737668 (electronic)
ISSNL: 0898-1221 OR 08981221
bibdate: Wed Mar 1 21:49:44 MST 2017
bibtimestamp: 2017.03.01 21:49:44 MST
URL: http://www.sciencedirect.com/science/article/pii/S0898122105001276
fjournal: Computers and Mathematics with Applications
acknowledgement: ack-nhfb
journalURL: http://www.sciencedirect.com/science/journal/08981221
rawauthor: Michael M. Tung
rawtitle: {FORM} matters: Fast symbolic computation under {UNIX}
bibsource:
https://www.math.utah.edu/pub/tex/bib/computmathappl2000.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib

entry:
@Article{Tung:2005:FMF,
  author =       "Michael M. Tung",
  title =        "{FORM} matters: Fast symbolic computation under
                 {UNIX}",
  journal =      j-COMPUT-MATH-APPL,
  volume =       "49",
  number =       "7--8",
  pages =        "1127--1137",
  month =        may # "\slash " # jun,
  year =         "2005",
  CODEN =        "CMAPDK",
  ISSN =         "0898-1221 (print), 1873-7668 (electronic)",
  ISSN-L =       "0898-1221",
  bibdate =      "Wed Mar 1 21:49:44 MST 2017",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/computmathappl2000.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S0898122105001276",
  acknowledgement = ack-nhfb,
  fjournal =     "Computers and Mathematics with Applications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/08981221",
}


bibtype: article
filename: unix.bib
label: Turk:2005:VLS
author: D. Turk and J. Bausch
title: Virtual Linux servers under z/VM: Security, performance, and administration issues
journal: j-IBM-SYS-J
volume: 44
number: 2
pages: 341--??
year: 2005
CODEN: IBMSA7
ISSN: 0018-8670 OR 00188670
bibdate: Sat Apr 16 18:29:43 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www.research.ibm.com/journal/
bibtimestamp: 2005.04.16 18:29:43 MDT
fjournal: IBM Systems Journal
acknowledgement: ack-nhfb
rawauthor: D. Turk and J. Bausch
rawtitle: Virtual {Linux} servers under {z/VM}: Security, performance, and administration issues
URL:
http://www.research.ibm.com/journal/sj/442/turk.html; http://www.research.ibm.com/journal/sj/442/turk.pdf; http://www.research.ibm.com/journal/sj/442/turk.txt

entry:
@Article{Turk:2005:VLS,
  author =       "D. Turk and J. Bausch",
  title =        "Virtual {Linux} servers under {z/VM}: Security,
                 performance, and administration issues",
  journal =      j-IBM-SYS-J,
  volume =       "44",
  number =       "2",
  pages =        "341--??",
  month =        "????",
  year =         "2005",
  CODEN =        "IBMSA7",
  ISSN =         "0018-8670",
  bibdate =      "Sat Apr 16 18:29:43 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.research.ibm.com/journal/",
  URL =          "http://www.research.ibm.com/journal/sj/442/turk.html;
                 http://www.research.ibm.com/journal/sj/442/turk.pdf;
                 http://www.research.ibm.com/journal/sj/442/turk.txt",
  acknowledgement = ack-nhfb,
  fjournal =     "IBM Systems Journal",
}


bibtype: book
filename: unix.bib
label: Turnbull:2005:HL
author: James Turnbull
title: Hardening Linux
publisher: pub-APRESS
address: pub-APRESS:adr
pages: xxvii + 552
year: 2005
ISBN: 1-59059-444-4 (paperback) OR 1590594444 (paperback)
ISBN13: 978-1-59059-444-5 (paperback) OR 9781590594445 (paperback)
LCCN: QA76.76.D49 T87 2005
bibdate: Tue Apr 1 16:57:21 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2008.04.01 16:57:21 MDT
series: The expert's voice in open source
URL: http://www.loc.gov/catdir/enhancements/fy0663/2005280402-d.html
acknowledgement: ack-nhfb
rawauthor: James Turnbull
rawtitle: Hardening {Linux}
subject:
Linux device drivers (Computer programs); Computer security; Operating systems (Computers); Software maintenance; Computer networks; Security measures

TOC:
Chapter 1: Hardening the basics Chapter 2: Firewalling your hosts Chapter 3: Securing connections and remote administration Chapter 4: Securing files and file systems Chapter 5: Understanding logging and log monitoring Chapter 6: Using tools for security testing Chapter 7: Securing your mail server Chapter 8: Authenticating and securing your mail Chapter 9: Hardening remote access to e-mail Chapter 10: Securing an FTP server Chapter 11: Hardening DNS and BIND Appendix A: The bastion host firewall script Appendix B: BIND configuration files Appendix C: Checkpoints

rawTOC:
Chapter 1: Hardening the basics \\ Chapter 2: Firewalling your hosts \\ Chapter 3: Securing connections and remote administration \\ Chapter 4: Securing files and file systems \\ Chapter 5: Understanding logging and log monitoring \\ Chapter 6: Using tools for security testing \\ Chapter 7: Securing your mail server \\ Chapter 8: Authenticating and securing your mail \\ Chapter 9: Hardening remote access to e-mail \\ Chapter 10: Securing an FTP server \\ Chapter 11: Hardening DNS and BIND \\ Appendix A: The bastion host firewall script \\ Appendix B: BIND configuration files \\ Appendix C: Checkpoints

entry:
@Book{Turnbull:2005:HL,
  author =       "James Turnbull",
  title =        "Hardening {Linux}",
  publisher =    pub-APRESS,
  address =      pub-APRESS:adr,
  pages =        "xxvii + 552",
  year =         "2005",
  ISBN =         "1-59059-444-4 (paperback)",
  ISBN-13 =      "978-1-59059-444-5 (paperback)",
  LCCN =         "QA76.76.D49 T87 2005",
  bibdate =      "Tue Apr 1 16:57:21 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "The expert's voice in open source",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0663/2005280402-d.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux device drivers (Computer programs); Computer
                 security; Operating systems (Computers); Software
                 maintenance; Computer networks; Security measures",
  tableofcontents = "Chapter 1: Hardening the basics \\
                 Chapter 2: Firewalling your hosts \\
                 Chapter 3: Securing connections and remote
                 administration \\
                 Chapter 4: Securing files and file systems \\
                 Chapter 5: Understanding logging and log monitoring \\
                 Chapter 6: Using tools for security testing \\
                 Chapter 7: Securing your mail server \\
                 Chapter 8: Authenticating and securing your mail \\
                 Chapter 9: Hardening remote access to e-mail \\
                 Chapter 10: Securing an FTP server \\
                 Chapter 11: Hardening DNS and BIND \\
                 Appendix A: The bastion host firewall script \\
                 Appendix B: BIND configuration files \\
                 Appendix C: Checkpoints",
}


bibtype: book
filename: unix.bib
label: VanBon:2005:FIS
editor: Jan Van Bon
title: Foundations of IT service management based on ITIL
publisher: Van Haren Publishing
address: Zaltbommel, The Netherlands
edition: Second
pages: 233
year: 2005
ISBN: 90-77212-58-2 OR 9077212582
ISBN13: 978-90-77212-58-5 OR 9789077212585
bibdate: Mon Nov 26 18:54:04 MST 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.bibsys.no:2100/BIBSYS
bibtimestamp: 2007.11.26 18:54:04 MST
subject: Computer service industry; Management
acknowledgement: ack-nhfb
raweditor: Jan {Van Bon}
rawtitle: Foundations of {IT} service management based on {ITIL}
entry:
@Book{VanBon:2005:FIS,
  editor =       "Jan {Van Bon}",
  title =        "Foundations of {IT} service management based on
                 {ITIL}",
  publisher =    "Van Haren Publishing",
  address =      "Zaltbommel, The Netherlands",
  edition =      "Second",
  pages =        "233",
  year =         "2005",
  ISBN =         "90-77212-58-2",
  ISBN-13 =      "978-90-77212-58-5",
  LCCN =         "????",
  bibdate =      "Mon Nov 26 18:54:04 MST 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.bibsys.no:2100/BIBSYS",
  acknowledgement = ack-nhfb,
  subject =      "Computer service industry; Management",
}


bibtype: article
filename: unix.bib
label: Venton:2005:ULH
author: T. Venton and M. Miller and R. Kalla and A. Blanchard
title: Using Linux for hardware bring up, development, and manufacturing
journal: j-IBM-SYS-J
volume: 44
number: 2
pages: 319--329
year: 2005
CODEN: IBMSA7
ISSN: 0018-8670 OR 00188670
bibdate: Sat Apr 16 18:29:43 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www.research.ibm.com/journal/
bibtimestamp: 2005.04.16 18:29:43 MDT
fjournal: IBM Systems Journal
acknowledgement: ack-nhfb
rawauthor: T. Venton and M. Miller and R. Kalla and A. Blanchard
rawtitle: Using {Linux} for hardware bring up, development, and manufacturing
URL:
http://www.research.ibm.com/journal/sj/442/venton.html; http://www.research.ibm.com/journal/sj/442/venton.pdf; http://www.research.ibm.com/journal/sj/442/venton.txt

entry:
@Article{Venton:2005:ULH,
  author =       "T. Venton and M. Miller and R. Kalla and A.
                 Blanchard",
  title =        "Using {Linux} for hardware bring up, development, and
                 manufacturing",
  journal =      j-IBM-SYS-J,
  volume =       "44",
  number =       "2",
  pages =        "319--329",
  month =        "????",
  year =         "2005",
  CODEN =        "IBMSA7",
  ISSN =         "0018-8670",
  bibdate =      "Sat Apr 16 18:29:43 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.research.ibm.com/journal/",
  URL =          "http://www.research.ibm.com/journal/sj/442/venton.html;
                 http://www.research.ibm.com/journal/sj/442/venton.pdf;
                 http://www.research.ibm.com/journal/sj/442/venton.txt",
  acknowledgement = ack-nhfb,
  fjournal =     "IBM Systems Journal",
}


bibtype: book
filename: unix.bib
label: Warren:2005:VWH
author: Steven S. Warren
title: The VMWare Workstation 5 Handbook
publisher: pub-CHARLES-RIVER-MEDIA
address: pub-CHARLES-RIVER-MEDIA:adr
pages: 352 (est.)
year: 2005
ISBN: 1-58450-393-9 OR 1584503939
ISBN13: 978-1-58450-393-4 OR 9781584503934
LCCN: QA76.76.O63 W3665 2005
bibdate: Sun Apr 09 15:40:54 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.04.09 15:40:54 ???
URL: http://www.loc.gov/catdir/toc/ecip0510/2005010053.html
acknowledgement: ack-nhfb
rawauthor: Steven S. Warren
rawtitle: The {VMWare Workstation 5} Handbook
entry:
@Book{Warren:2005:VWH,
  author =       "Steven S. Warren",
  title =        "The {VMWare Workstation 5} Handbook",
  publisher =    pub-CHARLES-RIVER-MEDIA,
  address =      pub-CHARLES-RIVER-MEDIA:adr,
  pages =        "352 (est.)",
  year =         "2005",
  ISBN =         "1-58450-393-9",
  ISBN-13 =      "978-1-58450-393-4",
  LCCN =         "QA76.76.O63 W3665 2005",
  bibdate =      "Sun Apr 09 15:40:54 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip0510/2005010053.html",
  acknowledgement = ack-nhfb,
}


bibtype: article
filename: unix.bib
label: Witchel:2005:MMI
author: Emmett Witchel and Junghwan Rhee and Krste Asanovic
title: Mondrix: memory isolation for Linux using Mondrian memory protection
journal: j-OPER-SYS-REV
volume: 39
number: 5
pages: 31--44
month: dec
monthnumber: 12
year: 2005
CODEN: OSRED8
ISSN: 0163-5980 (print), 1943-586X (electronic) OR 01635980 (print), 1943586X (electronic)
ISSNL: 0163-5980 OR 01635980
bibdate: Sat Aug 26 08:55:58 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.26 08:55:58 MDT
fjournal: ACM SIGOPS Operating Systems Review
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J597
rawauthor: Emmett Witchel and Junghwan Rhee and Krste Asanovi{\'c}
rawtitle: {Mondrix}: memory isolation for {Linux} using {Mondrian} memory protection
entry:
@Article{Witchel:2005:MMI,
  author =       "Emmett Witchel and Junghwan Rhee and Krste
                 Asanovi{\'c}",
  title =        "{Mondrix}: memory isolation for {Linux} using
                 {Mondrian} memory protection",
  journal =      j-OPER-SYS-REV,
  volume =       "39",
  number =       "5",
  pages =        "31--44",
  month =        dec,
  year =         "2005",
  CODEN =        "OSRED8",
  ISSN =         "0163-5980 (print), 1943-586X (electronic)",
  ISSN-L =       "0163-5980",
  bibdate =      "Sat Aug 26 08:55:58 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGOPS Operating Systems Review",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J597",
}


bibtype: article
filename: unix.bib
label: Yeoh:2005:BAL
author: C. Yeoh
title: Building applications for the Linux Standard Base
journal: j-IBM-SYS-J
volume: 44
number: 2
pages: 369--??
year: 2005
CODEN: IBMSA7
ISSN: 0018-8670 OR 00188670
bibdate: Sat Apr 16 18:29:43 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www.research.ibm.com/journal/
bibtimestamp: 2005.04.16 18:29:43 MDT
fjournal: IBM Systems Journal
acknowledgement: ack-nhfb
rawauthor: C. Yeoh
rawtitle: Building applications for the {Linux Standard Base}
URL:
http://www.research.ibm.com/journal/sj/442/yeoh.html; http://www.research.ibm.com/journal/sj/442/yeoh.pdf; http://www.research.ibm.com/journal/sj/442/yeoh.txt

entry:
@Article{Yeoh:2005:BAL,
  author =       "C. Yeoh",
  title =        "Building applications for the {Linux Standard Base}",
  journal =      j-IBM-SYS-J,
  volume =       "44",
  number =       "2",
  pages =        "369--??",
  month =        "????",
  year =         "2005",
  CODEN =        "IBMSA7",
  ISSN =         "0018-8670",
  bibdate =      "Sat Apr 16 18:29:43 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.research.ibm.com/journal/",
  URL =          "http://www.research.ibm.com/journal/sj/442/yeoh.html;
                 http://www.research.ibm.com/journal/sj/442/yeoh.pdf;
                 http://www.research.ibm.com/journal/sj/442/yeoh.txt",
  acknowledgement = ack-nhfb,
  fjournal =     "IBM Systems Journal",
}


bibtype: article
filename: unix.bib
label: Yu:2005:MXD
author: Yijun Yu and Jianguo Lu and John Mylopoulos and Weiwei Sun and Jing-Hao Xue and Erik H. D'Hollander
title: Making XML document markup international
journal: j-SPE
volume: 35
number: 1
pages: 1--14
month: jan
monthnumber: 1
year: 2005
CODEN: SPEXBL
DOI: https://doi.org/10.1002/spe.621
ISSN: 0038-0644 (print), 1097-024X (electronic) OR 00380644 (print), 1097024X (electronic)
ISSNL: 0038-0644 OR 00380644
bibdate: Sat Apr 16 07:26:36 MDT 2005
bibtimestamp: 2005.04.16 07:26:36 MDT
fjournal: Software---Practice and Experience
acknowledgement: ack-nhfb
journalURL: http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X
onlinedate: 18 Oct 2004
rawauthor: Yijun Yu and Jianguo Lu and John Mylopoulos and Weiwei Sun and Jing-Hao Xue and Erik H. D'Hollander
rawtitle: Making {XML} document markup international
bibsource:
http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www3.interscience.wiley.com/journalfinder.html

abstract:
In name and in practice, the World-Wide Web (hereafter Web) is used around the World beyond English-speaking areas. This creates a tremendous need to internationalize standard terminology used in the technologies that make the Web possible. Existing efforts on XML internationalization (i18n) and localization (i10n) have focused on the content of XML documents instead of the terms used in markup (annotations) such as elements and attributes. The SGML standard ISO 8879 supports the use of Unicode (ISO 10646) throughout a document, including markups. However, most elements and attributes of XML documents are still defined in English, thereby limiting their use among non-English speakers. This paper presents an XSLT-based method that can completely localize the markup of XML documents into different natural languages. We also describe how the proposed technique can be applied to translation problems in programming (e.g. C and Java) or documentation (e.g. LaTeX or other formatting languages) so that a program or a document can be converted to and from an XML format

keywords:
eXtensible Markup Language (XML); eXtensible Stylesheet Language Transformations (XSLT); localization (l10n) and internationalization (i18n); markup; programming and documentation languages; transformation

rawabstract:
In name and in practice, the World-Wide Web (hereafter Web) is used around the World beyond English-speaking areas. This creates a tremendous need to internationalize standard terminology used in the technologies that make the Web possible. Existing efforts on XML internationalization (i18n) and localization (i10n) have focused on the content of XML documents instead of the terms used in markup (annotations) such as elements and attributes. The SGML standard ISO 8879 supports the use of Unicode (ISO 10646) throughout a document, including markups. However, most elements and attributes of XML documents are still defined in English, thereby limiting their use among non-English speakers. This paper presents an XSLT-based method that can completely localize the markup of XML documents into different natural languages. We also describe how the proposed technique can be applied to translation problems in programming (e.g. C and Java) or documentation (e.g. \LaTeX{} or other formatting languages) so that a program or a document can be converted to and from an XML format

entry:
@Article{Yu:2005:MXD,
  author =       "Yijun Yu and Jianguo Lu and John Mylopoulos and Weiwei
                 Sun and Jing-Hao Xue and Erik H. D'Hollander",
  title =        "Making {XML} document markup international",
  journal =      j-SPE,
  volume =       "35",
  number =       "1",
  pages =        "1--14",
  month =        jan,
  year =         "2005",
  CODEN =        "SPEXBL",
  DOI =          "https://doi.org/10.1002/spe.621",
  ISSN =         "0038-0644 (print), 1097-024X (electronic)",
  ISSN-L =       "0038-0644",
  bibdate =      "Sat Apr 16 07:26:36 MDT 2005",
  bibsource =    "http://www.interscience.wiley.com/jpages/0038-0644;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www3.interscience.wiley.com/journalfinder.html",
  abstract =     "In name and in practice, the World-Wide Web (hereafter
                 Web) is used around the World beyond English-speaking
                 areas. This creates a tremendous need to
                 internationalize standard terminology used in the
                 technologies that make the Web possible. Existing
                 efforts on XML internationalization (i18n) and
                 localization (i10n) have focused on the content of XML
                 documents instead of the terms used in markup
                 (annotations) such as elements and attributes. The SGML
                 standard ISO 8879 supports the use of Unicode (ISO
                 10646) throughout a document, including markups.
                 However, most elements and attributes of XML documents
                 are still defined in English, thereby limiting their
                 use among non-English speakers. This paper presents an
                 XSLT-based method that can completely localize the
                 markup of XML documents into different natural
                 languages. We also describe how the proposed technique
                 can be applied to translation problems in programming
                 (e.g. C and Java) or documentation (e.g. \LaTeX{} or
                 other formatting languages) so that a program or a
                 document can be converted to and from an XML format",
  acknowledgement = ack-nhfb,
  fjournal =     "Software---Practice and Experience",
  journal-URL =  "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X",
  keywords =     "eXtensible Markup Language (XML); eXtensible
                 Stylesheet Language Transformations (XSLT);
                 localization (l10n) and internationalization (i18n);
                 markup; programming and documentation languages;
                 transformation",
  onlinedate =   "18 Oct 2004",
}


bibtype: book
filename: unix.bib
label: Zdziarski:2005:ESB
author: Jonathan A. Zdziarski
title: Ending spam: Bayesian content filtering and the art of statistical language classification
publisher: pub-NO-STARCH
address: pub-NO-STARCH:adr
pages: 312 (est.)
year: 2005
ISBN: 1-59327-052-6 OR 1593270526
ISBN13: 978-1-59327-052-0 OR 9781593270520
LCCN: TK5105.743 .Z35 2005
bibdate: Wed Jun 22 14:40:22 MDT 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2005.06.22 14:40:22 MDT
subject: Spam filtering (Electronic mail); Filters (Mathematics)
acknowledgement: ack-nhfb
rawauthor: Jonathan A. Zdziarski
rawtitle: Ending spam: {Bayesian} content filtering and the art of statistical language classification
URL:
ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/toc/ecip0510/2005008221.html; http://www.oreilly.com/catalog/1593270526/

remark:
An introduction to spam filtering concepts --- The history of spam --- Historical approaches to fighting spam --- Next generation filtering --- Shining examples of filtering --- Machine learning concepts --- Fundamentals of statistical filtering --- Statistical filtering fundamentals --- Decoding: uncombobulating messages --- Tokenization: the building blocks of spam --- Open source, OSX, and Milk Duds --- The low-down dirty details of spam --- Data storage for a zillion records --- Scaling for large-scale environments --- Advanced concepts of statistical filtering --- Concept identification: advanced tokenization --- Testing theory --- Fifth-order Markovian discrimination --- Concept identification: advanced tokenization --- Intelligent feature set reduction --- Collaborative algorithms --- Installing and using open source filters.

entry:
@Book{Zdziarski:2005:ESB,
  author =       "Jonathan A. Zdziarski",
  title =        "Ending spam: {Bayesian} content filtering and the art
                 of statistical language classification",
  publisher =    pub-NO-STARCH,
  address =      pub-NO-STARCH:adr,
  pages =        "312 (est.)",
  year =         "2005",
  ISBN =         "1-59327-052-6",
  ISBN-13 =      "978-1-59327-052-0",
  LCCN =         "TK5105.743 .Z35 2005",
  bibdate =      "Wed Jun 22 14:40:22 MDT 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/;
                 http://www.loc.gov/catdir/toc/ecip0510/2005008221.html;
                 http://www.oreilly.com/catalog/1593270526/",
  acknowledgement = ack-nhfb,
  remark =       "An introduction to spam filtering concepts --- The
                 history of spam --- Historical approaches to fighting
                 spam --- Next generation filtering --- Shining examples
                 of filtering --- Machine learning concepts ---
                 Fundamentals of statistical filtering --- Statistical
                 filtering fundamentals --- Decoding: uncombobulating
                 messages --- Tokenization: the building blocks of spam
                 --- Open source, OSX, and Milk Duds --- The low-down
                 dirty details of spam --- Data storage for a zillion
                 records --- Scaling for large-scale environments ---
                 Advanced concepts of statistical filtering --- Concept
                 identification: advanced tokenization --- Testing
                 theory --- Fifth-order Markovian discrimination ---
                 Concept identification: advanced tokenization ---
                 Intelligent feature set reduction --- Collaborative
                 algorithms --- Installing and using open source
                 filters.",
  subject =      "Spam filtering (Electronic mail); Filters
                 (Mathematics)",
}


bibtype: book
filename: unix.bib
label: Zeller:2005:EOS
author: Andreas Zeller and Jens Krinke
publisher: pub-WILEY
address: pub-WILEY:adr
pages: xii + 392
year: 2005
ISBN: 0-470-84445-0 (paperback) OR 0470844450 (paperback)
ISBN13: 978-0-470-84445-8 (paperback) OR 9780470844458 (paperback)
LCCN: QA76.76.D47 Z45 2005
bibdate: Tue Nov 28 14:20:32 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2006.11.28 14:20:32 MST
URL: http://www.loc.gov/catdir/toc/ecip053/2004026271.html
subject: Computer software; Development; Open source software
acknowledgement: ack-nhfb
rawauthor: Andreas Zeller and Jens Krinke
title:
Essential open source toolset: programming with Eclipse, JUnit, CVS, Bugzilla, Ant, Tcl / Tk and more

rawtitle:
Essential open source toolset: programming with {Eclipse}, {JUnit}, {CVS}, {Bugzilla}, {Ant}, {Tcl\slash Tk} and more

entry:
@Book{Zeller:2005:EOS,
  author =       "Andreas Zeller and Jens Krinke",
  title =        "Essential open source toolset: programming with
                 {Eclipse}, {JUnit}, {CVS}, {Bugzilla}, {Ant},
                 {Tcl\slash Tk} and more",
  publisher =    pub-WILEY,
  address =      pub-WILEY:adr,
  pages =        "xii + 392",
  year =         "2005",
  ISBN =         "0-470-84445-0 (paperback)",
  ISBN-13 =      "978-0-470-84445-8 (paperback)",
  LCCN =         "QA76.76.D47 Z45 2005",
  bibdate =      "Tue Nov 28 14:20:32 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.loc.gov/catdir/toc/ecip053/2004026271.html",
  acknowledgement = ack-nhfb,
  subject =      "Computer software; Development; Open source software",
}


bibtype: book
filename: unix.bib
label: Anderson:2006:SXM
author: Fritz Anderson
title: Step into Xcode: Mac OS X development
publisher: pub-AW
address: pub-AW:adr
pages: xxii + 463
year: 2006
ISBN: 0-321-33422-1 (paperback) OR 0321334221 (paperback)
ISBN13: 978-0-321-33422-0 (paperback) OR 9780321334220 (paperback)
LCCN: QA76.76.O63 A53 2006
bibdate: Tue May 29 15:07:38 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.05.29 15:07:38 MDT
URL: http://www.loc.gov/catdir/toc/ecip062/2005029875.html
subject: Operating systems (Computers); Software; Macintosh (Computer)
acknowledgement: ack-nhfb
rawauthor: Fritz Anderson
rawtitle: Step into {Xcode}: {Mac OS X} development
entry:
@Book{Anderson:2006:SXM,
  author =       "Fritz Anderson",
  title =        "Step into {Xcode}: {Mac OS X} development",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xxii + 463",
  year =         "2006",
  ISBN =         "0-321-33422-1 (paperback)",
  ISBN-13 =      "978-0-321-33422-0 (paperback)",
  LCCN =         "QA76.76.O63 A53 2006",
  bibdate =      "Tue May 29 15:07:38 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip062/2005029875.html",
  acknowledgement = ack-nhfb,
  subject =      "Operating systems (Computers); Software; Macintosh
                 (Computer)",
}


bibtype: book
filename: unix.bib
label: Anonymous:2006:SSD
author: Anonymous
title: Solaris Security for Developers Guide
publisher: pub-SUN
address: pub-SUN:adr
year: 2006
ISBN: 0-595-28558-9 OR 0595285589
ISBN13: 978-0-595-28558-7 OR 9780595285587
bibdate: Mon Jun 19 12:17:50 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.06.19 12:17:50 ???
URL: http://docs.sun.com/app/docs/doc/816-4863
acknowledgement: ack-nhfb
rawauthor: Anonymous
rawtitle: {Solaris} Security for Developers Guide
TOC:
Preface Solaris Security for Developers (Overview) Developing Privileged Applications Writing PAM Applications and Services Writing Applications That Use GSS-API GSS-API Client Example GSS-API Server Example Writing Applications That Use SASL Introduction to the Solaris Cryptographic Framework Writing User-Level Cryptographic Applications and Providers Using the Smart Card Framework Sample C-Based GSS-API Programs GSS-API Reference Specifying an OID Source Code for SASL Example SASL Reference Tables Packaging and Signing Cryptographic Providers Glossary

rawTOC:
Preface \\ Solaris Security for Developers (Overview) \\ Developing Privileged Applications \\ Writing PAM Applications and Services \\ Writing Applications That Use GSS-API \\ GSS-API Client Example \\ GSS-API Server Example \\ Writing Applications That Use SASL \\ Introduction to the Solaris Cryptographic Framework \\ Writing User-Level Cryptographic Applications and Providers \\ Using the Smart Card Framework \\ Sample C-Based GSS-API Programs \\ GSS-API Reference \\ Specifying an OID \\ Source Code for SASL Example \\ SASL Reference Tables \\ Packaging and Signing Cryptographic Providers \\ Glossary

entry:
@Book{Anonymous:2006:SSD,
  author =       "Anonymous",
  title =        "{Solaris} Security for Developers Guide",
  publisher =    pub-SUN,
  address =      pub-SUN:adr,
  pages =        "????",
  year =         "2006",
  ISBN =         "0-595-28558-9",
  ISBN-13 =      "978-0-595-28558-7",
  LCCN =         "????",
  bibdate =      "Mon Jun 19 12:17:50 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "http://docs.sun.com/app/docs/doc/816-4863",
  acknowledgement = ack-nhfb,
  tableofcontents = "Preface \\
                 Solaris Security for Developers (Overview) \\
                 Developing Privileged Applications \\
                 Writing PAM Applications and Services \\
                 Writing Applications That Use GSS-API \\
                 GSS-API Client Example \\
                 GSS-API Server Example \\
                 Writing Applications That Use SASL \\
                 Introduction to the Solaris Cryptographic Framework \\
                 Writing User-Level Cryptographic Applications and
                 Providers \\
                 Using the Smart Card Framework \\
                 Sample C-Based GSS-API Programs \\
                 GSS-API Reference \\
                 Specifying an OID \\
                 Source Code for SASL Example \\
                 SASL Reference Tables \\
                 Packaging and Signing Cryptographic Providers \\
                 Glossary",
}


bibtype: book
filename: unix.bib
label: Becker:2006:CSL
author: Pete Becker
title: The C++ Standard Library Extensions: a Tutorial and Reference
publisher: pub-AW
address: pub-AW:adr
year: 2006
ISBN: 0-321-41299-0 (hardback) OR 0321412990 (hardback)
ISBN13: 978-0-321-41299-7 (hardback) OR 9780321412997 (hardback)
LCCN: QA76.73.C153 B43 2006
bibdate: Wed Sep 6 08:04:57 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.09.06 08:04:57 MDT
subject: C++ (Computer program language)
acknowledgement: ack-nhfb
rawauthor: Pete Becker
rawtitle: The {C++ Standard Library} Extensions: a Tutorial and Reference
URL:
http://www.awprofessional.com/bookstore/product.asp?isbn=0321412990; http://www.loc.gov/catdir/toc/ecip0613/2006014959.html; http://www.unixreview.com/documents/s=10094/ur0608k/ur0608k.html

TOC:
Contents Introduction Part I: Utilities Chapter 1: Tuples Chapter 2: Reference-counted Pointers Part II: Containers Chapter 3: Container Basics Chapter 4: The array Class Template Chapter 5: Unordered Associative Containers Part III: Call Wrappers Chapter 6: Call Wrapper Basics Chapter 7: The mem_fn Function Template Chapter 8: The reference_wrapper Class Template Chapter 9: The function Class Template Chapter 10: The bind Function Template Part IV: Type Traits Chapter 11: Type Traits Part V: Numerics Chapter 12 Numeric Functions Chapter 13 Random Number Generators Part VI: Regular Expressions Chapter 14: The Header Chapter 15: Regular Expression Grammars Chapter 16: Regular Expression Objects Chapter 17: Searching Chapter 18: Search Results Chapter 19: Repetitive Searches Chapter 20: Formatting and Text Replacement Chapter 21: Customizing Regular Expressions Part VII: C Compatibility Chapter 22: C Compatibility Appendices Appendix A: Headers Appendix B: Utility Headers Appendix C: Multi-threading Bibliography Index

rawTOC:
Contents \\ Introduction \\ Part I: Utilities \\ Chapter 1: Tuples \\ Chapter 2: Reference-counted Pointers \\ Part II: Containers \\ Chapter 3: Container Basics \\ Chapter 4: The array Class Template \\ Chapter 5: Unordered Associative Containers \\ Part III: Call Wrappers \\ Chapter 6: Call Wrapper Basics \\ Chapter 7: The mem_fn Function Template \\ Chapter 8: The reference_wrapper Class Template \\ Chapter 9: The function Class Template \\ Chapter 10: The bind Function Template \\ Part IV: Type Traits \\ Chapter 11: Type Traits \\ Part V: Numerics \\ Chapter 12 Numeric Functions \\ Chapter 13 Random Number Generators \\ Part VI: Regular Expressions \\ Chapter 14: The Header \\ Chapter 15: Regular Expression Grammars \\ Chapter 16: Regular Expression Objects \\ Chapter 17: Searching \\ Chapter 18: Search Results \\ Chapter 19: Repetitive Searches \\ Chapter 20: Formatting and Text Replacement \\ Chapter 21: Customizing Regular Expressions \\ Part VII: C Compatibility \\ Chapter 22: C Compatibility \\ Appendices \\ Appendix A: Headers \\ Appendix B: Utility Headers \\ Appendix C: Multi-threading \\ Bibliography \\ Index

entry:
@Book{Becker:2006:CSL,
  author =       "Pete Becker",
  title =        "The {C++ Standard Library} Extensions: a Tutorial and
                 Reference",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "????",
  year =         "2006",
  ISBN =         "0-321-41299-0 (hardback)",
  ISBN-13 =      "978-0-321-41299-7 (hardback)",
  LCCN =         "QA76.73.C153 B43 2006",
  bibdate =      "Wed Sep 6 08:04:57 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.awprofessional.com/bookstore/product.asp?isbn=0321412990;
                 http://www.loc.gov/catdir/toc/ecip0613/2006014959.html;
                 http://www.unixreview.com/documents/s=10094/ur0608k/ur0608k.html",
  acknowledgement = ack-nhfb,
  subject =      "C++ (Computer program language)",
  tableofcontents = "Contents \\
                 Introduction \\
                 Part I: Utilities \\
                 Chapter 1: Tuples \\
                 Chapter 2: Reference-counted Pointers \\
                 Part II: Containers \\
                 Chapter 3: Container Basics \\
                 Chapter 4: The array Class Template \\
                 Chapter 5: Unordered Associative Containers \\
                 Part III: Call Wrappers \\
                 Chapter 6: Call Wrapper Basics \\
                 Chapter 7: The mem_fn Function Template \\
                 Chapter 8: The reference_wrapper Class Template \\
                 Chapter 9: The function Class Template \\
                 Chapter 10: The bind Function Template \\
                 Part IV: Type Traits \\
                 Chapter 11: Type Traits \\
                 Part V: Numerics \\
                 Chapter 12 Numeric Functions \\
                 Chapter 13 Random Number Generators \\
                 Part VI: Regular Expressions \\
                 Chapter 14: The Header \\
                 Chapter 15: Regular Expression Grammars \\
                 Chapter 16: Regular Expression Objects \\
                 Chapter 17: Searching \\
                 Chapter 18: Search Results \\
                 Chapter 19: Repetitive Searches \\
                 Chapter 20: Formatting and Text Replacement \\
                 Chapter 21: Customizing Regular Expressions \\
                 Part VII: C Compatibility \\
                 Chapter 22: C Compatibility \\
                 Appendices \\
                 Appendix A: Headers \\
                 Appendix B: Utility Headers \\
                 Appendix C: Multi-threading \\
                 Bibliography \\
                 Index",
}


bibtype: book
filename: unix.bib
label: Benvenuti:2006:ULN
author: Christian Benvenuti
title: Understanding Linux network internals
publisher: pub-ORA
address: pub-ORA:adr
pages: xxiv + 1035
year: 2006
ISBN: 0-596-00255-6 OR 0596002556
ISBN13: 978-0-596-00255-8 OR 9780596002558
LCCN: QA76.76.O63; QA76.76.O63 B46 2006eb; QA76.76.O63 B46 2006
bibdate: Tue Aug 5 17:41:13 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 17:41:13 MDT
URL: http://www.oreilly.com/catalog/9780596002558
subject: Operating systems (Computers); Linux
acknowledgement: ack-nhfb
rawauthor: Christian Benvenuti
rawtitle: Understanding {Linux} network internals
entry:
@Book{Benvenuti:2006:ULN,
  author =       "Christian Benvenuti",
  title =        "Understanding {Linux} network internals",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xxiv + 1035",
  year =         "2006",
  ISBN =         "0-596-00255-6",
  ISBN-13 =      "978-0-596-00255-8",
  LCCN =         "QA76.76.O63; QA76.76.O63 B46 2006eb; QA76.76.O63 B46
                 2006",
  bibdate =      "Tue Aug 5 17:41:13 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9780596002558",
  acknowledgement = ack-nhfb,
  subject =      "Operating systems (Computers); Linux",
}


bibtype: book
filename: unix.bib
label: Bovet:2006:ULK
author: Daniel P. (Daniel Pierre) Bovet and Marco Cesati
title: Understanding the Linux kernel
publisher: pub-ORA
address: pub-ORA:adr
edition: Third
pages: xvi + 923
year: 2006
ISBN: 0-596-00565-2 (paperback) OR 0596005652 (paperback)
ISBN13: 978-0-596-00565-8 (paperback) OR 9780596005658 (paperback)
LCCN: QA76.76.O63 B683 2006
bibdate: Mon Oct 23 08:08:57 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.10.23 08:08:57 MDT
URL: http://www.oreilly.com/catalog/9780596005658
subject: GNU/Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Daniel P. (Daniel Pierre) Bovet and Marco Cesati
rawtitle: Understanding the {Linux} kernel
entry:
@Book{Bovet:2006:ULK,
  author =       "Daniel P. (Daniel Pierre) Bovet and Marco Cesati",
  title =        "Understanding the {Linux} kernel",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  edition =      "Third",
  pages =        "xvi + 923",
  year =         "2006",
  ISBN =         "0-596-00565-2 (paperback)",
  ISBN-13 =      "978-0-596-00565-8 (paperback)",
  LCCN =         "QA76.76.O63 B683 2006",
  bibdate =      "Mon Oct 23 08:08:57 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.oreilly.com/catalog/9780596005658",
  acknowledgement = ack-nhfb,
  subject =      "GNU/Linux; Operating systems (Computers)",
}


bibtype: article
filename: unix.bib
label: Breuer:2006:RNO
author: Peter T. Breuer and Marisol Garcia Valls
title: Raiding the Noosphere: the open development of networked RAID support for the Linux kernel
journal: j-SPE
volume: 36
number: 4
pages: 365--395
year: 2006
CODEN: SPEXBL
DOI: https://doi.org/10.1002/spe.701
ISSN: 0038-0644 (print), 1097-024X (electronic) OR 00380644 (print), 1097024X (electronic)
ISSNL: 0038-0644 OR 00380644
bibdate: Tue Mar 14 11:39:21 MST 2006
bibtimestamp: 2006.03.14 11:39:21 MST
fjournal: Software---Practice and Experience
keywords: Linux; networking; open source; operating systems; software engineering; storage
acknowledgement: ack-nhfb
journalURL: http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X
onlinedate: 13 Dec 2005
rawauthor: Peter T. Breuer and Marisol Garc{\'\i}a Valls
rawtitle: Raiding the {Noosphere}: the open development of networked {RAID} support for the {Linux} kernel
abstract:
The Noosphere is a term borrowed by open-source advocate Eric Raymond to denote the virtual world of the Internet. Fitting a new driver into the Linux kernel requires a noospheric strategy as well as an engineering strategy, because the code is part of the open-source development process, not its end. This article recounts the technology and the development process followed for a fast and intelligent driver extension to the existing Linux software RAID subsystem. The development adapts the kernel RAID subsystem for use in the context of network-attached storage.

rawabstract:
The Noosphere is a term borrowed by open-source advocate Eric Raymond to denote the virtual world of the Internet. Fitting a new driver into the Linux kernel requires a noospheric strategy as well as an engineering strategy, because the code is part of the open-source development process, not its end. This article recounts the technology and the development process followed for a fast and intelligent driver extension to the existing Linux software RAID subsystem. The development adapts the kernel RAID subsystem for use in the context of network-attached storage.

entry:
@Article{Breuer:2006:RNO,
  author =       "Peter T. Breuer and Marisol Garc{\'\i}a Valls",
  title =        "Raiding the {Noosphere}: the open development of
                 networked {RAID} support for the {Linux} kernel",
  journal =      j-SPE,
  volume =       "36",
  number =       "4",
  pages =        "365--395",
  month =        "????",
  year =         "2006",
  CODEN =        "SPEXBL",
  DOI =          "https://doi.org/10.1002/spe.701",
  ISSN =         "0038-0644 (print), 1097-024X (electronic)",
  ISSN-L =       "0038-0644",
  bibdate =      "Tue Mar 14 11:39:21 MST 2006",
  bibsource =    "http://www.interscience.wiley.com/jpages/0038-0644;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www3.interscience.wiley.com/journalfinder.html",
  abstract =     "The Noosphere is a term borrowed by open-source
                 advocate Eric Raymond to denote the virtual world of
                 the Internet. Fitting a new driver into the Linux
                 kernel requires a noospheric strategy as well as an
                 engineering strategy, because the code is part of the
                 open-source development process, not its end. This
                 article recounts the technology and the development
                 process followed for a fast and intelligent driver
                 extension to the existing Linux software RAID
                 subsystem. The development adapts the kernel RAID
                 subsystem for use in the context of network-attached
                 storage.",
  acknowledgement = ack-nhfb,
  fjournal =     "Software---Practice and Experience",
  journal-URL =  "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X",
  keywords =     "Linux; networking; open source; operating systems;
                 software engineering; storage",
  onlinedate =   "13 Dec 2005",
}


bibtype: book
filename: unix.bib
label: Brown:2006:SL
author: Chris Brown
title: SuSE Linux
publisher: pub-ORA
address: pub-ORA:adr
pages: xiii + 430
year: 2006
ISBN: 0-596-10183-X OR 059610183X
ISBN13: 978-0-596-10183-1 OR 9780596101831
LCCN: QA76.76.O63 B76 2006
bibdate: Wed Oct 04 18:14:17 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.04 18:14:17 ???
URL: http://www.oreilly.com/catalog/9780596101831
acknowledgement: ack-nhfb
rawauthor: Chris Brown
rawtitle: {SuSE Linux}
entry:
@Book{Brown:2006:SL,
  author =       "Chris Brown",
  title =        "{SuSE Linux}",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xiii + 430",
  year =         "2006",
  ISBN =         "0-596-10183-X",
  ISBN-13 =      "978-0-596-10183-1",
  LCCN =         "QA76.76.O63 B76 2006",
  bibdate =      "Wed Oct 04 18:14:17 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$39.99",
  URL =          "http://www.oreilly.com/catalog/9780596101831",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Brown:2006:SLM
title: Solaris to Linux Migration: a Guide for System Administrators
publisher: pub-IBM
address: pub-IBM:adr
pages: xx + 424
year: 2006
ISBN: 0-7384-9608-1 OR 0738496081
ISBN13: 978-0-7384-9608-5 OR 9780738496085
bibdate: Wed Jun 21 17:20:10 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.06.21 17:20:10 ???
note: IBM order number SG24-7186-00.
series: IBM redbooks
URL: http://www.redbooks.ibm.com/redbooks/pdfs/sg247186.pdf
acknowledgement: ack-nhfb
rawnote: IBM order number SG24-7186-00.
rawtitle: {Solaris} to {Linux} Migration: a Guide for System Administrators
author:
Mark Brown and Chuck Davis and William Dy and Paul Ionescu and Jeff Richardson and Kurt Taylor and Robbie Williamson

TOC:
Part 1. Background and planning Chapter 1. Introduction Chapter 2. Planning for migration Part 2. System administration differences guide Chapter 3. Operating system installation Chapter 4. Disks and file systems Chapter 5. Software management Chapter 6. Device management Chapter 7. Network services Chapter 8. Boot and system initialization Chapter 9. Managing system resources Chapter 10. Printing services Chapter 11. Users and groups Chapter 12. Monitoring and performance Chapter 13. Backup and restore Chapter 14. Security and hardening Chapter 15. Linux high availability overview Chapter 16. Shell scripting Chapter 17. Troubleshooting Part 3. IBM eServer platforms Chapter 18. IBM eServer xSeries hardware platform specifics Chapter 19. IBM POWER technology hardware platform specifics Chapter 20. IBM eServer zSeries and IBM System z hardware platform specifics Appendix A. Tasks reference Appendix B. Commands and configuration files reference Appendix C. UNIX to Linux Porting: A Comprehensive Reference (table of contents and sample chapter) Appendix D. Example: System information gathering script Appendix E. Additional material

rawauthor:
Mark Brown and Chuck Davis and William Dy and Paul Ionescu and Jeff Richardson and Kurt Taylor and Robbie Williamson

rawTOC:
Part 1. Background and planning \\ Chapter 1. Introduction \\ Chapter 2. Planning for migration \\ Part 2. System administration differences guide \\ Chapter 3. Operating system installation \\ Chapter 4. Disks and file systems \\ Chapter 5. Software management \\ Chapter 6. Device management \\ Chapter 7. Network services \\ Chapter 8. Boot and system initialization \\ Chapter 9. Managing system resources \\ Chapter 10. Printing services \\ Chapter 11. Users and groups \\ Chapter 12. Monitoring and performance \\ Chapter 13. Backup and restore \\ Chapter 14. Security and hardening \\ Chapter 15. Linux high availability overview \\ Chapter 16. Shell scripting \\ Chapter 17. Troubleshooting \\ Part 3. IBM eServer platforms \\ Chapter 18. IBM eServer xSeries hardware platform specifics \\ Chapter 19. IBM POWER technology hardware platform specifics \\ Chapter 20. IBM eServer zSeries and IBM System z hardware platform specifics \\ Appendix A. Tasks reference \\ Appendix B. Commands and configuration files reference \\ Appendix C. UNIX to Linux Porting: A Comprehensive Reference (table of contents and sample chapter) \\ Appendix D. Example: System information gathering script \\ Appendix E. Additional material

entry:
@Book{Brown:2006:SLM,
  author =       "Mark Brown and Chuck Davis and William Dy and Paul
                 Ionescu and Jeff Richardson and Kurt Taylor and Robbie
                 Williamson",
  title =        "{Solaris} to {Linux} Migration: a Guide for System
                 Administrators",
  publisher =    pub-IBM,
  address =      pub-IBM:adr,
  pages =        "xx + 424",
  year =         "2006",
  ISBN =         "0-7384-9608-1",
  ISBN-13 =      "978-0-7384-9608-5",
  LCCN =         "????",
  bibdate =      "Wed Jun 21 17:20:10 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  note =         "IBM order number SG24-7186-00.",
  series =       "IBM redbooks",
  URL =          "http://www.redbooks.ibm.com/redbooks/pdfs/sg247186.pdf",
  acknowledgement = ack-nhfb,
  tableofcontents = "Part 1. Background and planning \\
                 Chapter 1. Introduction \\
                 Chapter 2. Planning for migration \\
                 Part 2. System administration differences guide \\
                 Chapter 3. Operating system installation \\
                 Chapter 4. Disks and file systems \\
                 Chapter 5. Software management \\
                 Chapter 6. Device management \\
                 Chapter 7. Network services \\
                 Chapter 8. Boot and system initialization \\
                 Chapter 9. Managing system resources \\
                 Chapter 10. Printing services \\
                 Chapter 11. Users and groups \\
                 Chapter 12. Monitoring and performance \\
                 Chapter 13. Backup and restore \\
                 Chapter 14. Security and hardening \\
                 Chapter 15. Linux high availability overview \\
                 Chapter 16. Shell scripting \\
                 Chapter 17. Troubleshooting \\
                 Part 3. IBM eServer platforms \\
                 Chapter 18. IBM eServer xSeries hardware platform
                 specifics \\
                 Chapter 19. IBM POWER technology hardware platform
                 specifics \\
                 Chapter 20. IBM eServer zSeries and IBM System z
                 hardware platform specifics \\
                 Appendix A. Tasks reference \\
                 Appendix B. Commands and configuration files reference
                 \\
                 Appendix C. UNIX to Linux Porting: A Comprehensive
                 Reference (table of contents and sample chapter) \\
                 Appendix D. Example: System information gathering
                 script \\
                 Appendix E. Additional material",
}


bibtype: book
filename: unix.bib
label: Bucanek:2006:BX
author: James Bucanek
title: Beginning Xcode
publisher: Wrox/Wiley Publishers
address: Indianapolis, IN, USA
pages: xxviii + 590
year: 2006
ISBN: 0-471-75479-X (paper\slash website) OR 047175479X (paper\slash website)
ISBN13: 978-0-471-75479-4 (paper\slash website) OR 9780471754794 (paper\slash website)
LCCN: QA76.76.O63 B826 2006
bibdate: Fri Oct 31 09:41:33 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2008.10.31 09:41:33 MDT
series: Wrox beginning guides
subject: Mac OS; operating systems (Computers); computer software; development
acknowledgement: ack-nhfb
rawauthor: James Bucanek
rawtitle: Beginning {Xcode}
URL:
http://www.loc.gov/catdir/enhancements/fy0623/2005037953-d.html; http://www.loc.gov/catdir/enhancements/fy0740/2005037953-b.html; http://www.loc.gov/catdir/toc/ecip066/2005037953.html

entry:
@Book{Bucanek:2006:BX,
  author =       "James Bucanek",
  title =        "Beginning {Xcode}",
  publisher =    "Wrox/Wiley Publishers",
  address =      "Indianapolis, IN, USA",
  pages =        "xxviii + 590",
  year =         "2006",
  ISBN =         "0-471-75479-X (paper\slash website)",
  ISBN-13 =      "978-0-471-75479-4 (paper\slash website)",
  LCCN =         "QA76.76.O63 B826 2006",
  bibdate =      "Fri Oct 31 09:41:33 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "Wrox beginning guides",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0623/2005037953-d.html;
                 http://www.loc.gov/catdir/enhancements/fy0740/2005037953-b.html;
                 http://www.loc.gov/catdir/toc/ecip066/2005037953.html",
  acknowledgement = ack-nhfb,
  subject =      "Mac OS; operating systems (Computers); computer
                 software; development",
}


bibtype: book
filename: unix.bib
label: Calkins:2006:SSA
author: Bill Calkins
title: Solaris 10 system administration
publisher: pub-QUE
address: pub-QUE:adr
pages: xx + 1077
year: 2006
ISBN: 0-7897-3461-3 OR 0789734613
ISBN13: 978-0-7897-3461-7 OR 9780789734617
LCCN: QA76.76.O63 C3518 2006
bibdate: Mon Nov 26 18:44:30 MST 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.11.26 18:44:30 MST
series: Exam prep
subject: Operating systems (Computers); Examinations; Study guides; Solaris (Computer file)
acknowledgement: ack-nhfb
rawauthor: Bill Calkins
rawtitle: {Solaris 10} system administration
entry:
@Book{Calkins:2006:SSA,
  author =       "Bill Calkins",
  title =        "{Solaris 10} system administration",
  publisher =    pub-QUE,
  address =      pub-QUE:adr,
  pages =        "xx + 1077",
  year =         "2006",
  ISBN =         "0-7897-3461-3",
  ISBN-13 =      "978-0-7897-3461-7",
  LCCN =         "QA76.76.O63 C3518 2006",
  bibdate =      "Mon Nov 26 18:44:30 MST 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "Exam prep",
  acknowledgement = ack-nhfb,
  subject =      "Operating systems (Computers); Examinations; Study
                 guides; Solaris (Computer file)",
}


bibtype: article
filename: unix.bib
label: Chae:2006:ATA
author: Bongsug (Kevin) Chae and Roger McHaney
title: Asian trio's adoption of Linux-based open source development
journal: j-CACM
volume: 49
number: 9
pages: 95--99
month: sep
monthnumber: 9
year: 2006
CODEN: CACMA2
DOI: https://doi.org/10.1145/1151030.1151035
ISSN: 0001-0782 (print), 1557-7317 (electronic) OR 00010782 (print), 15577317 (electronic)
ISSNL: 0001-0782 OR 00010782
bibdate: Tue Aug 22 07:27:40 MDT 2006
bibsource: http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.22 07:27:40 MDT
fjournal: Communications of the ACM
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J79
rawauthor: Bongsug (Kevin) Chae and Roger McHaney
rawtitle: {Asian} trio's adoption of {Linux}-based open source development
entry:
@Article{Chae:2006:ATA,
  author =       "Bongsug (Kevin) Chae and Roger McHaney",
  title =        "{Asian} trio's adoption of {Linux}-based open source
                 development",
  journal =      j-CACM,
  volume =       "49",
  number =       "9",
  pages =        "95--99",
  month =        sep,
  year =         "2006",
  CODEN =        "CACMA2",
  DOI =          "https://doi.org/10.1145/1151030.1151035",
  ISSN =         "0001-0782 (print), 1557-7317 (electronic)",
  ISSN-L =       "0001-0782",
  bibdate =      "Tue Aug 22 07:27:40 MDT 2006",
  bibsource =    "http://www.acm.org/pubs/contents/journals/cacm/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "Communications of the ACM",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J79",
}


bibtype: inproceedings
filename: unix.bib
label: Chatterjee:2006:BML
author: Soumitra Chatterjee
title: 64-Bit Migration to Linux on Itanium: Challenges, Advantages, and Tools
crossref: Anonymous:2006:PGI
pages: ??--??
year: 2006
bibdate: Sat Oct 14 18:26:53 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.14 18:26:53 ???
keywords: GNU/Linux; Intel IA-64; Itanium
acknowledgement: ack-nhfb
rawauthor: Soumitra Chatterjee
rawtitle: 64-Bit Migration to {Linux} on {Itanium}: Challenges, Advantages, and Tools
entry:
@InProceedings{Chatterjee:2006:BML,
  author =       "Soumitra Chatterjee",
  title =        "64-Bit Migration to {Linux} on {Itanium}: Challenges,
                 Advantages, and Tools",
  crossref =     "Anonymous:2006:PGI",
  pages =        "??--??",
  year =         "2006",
  bibdate =      "Sat Oct 14 18:26:53 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  keywords =     "GNU/Linux; Intel IA-64; Itanium",
}


bibtype: article
filename: unix.bib
label: Christin:2006:QQS
author: Nicolas Christin and Jorg Liebeherr
title: The QoSbox: Quantitative service differentiation in BSD routers
journal: j-COMP-NET-AMSTERDAM
volume: 50
number: 17
pages: 3353--3374
day: 5
month: dec
monthnumber: 12
year: 2006
ISSN: 1389-1286 (print), 1872-7069 (electronic) OR 13891286 (print), 18727069 (electronic)
ISSNL: 1389-1286 OR 13891286
bibdate: Sat Apr 2 08:42:14 MDT 2011
bibtimestamp: 2011.04.02 08:42:14 MDT
fjournal: Computer Networks
acknowledgement: ack-nhfb
journalURL: http://www.sciencedirect.com/science/journal/13891286
rawauthor: Nicolas Christin and J{\"o}rg Liebeherr
rawtitle: The {QoSbox}: {Quantitative} service differentiation in {BSD} routers
bibsource:
https://www.math.utah.edu/pub/tex/bib/compnetamsterdam2000.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib

entry:
@Article{Christin:2006:QQS,
  author =       "Nicolas Christin and J{\"o}rg Liebeherr",
  title =        "The {QoSbox}: {Quantitative} service differentiation
                 in {BSD} routers",
  journal =      j-COMP-NET-AMSTERDAM,
  volume =       "50",
  number =       "17",
  pages =        "3353--3374",
  day =          "5",
  month =        dec,
  year =         "2006",
  CODEN =        "????",
  ISSN =         "1389-1286 (print), 1872-7069 (electronic)",
  ISSN-L =       "1389-1286",
  bibdate =      "Sat Apr 2 08:42:14 MDT 2011",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/compnetamsterdam2000.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Networks",
  journal-URL =  "http://www.sciencedirect.com/science/journal/13891286",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:DQE
author: Toralf Chryselius and Andrea Kuntz
volume: 17
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 159
year: 2006
ISBN: 3-86768-116-3 (book), 3-86768-716-1 (DVD) OR 3867681163 (book), 3867687161 (DVD)
ISBN13: 978-3-86768-116-2 (book), 978-3-86768-716-4 (DVD) OR 9783867681162 (book), 9783867687164 (DVD)
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
series: Schriftenreihe Grenzganger - Linux leicht verstandlich
language: German
subject: Debian GNU/LINUX 3.1; Windows XP; Qemu
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
Debian unter Qemu Einfuhrung in das Betriebssystem Debian Linux in der virtuellen Umgebung Qemu unter Windows. (German) [Debian under Qemu: Introduction in the Debian Linux operating systems in the Qemu virtual machine under Windows]

rawtitle:
{Debian unter Qemu Einf{\"u}hrung in das Betriebssystem Debian Linux in der virtuellen Umgebung Qemu unter Windows}. ({German}) [Debian under {Qemu}: Introduction in the {Debian Linux} operating systems in the {Qemu} virtual machine under {Windows}]

entry:
@Book{Chryselius:2006:DQE,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Debian unter Qemu Einf{\"u}hrung in das
                 Betriebssystem Debian Linux in der virtuellen Umgebung
                 Qemu unter Windows}. ({German}) [Debian under {Qemu}:
                 Introduction in the {Debian Linux} operating systems in
                 the {Qemu} virtual machine under {Windows}]",
  volume =       "17",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "159",
  year =         "2006",
  ISBN =         "3-86768-116-3 (book), 3-86768-716-1 (DVD)",
  ISBN-13 =      "978-3-86768-116-2 (book), 978-3-86768-716-4 (DVD)",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "Debian GNU/LINUX 3.1; Windows XP; Qemu",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:IDQ
author: Toralf Chryselius and Andrea Kuntz
volume: 18
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 109
year: 2006
ISBN: 3-86768-117-1 (book), 3-86768-717-X (DVD) OR 3867681171 (book), 386768717X (DVD)
ISBN13: 978-3-86768-117-9 (book), 978-3-86768-717-1 (DVD) OR 9783867681179 (book), 9783867687171 (DVD)
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
language: German
subject: Internet; Computerunterstutzte Kommunikation; Debian GNU/LINUX 3.1; Qemu
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
Internetkommunikation in Debian unter Qemu Einfuhrung in das Betriebssystem Debian Linux in Qemu und Vorstellung der wichtigsten Internetprogramme. (German) [Internet Communication in Debian under Qemu: Introduction in the Debian Linux operating system in Qemu and creation of the most important Internet programs]

series:
Schriftenreihe Grenzganger - Linux leicht verstandlich; Schriftenreihe Grenzganger - Linux leicht verstandlich

rawtitle:
{Internetkommunikation in Debian unter Qemu Einf{\"u}hrung in das Betriebssystem Debian Linux in Qemu und Vorstellung der wichtigsten Internetprogramme}. ({German}) [{Internet} Communication in {Debian} under {Qemu}: Introduction in the {Debian Linux} operating system in {Qemu} and creation of the most important Internet programs]

entry:
@Book{Chryselius:2006:IDQ,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Internetkommunikation in Debian unter Qemu
                 Einf{\"u}hrung in das Betriebssystem Debian Linux in
                 Qemu und Vorstellung der wichtigsten
                 Internetprogramme}. ({German}) [{Internet}
                 Communication in {Debian} under {Qemu}: Introduction in
                 the {Debian Linux} operating system in {Qemu} and
                 creation of the most important Internet programs]",
  volume =       "18",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "109",
  year =         "2006",
  ISBN =         "3-86768-117-1 (book), 3-86768-717-X (DVD)",
  ISBN-13 =      "978-3-86768-117-9 (book), 978-3-86768-717-1 (DVD)",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich; Schriftenreihe Grenzg{\"a}nger -
                 Linux leicht verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "Internet; Computerunterst{\"u}tzte Kommunikation;
                 Debian GNU/LINUX 3.1; Qemu",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:IOQ
author: Toralf Chryselius and Andrea Kuntz
volume: 66
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 104
year: 2006
ISBN: 3-86768-165-1 OR 3867681651
ISBN13: 978-3-86768-165-0 OR 9783867681650
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
series: Schriftenreihe Grenzganger - Linux leicht verstandlich
language: German
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
Internetkommunikation mit OpenSUSE unter Qemu: Einfuhrung in das Betriebssystem OpenSUSE Linux und Vorstellung von Internetprogrammen in der virtuellen Umgebung Qemu

rawtitle:
{Internetkommunikation mit OpenSUSE unter Qemu: Einf{\"u}hrung in das Betriebssystem OpenSUSE Linux und Vorstellung von Internetprogrammen in der virtuellen Umgebung Qemu}

entry:
@Book{Chryselius:2006:IOQ,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Internetkommunikation mit OpenSUSE unter Qemu:
                 Einf{\"u}hrung in das Betriebssystem OpenSUSE Linux und
                 Vorstellung von Internetprogrammen in der virtuellen
                 Umgebung Qemu}",
  volume =       "66",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "104",
  year =         "2006",
  ISBN =         "3-86768-165-1",
  ISBN-13 =      "978-3-86768-165-0",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:IOV
author: Toralf Chryselius and Andrea Kuntz
volume: 66
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 117
year: 2006
ISBN: 3-86768-165-1 (book) OR 3867681651 (book)
ISBN13: 978-3-86768-165-0 (book) OR 9783867681650 (book)
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
language: German
subject: Internet; Computerunterstutzte Kommunikation; SuSE LINUX 10.2 OSS; Qemu
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
Internetkommunikation in OpenSUSE unter VMware [Qemu] Einfuhrung in das Betriebssystem OpenSUSE Linux und Vorstellung von Internetprogrammen in der virtuellen Umgebung VMware

series:
Schriftenreihe Grenzganger - Linux leicht verstandlich; Schriftenreihe Grenzganger - Linux leicht verstandlich

rawtitle:
{Internetkommunikation in OpenSUSE unter VMware [Qemu] Einf{\"u}hrung in das Betriebssystem OpenSUSE Linux und Vorstellung von Internetprogrammen in der virtuellen Umgebung VMware}

entry:
@Book{Chryselius:2006:IOV,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Internetkommunikation in OpenSUSE unter VMware [Qemu]
                 Einf{\"u}hrung in das Betriebssystem OpenSUSE Linux und
                 Vorstellung von Internetprogrammen in der virtuellen
                 Umgebung VMware}",
  volume =       "66",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "117",
  year =         "2006",
  ISBN =         "3-86768-165-1 (book)",
  ISBN-13 =      "978-3-86768-165-0 (book)",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich; Schriftenreihe Grenzg{\"a}nger -
                 Linux leicht verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "Internet; Computerunterst{\"u}tzte Kommunikation; SuSE
                 LINUX 10.2 OSS; Qemu",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:KLQa
author: Toralf Chryselius and Andrea Kuntz
volume: 49
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 142
year: 2006
ISBN: 3-86768-148-1 (book), 3-86768-748-X (DVD) OR 3867681481 (book), 386768748X (DVD)
ISBN13: 978-3-86768-148-3 (book), 978-3-86768-748-5 (DVD) OR 9783867681483 (book), 9783867687485 (DVD)
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
language: German
subject: Knoppix; Windows XP; Qemu
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
Knoppix Linux unter Qemu Einfuhrung in das Betriebssystem Knoppix Linux in der virtuellen Umgebung Qemu unter Windows

series:
Schriftenreihe Grenzganger - Linux leicht verstandlich; Schriftenreihe Grenzganger - Linux leicht verstandlich

rawtitle:
{Knoppix Linux unter Qemu Einf{\"u}hrung in das Betriebssystem Knoppix Linux in der virtuellen Umgebung Qemu unter Windows}

entry:
@Book{Chryselius:2006:KLQa,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Knoppix Linux unter Qemu Einf{\"u}hrung in das
                 Betriebssystem Knoppix Linux in der virtuellen Umgebung
                 Qemu unter Windows}",
  volume =       "49",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "142",
  year =         "2006",
  ISBN =         "3-86768-148-1 (book), 3-86768-748-X (DVD)",
  ISBN-13 =      "978-3-86768-148-3 (book), 978-3-86768-748-5 (DVD)",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich; Schriftenreihe Grenzg{\"a}nger -
                 Linux leicht verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "Knoppix; Windows XP; Qemu",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:KLQb
author: Toralf Chryselius and Andrea Kuntz
volume: 33
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 156
year: 2006
ISBN: 3-86768-132-5 (book), 3-86768-732-3 (DVD) OR 3867681325 (book), 3867687323 (DVD)
ISBN13: 978-3-86768-132-2 (book), 978-3-86768-732-4 (DVD) OR 9783867681322 (book), 9783867687324 (DVD)
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
language: German
subject: Kanotix; Windows XP; Qemu
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
Kanotix Linux unter Qemu Einfuhrung in das Betriebssystem Kanotix Linux in der virtuellen Umgebung Qemu unter Windows

rawtitle:
{Kanotix Linux unter Qemu Einf{\"u}hrung in das Betriebssystem Kanotix Linux in der virtuellen Umgebung Qemu unter Windows}

entry:
@Book{Chryselius:2006:KLQb,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Kanotix Linux unter Qemu Einf{\"u}hrung in das
                 Betriebssystem Kanotix Linux in der virtuellen Umgebung
                 Qemu unter Windows}",
  volume =       "33",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "156",
  year =         "2006",
  ISBN =         "3-86768-132-5 (book), 3-86768-732-3 (DVD)",
  ISBN-13 =      "978-3-86768-132-2 (book), 978-3-86768-732-4 (DVD)",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich; Schriftenreihe Grenzg{\"a}nger -
                 Linux leicht verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "Kanotix; Windows XP; Qemu",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:KQE
author: Toralf Chryselius and Andrea Kuntz
title: Kubuntu unter Qemu Einfuhrung in das Betriebssystem Kubuntu Linux in der virtuellen Umgebung Qemu
volume: 5
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 158
year: 2006
ISBN: 3-86768-104-X (book), 3-86768-704-8 (DVD) OR 386768104X (book), 3867687048 (DVD)
ISBN13: 978-3-86768-104-9 (book), 978-3-86768-704-1 (DVD) OR 9783867681049 (book), 9783867687041 (DVD)
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
language: German
subject: Kubuntu <Programm>; Windows XP; Qemu
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
rawtitle:
{Kubuntu unter Qemu Einf{\"u}hrung in das Betriebssystem Kubuntu Linux in der virtuellen Umgebung Qemu}

entry:
@Book{Chryselius:2006:KQE,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Kubuntu unter Qemu Einf{\"u}hrung in das
                 Betriebssystem Kubuntu Linux in der virtuellen Umgebung
                 Qemu}",
  volume =       "5",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "158",
  year =         "2006",
  ISBN =         "3-86768-104-X (book), 3-86768-704-8 (DVD)",
  ISBN-13 =      "978-3-86768-104-9 (book), 978-3-86768-704-1 (DVD)",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich; Schriftenreihe Grenzg{\"a}nger -
                 Linux leicht verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "Kubuntu <Programm>; Windows XP; Qemu",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:LOL
author: Toralf Chryselius and Andrea Kuntz
volume: 63
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 147
year: 2006
ISBN: 3-86768-166-X, 3-86768-766-8 OR 386768166X, 3867687668
ISBN13: 978-3-86768-166-7, 978-3-86768-766-9 OR 9783867681667, 9783867687669
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
series: Schriftenreihe Grenzganger - Linux leicht verstandlich
language: German
remark: Auf dem Buchrucken ``Lernsoftware in OpenSUSE unter Qemu'' und Band 67.
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
Lernprogramme mit OpenSUSE Linux unter Qemu: Einfuhrung in das Betriebssystem, OpenSUSE Linux und Vorstellung von Lernprogrammen in der virtuellen Umgebung Quemu

rawtitle:
{Lernprogramme mit OpenSUSE Linux unter Qemu: Einf{\"u}hrung in das Betriebssystem, OpenSUSE Linux und Vorstellung von Lernprogrammen in der virtuellen Umgebung Quemu}

entry:
@Book{Chryselius:2006:LOL,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{Lernprogramme mit OpenSUSE Linux unter Qemu:
                 Einf{\"u}hrung in das Betriebssystem, OpenSUSE Linux
                 und Vorstellung von Lernprogrammen in der virtuellen
                 Umgebung Quemu}",
  volume =       "63",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "147",
  year =         "2006",
  ISBN =         "3-86768-166-X, 3-86768-766-8",
  ISBN-13 =      "978-3-86768-166-7, 978-3-86768-766-9",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  remark =       "Auf dem Buchr{\"u}cken ``Lernsoftware in OpenSUSE
                 unter Qemu'' und Band 67.",
}


bibtype: book
filename: unix.bib
label: Chryselius:2006:OLQ
author: Toralf Chryselius and Andrea Kuntz
volume: 65
publisher: CVTD
address: Bergfelde bei Berlin, Germany
pages: 168
year: 2006
ISBN: 3-86768-164-3 (book) OR 3867681643 (book)
ISBN13: 978-3-86768-164-3 (book) OR 9783867681643 (book)
bibdate: Mon May 17 09:07:48 MDT 2010
bibsource: fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.05.17 09:07:48 MDT
language: German
subject: SuSE LINUX 10.2 OSS; Windows XP; Qemu
acknowledgement: ack-nhfb
rawauthor: Toralf Chryselius and Andrea Kuntz
title:
OpenSuSE Linux unter Qemu Einfuhrung in das Betriebssystem OpenSUSE Linux in der virtuellen Umgebng Qemu unter Windows

rawtitle:
{OpenSuSE Linux unter Qemu Einf{\"u}hrung in das Betriebssystem OpenSUSE Linux in der virtuellen Umgebng Qemu unter Windows}

entry:
@Book{Chryselius:2006:OLQ,
  author =       "Toralf Chryselius and Andrea Kuntz",
  title =        "{OpenSuSE Linux unter Qemu Einf{\"u}hrung in das
                 Betriebssystem OpenSUSE Linux in der virtuellen Umgebng
                 Qemu unter Windows}",
  volume =       "65",
  publisher =    "CVTD",
  address =      "Bergfelde bei Berlin, Germany",
  pages =        "168",
  year =         "2006",
  ISBN =         "3-86768-164-3 (book)",
  ISBN-13 =      "978-3-86768-164-3 (book)",
  LCCN =         "????",
  bibdate =      "Mon May 17 09:07:48 MDT 2010",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  series =       "Schriftenreihe Grenzg{\"a}nger - Linux leicht
                 verst{\"a}ndlich; Schriftenreihe Grenzg{\"a}nger -
                 Linux leicht verst{\"a}ndlich",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "SuSE LINUX 10.2 OSS; Windows XP; Qemu",
}


bibtype: book
filename: unix.bib
label: Covington:2006:SGG
author: Jim Covington
title: The Sun Geeks Guide To Native LDAP: a Native LDAP Blueprint
publisher: BookSurge Publishing
pages: 126 (est.)
year: 2006
ISBN: 1-4196-3028-8 OR 1419630288
ISBN13: 978-1-4196-3028-6 OR 9781419630286
bibdate: Mon Nov 26 18:40:46 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2007.11.26 18:40:46 ???
acknowledgement: ack-nhfb
rawauthor: Jim Covington
rawtitle: The {Sun} Geeks Guide To Native {LDAP}: a Native {LDAP} Blueprint
entry:
@Book{Covington:2006:SGG,
  author =       "Jim Covington",
  title =        "The {Sun} Geeks Guide To Native {LDAP}: a Native
                 {LDAP} Blueprint",
  publisher =    "BookSurge Publishing",
  address =      "????",
  pages =        "126 (est.)",
  year =         "2006",
  ISBN =         "1-4196-3028-8",
  ISBN-13 =      "978-1-4196-3028-6",
  LCCN =         "????",
  bibdate =      "Mon Nov 26 18:40:46 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$34.95",
  acknowledgement = ack-nhfb,
}


bibtype: misc
filename: unix.bib
label: Cox:2006:XSU
author: Russ Cox and Frans Kaashoek and Robert Morris
title: Xv6, a simple Unix-like teaching operating system
pages: 126 (est.)
year: 2006
bibdate: Mon Oct 27 12:21:07 2014
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2014.10.27 12:21:07 ???
URL: http://pdos.csail.mit.edu/6.828/2014/xv6.html
keywords: Robert Tappan Morris [son of Robert Morris]
acknowledgement: ack-nhfb
howpublished: MIT course 6.828 Operating System Engineering
rawauthor: Russ Cox and Frans Kaashoek and Robert Morris
rawtitle: {Xv6}, a simple {Unix}-like teaching operating system
remark:
This document describes a rewrite in modern C of Sixth Edition Unix (aka v6) described in cite Lions:1996:LCU.

entry:
@Misc{Cox:2006:XSU,
  author =       "Russ Cox and Frans Kaashoek and Robert Morris",
  title =        "{Xv6}, a simple {Unix}-like teaching operating
                 system",
  howpublished = "MIT course 6.828 Operating System Engineering",
  year =         "2006",
  bibdate =      "Mon Oct 27 12:21:07 2014",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "http://pdos.csail.mit.edu/6.828/2014/xv6.html",
  acknowledgement = ack-nhfb,
  keywords =     "Robert Tappan Morris [son of Robert Morris]",
  remark =       "This document describes a rewrite in modern C of Sixth
                 Edition Unix (aka v6) described in
                 \cite{Lions:1996:LCU}.",
}


bibtype: book
filename: unix.bib
label: Dalheimer:2006:RL
author: Matthias Kalle Dalheimer and Matt Welsh
title: Running Linux
publisher: pub-ORA
address: pub-ORA:adr
edition: Fifth
pages: xviii + 951
year: 2006
ISBN: 0-596-00760-4 (paperback) OR 0596007604 (paperback)
ISBN13: 978-0-596-00760-7 (paperback) OR 9780596007607 (paperback)
LCCN: QA76.76.O63 R855 2006
bibdate: Wed Jun 25 17:33:31 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2008.06.25 17:33:31 MDT
remark: Previous edition by Matt Welsh and others 2002.
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Matthias Kalle Dalheimer and Matt Welsh
rawtitle: Running Linux
URL:
http://www.loc.gov/catdir/enhancements/fy0715/2007270110-d.html; http://www.oreilly.com/catalog/9780596007607

TOC:
Part 1. Enjoying and being productive on Linux Introduction to Linux Preinstallation and installation Desktop environments Basic Unix commands and concepts Web browsers and instant messaging Electronic mail clients Games Office suites and personal productivity Multimedia Part 2. System administration System administration basics Managing users, groups, and permissions Installing, updating, and compiling programs Networking Printing File sharing The X Window system System start and shutdown Configuring and building the Kernel Text editing Text processing Part 3. Programming Programming tools Running a Web server Transporting and handling email messages Running an FTP server Part 4. Network services Running Web applications with MySQL and PHP Running a secure system Backup and recovery Heterogeneous networking and running Windows programs

rawTOC:
Part 1.\\ Enjoying and being productive on Linux\\ Introduction to Linux \\ Preinstallation and installation \\ Desktop environments \\ Basic Unix commands and concepts \\ Web browsers and instant messaging \\ Electronic mail clients \\ Games \\ Office suites and personal productivity \\ Multimedia \\ Part 2. System administration \\ System administration basics \\ Managing users, groups, and permissions \\ Installing, updating, and compiling programs \\ Networking \\ Printing \\ File sharing \\ The X Window system \\ System start and shutdown \\ Configuring and building the Kernel \\ Text editing \\ Text processing \\ Part 3. Programming \\ Programming tools \\ Running a Web server \\ Transporting and handling email messages \\ Running an FTP server \\ Part 4. Network services \\ Running Web applications with MySQL and PHP \\ Running a secure system \\ Backup and recovery \\ Heterogeneous networking and running Windows programs

entry:
@Book{Dalheimer:2006:RL,
  author =       "Matthias Kalle Dalheimer and Matt Welsh",
  title =        "Running Linux",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  edition =      "Fifth",
  pages =        "xviii + 951",
  year =         "2006",
  ISBN =         "0-596-00760-4 (paperback)",
  ISBN-13 =      "978-0-596-00760-7 (paperback)",
  LCCN =         "QA76.76.O63 R855 2006",
  bibdate =      "Wed Jun 25 17:33:31 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0715/2007270110-d.html;
                 http://www.oreilly.com/catalog/9780596007607",
  acknowledgement = ack-nhfb,
  remark =       "Previous edition by Matt Welsh and others 2002.",
  subject =      "Linux; Operating systems (Computers)",
  tableofcontents = "Part 1.\\
                 Enjoying and being productive on Linux\\
                 Introduction to Linux \\
                 Preinstallation and installation \\
                 Desktop environments \\
                 Basic Unix commands and concepts \\
                 Web browsers and instant messaging \\
                 Electronic mail clients \\
                 Games \\
                 Office suites and personal productivity \\
                 Multimedia \\
                 Part 2. System administration \\
                 System administration basics \\
                 Managing users, groups, and permissions \\
                 Installing, updating, and compiling programs \\
                 Networking \\
                 Printing \\
                 File sharing \\
                 The X Window system \\
                 System start and shutdown \\
                 Configuring and building the Kernel \\
                 Text editing \\
                 Text processing \\
                 Part 3. Programming \\
                 Programming tools \\
                 Running a Web server \\
                 Transporting and handling email messages \\
                 Running an FTP server \\
                 Part 4. Network services \\
                 Running Web applications with MySQL and PHP \\
                 Running a secure system \\
                 Backup and recovery \\
                 Heterogeneous networking and running Windows programs",
}


bibtype: book
filename: unix.bib
label: Davidson:2006:RMX
author: James Duncan Davidson
title: Running Mac OS X Panther
publisher: pub-ORA
address: pub-ORA:adr
edition: Second
pages: 372
year: 2006
ISBN: 0-596-00913-5 (paperback) OR 0596009135 (paperback)
ISBN13: 978-0-596-00913-7 (paperback) OR 9780596009137 (paperback)
LCCN: QA76.76.O63 D3498 2006
bibdate: Thu Apr 19 18:14:40 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.04.19 18:14:40 MDT
URL: http://www.oreillynet.com/catalog/runmacx2/
subject: Mac OS; Operating systems (Computers); Macintosh (Computer); Programming
acknowledgement: ack-nhfb
rawauthor: James Duncan Davidson
rawtitle: Running {Mac OS X Panther}
TOC:
Part I: Getting started 1. Where it all came from The classic Mac OS System 7 Copland NEXTSTEP Rhapsody Continued development of the classic Mac OS Mac OS X 10.0 Mac OS 10.1 Mac OS 10.2 jaguar Mac OS X panther What does the future hold? 2. Lay of the land Filesystem hierarchy The many roots of the finder Filesystem domains The library 3. The terminal and shell Terminal overview Mac-specific shell commands Configuring and using bash Using other shells Shell scripts Getting help Editing text files Part II: Essentials 4. System startup and login The hardware boot process The operating system boot process Logging in Monitoring users Logging out Shutting down the system 5. Users and groups What is a user anyway? Managing users Nonhuman users 6. Files and permissions Finding files File ownership Type and creator codes 7. Monitoring the system About this Mac System profiler Monitoring system activity Working with processes 8. Scheduling tasks Setting the time Using iCal to schedule tasks Using periodic Cron Changing periodic's execution time 9. Preferences and defaults Property lists Where preferences are stored Reading and writing preferences Determining preference keys 10. Disks and filesystems Filesystems Network-based filesystems Disk utility Erasing and formatting disks Partitioning disks Disk images Creating a RAID Part III: Advanced topics 11. Open directory Open directory in action Directory services defined Directory domains The local domain and NetInfo Configuring shared domains Kerberos and single sign-on Command-line open directory tools 12. Printing Print system overview Managing printers Adding and configuring printers Anatomy of a print job Printing from the command line 13. Networking The Internet protocol Configuring IP addresses Naming and DNS Private networks and NAT Routing Active network connections Appletalk Locations Using a dial-up connection Virtual private networks Firewalls Internet connection sharing 14. Network services File sharing Web sharing Remote login FTP access sharing printers Mail.

rawTOC:
Part I: Getting started \\ 1. Where it all came from \\ The classic Mac OS \\ System 7 \\ Copland \\ NEXTSTEP \\ Rhapsody \\ Continued development of the classic Mac OS \\ Mac OS X 10.0 \\ Mac OS 10.1 \\ Mac OS 10.2 jaguar \\ Mac OS X panther \\ What does the future hold? \\ 2. Lay of the land \\ Filesystem hierarchy \\ The many roots of the finder \\ Filesystem domains \\ The library \\ 3. The terminal and shell \\ Terminal overview \\ Mac-specific shell commands \\ Configuring and using bash \\ Using other shells \\ Shell scripts \\ Getting help \\ Editing text files \\ Part II: Essentials \\ 4. System startup and login \\ The hardware boot process \\ The operating system boot process \\ Logging in \\ Monitoring users \\ Logging out \\ Shutting down the system \\ 5. Users and groups \\ What is a user anyway? \\ Managing users \\ Nonhuman users \\ 6. Files and permissions \\ Finding files \\ File ownership \\ Type and creator codes \\ 7. Monitoring the system \\ About this Mac \\ System profiler \\ Monitoring system activity \\ Working with processes \\ 8. Scheduling tasks \\ Setting the time \\ Using iCal to schedule tasks \\ Using periodic \\ Cron \\ Changing periodic's execution time \\ 9. Preferences and defaults \\ Property lists \\ Where preferences are stored \\ Reading and writing preferences \\ Determining preference keys \\ 10. Disks and filesystems \\ Filesystems \\ Network-based filesystems \\ Disk utility \\ Erasing and formatting disks \\ Partitioning disks \\ Disk images \\ Creating a RAID \\ Part III: Advanced topics \\ 11. Open directory \\ Open directory in action \\ Directory services defined \\ Directory domains \\ The local domain and NetInfo \\ Configuring shared domains \\ Kerberos and single sign-on \\ Command-line open directory tools \\ 12. Printing \\ Print system overview \\ Managing printers \\ Adding and configuring printers \\ Anatomy of a print job \\ Printing from the command line \\ 13. Networking \\ The Internet protocol \\ Configuring IP addresses \\ Naming and DNS \\ Private networks and NAT \\ Routing \\ Active network connections \\ Appletalk \\ Locations \\ Using a dial-up connection \\ Virtual private networks \\ Firewalls \\ Internet connection sharing \\ 14. Network services \\ File sharing \\ Web sharing \\ Remote login \\ FTP access \\ sharing printers \\ Mail.

entry:
@Book{Davidson:2006:RMX,
  author =       "James Duncan Davidson",
  title =        "Running {Mac OS X Panther}",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  edition =      "Second",
  pages =        "372",
  year =         "2006",
  ISBN =         "0-596-00913-5 (paperback)",
  ISBN-13 =      "978-0-596-00913-7 (paperback)",
  LCCN =         "QA76.76.O63 D3498 2006",
  bibdate =      "Thu Apr 19 18:14:40 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.oreillynet.com/catalog/runmacx2/",
  acknowledgement = ack-nhfb,
  subject =      "Mac OS; Operating systems (Computers); Macintosh
                 (Computer); Programming",
  tableofcontents = "Part I: Getting started \\
                 1. Where it all came from \\
                 The classic Mac OS \\
                 System 7 \\
                 Copland \\
                 NEXTSTEP \\
                 Rhapsody \\
                 Continued development of the classic Mac OS \\
                 Mac OS X 10.0 \\
                 Mac OS 10.1 \\
                 Mac OS 10.2 jaguar \\
                 Mac OS X panther \\
                 What does the future hold? \\
                 2. Lay of the land \\
                 Filesystem hierarchy \\
                 The many roots of the finder \\
                 Filesystem domains \\
                 The library \\
                 3. The terminal and shell \\
                 Terminal overview \\
                 Mac-specific shell commands \\
                 Configuring and using bash \\
                 Using other shells \\
                 Shell scripts \\
                 Getting help \\
                 Editing text files \\
                 Part II: Essentials \\
                 4. System startup and login \\
                 The hardware boot process \\
                 The operating system boot process \\
                 Logging in \\
                 Monitoring users \\
                 Logging out \\
                 Shutting down the system \\
                 5. Users and groups \\
                 What is a user anyway? \\
                 Managing users \\
                 Nonhuman users \\
                 6. Files and permissions \\
                 Finding files \\
                 File ownership \\
                 Type and creator codes \\
                 7. Monitoring the system \\
                 About this Mac \\
                 System profiler \\
                 Monitoring system activity \\
                 Working with processes \\
                 8. Scheduling tasks \\
                 Setting the time \\
                 Using iCal to schedule tasks \\
                 Using periodic \\
                 Cron \\
                 Changing periodic's execution time \\
                 9. Preferences and defaults \\
                 Property lists \\
                 Where preferences are stored \\
                 Reading and writing preferences \\
                 Determining preference keys \\
                 10. Disks and filesystems \\
                 Filesystems \\
                 Network-based filesystems \\
                 Disk utility \\
                 Erasing and formatting disks \\
                 Partitioning disks \\
                 Disk images \\
                 Creating a RAID \\
                 Part III: Advanced topics \\
                 11. Open directory \\
                 Open directory in action \\
                 Directory services defined \\
                 Directory domains \\
                 The local domain and NetInfo \\
                 Configuring shared domains \\
                 Kerberos and single sign-on \\
                 Command-line open directory tools \\
                 12. Printing \\
                 Print system overview \\
                 Managing printers \\
                 Adding and configuring printers \\
                 Anatomy of a print job \\
                 Printing from the command line \\
                 13. Networking \\
                 The Internet protocol \\
                 Configuring IP addresses \\
                 Naming and DNS \\
                 Private networks and NAT \\
                 Routing \\
                 Active network connections \\
                 Appletalk \\
                 Locations \\
                 Using a dial-up connection \\
                 Virtual private networks \\
                 Firewalls \\
                 Internet connection sharing \\
                 14. Network services \\
                 File sharing \\
                 Web sharing \\
                 Remote login \\
                 FTP access \\
                 sharing printers \\
                 Mail.",
}


bibtype: book
filename: unix.bib
label: Davies:2006:SLB
author: Justin Davies and Roger Whittaker and William Von Hagen
title: SUSE Linux 10 bible
publisher: pub-WILEY
address: pub-WILEY:adr
pages: xlvii + 852
year: 2006
ISBN: 0-471-75488-9 (paperback/DVD) OR 0471754889 (paperback/DVD)
ISBN13: 978-0-471-75488-6 (paperback/DVD) OR 9780471754886 (paperback/DVD)
LCCN: QA76.76.O63 D34992 2006
bibdate: Tue Dec 5 14:08:05 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.12.05 14:08:05 MST
URL: http://www.loc.gov/catdir/toc/ecip0519/2005027885.html
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Justin Davies and Roger Whittaker and William {Von Hagen}
rawtitle: {SUSE Linux 10} bible
TOC:
Ch. 1. Installing SUSE 10 Ch. 2. Linux fundamentals Ch. 3. Partitions, filesystems, and files Ch. 4. Booting the system Ch. 5. Documentation Ch. 6. Understanding your linux network Ch. 7. Logging Ch. 8. The X Window system Ch. 9. Configuring the system with YaST Ch. 10. Text manipulation Ch. 11. Text editors Ch. 12. Working with packages Ch. 13. Working with files Ch. 14. Working with the system Ch. 15. Linux networking Ch. 16. Setting up a Web site with the Apache Web server Ch. 17. Mail servers - Postfix, Sendmail, Qpopper, and Cyrus Ch. 18. Setting up Windows interoperability with Samba Ch. 19. Setting up printing with CUPS Ch. 20. Configuring the using DHCP services Ch. 21. Configuring a DNS server Ch. 22. Working with NFS and NIS Ch. 23. Running an FTP server on SUSE Ch. 24. Implementing firewalls in SUSE Linux Ch. 25. Working with LDAP in SUSE Ch. 26. Setting up a Web proxy with Squid Ch. 27. Enterprise architecture Ch. 28. Emulation and virtualization Ch. 29. The kernel Ch. 30. SUSE Linux OpenExchange server Ch. 31. The Novell Open Enterprise server Ch. 32. Business desktop Linux: the Novell Linux desktop

rawTOC:
Ch. 1. Installing SUSE 10 \\ Ch. 2. Linux fundamentals \\ Ch. 3. Partitions, filesystems, and files \\ Ch. 4. Booting the system \\ Ch. 5. Documentation \\ Ch. 6. Understanding your linux network \\ Ch. 7. Logging \\ Ch. 8. The X Window system \\ Ch. 9. Configuring the system with YaST \\ Ch. 10. Text manipulation \\ Ch. 11. Text editors \\ Ch. 12. Working with packages \\ Ch. 13. Working with files \\ Ch. 14. Working with the system \\ Ch. 15. Linux networking \\ Ch. 16. Setting up a Web site with the Apache Web server \\ Ch. 17. Mail servers - Postfix, Sendmail, Qpopper, and Cyrus \\ Ch. 18. Setting up Windows interoperability with Samba \\ Ch. 19. Setting up printing with CUPS \\ Ch. 20. Configuring the using DHCP services \\ Ch. 21. Configuring a DNS server \\ Ch. 22. Working with NFS and NIS \\ Ch. 23. Running an FTP server on SUSE \\ Ch. 24. Implementing firewalls in SUSE Linux \\ Ch. 25. Working with LDAP in SUSE \\ Ch. 26. Setting up a Web proxy with Squid \\ Ch. 27. Enterprise architecture \\ Ch. 28. Emulation and virtualization \\ Ch. 29. The kernel \\ Ch. 30. SUSE Linux OpenExchange server \\ Ch. 31. The Novell Open Enterprise server \\ Ch. 32. Business desktop Linux: the Novell Linux desktop

entry:
@Book{Davies:2006:SLB,
  author =       "Justin Davies and Roger Whittaker and William {Von
                 Hagen}",
  title =        "{SUSE Linux 10} bible",
  publisher =    pub-WILEY,
  address =      pub-WILEY:adr,
  pages =        "xlvii + 852",
  year =         "2006",
  ISBN =         "0-471-75488-9 (paperback/DVD)",
  ISBN-13 =      "978-0-471-75488-6 (paperback/DVD)",
  LCCN =         "QA76.76.O63 D34992 2006",
  bibdate =      "Tue Dec 5 14:08:05 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip0519/2005027885.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
  tableofcontents = "Ch. 1. Installing SUSE 10 \\
                 Ch. 2. Linux fundamentals \\
                 Ch. 3. Partitions, filesystems, and files \\
                 Ch. 4. Booting the system \\
                 Ch. 5. Documentation \\
                 Ch. 6. Understanding your linux network \\
                 Ch. 7. Logging \\
                 Ch. 8. The X Window system \\
                 Ch. 9. Configuring the system with YaST \\
                 Ch. 10. Text manipulation \\
                 Ch. 11. Text editors \\
                 Ch. 12. Working with packages \\
                 Ch. 13. Working with files \\
                 Ch. 14. Working with the system \\
                 Ch. 15. Linux networking \\
                 Ch. 16. Setting up a Web site with the Apache Web
                 server \\
                 Ch. 17. Mail servers - Postfix, Sendmail, Qpopper, and
                 Cyrus \\
                 Ch. 18. Setting up Windows interoperability with Samba
                 \\
                 Ch. 19. Setting up printing with CUPS \\
                 Ch. 20. Configuring the using DHCP services \\
                 Ch. 21. Configuring a DNS server \\
                 Ch. 22. Working with NFS and NIS \\
                 Ch. 23. Running an FTP server on SUSE \\
                 Ch. 24. Implementing firewalls in SUSE Linux \\
                 Ch. 25. Working with LDAP in SUSE \\
                 Ch. 26. Setting up a Web proxy with Squid \\
                 Ch. 27. Enterprise architecture \\
                 Ch. 28. Emulation and virtualization \\
                 Ch. 29. The kernel \\
                 Ch. 30. SUSE Linux OpenExchange server \\
                 Ch. 31. The Novell Open Enterprise server \\
                 Ch. 32. Business desktop Linux: the Novell Linux
                 desktop",
}


bibtype: book
filename: unix.bib
label: Dike:2006:UML
author: Jeff Dike
title: User Mode Linux
publisher: pub-PH
address: pub-PH:adr
year: 2006
ISBN: 0-13-186505-6 (paperback) OR 0131865056 (paperback)
ISBN13: 978-0-13-186505-1 (paperback) OR 9780131865051 (paperback)
LCCN: QA76.76.O63 D545 2006
bibdate: Wed Mar 15 17:45:09 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.03.15 17:45:09 MST
series: Bruce Perens Open Source series
URL: http://www.loc.gov/catdir/toc/ecip068/2006004225.html
subject: Linux; Operating systems (Computers); Application software porting
acknowledgement: ack-nhfb
rawauthor: Jeff Dike
rawtitle: User Mode {Linux}
TOC:
Preface Acknowledgments Chapter 1: Introduction What Is UML? Comparison with Other Virtualization Technologies Why Virtual Machines? A Bit of History What Is UML Used For? Server Consolidation Education Development Disaster Recovery Practice The Future Chapter 2: A Quick Look at UML Booting UML for the First Time Booting UML Successfully Looking at a UML from the Inside and Outside Conclusion Chapter 3: Exploring UML Logging In as a Normal User Consoles and Serial Lines Adding Swap Space Partitioned Disks UML Disks as Raw Data Networking Shutting Down Chapter 4: A Second UML COW Files Booting from COW Files Moving a Backing File Merging a COW File with Its Backing File Networking the UML Instances A Virtual Serial Line Chapter 5: Playing with a UML Instance Use and Abuse of UML Block Devices Networking and the Host Chapter 6: UML Filesystem Management Mounting Host Directories within a UML hostfs humfs Host Access to UML Filesystems Making Backups Extending Filesystems When to Use What Chapter 7: UML Networking in Depth Manually Setting Up Networking TUN/TAP with Routing Bridging The UML Networking Transports Access to the Host Network Isolated Networks pcap How to Choose the Right Transport Configuring the Transports An Extended Example A Multicast Network A Second Multicast Network Adding a uml_switch Network Summary of the Networking Example Chapter 8: Managing UML Instances from the Host The Management Console MConsole Queries The uml_mconsole Client The MConsole Protocol The MConsole Perl Library Requests Handled in Process and Interrupt Contexts MConsole Notifications Controlling a UML Instance with Signals Chapter 9: Host Setup for a Small UML Server Host Kernel Version UML Execution Modes tt Mode skas3 Mode skas0 Mode To Patch or Not to Patch? Vanderpool and Pacifica Managing Long-Lived UML Instances Networking UML Physical Memory Host Memory Consumption umid Directories Overall Recommendations Chapter 10: Large UML Server Management Security UML Configuration Jailing UML Instances Providing Console Access Securely skas3 versus skas0 Future Enhancements sysemu PTRACE_FAULTINFO MADV_TRUNCATE remap_file_pages VCPU Final Points Chapter 11: Compiling UML from Source Downloading UML Source Configuration Useful Configuration Options Compilation Chapter 12: Specialized UML Configurations Large Numbers of Devices Network Interfaces Memory Clusters Getting Started Booting the Cluster Exercises Other Clusters UML as a Decision-Making Tool for Hardware Chapter 13: The Future of UML The externfs Filesystem Virtual Processes Captive UML Secure mod_perl Evolution Application Administration A Standard Application Programming Interface Application-Level Clustering Virtualized Subsystems Conclusion Appendix A: UML Command-Line Options Device and Hardware Specifications Debugging Options Management Options Informational Options Appendix B: UML Utilities Reference humfsify uml_moo uml_mconsole tunctl uml_switch Internal Utilities Index

rawTOC:
Preface Acknowledgments \\ Chapter 1: Introduction \\ What Is UML? \\ Comparison with Other Virtualization Technologies \\ Why Virtual Machines? \\ A Bit of History \\ What Is UML Used For? \\ Server Consolidation \\ Education \\ Development \\ Disaster Recovery Practice \\ The Future \\ Chapter 2: A Quick Look at UML \\ Booting UML for the First Time \\ Booting UML Successfully \\ Looking at a UML from the Inside and Outside \\ Conclusion \\ Chapter 3: Exploring UML \\ Logging In as a Normal User \\ Consoles and Serial Lines \\ Adding Swap Space \\ Partitioned Disks \\ UML Disks as Raw Data \\ Networking \\ Shutting Down \\ Chapter 4: A Second UML \\ COW Files \\ Booting from COW Files \\ Moving a Backing File \\ Merging a COW File with Its Backing File \\ Networking the UML Instances \\ A Virtual Serial Line \\ Chapter 5: Playing with a UML Instance \\ Use and Abuse of UML Block Devices \\ Networking and the Host \\ Chapter 6: UML Filesystem Management \\ Mounting Host Directories within a UML \\ hostfs \\ humfs \\ Host Access to UML Filesystems \\ Making Backups \\ Extending Filesystems \\ When to Use What \\ Chapter 7: UML Networking in Depth \\ Manually Setting Up Networking \\ TUN/TAP with Routing \\ Bridging \\ The UML Networking Transports \\ Access to the Host Network \\ Isolated Networks \\ pcap \\ How to Choose the Right Transport \\ Configuring the Transports \\ An Extended Example \\ A Multicast Network \\ A Second Multicast Network \\ Adding a uml_switch Network \\ Summary of the Networking Example \\ Chapter 8: Managing UML Instances from the Host \\ The Management Console \\ MConsole Queries \\ The uml_mconsole Client \\ The MConsole Protocol \\ The MConsole Perl Library \\ Requests Handled in Process and Interrupt Contexts \\ MConsole Notifications \\ Controlling a UML Instance with Signals \\ Chapter 9: Host Setup for a Small UML Server \\ Host Kernel Version \\ UML Execution Modes \\ tt Mode \\ skas3 Mode \\ skas0 Mode \\ To Patch or Not to Patch? \\ Vanderpool and Pacifica \\ Managing Long-Lived UML Instances \\ Networking \\ UML Physical Memory \\ Host Memory Consumption \\ umid Directories \\ Overall Recommendations \\ Chapter 10: Large UML Server Management \\ Security \\ UML Configuration \\ Jailing UML Instances \\ Providing Console Access Securely \\ skas3 versus skas0 \\ Future Enhancements \\ sysemu \\ PTRACE_FAULTINFO \\ MADV_TRUNCATE \\ remap_file_pages \\ VCPU \\ Final Points \\ Chapter 11: Compiling UML from Source \\ Downloading UML Source \\ Configuration \\ Useful Configuration Options \\ Compilation \\ Chapter 12: Specialized UML Configurations \\ Large Numbers of Devices \\ Network Interfaces \\ Memory \\ Clusters \\ Getting Started \\ Booting the Cluster \\ Exercises \\ Other Clusters \\ UML as a Decision-Making Tool for Hardware \\ Chapter 13: The Future of UML \\ The externfs Filesystem \\ Virtual Processes \\ Captive UML \\ Secure mod_perl \\ Evolution \\ Application Administration \\ A Standard Application Programming Interface \\ Application-Level Clustering \\ Virtualized Subsystems \\ Conclusion \\ Appendix A: UML Command-Line Options \\ Device and Hardware Specifications \\ Debugging Options \\ Management Options \\ Informational Options \\ Appendix B: UML Utilities Reference \\ humfsify \\ uml_moo \\ uml_mconsole \\ tunctl \\ uml_switch \\ Internal Utilities \\ Index

entry:
@Book{Dike:2006:UML,
  author =       "Jeff Dike",
  title =        "User Mode {Linux}",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "????",
  year =         "2006",
  ISBN =         "0-13-186505-6 (paperback)",
  ISBN-13 =      "978-0-13-186505-1 (paperback)",
  LCCN =         "QA76.76.O63 D545 2006",
  bibdate =      "Wed Mar 15 17:45:09 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "Bruce Perens Open Source series",
  URL =          "http://www.loc.gov/catdir/toc/ecip068/2006004225.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers); Application
                 software porting",
  tableofcontents = "Preface Acknowledgments \\
                 Chapter 1: Introduction \\
                 What Is UML? \\
                 Comparison with Other Virtualization Technologies \\
                 Why Virtual Machines? \\
                 A Bit of History \\
                 What Is UML Used For? \\
                 Server Consolidation \\
                 Education \\
                 Development \\
                 Disaster Recovery Practice \\
                 The Future \\
                 Chapter 2: A Quick Look at UML \\
                 Booting UML for the First Time \\
                 Booting UML Successfully \\
                 Looking at a UML from the Inside and Outside \\
                 Conclusion \\
                 Chapter 3: Exploring UML \\
                 Logging In as a Normal User \\
                 Consoles and Serial Lines \\
                 Adding Swap Space \\
                 Partitioned Disks \\
                 UML Disks as Raw Data \\
                 Networking \\
                 Shutting Down \\
                 Chapter 4: A Second UML \\
                 COW Files \\
                 Booting from COW Files \\
                 Moving a Backing File \\
                 Merging a COW File with Its Backing File \\
                 Networking the UML Instances \\
                 A Virtual Serial Line \\
                 Chapter 5: Playing with a UML Instance \\
                 Use and Abuse of UML Block Devices \\
                 Networking and the Host \\
                 Chapter 6: UML Filesystem Management \\
                 Mounting Host Directories within a UML \\
                 hostfs \\
                 humfs \\
                 Host Access to UML Filesystems \\
                 Making Backups \\
                 Extending Filesystems \\
                 When to Use What \\
                 Chapter 7: UML Networking in Depth \\
                 Manually Setting Up Networking \\
                 TUN/TAP with Routing \\
                 Bridging \\
                 The UML Networking Transports \\
                 Access to the Host Network \\
                 Isolated Networks \\
                 pcap \\
                 How to Choose the Right Transport \\
                 Configuring the Transports \\
                 An Extended Example \\
                 A Multicast Network \\
                 A Second Multicast Network \\
                 Adding a uml_switch Network \\
                 Summary of the Networking Example \\
                 Chapter 8: Managing UML Instances from the Host \\
                 The Management Console \\
                 MConsole Queries \\
                 The uml_mconsole Client \\
                 The MConsole Protocol \\
                 The MConsole Perl Library \\
                 Requests Handled in Process and Interrupt Contexts \\
                 MConsole Notifications \\
                 Controlling a UML Instance with Signals \\
                 Chapter 9: Host Setup for a Small UML Server \\
                 Host Kernel Version \\
                 UML Execution Modes \\
                 tt Mode \\
                 skas3 Mode \\
                 skas0 Mode \\
                 To Patch or Not to Patch? \\
                 Vanderpool and Pacifica \\
                 Managing Long-Lived UML Instances \\
                 Networking \\
                 UML Physical Memory \\
                 Host Memory Consumption \\
                 umid Directories \\
                 Overall Recommendations \\
                 Chapter 10: Large UML Server Management \\
                 Security \\
                 UML Configuration \\
                 Jailing UML Instances \\
                 Providing Console Access Securely \\
                 skas3 versus skas0 \\
                 Future Enhancements \\
                 sysemu \\
                 PTRACE_FAULTINFO \\
                 MADV_TRUNCATE \\
                 remap_file_pages \\
                 VCPU \\
                 Final Points \\
                 Chapter 11: Compiling UML from Source \\
                 Downloading UML Source \\
                 Configuration \\
                 Useful Configuration Options \\
                 Compilation \\
                 Chapter 12: Specialized UML Configurations \\
                 Large Numbers of Devices \\
                 Network Interfaces \\
                 Memory \\
                 Clusters \\
                 Getting Started \\
                 Booting the Cluster \\
                 Exercises \\
                 Other Clusters \\
                 UML as a Decision-Making Tool for Hardware \\
                 Chapter 13: The Future of UML \\
                 The externfs Filesystem \\
                 Virtual Processes \\
                 Captive UML \\
                 Secure mod_perl \\
                 Evolution \\
                 Application Administration \\
                 A Standard Application Programming Interface \\
                 Application-Level Clustering \\
                 Virtualized Subsystems \\
                 Conclusion \\
                 Appendix A: UML Command-Line Options \\
                 Device and Hardware Specifications \\
                 Debugging Options \\
                 Management Options \\
                 Informational Options \\
                 Appendix B: UML Utilities Reference \\
                 humfsify \\
                 uml_moo \\
                 uml_mconsole \\
                 tunctl \\
                 uml_switch \\
                 Internal Utilities \\
                 Index",
}


bibtype: book
filename: unix.bib
label: Dulaney:2006:LSK
author: Emmett Dulaney
title: Linux Starter Kit
publisher: pub-SAMS
address: pub-SAMS:adr
year: 2006
ISBN: 0-672-32887-9 OR 0672328879
ISBN13: 978-0-672-32887-9 OR 9780672328879
bibdate: Tue Jun 20 18:02:20 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.06.20 18:02:20 ???
acknowledgement: ack-nhfb
rawauthor: Emmett Dulaney
rawtitle: {Linux} Starter Kit
entry:
@Book{Dulaney:2006:LSK,
  author =       "Emmett Dulaney",
  title =        "{Linux} Starter Kit",
  publisher =    pub-SAMS,
  address =      pub-SAMS:adr,
  pages =        "????",
  year =         "2006",
  ISBN =         "0-672-32887-9",
  ISBN-13 =      "978-0-672-32887-9",
  LCCN =         "????",
  bibdate =      "Tue Jun 20 18:02:20 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$31.99",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Friedl:2006:MRE
author: Jeffrey E. F. Friedl
title: Mastering regular expressions
publisher: pub-ORA
address: pub-ORA:adr
edition: Third
pages: xxiv + 515
year: 2006
ISBN: 0-596-52812-4 (paperback) OR 0596528124 (paperback)
ISBN13: 978-0-596-52812-6 (paperback) OR 9780596528126 (paperback)
LCCN: QA76.9.T48 F75 2006
bibdate: Mon Aug 4 15:33:41 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2008.08.04 15:33:41 MDT
subject: text processing (computer science); perl (computer program language); computer programming
acknowledgement: ack-nhfb
rawauthor: Jeffrey E. F. Friedl
rawtitle: Mastering regular expressions
URL:
http://www.loc.gov/catdir/enhancements/fy0715/2007272426-d.html; http://www.oreilly.com/catalog/9780596528126

abstract:
A regular expression (regex) is a pattern that describes a set of strings. Regular expressions are used for advanced context-sensitive searches (e.g. parsing data streams, data mining) and text modifications. They can be found in many advanced editors (e.g. vi, Emacs), in parser programs (e.g. grep) and in languages (e.g. Perl), mostly in a UNIX environment. This book is the standard work on regexes.

rawabstract:
A regular expression (regex) is a pattern that describes a set of strings. Regular expressions are used for advanced context-sensitive searches (e.g. parsing data streams, data mining) and text modifications. They can be found in many advanced editors (e.g. vi, Emacs), in parser programs (e.g. grep) and in languages (e.g. Perl), mostly in a UNIX environment. This book is the standard work on regexes.

entry:
@Book{Friedl:2006:MRE,
  author =       "Jeffrey E. F. Friedl",
  title =        "Mastering regular expressions",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  edition =      "Third",
  pages =        "xxiv + 515",
  year =         "2006",
  ISBN =         "0-596-52812-4 (paperback)",
  ISBN-13 =      "978-0-596-52812-6 (paperback)",
  LCCN =         "QA76.9.T48 F75 2006",
  bibdate =      "Mon Aug 4 15:33:41 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0715/2007272426-d.html;
                 http://www.oreilly.com/catalog/9780596528126",
  abstract =     "A regular expression (regex) is a pattern that
                 describes a set of strings. Regular expressions are
                 used for advanced context-sensitive searches (e.g.
                 parsing data streams, data mining) and text
                 modifications. They can be found in many advanced
                 editors (e.g. vi, Emacs), in parser programs (e.g.
                 grep) and in languages (e.g. Perl), mostly in a UNIX
                 environment. This book is the standard work on
                 regexes.",
  acknowledgement = ack-nhfb,
  subject =      "text processing (computer science); perl (computer
                 program language); computer programming",
}


bibtype: book
filename: unix.bib
label: Gagne:2006:MUL
author: Marcel Gagne
title: Moving to Ubuntu Linux
publisher: pub-AW
address: pub-AW:adr
pages: xxii + 463
year: 2006
ISBN: 0-321-42722-X (paperback) OR 032142722X (paperback)
ISBN13: 978-0-321-42722-9 (paperback) OR 9780321427229 (paperback)
LCCN: QA76.76.O63 .G3455 2006
bibdate: Wed Oct 04 18:13:08 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.04 18:13:08 ???
note: Includes CD-ROM.
URL: http://www.aw-bc.com/catalog/academic/product/0,1144,032142722X,00.html
acknowledgement: ack-nhfb
rawauthor: Marcel Gagn{\'e}
rawnote: Includes CD-ROM.
rawtitle: Moving to {Ubuntu Linux}
entry:
@Book{Gagne:2006:MUL,
  author =       "Marcel Gagn{\'e}",
  title =        "Moving to {Ubuntu Linux}",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xxii + 463",
  year =         "2006",
  ISBN =         "0-321-42722-X (paperback)",
  ISBN-13 =      "978-0-321-42722-9 (paperback)",
  LCCN =         "QA76.76.O63 .G3455 2006",
  bibdate =      "Wed Oct 04 18:13:08 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  note =         "Includes CD-ROM.",
  price =        "US\$34.99",
  URL =          "http://www.aw-bc.com/catalog/academic/product/0,1144,032142722X,00.html",
  acknowledgement = ack-nhfb,
  bookreview =   "http://www.unixreview.com/documents/s=10097/ur0609i/ur0609i.htm",
}


bibtype: book
filename: unix.bib
label: Geiselhart:2006:IZV
editor: Gregory Geiselhart and others
title: IBM z / VM and Linux on IBM System z: virtualization cookbook for Red Hat Enterprise Linux 4
number: SG24-7272-00
publisher: pub-IBM
address: pub-IBM:adr
pages: xiv + 218
year: 2006
ISBN: 0-7384-9495-X (paperback) OR 073849495X (paperback)
ISBN13: 978-0-7384-9495-1 (paperback) OR 9780738494951 (paperback)
LCCN: QA76.76.O63 I28 2006
bibdate: Thu Jan 21 14:11:12 MST 2010
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2010.01.21 14:11:12 MST
series: IBM redbooks
remark: September 2006.
subject: Linux; Operating systems (Computers); Computer systems; IBM computers; Programming
acknowledgement: ack-nhfb
raweditor: Gregory Geiselhart and others
rawtitle:
{IBM z\slash VM} and {Linux} on {IBM System z}: virtualization cookbook for {Red Hat Enterprise Linux 4}

entry:
@Book{Geiselhart:2006:IZV,
  editor =       "Gregory Geiselhart and others",
  title =        "{IBM z\slash VM} and {Linux} on {IBM System z}:
                 virtualization cookbook for {Red Hat Enterprise Linux
                 4}",
  number =       "SG24-7272-00",
  publisher =    pub-IBM,
  address =      pub-IBM:adr,
  pages =        "xiv + 218",
  year =         "2006",
  ISBN =         "0-7384-9495-X (paperback)",
  ISBN-13 =      "978-0-7384-9495-1 (paperback)",
  LCCN =         "QA76.76.O63 I28 2006",
  bibdate =      "Thu Jan 21 14:11:12 MST 2010",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "IBM redbooks",
  acknowledgement = ack-nhfb,
  remark =       "September 2006.",
  subject =      "Linux; Operating systems (Computers); Computer
                 systems; IBM computers; Programming",
}


bibtype: book
filename: unix.bib
label: Gelphman:2006:PQP
author: David Gelphman and Bunny Laden
title: Programming with Quartz: 2D and PDF graphics in Mac OS X
publisher: pub-ELSEVIER-MORGAN-KAUFMANN
address: pub-ELSEVIER-MORGAN-KAUFMANN:adr
pages: xxviii + 668
year: 2006
ISBN: 0-12-369473-6 OR 0123694736
ISBN13: 978-0-12-369473-7 OR 9780123694737
LCCN: T385 .G392 2006
bibdate: Tue Jul 3 15:43:07 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.07.03 15:43:07 MDT
subject: Computer graphics; Quartz (Electronic resource); Mac OS X; Macintosh (Computer); Programming
acknowledgement: ack-nhfb
rawauthor: David Gelphman and Bunny Laden
rawtitle: Programming with {Quartz}: {2D} and {PDF} graphics in {Mac OS X}
URL:
http://www.loc.gov/catdir/enhancements/fy0625/2005052186-d.html; http://www.loc.gov/catdir/enhancements/fy0625/2005052186-t.html

entry:
@Book{Gelphman:2006:PQP,
  author =       "David Gelphman and Bunny Laden",
  title =        "Programming with {Quartz}: {2D} and {PDF} graphics in
                 {Mac OS X}",
  publisher =    pub-ELSEVIER-MORGAN-KAUFMANN,
  address =      pub-ELSEVIER-MORGAN-KAUFMANN:adr,
  pages =        "xxviii + 668",
  year =         "2006",
  ISBN =         "0-12-369473-6",
  ISBN-13 =      "978-0-12-369473-7",
  LCCN =         "T385 .G392 2006",
  bibdate =      "Tue Jul 3 15:43:07 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0625/2005052186-d.html;
                 http://www.loc.gov/catdir/enhancements/fy0625/2005052186-t.html",
  acknowledgement = ack-nhfb,
  subject =      "Computer graphics; Quartz (Electronic resource); Mac
                 OS X; Macintosh (Computer); Programming",
}


bibtype: book
filename: unix.bib
label: Gerner:2006:PLL
editor: Jason Gerner and others
title: Professional LAMP: Linux, Apache, MySQL, and PHP Web development
publisher: pub-WILEY
address: pub-WILEY:adr
pages: xxii + 379
year: 2006
ISBN: 0-7645-9723-X OR 076459723X
ISBN13: 978-0-7645-9723-7 OR 9780764597237
LCCN: TK5105.888 .P677 2006
bibdate: Wed Jun 25 17:33:31 MDT 2008
bibtimestamp: 2008.06.25 17:33:31 MDT
subject: Web site development; open source software
acknowledgement: ack-nhfb
raweditor: Jason Gerner and others
rawtitle: Professional {LAMP}: {Linux}, {Apache}, {MySQL}, and {PHP} {Web} development
bibsource:
https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90; z3950.loc.gov:7090/Voyager

URL:
http://www.loc.gov/catdir/enhancements/fy0623/2005026487-d.html; http://www.loc.gov/catdir/enhancements/fy0654/2005026487-b.html; http://www.loc.gov/catdir/enhancements/fy0654/2005026487-t.html

TOC:
Introduction Whom Is This Book For? What's Covered in the Book What You Need to Use This Book Conventions Source Code Errata p2p.wrox.com Chapter 1: Whats New in PHP5? Object-Oriented Changes New Functions Other Changes to PHP5 Summary Chapter 2: PHP5 OOP Procedural Programming versus OOP Inheritance and Interfaces Magic Methods Summary Chapter 3: More Obscure PHP Array Functions and Callbacks glob() PHP Streams Summary Chapter 4: Advanced MySQL The Basics, Revisited Querying Multiple Tables Full-Text Searching InnoDB Tables Controlling Access Analyzing the Database Database Maintenance Summary Chapter 5: PHP Configuration Modifying php.ini PHP Configuration during Runtime Summary Chapter 6: Apache Tricks URL Rewriting URL Spell Checking Content Compression Using MySQL with Apache Apache and SSL Apache as a File Repository Summary Chapter 7: Site Security Controlling Access Website Attacks Other Considerations Summary Chapter 8: PEAR and PECL What Is PEAR? What Is PECL? Exploring PEAR Exploring PECL Summary Chapter 9: Code Efficiency Why Bother? Benchmarking and Profiling Hardware Improvements Web Server Improvements PHP Improvements Summary Chapter 10: PHP Extensions PDFLib GD Library Ming SimpleXML Summary Chapter 11: AJAX History XMLHTTP and XMLHttpRequest AJAX Libraries When Not to Use AJAX Further Information Summary Chapter 12: Caching Engines Alternative PHP Cache eAccelerator Zend Optimizer JPCache memcached Using Different Caching Engines Together Choosing Your Caching Engine Summary Chapter 13: Content Management Systems Types of CMSs Open Source Web CMS Packages All-Inclusive Web CMSs Micro CMSs Other Helpful Resources Summary Appendix A: Language Translation Appendix B: Alternative Tools MySQL Tools Version Control UML Tools.

rawTOC:
Introduction\\ Whom Is This Book For? \\ What's Covered in the Book \\ What You Need to Use This Book \\ Conventions \\ Source Code \\ Errata \\ p2p.wrox.com \\ Chapter 1: Whats New in PHP5? Object-Oriented Changes New Functions Other Changes to PHP5 Summary \\ Chapter 2: PHP5 OOP Procedural Programming versus OOP Inheritance and Interfaces Magic Methods Summary \\ Chapter 3: More Obscure PHP Array Functions and Callbacks glob() PHP Streams Summary \\ Chapter 4: Advanced MySQL The Basics, Revisited Querying Multiple Tables Full-Text Searching InnoDB Tables Controlling Access Analyzing the Database \\ Database Maintenance Summary \\ Chapter 5: PHP Configuration Modifying php.ini PHP Configuration during Runtime Summary \\ Chapter 6: Apache Tricks URL Rewriting URL Spell Checking Content Compression Using MySQL with Apache \\ Apache and SSL Apache as a File Repository Summary \\ Chapter 7: Site Security Controlling Access Website Attacks Other Considerations Summary \\ Chapter 8: PEAR and PECL What Is PEAR? What Is PECL? Exploring PEAR Exploring PECL Summary \\ Chapter 9: Code Efficiency Why Bother? Benchmarking and Profiling Hardware Improvements Web Server Improvements PHP Improvements Summary \\ Chapter 10: PHP Extensions PDFLib GD Library Ming SimpleXML Summary \\ Chapter 11: AJAX History XMLHTTP and XMLHttpRequest AJAX Libraries When Not to Use AJAX Further Information Summary \\ Chapter 12: Caching Engines Alternative PHP Cache eAccelerator Zend Optimizer JPCache memcached Using Different Caching Engines Together Choosing Your Caching Engine Summary \\ Chapter 13: Content Management Systems Types of CMSs Open Source Web CMS Packages All-Inclusive Web CMSs Micro CMSs Other Helpful Resources Summary Appendix A: Language Translation Appendix B: Alternative Tools MySQL Tools Version Control UML Tools.

entry:
@Book{Gerner:2006:PLL,
  editor =       "Jason Gerner and others",
  title =        "Professional {LAMP}: {Linux}, {Apache}, {MySQL}, and
                 {PHP} {Web} development",
  publisher =    pub-WILEY,
  address =      pub-WILEY:adr,
  pages =        "xxii + 379",
  year =         "2006",
  ISBN =         "0-7645-9723-X",
  ISBN-13 =      "978-0-7645-9723-7",
  LCCN =         "TK5105.888 .P677 2006",
  bibdate =      "Wed Jun 25 17:33:31 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0623/2005026487-d.html;
                 http://www.loc.gov/catdir/enhancements/fy0654/2005026487-b.html;
                 http://www.loc.gov/catdir/enhancements/fy0654/2005026487-t.html",
  acknowledgement = ack-nhfb,
  subject =      "Web site development; open source software",
  tableofcontents = "Introduction\\
                 Whom Is This Book For? \\
                 What's Covered in the Book \\
                 What You Need to Use This Book \\
                 Conventions \\
                 Source Code \\
                 Errata \\
                 p2p.wrox.com \\
                 Chapter 1: Whats New in PHP5? Object-Oriented Changes
                 New Functions Other Changes to PHP5 Summary \\
                 Chapter 2: PHP5 OOP Procedural Programming versus OOP
                 Inheritance and Interfaces Magic Methods Summary \\
                 Chapter 3: More Obscure PHP Array Functions and
                 Callbacks glob() PHP Streams Summary \\
                 Chapter 4: Advanced MySQL The Basics, Revisited
                 Querying Multiple Tables Full-Text Searching InnoDB
                 Tables Controlling Access Analyzing the Database \\
                 Database Maintenance Summary \\
                 Chapter 5: PHP Configuration Modifying php.ini PHP
                 Configuration during Runtime Summary \\
                 Chapter 6: Apache Tricks URL Rewriting URL Spell
                 Checking Content Compression Using MySQL with Apache
                 \\
                 Apache and SSL Apache as a File Repository Summary \\
                 Chapter 7: Site Security Controlling Access Website
                 Attacks Other Considerations Summary \\
                 Chapter 8: PEAR and PECL What Is PEAR? What Is PECL?
                 Exploring PEAR Exploring PECL Summary \\
                 Chapter 9: Code Efficiency Why Bother? Benchmarking and
                 Profiling Hardware Improvements Web Server Improvements
                 PHP Improvements Summary \\
                 Chapter 10: PHP Extensions PDFLib GD Library Ming
                 SimpleXML Summary \\
                 Chapter 11: AJAX History XMLHTTP and XMLHttpRequest
                 AJAX Libraries When Not to Use AJAX Further Information
                 Summary \\
                 Chapter 12: Caching Engines Alternative PHP Cache
                 eAccelerator Zend Optimizer JPCache memcached Using
                 Different Caching Engines Together Choosing Your
                 Caching Engine Summary \\
                 Chapter 13: Content Management Systems Types of CMSs
                 Open Source Web CMS Packages All-Inclusive Web CMSs
                 Micro CMSs Other Helpful Resources Summary Appendix A:
                 Language Translation Appendix B: Alternative Tools
                 MySQL Tools Version Control UML Tools.",
}


bibtype: inproceedings
filename: unix.bib
label: Gigante:2006:HPS
author: Mike Gigante
title: High-Performance Storage Solutions on IA-64 Linux
crossref: Anonymous:2006:PGI
pages: ??--??
year: 2006
bibdate: Sat Oct 14 18:26:53 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.14 18:26:53 ???
keywords: GNU/Linux; Intel IA-64; Itanium
acknowledgement: ack-nhfb
rawauthor: Mike Gigante
rawtitle: High-Performance Storage Solutions on {IA-64 Linux}
entry:
@InProceedings{Gigante:2006:HPS,
  author =       "Mike Gigante",
  title =        "High-Performance Storage Solutions on {IA-64 Linux}",
  crossref =     "Anonymous:2006:PGI",
  pages =        "??--??",
  year =         "2006",
  bibdate =      "Sat Oct 14 18:26:53 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  keywords =     "GNU/Linux; Intel IA-64; Itanium",
}


bibtype: book
filename: unix.bib
label: Granneman:2006:LP
author: Scott Granneman
title: Linux Phrasebook
publisher: pub-SAMS
address: pub-SAMS:adr
pages: xvii + 382
year: 2006
ISBN: 0-672-32909-3; 0-672-32838-0 (paperback) OR 0672329093; 0672328380 (paperback)
ISBN13: 978-0-672-32909-8; 978-0-672-32838-1 (paperback) OR 9780672329098; 9780672328381 (paperback)
LCCN: QA76.76.O63 G72 2006
bibdate: Wed Aug 30 16:08:50 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.30 16:08:50 ???
acknowledgement: ack-nhfb
rawauthor: Scott Granneman
rawtitle: {Linux} Phrasebook
entry:
@Book{Granneman:2006:LP,
  author =       "Scott Granneman",
  title =        "{Linux} Phrasebook",
  publisher =    pub-SAMS,
  address =      pub-SAMS:adr,
  pages =        "xvii + 382",
  year =         "2006",
  ISBN =         "0-672-32909-3; 0-672-32838-0 (paperback)",
  ISBN-13 =      "978-0-672-32909-8; 978-0-672-32838-1 (paperback)",
  LCCN =         "QA76.76.O63 G72 2006",
  bibdate =      "Wed Aug 30 16:08:50 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "EUR 13.90",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Grant:2006:ULN
author: Rickford Grant
title: Ubuntu Linux for non-geeks: a pain-free, project-based, get-things-done guidebook
publisher: pub-NO-STARCH
address: pub-NO-STARCH:adr
pages: xx + 334
year: 2006
ISBN: 1-59327-118-2 OR 1593271182
ISBN13: 978-1-59327-118-3 OR 9781593271183
LCCN: QA76.76.O63 G7246 2006eb
bibdate: Mon Oct 29 18:40:51 MDT 2007
bibtimestamp: 2007.10.29 18:40:51 MDT
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Rickford Grant
rawtitle: {Ubuntu Linux} for non-geeks: a pain-free, project-based, get-things-done guidebook
bibsource:
https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90; z3950.loc.gov:7090/Voyager

URL:
http://site.ebrary.com/lib/ucmerced/Doc?id=10137836; http://site.ebrary.com/lib/ucsc/Doc?id=10137836; http://www.loc.gov/catdir/enhancements/fy0715/2006015576-d.html; http://www.loc.gov/catdir/toc/ecip0613/2006015576.html

entry:
@Book{Grant:2006:ULN,
  author =       "Rickford Grant",
  title =        "{Ubuntu Linux} for non-geeks: a pain-free,
                 project-based, get-things-done guidebook",
  publisher =    pub-NO-STARCH,
  address =      pub-NO-STARCH:adr,
  pages =        "xx + 334",
  year =         "2006",
  ISBN =         "1-59327-118-2",
  ISBN-13 =      "978-1-59327-118-3",
  LCCN =         "QA76.76.O63 G7246 2006eb",
  bibdate =      "Mon Oct 29 18:40:51 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://site.ebrary.com/lib/ucmerced/Doc?id=10137836;
                 http://site.ebrary.com/lib/ucsc/Doc?id=10137836;
                 http://www.loc.gov/catdir/enhancements/fy0715/2006015576-d.html;
                 http://www.loc.gov/catdir/toc/ecip0613/2006015576.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Hallinan:2006:ELP
author: Christopher Hallinan
title: Embedded Linux primer: a practical, real-world approach
publisher: pub-PH
address: pub-PH:adr
pages: xxix + 537
year: 2006
ISBN: 0-13-167984-8 (paperback) OR 0131679848 (paperback)
ISBN13: 978-0-13-167984-9 (paperback) OR 9780131679849 (paperback)
LCCN: QA76.76.O63 H34462 2006
bibdate: Tue Dec 5 16:08:01 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.12.05 16:08:01 MST
series: Prentice Hall open source software development series
URL: http://www.loc.gov/catdir/toc/ecip0612/2006012886.html
subject: Linux; Operating systems (Computers); Embedded computer systems; Programming
acknowledgement: ack-nhfb
rawauthor: Christopher Hallinan
rawtitle: {Embedded Linux} primer: a practical, real-world approach
entry:
@Book{Hallinan:2006:ELP,
  author =       "Christopher Hallinan",
  title =        "{Embedded Linux} primer: a practical, real-world
                 approach",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "xxix + 537",
  year =         "2006",
  ISBN =         "0-13-167984-8 (paperback)",
  ISBN-13 =      "978-0-13-167984-9 (paperback)",
  LCCN =         "QA76.76.O63 H34462 2006",
  bibdate =      "Tue Dec 5 16:08:01 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  price =        "US\$44.99",
  series =       "Prentice Hall open source software development
                 series",
  URL =          "http://www.loc.gov/catdir/toc/ecip0612/2006012886.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers); Embedded
                 computer systems; Programming",
}


bibtype: article
filename: unix.bib
label: Haynes:2006:OM
author: Tom Haynes
title: OpenSolaris: The Model
journal: j-LOGIN
volume: 31
number: 2
pages: 5--8
month: apr
monthnumber: 4
year: 2006
CODEN: LOGNEM
ISSN: 1044-6397 (print), 2169-9364 (electronic) OR 10446397 (print), 21699364 (electronic)
ISSNL: 1044-6397 OR 10446397
bibdate: Tue Apr 11 10:53:03 MDT 2006
bibtimestamp: 2006.04.11 10:53:03 MDT
URL: http://www.usenix.org/publications/login/2006-04/pdfs/haynes.pdf
fjournal: ;login: the USENIX Association newsletter
acknowledgement: ack-nhfb
rawauthor: Tom Haynes
rawtitle: {OpenSolaris}: The Model
bibsource:
https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www.usenix.org/publications/login/2006-04/index.html

entry:
@Article{Haynes:2006:OM,
  author =       "Tom Haynes",
  title =        "{OpenSolaris}: The Model",
  journal =      j-LOGIN,
  volume =       "31",
  number =       "2",
  pages =        "5--8",
  month =        apr,
  year =         "2006",
  CODEN =        "LOGNEM",
  ISSN =         "1044-6397 (print), 2169-9364 (electronic)",
  ISSN-L =       "1044-6397",
  bibdate =      "Tue Apr 11 10:53:03 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.usenix.org/publications/login/2006-04/index.html",
  URL =          "http://www.usenix.org/publications/login/2006-04/pdfs/haynes.pdf",
  acknowledgement = ack-nhfb,
  fjournal =     ";login: the USENIX Association newsletter",
}


bibtype: article
filename: unix.bib
label: Herder:2006:MHR
author: Jorrit N. Herder and Herbert Bos and Ben Gras and Philip Homburg and Andrew S. Tanenbaum
title: MINIX 3: a highly reliable, self-repairing operating system
journal: j-OPER-SYS-REV
volume: 40
number: 3
pages: 80--89
month: jul
monthnumber: 7
year: 2006
CODEN: OSRED8
ISSN: 0163-5980 (print), 1943-586X (electronic) OR 01635980 (print), 1943586X (electronic)
ISSNL: 0163-5980 OR 01635980
bibdate: Sat Aug 26 08:55:58 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.26 08:55:58 MDT
fjournal: ACM SIGOPS Operating Systems Review
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J597
rawauthor: Jorrit N. Herder and Herbert Bos and Ben Gras and Philip Homburg and Andrew S. Tanenbaum
rawtitle: {MINIX 3}: a highly reliable, self-repairing operating system
entry:
@Article{Herder:2006:MHR,
  author =       "Jorrit N. Herder and Herbert Bos and Ben Gras and
                 Philip Homburg and Andrew S. Tanenbaum",
  title =        "{MINIX 3}: a highly reliable, self-repairing operating
                 system",
  journal =      j-OPER-SYS-REV,
  volume =       "40",
  number =       "3",
  pages =        "80--89",
  month =        jul,
  year =         "2006",
  CODEN =        "OSRED8",
  ISSN =         "0163-5980 (print), 1943-586X (electronic)",
  ISSN-L =       "0163-5980",
  bibdate =      "Sat Aug 26 08:55:58 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGOPS Operating Systems Review",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J597",
}


bibtype: article
filename: unix.bib
label: Herder:2006:MSP
author: Jorrit N. Herder and Herbert Bos and Ben Gras and Philip Homburg and Andrew S. Tanenbaum
title: Modular System Programming in MINIX 3
journal: j-LOGIN
volume: 31
number: 2
pages: 19--28
month: apr
monthnumber: 4
year: 2006
CODEN: LOGNEM
ISSN: 1044-6397 (print), 2169-9364 (electronic) OR 10446397 (print), 21699364 (electronic)
ISSNL: 1044-6397 OR 10446397
bibdate: Tue Apr 11 10:53:03 MDT 2006
bibtimestamp: 2006.04.11 10:53:03 MDT
URL: http://www.minix3.org/; http://www.usenix.org/publications/login/2006-04/openpdfs/herder.pdf
fjournal: ;login: the USENIX Association newsletter
acknowledgement: ack-nhfb
rawauthor: Jorrit N. Herder and Herbert Bos and Ben Gras and Philip Homburg and Andrew S. Tanenbaum
rawtitle: Modular System Programming in {MINIX 3}
bibsource:
https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www.usenix.org/publications/login/2006-04/index.html

entry:
@Article{Herder:2006:MSP,
  author =       "Jorrit N. Herder and Herbert Bos and Ben Gras and
                 Philip Homburg and Andrew S. Tanenbaum",
  title =        "Modular System Programming in {MINIX 3}",
  journal =      j-LOGIN,
  volume =       "31",
  number =       "2",
  pages =        "19--28",
  month =        apr,
  year =         "2006",
  CODEN =        "LOGNEM",
  ISSN =         "1044-6397 (print), 2169-9364 (electronic)",
  ISSN-L =       "1044-6397",
  bibdate =      "Tue Apr 11 10:53:03 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.usenix.org/publications/login/2006-04/index.html",
  URL =          "http://www.minix3.org/;
                 http://www.usenix.org/publications/login/2006-04/openpdfs/herder.pdf",
  acknowledgement = ack-nhfb,
  fjournal =     ";login: the USENIX Association newsletter",
}


bibtype: book
filename: unix.bib
label: Hill:2006:OUB
editor: Benjamin Mako Hill and Jono Bacon and Corey Burger and Jonathan Jesse and Ivan Krstic
title: The official Ubuntu book
publisher: pub-PH
address: pub-PH:adr
pages: 320 (est.)
year: 2006
ISBN: 0-13-243594-2 (paperback) OR 0132435942 (paperback)
ISBN13: 978-0-13-243594-9 (paperback) OR 9780132435949 (paperback)
LCCN: QA76.76.O63 O34348 2006
bibdate: Tue Jun 20 17:37:08 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.06.20 17:37:08 MDT
remark: Foreword by Mark Shuttleworth, founder of Ubuntu.
subject: Ubuntu (Electronic resource); Operating systems (Computers)
acknowledgement: ack-nhfb
raweditor: Benjamin Mako Hill and Jono Bacon and Corey Burger and Jonathan Jesse and Ivan Krsti{\'c}
rawtitle: The official {Ubuntu} book
URL:
http://vig.prenhall.com/catalog/academic/product/0,1144,0132435942,00.html; http://www.loc.gov/catdir/toc/ecip0613/2006016172.html

entry:
@Book{Hill:2006:OUB,
  editor =       "Benjamin Mako Hill and Jono Bacon and Corey Burger and
                 Jonathan Jesse and Ivan Krsti{\'c}",
  title =        "The official {Ubuntu} book",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "320 (est.)",
  year =         "2006",
  ISBN =         "0-13-243594-2 (paperback)",
  ISBN-13 =      "978-0-13-243594-9 (paperback)",
  LCCN =         "QA76.76.O63 O34348 2006",
  bibdate =      "Tue Jun 20 17:37:08 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  price =        "US\$34.99",
  URL =          "http://vig.prenhall.com/catalog/academic/product/0,1144,0132435942,00.html;
                 http://www.loc.gov/catdir/toc/ecip0613/2006016172.html",
  acknowledgement = ack-nhfb,
  remark =       "Foreword by Mark Shuttleworth, founder of Ubuntu.",
  subject =      "Ubuntu (Electronic resource); Operating systems
                 (Computers)",
}


bibtype: book
filename: unix.bib
label: Hong:2006:BIS
author: Bryan Hong
title: Building an Internet Server with FreeBSD 6
publisher: Lulu.com
pages: 228 (est.)
year: 2006
ISBN: 1-4116-9574-7 OR 1411695747
ISBN13: 978-1-4116-9574-0 OR 9781411695740
bibdate: Wed Feb 21 14:41:23 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2007.02.21 14:41:23 ???
acknowledgement: ack-nhfb
rawauthor: Bryan Hong
rawtitle: Building an {Internet} Server with {FreeBSD 6}
entry:
@Book{Hong:2006:BIS,
  author =       "Bryan Hong",
  title =        "Building an {Internet} Server with {FreeBSD 6}",
  publisher =    "Lulu.com",
  address =      "????",
  pages =        "228 (est.)",
  year =         "2006",
  ISBN =         "1-4116-9574-7",
  ISBN-13 =      "978-1-4116-9574-0",
  LCCN =         "????",
  bibdate =      "Wed Feb 21 14:41:23 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$29.95",
  acknowledgement = ack-nhfb,
}


bibtype: inproceedings
filename: unix.bib
label: Huang:2006:CLK
author: Feilong Huang
title: Compiling the Linux Kernel with the Intel Compiler
crossref: Anonymous:2006:PGI
pages: ??--??
year: 2006
bibdate: Sat Oct 14 18:26:53 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.14 18:26:53 ???
keywords: GNU/Linux kernel; Intel IA-64; Itanium
acknowledgement: ack-nhfb
rawauthor: Feilong Huang
rawtitle: Compiling the {Linux} Kernel with the {Intel} Compiler
entry:
@InProceedings{Huang:2006:CLK,
  author =       "Feilong Huang",
  title =        "Compiling the {Linux} Kernel with the {Intel}
                 Compiler",
  crossref =     "Anonymous:2006:PGI",
  pages =        "??--??",
  year =         "2006",
  bibdate =      "Sat Oct 14 18:26:53 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  keywords =     "GNU/Linux kernel; Intel IA-64; Itanium",
}


bibtype: book
filename: unix.bib
label: Hudson:2006:PN
author: Paul Hudson
title: PHP in a nutshell
publisher: pub-ORA
address: pub-ORA:adr
pages: xv + 352
year: 2006
ISBN: 0-596-10067-1 (paperback) OR 0596100671 (paperback)
ISBN13: 978-0-596-10067-4 (paperback) OR 9780596100674 (paperback)
LCCN: QA76.73.P224 H83 2006
bibdate: Wed Nov 15 09:59:06 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.11.15 09:59:06 MST
URL: http://www.oreilly.com/catalog/9780596100674
subject: PHP (Computer program language); Internet programming
acknowledgement: ack-nhfb
rawauthor: Paul Hudson
rawtitle: {PHP} in a nutshell
TOC:
Introduction to PHP Installing PHP The PHP interpreter The PHP language Variables and constants Operators Function reference Object-oriented PHP HTML forms Cookies and sessions Output buffering Security Files Databases Regular expressions Manipulating images Creating PDFs Creating flash XML and XSLT Network programming Distributing your code Debugging Performance

rawTOC:
Introduction to PHP \\ Installing PHP \\ The PHP interpreter \\ The PHP language \\ Variables and constants \\ Operators \\ Function reference \\ Object-oriented PHP \\ HTML forms \\ Cookies and sessions \\ Output buffering \\ Security \\ Files \\ Databases \\ Regular expressions \\ Manipulating images \\ Creating PDFs \\ Creating flash \\ XML and XSLT \\ Network programming \\ Distributing your code \\ Debugging \\ Performance

entry:
@Book{Hudson:2006:PN,
  author =       "Paul Hudson",
  title =        "{PHP} in a nutshell",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xv + 352",
  year =         "2006",
  ISBN =         "0-596-10067-1 (paperback)",
  ISBN-13 =      "978-0-596-10067-4 (paperback)",
  LCCN =         "QA76.73.P224 H83 2006",
  bibdate =      "Wed Nov 15 09:59:06 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.oreilly.com/catalog/9780596100674",
  acknowledgement = ack-nhfb,
  subject =      "PHP (Computer program language); Internet
                 programming",
  tableofcontents = "Introduction to PHP \\
                 Installing PHP \\
                 The PHP interpreter \\
                 The PHP language \\
                 Variables and constants \\
                 Operators \\
                 Function reference \\
                 Object-oriented PHP \\
                 HTML forms \\
                 Cookies and sessions \\
                 Output buffering \\
                 Security \\
                 Files \\
                 Databases \\
                 Regular expressions \\
                 Manipulating images \\
                 Creating PDFs \\
                 Creating flash \\
                 XML and XSLT \\
                 Network programming \\
                 Distributing your code \\
                 Debugging \\
                 Performance",
}


bibtype: book
filename: unix.bib
label: Hudson:2006:UU
author: Andrew Hudson and Paul Hudson
title: Ubuntu Unleashed
publisher: pub-SAMS
address: pub-SAMS:adr
pages: 800 (est.)
year: 2006
ISBN: 0-672-32909-3 (hardcover) OR 0672329093 (hardcover)
ISBN13: 978-0-672-32909-8 (hardcover) OR 9780672329098 (hardcover)
bibdate: Tue Jun 20 18:15:53 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.06.20 18:15:53 ???
acknowledgement: ack-nhfb
rawauthor: Andrew Hudson and Paul Hudson
rawtitle: {Ubuntu} Unleashed
entry:
@Book{Hudson:2006:UU,
  author =       "Andrew Hudson and Paul Hudson",
  title =        "{Ubuntu} Unleashed",
  publisher =    pub-SAMS,
  address =      pub-SAMS:adr,
  pages =        "800 (est.)",
  year =         "2006",
  ISBN =         "0-672-32909-3 (hardcover)",
  ISBN-13 =      "978-0-672-32909-8 (hardcover)",
  LCCN =         "????",
  bibdate =      "Tue Jun 20 18:15:53 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$66.99",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Jang:2006:LAG
author: Michael H. Jang
title: Linux annoyances for geeks
publisher: pub-ORA
address: pub-ORA:adr
pages: xv + 484
year: 2006
ISBN: 0-596-00801-5 OR 0596008015
ISBN13: 978-0-596-00801-7 OR 9780596008017
LCCN: QA76.76.O63; QA76.76.O63 J36 2006eb; QA76.76.O63 J36 2006
bibdate: Tue Aug 5 17:44:21 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 17:44:21 MDT
URL: http://www.oreilly.com/catalog/9780596008017
remark: Includes desktop management, system setup, and server configuration. For all major distributions.
subject: Linux; Operating systems (Computers); Computer security; Software maintenance
acknowledgement: ack-nhfb
rawauthor: Michael H. Jang
rawtitle: {Linux} annoyances for geeks
entry:
@Book{Jang:2006:LAG,
  author =       "Michael H. Jang",
  title =        "{Linux} annoyances for geeks",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xv + 484",
  year =         "2006",
  ISBN =         "0-596-00801-5",
  ISBN-13 =      "978-0-596-00801-7",
  LCCN =         "QA76.76.O63; QA76.76.O63 J36 2006eb; QA76.76.O63 J36
                 2006",
  bibdate =      "Tue Aug 5 17:44:21 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9780596008017",
  acknowledgement = ack-nhfb,
  remark =       "Includes desktop management, system setup, and server
                 configuration. For all major distributions.",
  subject =      "Linux; Operating systems (Computers); Computer
                 security; Software maintenance",
}


bibtype: book
filename: unix.bib
label: Jang:2006:LPM
author: Michael H. Jang
title: Linux Patch Management: keeping Linux systems up to date
publisher: pub-PH
address: pub-PH:adr
year: 2006
ISBN: 0-13-236675-4 OR 0132366754
ISBN13: 978-0-13-236675-5 OR 9780132366755
LCCN: QA76.76.O63 J368 2006
bibdate: Tue Jun 20 17:37:27 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.06.20 17:37:27 MDT
URL: http://www.loc.gov/catdir/toc/ecip0519/2005028070.html
subject: Linux; Operating systems (Computers); Computer security; Software maintenance
acknowledgement: ack-nhfb
rawauthor: Michael H. Jang
rawtitle: {Linux} Patch Management: keeping {Linux} systems up to date
entry:
@Book{Jang:2006:LPM,
  author =       "Michael H. Jang",
  title =        "{Linux} Patch Management: keeping {Linux} systems up
                 to date",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "????",
  year =         "2006",
  ISBN =         "0-13-236675-4",
  ISBN-13 =      "978-0-13-236675-5",
  LCCN =         "QA76.76.O63 J368 2006",
  bibdate =      "Tue Jun 20 17:37:27 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip0519/2005028070.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers); Computer
                 security; Software maintenance",
}


bibtype: book
filename: unix.bib
label: Karlsson:2006:BCS
author: Bjorn Karlsson
title: Beyond the C++ Standard Library: an introduction to Boost
publisher: pub-AW
address: pub-AW:adr
pages: xl + 388
year: 2006
ISBN: 0-321-13354-4 OR 0321133544
ISBN13: 978-0-321-13354-0 OR 9780321133540
LCCN: QA76.73.C153 K365 2006
bibdate: Thu May 3 10:58:49 MDT 2012
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2012.05.03 10:58:49 MDT
URL: http://www.loc.gov/catdir/toc/fy0612/2005927496.html
subject: C++ (Computer program language); Computer programming
acknowledgement: ack-nhfb
rawauthor: Bj{\"o}rn Karlsson
rawtitle: Beyond the {C++ Standard Library}: an introduction to {Boost}
entry:
@Book{Karlsson:2006:BCS,
  author =       "Bj{\"o}rn Karlsson",
  title =        "Beyond the {C++ Standard Library}: an introduction to
                 {Boost}",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xl + 388",
  year =         "2006",
  ISBN =         "0-321-13354-4",
  ISBN-13 =      "978-0-321-13354-0",
  LCCN =         "QA76.73.C153 K365 2006",
  bibdate =      "Thu May 3 10:58:49 MDT 2012",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/fy0612/2005927496.html",
  acknowledgement = ack-nhfb,
  subject =      "C++ (Computer program language); Computer
                 programming",
}


bibtype: article
filename: unix.bib
label: Keromytis:2006:COS
author: Angelos D. Keromytis and Jason L. Wright and Theo De Raadt and Matthew Burnside
title: Cryptography as an operating system service: a case study
journal: j-TOCS
volume: 24
number: 1
pages: 1--38
month: feb
monthnumber: 2
year: 2006
CODEN: ACSYEC
DOI: https://doi.org/10.1145/1124153.1124154
ISSN: 0734-2071 (print), 1557-7333 (electronic) OR 07342071 (print), 15577333 (electronic)
ISSNL: 0734-2071 OR 07342071
bibdate: Fri Apr 7 08:15:08 MDT 2006
bibsource: http://www.acm.org/pubs/contents/journals/tocs/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.04.07 08:15:08 MDT
fjournal: ACM Transactions on Computer Systems
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J774
rawauthor: Angelos D. Keromytis and Jason L. Wright and Theo {De Raadt} and Matthew Burnside
rawtitle: Cryptography as an operating system service: a case study
abstract:
Cryptographic transformations are a fundamental building block in many security applications and protocols. To improve performance, several vendors market hardware accelerator cards. However, until now no operating system provided a mechanism that allowed both uniform and efficient use of this new type of resource. We present the OpenBSD Cryptographic Framework (OCF), a service virtualization layer implemented inside the operating system kernel, that provides uniform access to accelerator functionality by hiding card-specific details behind a carefully designed API. We evaluate the impact of the OCF in a variety of benchmarks, measuring overall system performance, application throughput and latency, and aggregate throughput when multiple applications make use of it. We conclude that the OCF is extremely efficient in utilizing cryptographic accelerator functionality, attaining 95% of the theoretical peak device performance and over 800 Mbps aggregate throughput using 3DES. We believe that this validates our decision to opt for ease of use by applications and kernel components through a uniform API and for seamless support for new accelerators. Furthermore, our evaluation points to several bottlenecks in system and operating system design: data copying between user and kernel modes, PCI bus signaling inefficiency, protocols that use small data units, and single-threaded applications. We identify some of these limitations through a set of measurements focusing on application-layer cryptographic protocols such as SSL. We offer several suggestions for improvements and directions for future work. We provide experimental evidence of the effectiveness of a new approach which we call operating system shortcutting. Shortcutting can improve the performance of application-layer cryptographic protocols by 27% with very small changes to the kernel.

rawabstract:
Cryptographic transformations are a fundamental building block in many security applications and protocols. To improve performance, several vendors market hardware accelerator cards. However, until now no operating system provided a mechanism that allowed both uniform and efficient use of this new type of resource. We present the OpenBSD Cryptographic Framework (OCF), a service virtualization layer implemented inside the operating system kernel, that provides uniform access to accelerator functionality by hiding card-specific details behind a carefully designed API. We evaluate the impact of the OCF in a variety of benchmarks, measuring overall system performance, application throughput and latency, and aggregate throughput when multiple applications make use of it. We conclude that the OCF is extremely efficient in utilizing cryptographic accelerator functionality, attaining 95\% of the theoretical peak device performance and over 800 Mbps aggregate throughput using 3DES. We believe that this validates our decision to opt for ease of use by applications and kernel components through a uniform API and for seamless support for new accelerators. Furthermore, our evaluation points to several bottlenecks in system and operating system design: data copying between user and kernel modes, PCI bus signaling inefficiency, protocols that use small data units, and single-threaded applications. We identify some of these limitations through a set of measurements focusing on application-layer cryptographic protocols such as SSL. We offer several suggestions for improvements and directions for future work. We provide experimental evidence of the effectiveness of a new approach which we call operating system shortcutting. Shortcutting can improve the performance of application-layer cryptographic protocols by 27\% with very small changes to the kernel.

entry:
@Article{Keromytis:2006:COS,
  author =       "Angelos D. Keromytis and Jason L. Wright and Theo {De
                 Raadt} and Matthew Burnside",
  title =        "Cryptography as an operating system service: a case
                 study",
  journal =      j-TOCS,
  volume =       "24",
  number =       "1",
  pages =        "1--38",
  month =        feb,
  year =         "2006",
  CODEN =        "ACSYEC",
  DOI =          "https://doi.org/10.1145/1124153.1124154",
  ISSN =         "0734-2071 (print), 1557-7333 (electronic)",
  ISSN-L =       "0734-2071",
  bibdate =      "Fri Apr 7 08:15:08 MDT 2006",
  bibsource =    "http://www.acm.org/pubs/contents/journals/tocs/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  abstract =     "Cryptographic transformations are a fundamental
                 building block in many security applications and
                 protocols. To improve performance, several vendors
                 market hardware accelerator cards. However, until now
                 no operating system provided a mechanism that allowed
                 both uniform and efficient use of this new type of
                 resource. We present the OpenBSD Cryptographic
                 Framework (OCF), a service virtualization layer
                 implemented inside the operating system kernel, that
                 provides uniform access to accelerator functionality by
                 hiding card-specific details behind a carefully
                 designed API. We evaluate the impact of the OCF in a
                 variety of benchmarks, measuring overall system
                 performance, application throughput and latency, and
                 aggregate throughput when multiple applications make
                 use of it. We conclude that the OCF is extremely
                 efficient in utilizing cryptographic accelerator
                 functionality, attaining 95\% of the theoretical peak
                 device performance and over 800 Mbps aggregate
                 throughput using 3DES. We believe that this validates
                 our decision to opt for ease of use by applications and
                 kernel components through a uniform API and for
                 seamless support for new accelerators. Furthermore, our
                 evaluation points to several bottlenecks in system and
                 operating system design: data copying between user and
                 kernel modes, PCI bus signaling inefficiency, protocols
                 that use small data units, and single-threaded
                 applications. We identify some of these limitations
                 through a set of measurements focusing on
                 application-layer cryptographic protocols such as SSL.
                 We offer several suggestions for improvements and
                 directions for future work. We provide experimental
                 evidence of the effectiveness of a new approach which
                 we call operating system shortcutting. Shortcutting can
                 improve the performance of application-layer
                 cryptographic protocols by 27\% with very small changes
                 to the kernel.",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Transactions on Computer Systems",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J774",
}


bibtype: book
filename: unix.bib
label: Kirkland:2006:LTS
editor: James Kirkland and David Carmichael and Christopher L. Tinker and Gregory L. Tinker
title: Linux troubleshooting for system administrators and power users
publisher: pub-PHPTR
address: pub-PHPTR:adr
pages: 624 (est.)
year: 2006
ISBN: 0-13-185515-8 (paperback) OR 0131855158 (paperback)
ISBN13: 978-0-13-185515-1 (paperback) OR 9780131855151 (paperback)
LCCN: QA76.76.O63 L54875 2006
bibdate: Wed Mar 15 17:46:10 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.03.15 17:46:10 MST
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
raweditor: James Kirkland and David Carmichael and Christopher L. Tinker and Gregory L. Tinker
rawtitle: {Linux} troubleshooting for system administrators and power users
URL:
http://vig.prenhall.com/catalog/academic/product/0,1144,0131855158,00.html; http://www.loc.gov/catdir/toc/ecip066/2006000036.html

TOC:
Preface Chapter 1 System Boot, Startup, and Shutdown Issues Chapter 2 System Hangs and Panics Chapter 3 Performance Tools Chapter 4 Performance Chapter 5 Adding New Storage via SAN with Reference to PCMCIA and USB Chapter 6 Disk Partitions and File Systems Chapter 7 Device Failure and Replacement Chapter 8 Linux Processes: Structures, Hangs, and Core Dumps Chapter 9 Backup/Recovery Chapter 10 cron and at Chapter 11 Printing and Printers Chapter 12 System Security Chapter 13 Network Problems Chapter 14 Login Problems Chapter 15 X Windows Problems

rawTOC:
Preface \\ Chapter 1 System Boot, Startup, and Shutdown Issues \\ Chapter 2 System Hangs and Panics \\ Chapter 3 Performance Tools \\ Chapter 4 Performance \\ Chapter 5 Adding New Storage via SAN with Reference to PCMCIA and USB \\ Chapter 6 Disk Partitions and File Systems \\ Chapter 7 Device Failure and Replacement \\ Chapter 8 Linux Processes: Structures, Hangs, and Core Dumps \\ Chapter 9 Backup/Recovery \\ Chapter 10 cron and at \\ Chapter 11 Printing and Printers \\ Chapter 12 System Security \\ Chapter 13 Network Problems \\ Chapter 14 Login Problems \\ Chapter 15 X Windows Problems

entry:
@Book{Kirkland:2006:LTS,
  editor =       "James Kirkland and David Carmichael and Christopher L.
                 Tinker and Gregory L. Tinker",
  title =        "{Linux} troubleshooting for system administrators and
                 power users",
  publisher =    pub-PHPTR,
  address =      pub-PHPTR:adr,
  pages =        "624 (est.)",
  year =         "2006",
  ISBN =         "0-13-185515-8 (paperback)",
  ISBN-13 =      "978-0-13-185515-1 (paperback)",
  LCCN =         "QA76.76.O63 L54875 2006",
  bibdate =      "Wed Mar 15 17:46:10 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  price =        "US\$49.99",
  URL =          "http://vig.prenhall.com/catalog/academic/product/0,1144,0131855158,00.html;
                 http://www.loc.gov/catdir/toc/ecip066/2006000036.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
  tableofcontents = "Preface \\
                 Chapter 1 System Boot, Startup, and Shutdown Issues \\
                 Chapter 2 System Hangs and Panics \\
                 Chapter 3 Performance Tools \\
                 Chapter 4 Performance \\
                 Chapter 5 Adding New Storage via SAN with Reference to
                 PCMCIA and USB \\
                 Chapter 6 Disk Partitions and File Systems \\
                 Chapter 7 Device Failure and Replacement \\
                 Chapter 8 Linux Processes: Structures, Hangs, and Core
                 Dumps \\
                 Chapter 9 Backup/Recovery \\
                 Chapter 10 cron and at \\
                 Chapter 11 Printing and Printers \\
                 Chapter 12 System Security \\
                 Chapter 13 Network Problems \\
                 Chapter 14 Login Problems \\
                 Chapter 15 X Windows Problems",
}


bibtype: article
filename: unix.bib
label: Kohlhepp:2006:RWL
author: Bayard Kohlhepp
journal: j-QUEUE
volume: 4
number: 6
pages: 58--58
month: jul
monthnumber: 7
year: 2006
CODEN: AQCUAE
ISSN: 1542-7730 (print), 1542-7749 (electronic) OR 15427730 (print), 15427749 (electronic)
ISSNL: 1542-7730 OR 15427730
bibdate: Wed Aug 23 12:29:00 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.23 12:29:00 MDT
note: See cite Moskowitz:2005:WLI.
fjournal: ACM Queue: Tomorrow's Computing Today
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J882
rawauthor: Bayard Kohlhepp
rawnote: See \cite{Moskowitz:2005:WLI}.
title:
Review of ``Windows and Linux Integration: Hands-on Solutions for a Mixed Environment by Jermy Moskowitz and Thomas Boutell,'' Sybex Inc., 2005, $59.99, ISBN 0-7821-4428-4

rawtitle:
Review of {``Windows and Linux Integration: Hands-on Solutions for a Mixed Environment by Jermy Moskowitz and Thomas Boutell,'' Sybex Inc., 2005, \$59.99, ISBN 0-7821-4428-4}

entry:
@Article{Kohlhepp:2006:RWL,
  author =       "Bayard Kohlhepp",
  title =        "Review of {``Windows and Linux Integration: Hands-on
                 Solutions for a Mixed Environment by Jermy Moskowitz
                 and Thomas Boutell,'' Sybex Inc., 2005, \$59.99, ISBN
                 0-7821-4428-4}",
  journal =      j-QUEUE,
  volume =       "4",
  number =       "6",
  pages =        "58--58",
  month =        jul # "\slash " # aug,
  year =         "2006",
  CODEN =        "AQCUAE",
  ISSN =         "1542-7730 (print), 1542-7749 (electronic)",
  ISSN-L =       "1542-7730",
  bibdate =      "Wed Aug 23 12:29:00 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  note =         "See \cite{Moskowitz:2005:WLI}.",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Queue: Tomorrow's Computing Today",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J882",
}


bibtype: article
filename: unix.bib
label: Konishi:2006:LIL
title: The Linux implementation of a log-structured file system
journal: j-OPER-SYS-REV
volume: 40
number: 3
pages: 102--107
month: jul
monthnumber: 7
year: 2006
CODEN: OSRED8
ISSN: 0163-5980 (print), 1943-586X (electronic) OR 01635980 (print), 1943586X (electronic)
ISSNL: 0163-5980 OR 01635980
bibdate: Sat Aug 26 08:55:58 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.26 08:55:58 MDT
fjournal: ACM SIGOPS Operating Systems Review
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J597
rawtitle: The {Linux} implementation of a log-structured file system
author:
Ryusuke Konishi and Yoshiji Amagai and Koji Sato and Hisashi Hifumi and Seiji Kihara and Satoshi Moriai

rawauthor:
Ryusuke Konishi and Yoshiji Amagai and Koji Sato and Hisashi Hifumi and Seiji Kihara and Satoshi Moriai

entry:
@Article{Konishi:2006:LIL,
  author =       "Ryusuke Konishi and Yoshiji Amagai and Koji Sato and
                 Hisashi Hifumi and Seiji Kihara and Satoshi Moriai",
  title =        "The {Linux} implementation of a log-structured file
                 system",
  journal =      j-OPER-SYS-REV,
  volume =       "40",
  number =       "3",
  pages =        "102--107",
  month =        jul,
  year =         "2006",
  CODEN =        "OSRED8",
  ISSN =         "0163-5980 (print), 1943-586X (electronic)",
  ISSN-L =       "0163-5980",
  bibdate =      "Sat Aug 26 08:55:58 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGOPS Operating Systems Review",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J597",
}


bibtype: article
filename: unix.bib
label: Koren:2006:SLK
author: Oded Koren
title: A study of the Linux kernel evolution
journal: j-OPER-SYS-REV
volume: 40
number: 2
pages: 110--112
month: apr
monthnumber: 4
year: 2006
CODEN: OSRED8
ISSN: 0163-5980 (print), 1943-586X (electronic) OR 01635980 (print), 1943586X (electronic)
ISSNL: 0163-5980 OR 01635980
bibdate: Sat Aug 26 08:55:43 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.26 08:55:43 MDT
fjournal: ACM SIGOPS Operating Systems Review
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J597
rawauthor: Oded Koren
rawtitle: A study of the {Linux} kernel evolution
entry:
@Article{Koren:2006:SLK,
  author =       "Oded Koren",
  title =        "A study of the {Linux} kernel evolution",
  journal =      j-OPER-SYS-REV,
  volume =       "40",
  number =       "2",
  pages =        "110--112",
  month =        apr,
  year =         "2006",
  CODEN =        "OSRED8",
  ISSN =         "0163-5980 (print), 1943-586X (electronic)",
  ISSN-L =       "0163-5980",
  bibdate =      "Sat Aug 26 08:55:43 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGOPS Operating Systems Review",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J597",
}


bibtype: inproceedings
filename: unix.bib
label: Kulkarni:2006:SCS
author: Pankaj Kulkarni
title: S7 Case Study: Porting 2 Million Lines of C++ Code to HP-UX Itanium
crossref: Anonymous:2006:PGI
pages: ??--??
year: 2006
bibdate: Sat Oct 14 18:26:53 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.14 18:26:53 ???
URL: http://www.ice.gelato.org/oct06/pres_pdf/gelato_ICE06oct_s7study_kulkarni_s7softwaresolutions.pdf
keywords: Intel IA-64; Itanium
acknowledgement: ack-nhfb
rawauthor: Pankaj Kulkarni
rawtitle: {S7} Case Study: Porting 2 Million Lines of {C++} Code to {HP-UX Itanium}
entry:
@InProceedings{Kulkarni:2006:SCS,
  author =       "Pankaj Kulkarni",
  title =        "{S7} Case Study: Porting 2 Million Lines of {C++} Code
                 to {HP-UX Itanium}",
  crossref =     "Anonymous:2006:PGI",
  pages =        "??--??",
  year =         "2006",
  bibdate =      "Sat Oct 14 18:26:53 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "http://www.ice.gelato.org/oct06/pres_pdf/gelato_ICE06oct_s7study_kulkarni_s7softwaresolutions.pdf",
  acknowledgement = ack-nhfb,
  keywords =     "Intel IA-64; Itanium",
}


bibtype: mastersthesis
filename: unix.bib
label: Lacheiner:2006:EPB
author: Hermann Lacheiner
type: Diplome-Arbeit
school: Universitat Linz
address: Linz, Austria
pages: v + 86
year: 2006
bibdate: Thu Apr 16 09:12:12 2009
bibsource: http://meteor.bibvb.ac.at/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2009.04.16 09:12:12 ???
language: German
acknowledgement: ack-nhfb
rawauthor: Hermann Lacheiner
title:
Entwicklung einer auf Python basierenden Rich Client Platform fur Linux. (German) [Development of a Python-based Rich Client Platform for Linux]

rawtitle:
{Entwicklung einer auf Python basierenden Rich Client Platform f{\"u}r Linux}. ({German}) [{Development} of a {Python}-based {Rich Client Platform} for {Linux}]

entry:
@MastersThesis{Lacheiner:2006:EPB,
  author =       "Hermann Lacheiner",
  title =        "{Entwicklung einer auf Python basierenden Rich Client
                 Platform f{\"u}r Linux}. ({German}) [{Development} of a
                 {Python}-based {Rich Client Platform} for {Linux}]",
  type =         "{Diplome-Arbeit}",
  school =       "Universit{\"a}t Linz",
  address =      "Linz, Austria",
  pages =        "v + 86",
  year =         "2006",
  bibdate =      "Thu Apr 16 09:12:12 2009",
  bibsource =    "http://meteor.bibvb.ac.at/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  language =     "German",
}


bibtype: article
filename: unix.bib
label: Lee:2006:HLK
author: Yueh-Feng Lee and Ruei-Chuan Chang
title: Hotswapping Linux kernel modules
journal: j-J-SYST-SOFTW
volume: 79
number: 2
pages: 163--175
month: feb
monthnumber: 2
year: 2006
CODEN: JSSODM
ISSN: 0164-1212 (print), 1873-1228 (electronic) OR 01641212 (print), 18731228 (electronic)
ISSNL: 0164-1212 OR 01641212
bibdate: Tue Sep 7 07:27:01 MDT 2010
bibtimestamp: 2010.09.07 07:27:01 MDT
fjournal: The Journal of systems and software
acknowledgement: ack-nhfb
journalURL: http://www.sciencedirect.com/science/journal/01641212
rawauthor: Yueh-Feng Lee and Ruei-Chuan Chang
rawtitle: Hotswapping {Linux} kernel modules
bibsource:
https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www.sciencedirect.com/science/journal/01641212

entry:
@Article{Lee:2006:HLK,
  author =       "Yueh-Feng Lee and Ruei-Chuan Chang",
  title =        "Hotswapping {Linux} kernel modules",
  journal =      j-J-SYST-SOFTW,
  volume =       "79",
  number =       "2",
  pages =        "163--175",
  month =        feb,
  year =         "2006",
  CODEN =        "JSSODM",
  ISSN =         "0164-1212 (print), 1873-1228 (electronic)",
  ISSN-L =       "0164-1212",
  bibdate =      "Tue Sep 7 07:27:01 MDT 2010",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.sciencedirect.com/science/journal/01641212",
  acknowledgement = ack-nhfb,
  fjournal =     "The Journal of systems and software",
  journal-URL =  "http://www.sciencedirect.com/science/journal/01641212",
}


bibtype: article
filename: unix.bib
label: Liu:2006:PAP
author: Chun-Ho Liu and Chat-Ming Woo and Dennis Y. C. Leung
journal: j-APPL-MATH-COMP
volume: 172
number: 2
pages: 731--743
day: 15
month: jan
monthnumber: 1
year: 2006
CODEN: AMHCBQ
ISSN: 0096-3003 (print), 1873-5649 (electronic) OR 00963003 (print), 18735649 (electronic)
ISSNL: 0096-3003 OR 00963003
bibdate: Sat Jul 12 09:02:52 MDT 2008
bibtimestamp: 2008.07.12 09:02:52 MDT
fjournal: Applied Mathematics and Computation
acknowledgement: ack-nhfb
journalURL: http://www.sciencedirect.com/science/journal/00963003
rawauthor: Chun-Ho Liu and Chat-Ming Woo and Dennis Y. C. Leung
title:
Performance analysis of a parallel finite element solution to the direct numerical simulation of fluid turbulence on Linux PC clusters

bibsource:
https://www.math.utah.edu/pub/tex/bib/unix.bib; http://www.sciencedirect.com/science/journal/00963003

rawtitle:
Performance analysis of a parallel finite element solution to the direct numerical simulation of fluid turbulence on {Linux} {PC} clusters

entry:
@Article{Liu:2006:PAP,
  author =       "Chun-Ho Liu and Chat-Ming Woo and Dennis Y. C. Leung",
  title =        "Performance analysis of a parallel finite element
                 solution to the direct numerical simulation of fluid
                 turbulence on {Linux} {PC} clusters",
  journal =      j-APPL-MATH-COMP,
  volume =       "172",
  number =       "2",
  pages =        "731--743",
  day =          "15",
  month =        jan,
  year =         "2006",
  CODEN =        "AMHCBQ",
  ISSN =         "0096-3003 (print), 1873-5649 (electronic)",
  ISSN-L =       "0096-3003",
  bibdate =      "Sat Jul 12 09:02:52 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.sciencedirect.com/science/journal/00963003",
  acknowledgement = ack-nhfb,
  fjournal =     "Applied Mathematics and Computation",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00963003",
}


bibtype: book
filename: unix.bib
label: Marsh:2006:PRU
author: Matthew G. Marsh
title: Policy Routing Using Linux
publisher: pub-SAMS
address: pub-SAMS:adr
pages: 205 (est.)
year: 2006
ISBN: 0-672-32052-5 OR 0672320525
ISBN13: 978-0-672-32052-1 OR 9780672320521
bibdate: Tue Jun 20 18:06:23 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.06.20 18:06:23 ???
acknowledgement: ack-nhfb
rawauthor: Matthew G. Marsh
rawtitle: Policy Routing Using {Linux}
entry:
@Book{Marsh:2006:PRU,
  author =       "Matthew G. Marsh",
  title =        "Policy Routing Using {Linux}",
  publisher =    pub-SAMS,
  address =      pub-SAMS:adr,
  pages =        "205 (est.)",
  year =         "2006",
  ISBN =         "0-672-32052-5",
  ISBN-13 =      "978-0-672-32052-1",
  LCCN =         "????",
  bibdate =      "Tue Jun 20 18:06:23 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "EUR 35.90",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Marshall:2006:ASV
author: David (David W.) Marshall and Wade A. Reynolds and Dave McCrory
title: Advanced server virtualization: VMware and Microsoft platforms in the virtual data center
publisher: Taylor and Francis
address: Boca Raton, FL, USA
year: 2006
ISBN: 0-8493-3931-6 OR 0849339316
ISBN13: 978-0-8493-3931-8 OR 9780849339318
LCCN: QA76.76.O63 M3646 2006
bibdate: Sun Apr 9 15:43:22 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.04.09 15:43:22 MDT
subject: VMware; Operating systems (Computers); Virtual computer systems
acknowledgement: ack-nhfb
rawauthor: David (David W.) Marshall and Wade A. Reynolds and Dave McCrory
rawtitle: Advanced server virtualization: {VMware} and {Microsoft} platforms in the virtual data center
entry:
@Book{Marshall:2006:ASV,
  author =       "David (David W.) Marshall and Wade A. Reynolds and
                 Dave McCrory",
  title =        "Advanced server virtualization: {VMware} and
                 {Microsoft} platforms in the virtual data center",
  publisher =    "Taylor and Francis",
  address =      "Boca Raton, FL, USA",
  pages =        "????",
  year =         "2006",
  ISBN =         "0-8493-3931-6",
  ISBN-13 =      "978-0-8493-3931-8",
  LCCN =         "QA76.76.O63 M3646 2006",
  bibdate =      "Sun Apr 9 15:43:22 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  acknowledgement = ack-nhfb,
  subject =      "VMware; Operating systems (Computers); Virtual
                 computer systems",
}


bibtype: book
filename: unix.bib
label: Mayer:2006:SEU
author: Frank Mayer and Karl MacMillan and David Caplan
title: SELinux by example: using Security Enhanced Linux
publisher: pub-PH
address: pub-PH:adr
pages: 460 (est.)
year: 2006
ISBN: 0-13-196369-4 (paperback) OR 0131963694 (paperback)
ISBN13: 978-0-13-196369-6 (paperback) OR 9780131963696 (paperback)
LCCN: QA76.76.O63 M3738 2006
bibdate: Tue Jun 20 17:36:49 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.06.20 17:36:49 MDT
subject: Linux; Operating systems (Computers); Computer networks; Security measures
acknowledgement: ack-nhfb
rawauthor: Frank Mayer and Karl MacMillan and David Caplan
rawtitle: {SELinux} by example: using {Security Enhanced Linux}
URL:
http://vig.prenhall.com/catalog/academic/product/0,1144,0131963694,00.html; http://www.loc.gov/catdir/toc/ecip0612/2006012657.html

entry:
@Book{Mayer:2006:SEU,
  author =       "Frank Mayer and Karl MacMillan and David Caplan",
  title =        "{SELinux} by example: using {Security Enhanced
                 Linux}",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "460 (est.)",
  year =         "2006",
  ISBN =         "0-13-196369-4 (paperback)",
  ISBN-13 =      "978-0-13-196369-6 (paperback)",
  LCCN =         "QA76.76.O63 M3738 2006",
  bibdate =      "Tue Jun 20 17:36:49 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  price =        "US\$44.99",
  URL =          "http://vig.prenhall.com/catalog/academic/product/0,1144,0131963694,00.html;
                 http://www.loc.gov/catdir/toc/ecip0612/2006012657.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers); Computer
                 networks; Security measures",
  xxtitle =      "{SELinux} by example: understanding {Security Enhanced
                 Linux}",
}


bibtype: article
filename: unix.bib
label: McIlwain:2006:TCL
author: Sean McIlwain and Barton P. Miller
title: A tool for converting Linux device drivers into Solaris compatible binaries
journal: j-SPE
volume: 36
number: 7
pages: 689--710
month: jun
monthnumber: 6
year: 2006
CODEN: SPEXBL
DOI: https://doi.org/10.1002/spe.714
ISSN: 0038-0644 (print), 1097-024X (electronic) OR 00380644 (print), 1097024X (electronic)
ISSNL: 0038-0644 OR 00380644
bibdate: Wed Oct 17 18:33:12 MDT 2007
bibtimestamp: 2007.10.17 18:33:12 MDT
fjournal: Software---Practice and Experience
acknowledgement: ack-nhfb
journalURL: http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X
onlinedate: 7 Mar 2006
rawauthor: Sean McIlwain and Barton P. Miller
rawtitle: A tool for converting {Linux} device drivers into {Solaris} compatible binaries
abstract:
The Linux operating system is quickly becoming a standard, attracting a wide user community and supporting a broad variety of applications and devices. Other vendors, such as Sun, have provided Linux-compatible system call interfaces to their kernels, but are constrained by the lack of device support. To address this problem, we present a system (called PITS) to build device drivers, in this case for Solaris x86, from Linux source code. To accomplish this goal, we designed tools and Linux kernel emulation code to handle the myriad incompatibilities. These incompatibilities require the ability to resolve symbol conflicts, emulate internal Linux kernel data structures, handle module initialization, and generate module dependencies. With our method, we show that converting Linux device drivers is possible, but has a few technical difficulties. Issues arise with sparse documentation, external user interfaces, and modular driver implementations. There are also fundamental differences between the two operating systems, such as interrupt and DMA handling. We describe each of these issues and their current solutions to build a functional driver in the Solaris environment. Using the IOzone file system benchmark, we also demonstrate comparable performance between our generated SCSI driver set and their corresponding native counterparts.

rawabstract:
The Linux operating system is quickly becoming a standard, attracting a wide user community and supporting a broad variety of applications and devices. Other vendors, such as Sun, have provided Linux-compatible system call interfaces to their kernels, but are constrained by the lack of device support. To address this problem, we present a system (called PITS) to build device drivers, in this case for Solaris x86, from Linux source code. To accomplish this goal, we designed tools and Linux kernel emulation code to handle the myriad incompatibilities. These incompatibilities require the ability to resolve symbol conflicts, emulate internal Linux kernel data structures, handle module initialization, and generate module dependencies. With our method, we show that converting Linux device drivers is possible, but has a few technical difficulties. Issues arise with sparse documentation, external user interfaces, and modular driver implementations. There are also fundamental differences between the two operating systems, such as interrupt and DMA handling. We describe each of these issues and their current solutions to build a functional driver in the Solaris environment. Using the IOzone file system benchmark, we also demonstrate comparable performance between our generated SCSI driver set and their corresponding native counterparts.

entry:
@Article{McIlwain:2006:TCL,
  author =       "Sean McIlwain and Barton P. Miller",
  title =        "A tool for converting {Linux} device drivers into
                 {Solaris} compatible binaries",
  journal =      j-SPE,
  volume =       "36",
  number =       "7",
  pages =        "689--710",
  month =        jun,
  year =         "2006",
  CODEN =        "SPEXBL",
  DOI =          "https://doi.org/10.1002/spe.714",
  ISSN =         "0038-0644 (print), 1097-024X (electronic)",
  ISSN-L =       "0038-0644",
  bibdate =      "Wed Oct 17 18:33:12 MDT 2007",
  bibsource =    "http://www.interscience.wiley.com/jpages/0038-0644;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www3.interscience.wiley.com/journalfinder.html",
  abstract =     "The Linux operating system is quickly becoming a
                 standard, attracting a wide user community and
                 supporting a broad variety of applications and devices.
                 Other vendors, such as Sun, have provided
                 Linux-compatible system call interfaces to their
                 kernels, but are constrained by the lack of device
                 support. To address this problem, we present a system
                 (called PITS) to build device drivers, in this case for
                 Solaris x86, from Linux source code. To accomplish this
                 goal, we designed tools and Linux kernel emulation code
                 to handle the myriad incompatibilities. These
                 incompatibilities require the ability to resolve symbol
                 conflicts, emulate internal Linux kernel data
                 structures, handle module initialization, and generate
                 module dependencies. With our method, we show that
                 converting Linux device drivers is possible, but has a
                 few technical difficulties. Issues arise with sparse
                 documentation, external user interfaces, and modular
                 driver implementations. There are also fundamental
                 differences between the two operating systems, such as
                 interrupt and DMA handling. We describe each of these
                 issues and their current solutions to build a
                 functional driver in the Solaris environment. Using the
                 IOzone file system benchmark, we also demonstrate
                 comparable performance between our generated SCSI
                 driver set and their corresponding native
                 counterparts.",
  acknowledgement = ack-nhfb,
  fjournal =     "Software---Practice and Experience",
  journal-URL =  "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X",
  onlinedate =   "7 Mar 2006",
}


bibtype: article
filename: unix.bib
label: McKusick:2006:DPF
author: Marshall Kirk McKusick
title: Disks from the Perspective of a File System
journal: j-LOGIN
volume: 31
number: 3
pages: 18--19
month: jun
monthnumber: 6
year: 2006
CODEN: LOGNEM
ISSN: 1044-6397 (print), 2169-9364 (electronic) OR 10446397 (print), 21699364 (electronic)
ISSNL: 1044-6397 OR 10446397
bibdate: Mon Feb 24 16:37:28 2020
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2020.02.24 16:37:28 ???
fjournal: ;login: the USENIX Association newsletter
acknowledgement: ack-nhfb
rawauthor: Marshall Kirk McKusick
rawtitle: Disks from the Perspective of a File System
entry:
@Article{McKusick:2006:DPF,
  author =       "Marshall Kirk McKusick",
  title =        "Disks from the Perspective of a File System",
  journal =      j-LOGIN,
  volume =       "31",
  number =       "3",
  pages =        "18--19",
  month =        jun,
  year =         "2006",
  CODEN =        "LOGNEM",
  ISSN =         "1044-6397 (print), 2169-9364 (electronic)",
  ISSN-L =       "1044-6397",
  bibdate =      "Mon Feb 24 16:37:28 2020",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     ";login: the USENIX Association newsletter",
}


bibtype: book
filename: unix.bib
label: Mendoza:2006:ULP
author: Alfredo Mendoza and Chakarat Skawratananond and Artis Walker
title: Unix to Linux porting: a comprehensive reference
publisher: pub-PH
address: pub-PH:adr
year: 2006
ISBN: 0-13-187109-9 (paperback) OR 0131871099 (paperback)
ISBN13: 978-0-13-187109-0 (paperback) OR 9780131871090 (paperback)
LCCN: QA76.76.O63 M437 2006
bibdate: Wed Mar 15 17:45:29 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.03.15 17:45:29 MST
URL: http://www.loc.gov/catdir/toc/ecip066/2006000234.html
subject: Linux; UNIX (Computer file); Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Alfredo Mendoza and Chakarat Skawratananond and Artis Walker
rawtitle: {Unix} to {Linux} porting: a comprehensive reference
TOC:
Preface Chapter 1: Porting Project Considerations Chapter 2: Scoping Chapter 3: Analysis Chapter 4: Porting Solaris applications Chapter 5: Porting AIX applications Chapter 6: Porting HP-UX applications Chapter 7: Testing and Debugging Appendix A: Solaris to Linux Reference Tables Appendix B: AIX to Linux Reference Tables Appendix C: HP-UX to Linux Reference Tables Appendix D: Linux on POWER Appendix E: gprof helper

rawTOC:
Preface \\ Chapter 1: Porting Project Considerations \\ Chapter 2: Scoping \\ Chapter 3: Analysis \\ Chapter 4: Porting Solaris applications \\ Chapter 5: Porting AIX applications \\ Chapter 6: Porting HP-UX applications \\ Chapter 7: Testing and Debugging \\ Appendix A: Solaris to Linux Reference Tables \\ Appendix B: AIX to Linux Reference Tables \\ Appendix C: HP-UX to Linux Reference Tables \\ Appendix D: Linux on POWER \\ Appendix E: gprof helper

entry:
@Book{Mendoza:2006:ULP,
  author =       "Alfredo Mendoza and Chakarat Skawratananond and Artis
                 Walker",
  title =        "{Unix} to {Linux} porting: a comprehensive reference",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "????",
  year =         "2006",
  ISBN =         "0-13-187109-9 (paperback)",
  ISBN-13 =      "978-0-13-187109-0 (paperback)",
  LCCN =         "QA76.76.O63 M437 2006",
  bibdate =      "Wed Mar 15 17:45:29 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip066/2006000234.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; UNIX (Computer file); Operating systems
                 (Computers)",
  tableofcontents = "Preface \\
                 Chapter 1: Porting Project Considerations \\
                 Chapter 2: Scoping \\
                 Chapter 3: Analysis \\
                 Chapter 4: Porting Solaris applications \\
                 Chapter 5: Porting AIX applications \\
                 Chapter 6: Porting HP-UX applications \\
                 Chapter 7: Testing and Debugging \\
                 Appendix A: Solaris to Linux Reference Tables \\
                 Appendix B: AIX to Linux Reference Tables \\
                 Appendix C: HP-UX to Linux Reference Tables \\
                 Appendix D: Linux on POWER \\
                 Appendix E: gprof helper",
}


bibtype: inproceedings
filename: unix.bib
label: Miller:2006:ESR
author: Barton P. Miller and Gregory Cooksey and Fredrick Moore
title: An Empirical Study of the Robustness of MacOS Applications Using Random Testing
crossref: Mayer:2006:PIW
pages: 77--86
year: 2006
DOI: https://doi.org/10.1145/1228291.1228308
bibdate: Tue Jun 03 11:17:08 2014
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2014.06.03 11:17:08 ???
acknowledgement: ack-nhfb
rawauthor: Barton P. Miller and Gregory Cooksey and Fredrick Moore
rawtitle: An Empirical Study of the Robustness of {MacOS} Applications Using Random Testing
entry:
@InProceedings{Miller:2006:ESR,
  author =       "Barton P. Miller and Gregory Cooksey and Fredrick
                 Moore",
  title =        "An Empirical Study of the Robustness of {MacOS}
                 Applications Using Random Testing",
  crossref =     "Mayer:2006:PIW",
  pages =        "77--86",
  year =         "2006",
  DOI =          "https://doi.org/10.1145/1228291.1228308",
  bibdate =      "Tue Jun 03 11:17:08 2014",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Negus:2006:LBB
author: Chris Negus
title: Linux bible: boot up to Fedora, KNOPPIX, Debian, SUSE, Ubuntu, and 7 other distributions
publisher: pub-WILEY
address: pub-WILEY:adr
edition: 2006
pages: xxix + 870
year: 2006
ISBN: 0-471-75489-7 (paper/DVD) OR 0471754897 (paper/DVD)
ISBN13: 978-0-471-75489-3 (paper/DVD) OR 9780471754893 (paper/DVD)
LCCN: QA76.76.O63 N42143 2006
bibdate: Mon Oct 29 18:40:51 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2007.10.29 18:40:51 MDT
remark: Accompanying CD-ROM and DVD-ROM contains 12 different Linux distributions from bonus multi-boot.
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Chris Negus
rawtitle:
{Linux} bible: boot up to {Fedora}, {KNOPPIX}, {Debian}, {SUSE}, {Ubuntu}, and 7 other distributions

entry:
@Book{Negus:2006:LBB,
  author =       "Chris Negus",
  title =        "{Linux} bible: boot up to {Fedora}, {KNOPPIX},
                 {Debian}, {SUSE}, {Ubuntu}, and 7 other distributions",
  publisher =    pub-WILEY,
  address =      pub-WILEY:adr,
  edition =      "2006",
  pages =        "xxix + 870",
  year =         "2006",
  ISBN =         "0-471-75489-7 (paper/DVD)",
  ISBN-13 =      "978-0-471-75489-3 (paper/DVD)",
  LCCN =         "QA76.76.O63 N42143 2006",
  bibdate =      "Mon Oct 29 18:40:51 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  acknowledgement = ack-nhfb,
  remark =       "Accompanying CD-ROM and DVD-ROM contains 12 different
                 Linux distributions from bonus multi-boot.",
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Negus:2006:LLC
author: Chris Negus
title: Live Linux CDs: building and customizing bootables
publisher: pub-PH
address: pub-PH:adr
pages: 448 (est.)
year: 2006
ISBN: 0-13-243274-9 (paperback) OR 0132432749 (paperback)
ISBN13: 978-0-13-243274-0 (paperback) OR 9780132432740 (paperback)
LCCN: QA76.76.O63 N4245 2006
bibdate: Tue Dec 5 14:07:45 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.12.05 14:07:45 MST
URL: http://www.loc.gov/catdir/toc/ecip0619/2006027573.html
subject: Linux; Operating systems (Computers); CD-Rs
acknowledgement: ack-nhfb
rawauthor: Chris Negus
rawtitle: Live {Linux CDs}: building and customizing bootables
entry:
@Book{Negus:2006:LLC,
  author =       "Chris Negus",
  title =        "Live {Linux CDs}: building and customizing bootables",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "448 (est.)",
  year =         "2006",
  ISBN =         "0-13-243274-9 (paperback)",
  ISBN-13 =      "978-0-13-243274-0 (paperback)",
  LCCN =         "QA76.76.O63 N4245 2006",
  bibdate =      "Tue Dec 5 14:07:45 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip0619/2006027573.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers); CD-Rs",
}


bibtype: book
filename: unix.bib
label: Negus:2006:LTI
author: Chris Negus
title: Linux toys II: 9 cool new projects for home, office, and entertainment
publisher: pub-WILEY
address: pub-WILEY:adr
pages: xxii + 397
year: 2006
ISBN: 0-7645-7995-9 (paper/CD-ROM + e-book) OR 0764579959 (paper/CDROM + ebook)
ISBN13: 978-0-7645-7995-0 (paper/CD-ROM + e-book) OR 9780764579950 (paper/CDROM + ebook)
LCCN: QA76.76.O63 N4233 2006
bibdate: Wed Apr 25 14:26:28 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.04.25 14:26:28 MDT
series: ExtremeTech
subject: Linux; Operating systems (Computers); Multimedia systems
acknowledgement: ack-nhfb
rawauthor: Chris Negus
rawtitle: {Linux} toys {II}: 9 cool new projects for home, office, and entertainment
URL:
http://www.loc.gov/catdir/enhancements/fy0623/2005025375-d.html; http://www.loc.gov/catdir/enhancements/fy0662/2005025375-b.html; http://www.loc.gov/catdir/toc/ecip0518/2005025375.html

entry:
@Book{Negus:2006:LTI,
  author =       "Chris Negus",
  title =        "{Linux} toys {II}: 9 cool new projects for home,
                 office, and entertainment",
  publisher =    pub-WILEY,
  address =      pub-WILEY:adr,
  pages =        "xxii + 397",
  year =         "2006",
  ISBN =         "0-7645-7995-9 (paper/CD-ROM + e-book)",
  ISBN-13 =      "978-0-7645-7995-0 (paper/CD-ROM + e-book)",
  LCCN =         "QA76.76.O63 N4233 2006",
  bibdate =      "Wed Apr 25 14:26:28 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "ExtremeTech",
  URL =          "http://www.loc.gov/catdir/enhancements/fy0623/2005025375-d.html;
                 http://www.loc.gov/catdir/enhancements/fy0662/2005025375-b.html;
                 http://www.loc.gov/catdir/toc/ecip0518/2005025375.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers); Multimedia
                 systems",
}


bibtype: book
filename: unix.bib
label: Nemeth:2006:LAH
author: Evi Nemeth and Garth Snyder and Trent R. Hein
title: Linux administration handbook
publisher: pub-PH
address: pub-PH:adr
edition: Second
pages: xxxvii + 1001
year: 2006
ISBN: 0-13-148004-9 (paperback) OR 0131480049 (paperback)
ISBN13: 978-0-13-148004-9 (paperback) OR 9780131480049 (paperback)
LCCN: QA76.76.O63 N448 2006
bibdate: Tue Dec 5 14:07:25 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.12.05 14:07:25 MST
URL: http://www.loc.gov/catdir/toc/ecip0620/2006030150.html
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Evi Nemeth and Garth Snyder and Trent R. Hein
rawtitle: {Linux} administration handbook
entry:
@Book{Nemeth:2006:LAH,
  author =       "Evi Nemeth and Garth Snyder and Trent R. Hein",
  title =        "{Linux} administration handbook",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  edition =      "Second",
  pages =        "xxxvii + 1001",
  year =         "2006",
  ISBN =         "0-13-148004-9 (paperback)",
  ISBN-13 =      "978-0-13-148004-9 (paperback)",
  LCCN =         "QA76.76.O63 N448 2006",
  bibdate =      "Tue Dec 5 14:07:25 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip0620/2006030150.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: inproceedings
filename: unix.bib
label: Neuner:2006:ILS
author: Steve Neuner
title: An Inside Look at Scaling Linux to 1024 Processors
crossref: Anonymous:2006:PGI
pages: ??--??
year: 2006
bibdate: Sat Oct 14 18:26:53 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.14 18:26:53 ???
URL: http://www.ice.gelato.org/oct06/pres_pdf/gelato_ICE06oct_scaling1024_neuner_sgi.pdf
keywords: GNU/Linux; Intel IA-64; Itanium
acknowledgement: ack-nhfb
rawauthor: Steve Neuner
rawtitle: An Inside Look at Scaling {Linux} to 1024 Processors
entry:
@InProceedings{Neuner:2006:ILS,
  author =       "Steve Neuner",
  title =        "An Inside Look at Scaling {Linux} to 1024 Processors",
  crossref =     "Anonymous:2006:PGI",
  pages =        "??--??",
  year =         "2006",
  bibdate =      "Sat Oct 14 18:26:53 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "http://www.ice.gelato.org/oct06/pres_pdf/gelato_ICE06oct_scaling1024_neuner_sgi.pdf",
  acknowledgement = ack-nhfb,
  keywords =     "GNU/Linux; Intel IA-64; Itanium",
}


bibtype: article
filename: unix.bib
label: Nieh:2006:ETO
author: Jason Nieh and Chris Vaill
title: Experiences teaching operating systems using virtual platforms and Linux
journal: j-OPER-SYS-REV
volume: 40
number: 2
pages: 100--104
month: apr
monthnumber: 4
year: 2006
CODEN: OSRED8
ISSN: 0163-5980 (print), 1943-586X (electronic) OR 01635980 (print), 1943586X (electronic)
ISSNL: 0163-5980 OR 01635980
bibdate: Sat Aug 26 08:55:43 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.26 08:55:43 MDT
fjournal: ACM SIGOPS Operating Systems Review
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J597
rawauthor: Jason Nieh and Chris Vaill
rawtitle: Experiences teaching operating systems using virtual platforms and {Linux}
entry:
@Article{Nieh:2006:ETO,
  author =       "Jason Nieh and Chris Vaill",
  title =        "Experiences teaching operating systems using virtual
                 platforms and {Linux}",
  journal =      j-OPER-SYS-REV,
  volume =       "40",
  number =       "2",
  pages =        "100--104",
  month =        apr,
  year =         "2006",
  CODEN =        "OSRED8",
  ISSN =         "0163-5980 (print), 1943-586X (electronic)",
  ISSN-L =       "0163-5980",
  bibdate =      "Sat Aug 26 08:55:43 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGOPS Operating Systems Review",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J597",
}


bibtype: book
filename: unix.bib
label: Oxer:2006:UH
author: Jonathan Oxer and Kyle Rankin and Bill Childers
title: Ubuntu Hacks
publisher: pub-ORA
address: pub-ORA:adr
pages: xix + 426
year: 2006
ISBN: 0-596-52720-9 OR 0596527209
ISBN13: 978-0-596-52720-4 OR 9780596527204
LCCN: QA76.76.O63 2006
bibdate: Sat Jun 17 20:11:50 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.gbv.de:20011/gvk
bibtimestamp: 2006.06.17 20:11:50 MDT
remark: Tips and tools for exploring, using, and tuning Linux.
subject: Operating systems (Computers); Ubuntu (Electronic resource); Linux
acknowledgement: ack-nhfb
rawauthor: Jonathan Oxer and Kyle Rankin and Bill Childers
rawtitle: {Ubuntu} Hacks
entry:
@Book{Oxer:2006:UH,
  author =       "Jonathan Oxer and Kyle Rankin and Bill Childers",
  title =        "{Ubuntu} Hacks",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xix + 426",
  year =         "2006",
  ISBN =         "0-596-52720-9",
  ISBN-13 =      "978-0-596-52720-4",
  LCCN =         "QA76.76.O63 2006",
  bibdate =      "Sat Jun 17 20:11:50 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.gbv.de:20011/gvk",
  price =        "EUR 29.00",
  acknowledgement = ack-nhfb,
  remark =       "Tips and tools for exploring, using, and tuning
                 Linux.",
  subject =      "Operating systems (Computers); Ubuntu (Electronic
                 resource); Linux",
}


bibtype: inproceedings
filename: unix.bib
label: Ozment:2006:MWD
author: Andy Ozment and Stuart E. Schechter
editor: Angelos D. Keromytis
booktitle: Proceedings of the 15th USENIX Security Symposium
title: Milk or wine: Does software security improve with age?
publisher: pub-USENIX
address: pub-USENIX:adr
pages: 93--104
month: jul
monthnumber: 7
year: 2006
bibdate: Thu Apr 29 15:13:20 2021
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2021.04.29 15:13:20 ???
remark: Study of the bug discovery rate in OpenBSD over time.
acknowledgement: ack-nhfb
rawauthor: Andy Ozment and Stuart E. Schechter
rawbooktitle: Proceedings of the {15th USENIX Security Symposium}
raweditor: Angelos D. Keromytis
rawtitle: Milk or wine: Does software security improve with age?
URL:
https://www.usenix.org/conference/15th-usenix-security-symposium/milk-or-wine-does-software-security-improve-age

abstract:
We examine the code base of the OpenBSD operating system to determine whether its security is increasing over time. We measure the rate at which new code has been introduced and the rate at which vulnerabilities have been reported over the last 7.5 years and fifteen versions.par We learn that 61% of the lines of code in today's OpenBSD are foundational: they were introduced prior to the release of the initial version we studied and have not been altered since. We also learn that 62% of reported vulnerabilities were present when the study began and can also be considered to be foundational. We find strong statistical evidence of a decrease in the rate at which foundational vulnerabilities are being reported. However, this decrease is anything but brisk: foundational vulnerabilities have a median lifetime of at least 2.6 years.par Finally, we examined the density of vulnerabilities in the code that was altered/introduced in each version. The densities ranged from 0 to 0.033 vulnerabilities reported per thousand lines of code. These densities will increase as more vulnerabilities are reported.

rawabstract:
We examine the code base of the OpenBSD operating system to determine whether its security is increasing over time. We measure the rate at which new code has been introduced and the rate at which vulnerabilities have been reported over the last 7.5 years and fifteen versions.\par We learn that 61\% of the lines of code in today's OpenBSD are foundational: they were introduced prior to the release of the initial version we studied and have not been altered since. We also learn that 62\% of reported vulnerabilities were present when the study began and can also be considered to be foundational. We find strong statistical evidence of a decrease in the rate at which foundational vulnerabilities are being reported. However, this decrease is anything but brisk: foundational vulnerabilities have a median lifetime of at least 2.6 years.\par Finally, we examined the density of vulnerabilities in the code that was altered/introduced in each version. The densities ranged from 0 to 0.033 vulnerabilities reported per thousand lines of code. These densities will increase as more vulnerabilities are reported.

entry:
@InProceedings{Ozment:2006:MWD,
  author =       "Andy Ozment and Stuart E. Schechter",
  editor =       "Angelos D. Keromytis",
  booktitle =    "Proceedings of the {15th USENIX Security Symposium}",
  title =        "Milk or wine: Does software security improve with
                 age?",
  publisher =    pub-USENIX,
  address =      pub-USENIX:adr,
  pages =        "93--104",
  month =        jul,
  year =         "2006",
  bibdate =      "Thu Apr 29 15:13:20 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "https://www.usenix.org/conference/15th-usenix-security-symposium/milk-or-wine-does-software-security-improve-age",
  abstract =     "We examine the code base of the OpenBSD operating
                 system to determine whether its security is increasing
                 over time. We measure the rate at which new code has
                 been introduced and the rate at which vulnerabilities
                 have been reported over the last 7.5 years and fifteen
                 versions.\par

                 We learn that 61\% of the lines of code in today's
                 OpenBSD are foundational: they were introduced prior to
                 the release of the initial version we studied and have
                 not been altered since. We also learn that 62\% of
                 reported vulnerabilities were present when the study
                 began and can also be considered to be foundational. We
                 find strong statistical evidence of a decrease in the
                 rate at which foundational vulnerabilities are being
                 reported. However, this decrease is anything but brisk:
                 foundational vulnerabilities have a median lifetime of
                 at least 2.6 years.\par

                 Finally, we examined the density of vulnerabilities in
                 the code that was altered/introduced in each version.
                 The densities ranged from 0 to 0.033 vulnerabilities
                 reported per thousand lines of code. These densities
                 will increase as more vulnerabilities are reported.",
  acknowledgement = ack-nhfb,
  remark =       "Study of the bug discovery rate in OpenBSD over
                 time.",
}


bibtype: article
filename: unix.bib
label: Padioleau:2006:UCE
author: Yoann Padioleau and Julia L. Lawall and Gilles Muller
title: Understanding collateral evolution in Linux device drivers
journal: j-OPER-SYS-REV
volume: 40
number: 4
pages: 59--71
month: oct
monthnumber: 10
year: 2006
CODEN: OSRED8
DOI: https://doi.org/10.1145/1217935.1217942
ISSN: 0163-5980 (print), 1943-586X (electronic) OR 01635980 (print), 1943586X (electronic)
ISSNL: 0163-5980 OR 01635980
bibdate: Fri Jun 20 17:14:10 MDT 2008
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2008.06.20 17:14:10 MDT
fjournal: ACM SIGOPS Operating Systems Review
keywords: device drivers; Linux; software evolution
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J597
rawauthor: Yoann Padioleau and Julia L. Lawall and Gilles Muller
rawtitle: Understanding collateral evolution in {Linux} device drivers
abstract:
In a modern operating system (OS), device drivers can make up over 70% of the source code. Driver code is also heavily dependent on the rest of the OS, for functions and data structures defined in the kernel and driver support libraries. These properties pose a significant problem for OS evolution, as any changes in the interfaces exported by the kernel and driver support libraries can trigger a large number of adjustments in dependent drivers. These adjustments, which we refer to as collateral evolutions, may be complex, entailing substantial code reorganizations. As to our knowledge there exist no tools to help in this process, collateral evolution is thus time consuming and error prone. In this paper, we present a qualitative and quantitative assessment of collateral evolution in Linux device driver code. We provide a taxonomy of evolutions and collateral evolutions, and use an automated patch-analysis tool that we have developed to measure the number of evolutions and collateral evolutions that affect device drivers between Linux versions 2.2 and 2.6. In particular, we find that from one version of Linux to the next, collateral evolutions can account for up to 35% of the lines modified in such code.

rawabstract:
In a modern operating system (OS), device drivers can make up over 70\% of the source code. Driver code is also heavily dependent on the rest of the OS, for functions and data structures defined in the kernel and driver support libraries. These properties pose a significant problem for OS evolution, as any changes in the interfaces exported by the kernel and driver support libraries can trigger a large number of adjustments in dependent drivers. These adjustments, which we refer to as collateral evolutions, may be complex, entailing substantial code reorganizations. As to our knowledge there exist no tools to help in this process, collateral evolution is thus time consuming and error prone. In this paper, we present a qualitative and quantitative assessment of collateral evolution in Linux device driver code. We provide a taxonomy of evolutions and collateral evolutions, and use an automated patch-analysis tool that we have developed to measure the number of evolutions and collateral evolutions that affect device drivers between Linux versions 2.2 and 2.6. In particular, we find that from one version of Linux to the next, collateral evolutions can account for up to 35\% of the lines modified in such code.

entry:
@Article{Padioleau:2006:UCE,
  author =       "Yoann Padioleau and Julia L. Lawall and Gilles
                 Muller",
  title =        "Understanding collateral evolution in {Linux} device
                 drivers",
  journal =      j-OPER-SYS-REV,
  volume =       "40",
  number =       "4",
  pages =        "59--71",
  month =        oct,
  year =         "2006",
  CODEN =        "OSRED8",
  DOI =          "https://doi.org/10.1145/1217935.1217942",
  ISSN =         "0163-5980 (print), 1943-586X (electronic)",
  ISSN-L =       "0163-5980",
  bibdate =      "Fri Jun 20 17:14:10 MDT 2008",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  abstract =     "In a modern operating system (OS), device drivers can
                 make up over 70\% of the source code. Driver code is
                 also heavily dependent on the rest of the OS, for
                 functions and data structures defined in the kernel and
                 driver support libraries. These properties pose a
                 significant problem for OS evolution, as any changes in
                 the interfaces exported by the kernel and driver
                 support libraries can trigger a large number of
                 adjustments in dependent drivers. These adjustments,
                 which we refer to as collateral evolutions, may be
                 complex, entailing substantial code reorganizations. As
                 to our knowledge there exist no tools to help in this
                 process, collateral evolution is thus time consuming
                 and error prone. In this paper, we present a
                 qualitative and quantitative assessment of collateral
                 evolution in Linux device driver code. We provide a
                 taxonomy of evolutions and collateral evolutions, and
                 use an automated patch-analysis tool that we have
                 developed to measure the number of evolutions and
                 collateral evolutions that affect device drivers
                 between Linux versions 2.2 and 2.6. In particular, we
                 find that from one version of Linux to the next,
                 collateral evolutions can account for up to 35\% of the
                 lines modified in such code.",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGOPS Operating Systems Review",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J597",
  keywords =     "device drivers; Linux; software evolution",
}


bibtype: techreport
filename: unix.bib
label: Pike:2006:SRE
author: Rob Pike
title: Structural Regular Expressions
type: Report
institution: inst-ATT-BELL
address: inst-ATT-BELL:adr
pages: 7
day: 23
month: mar
monthnumber: 3
year: 2006
bibdate: Mon Mar 04 17:08:47 2024
bibtimestamp: 2024.03.04 17:08:47 ???
URL: https://doc.cat-v.org/bell_labs/structural_regexps/se.pdf
acknowledgement: ack-nhfb
rawauthor: Rob Pike
rawtitle: Structural Regular Expressions
entry:
@TechReport{Pike:2006:SRE,
  author =       "Rob Pike",
  title =        "Structural Regular Expressions",
  type =         "Report",
  institution =  inst-ATT-BELL,
  address =      inst-ATT-BELL:adr,
  pages =        "7",
  day =          "23",
  month =        mar,
  year =         "2006",
  bibdate =      "Mon Mar 04 17:08:47 2024",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/string-matching.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "https://doc.cat-v.org/bell_labs/structural_regexps/se.pdf",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Rankin:2006:LMH
author: Kyle Rankin
title: Linux multimedia hacks: tips and tools for taming images, audio and video
publisher: pub-ORA
address: pub-ORA:adr
pages: xviii + 310
year: 2006
ISBN: 0-596-10076-0 OR 0596100760
ISBN13: 978-0-596-10076-6 OR 9780596100766
LCCN: QA76.575; QA76.575 .R345 2006eb
bibdate: Tue Aug 5 17:48:49 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 17:48:49 MDT
URL: http://www.oreilly.com/catalog/9780596100766
subject: Linux; Multimedia systems; Interactive multimedia
acknowledgement: ack-nhfb
rawauthor: Kyle Rankin
rawtitle: {Linux} multimedia hacks: tips and tools for taming images, audio and video
abstract:
Presents Linux's multimedia tools with step-by-step instructions to maximize entertainment capabilities for images, audio, and video.

rawabstract:
Presents Linux's multimedia tools with step-by-step instructions to maximize entertainment capabilities for images, audio, and video.

entry:
@Book{Rankin:2006:LMH,
  author =       "Kyle Rankin",
  title =        "{Linux} multimedia hacks: tips and tools for taming
                 images, audio and video",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xviii + 310",
  year =         "2006",
  ISBN =         "0-596-10076-0",
  ISBN-13 =      "978-0-596-10076-6",
  LCCN =         "QA76.575; QA76.575 .R345 2006eb",
  bibdate =      "Tue Aug 5 17:48:49 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9780596100766",
  abstract =     "Presents Linux's multimedia tools with step-by-step
                 instructions to maximize entertainment capabilities for
                 images, audio, and video.",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Multimedia systems; Interactive multimedia",
}


bibtype: book
filename: unix.bib
label: Reed:2006:OPP
editor: Jeremy C. Reed
title: The OpenBSD PF Packet Filter Book: PF for NetBSD, FreeBSD, DragonFly, and OpenBSD
publisher: Reed Media Services
pages: 193 (est.)
year: 2006
ISBN: 0-9790342-0-5 OR 0979034205
ISBN13: 978-0-9790342-0-6 OR 9780979034206
bibdate: Wed Feb 21 14:35:24 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2007.02.21 14:35:24 ???
URL: http://www.reedmedia.net/books/pf-book/
acknowledgement: ack-nhfb
raweditor: Jeremy C. Reed
rawtitle: The {OpenBSD PF} Packet Filter Book: {PF} for {NetBSD}, {FreeBSD}, {DragonFly}, and {OpenBSD}
entry:
@Book{Reed:2006:OPP,
  editor =       "Jeremy C. Reed",
  title =        "The {OpenBSD PF} Packet Filter Book: {PF} for
                 {NetBSD}, {FreeBSD}, {DragonFly}, and {OpenBSD}",
  publisher =    "Reed Media Services",
  address =      "????",
  pages =        "193 (est.)",
  year =         "2006",
  ISBN =         "0-9790342-0-5",
  ISBN-13 =      "978-0-9790342-0-6",
  LCCN =         "????",
  bibdate =      "Wed Feb 21 14:35:24 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$19.90",
  URL =          "http://www.reedmedia.net/books/pf-book/",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Reese:2006:CSL
author: Greg Reese
title: C++ Standard Library practical tips
publisher: pub-CHARLES-RIVER-MEDIA
address: pub-CHARLES-RIVER-MEDIA:adr
pages: xviii + 542
year: 2006
ISBN: 1-58450-400-5 (paperback) OR 1584504005 (paperback)
ISBN13: 978-1-58450-400-9 (paperback) OR 9781584504009 (paperback)
LCCN: QA76.73.C153 R44 2006
bibdate: Thu May 3 10:58:49 MDT 2012
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2012.05.03 10:58:49 MDT
note: Includes CD-ROM.
URL: http://www.loc.gov/catdir/toc/ecip0513/2005015845.html
subject: C++ (Computer program language)
acknowledgement: ack-nhfb
rawauthor: Greg Reese
rawnote: Includes CD-ROM.
rawtitle: {C++ Standard Library} practical tips
entry:
@Book{Reese:2006:CSL,
  author =       "Greg Reese",
  title =        "{C++ Standard Library} practical tips",
  publisher =    pub-CHARLES-RIVER-MEDIA,
  address =      pub-CHARLES-RIVER-MEDIA:adr,
  pages =        "xviii + 542",
  year =         "2006",
  ISBN =         "1-58450-400-5 (paperback)",
  ISBN-13 =      "978-1-58450-400-9 (paperback)",
  LCCN =         "QA76.73.C153 R44 2006",
  bibdate =      "Thu May 3 10:58:49 MDT 2012",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  note =         "Includes CD-ROM.",
  URL =          "http://www.loc.gov/catdir/toc/ecip0513/2005015845.html",
  acknowledgement = ack-nhfb,
  subject =      "C++ (Computer program language)",
}


bibtype: book
filename: unix.bib
label: Robbins:2006:KSP
author: Arnold Robbins and Nelson H. F. Beebe
title: Klassische Shell-Programmierung: [automatisieren Sie Ihre Unix/Linux-Tasks]
publisher: pub-ORA
address: pub-ORA:adr
pages: xxiii + 572
year: 2006
ISBN: 3-89721-441-5 OR 3897214415
ISBN13: 978-3-89721-441-5 OR 9783897214415
LCCN: QA76.76.O63 R563 2005
bibdate: Tue Dec 23 09:41:24 MST 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.gbv.de:20011/gvk
bibtimestamp: 2008.12.23 09:41:24 MST
note: German translation of cite Robbins:2005:CSS by Kathrin Lichtenberg.
URL: http://www.gbv.de/dms/hebis-darmstadt/toc/17645067X.pdf
language: German
subject: SHELL <Programmiersprache>; Skript <Programm>; UNIX
acknowledgement: ack-nhfb
rawauthor: Arnold Robbins and Nelson H. F. Beebe
rawnote: German translation of \cite{Robbins:2005:CSS} by Kathrin Lichtenberg.
rawtitle: {Klassische Shell-Programmierung: [automatisieren Sie Ihre Unix/Linux-Tasks]}
entry:
@Book{Robbins:2006:KSP,
  author =       "Arnold Robbins and Nelson H. F. Beebe",
  title =        "{Klassische Shell-Programmierung: [automatisieren Sie
                 Ihre Unix/Linux-Tasks]}",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xxiii + 572",
  year =         "2006",
  ISBN =         "3-89721-441-5",
  ISBN-13 =      "978-3-89721-441-5",
  LCCN =         "QA76.76.O63 R563 2005",
  bibdate =      "Tue Dec 23 09:41:24 MST 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.gbv.de:20011/gvk",
  note =         "German translation of \cite{Robbins:2005:CSS} by
                 Kathrin Lichtenberg.",
  price =        "EUR 44.00; EUR 45.65 (AT)",
  URL =          "http://www.gbv.de/dms/hebis-darmstadt/toc/17645067X.pdf",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "SHELL <Programmiersprache>; Skript <Programm>; UNIX",
}


bibtype: book
filename: unix.bib
label: Robbins:2006:PSP
author: Arnold Robbins and Nelson H. F. Beebe
title: Programowanie skryptow powloki
publisher: Helion
address: Gliwice, Poland
pages: 557 + 2
year: 2006
ISBN: 83-246-0131-7 OR 8324601317
ISBN13: 978-83-246-0131-8 OR 9788324601318
bibdate: Mon Feb 27 11:35:14 MST 2006
bibtimestamp: 2006.02.27 11:35:14 MST
note: Polish translation of cite Robbins:2005:CSS by Przemyslaw Szeremiota.
language: Polish
acknowledgement: ack-nhfb
rawauthor: Arnold Robbins and Nelson H. F. Beebe
rawnote: Polish translation of \cite{Robbins:2005:CSS} by Przemys{\l}aw Szeremiota.
rawtitle: Programowanie skrypt{\'o}w pow{\l}oki
ORCID: Beebe, Nelson H. F./0000-0001-7281-4263
bibsource:
alpha.bn.org.pl:210/INNOPAC; https://www.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib; https://www.math.utah.edu/pub/tex/bib/linux.bib; https://www.math.utah.edu/pub/tex/bib/master.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib; https://www.math.utah.edu/pub/tex/bib/utah-math-dept-books.bib

URL:
http://www.empik.com/b/o/19/f1/19f16b85e0d75ae1d3a1e7062569fbb0.jpg; http://www.empik.com/programowanie-skryptow-powloki-ksiazka,360529,p

entry:
@Book{Robbins:2006:PSP,
  author =       "Arnold Robbins and Nelson H. F. Beebe",
  title =        "Programowanie skrypt{\'o}w pow{\l}oki",
  publisher =    "Helion",
  address =      "Gliwice, Poland",
  pages =        "557 + 2",
  year =         "2006",
  ISBN =         "83-246-0131-7",
  ISBN-13 =      "978-83-246-0131-8",
  LCCN =         "????",
  bibdate =      "Mon Feb 27 11:35:14 MST 2006",
  bibsource =    "alpha.bn.org.pl:210/INNOPAC;
                 https://www.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib;
                 https://www.math.utah.edu/pub/tex/bib/linux.bib;
                 https://www.math.utah.edu/pub/tex/bib/master.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 https://www.math.utah.edu/pub/tex/bib/utah-math-dept-books.bib",
  note =         "Polish translation of \cite{Robbins:2005:CSS} by
                 Przemys{\l}aw Szeremiota.",
  URL =          "http://www.empik.com/b/o/19/f1/19f16b85e0d75ae1d3a1e7062569fbb0.jpg;
                 http://www.empik.com/programowanie-skryptow-powloki-ksiazka,360529,p",
  acknowledgement = ack-nhfb,
  language =     "Polish",
  ORCID-numbers = "Beebe, Nelson H. F./0000-0001-7281-4263",
}


bibtype: book
filename: unix.bib
label: Robbins:2006:SSS
author: Arnold Robbins and Nelson H. F. Beebe
title: Shokai shieru sukuriputo
publisher: Orairi Japan
address: Tokyo, Japan
pages: 345
year: 2006
ISBN: 4-87311-267-2 OR 4873112672
ISBN13: 978-4-87311-267-1 OR 9784873112671
bibdate: Fri May 1 11:47:10 MDT 2015
bibtimestamp: 2015.05.01 11:47:10 MDT
note: Japanese translation of cite Robbins:2005:CSS by Aoi Hyuga.
language: Japanese
acknowledgement: ack-nhfb
rawauthor: Arnold Robbins and Nelson H. F. Beebe
rawnote: Japanese translation of \cite{Robbins:2005:CSS} by Aoi Hy{\=u}ga.
rawtitle: Sh{\=o}kai shieru sukuriputo
ORCID: Beebe, Nelson H. F./0000-0001-7281-4263
bibsource:
fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib; https://www.math.utah.edu/pub/tex/bib/linux.bib; https://www.math.utah.edu/pub/tex/bib/master.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib; https://www.math.utah.edu/pub/tex/bib/utah-math-dept-books.bib

entry:
@Book{Robbins:2006:SSS,
  author =       "Arnold Robbins and Nelson H. F. Beebe",
  title =        "Sh{\=o}kai shieru sukuriputo",
  publisher =    "Orair{\=\i} Japan",
  address =      "T{\=o}ky{\=o}, Japan",
  pages =        "345",
  year =         "2006",
  ISBN =         "4-87311-267-2",
  ISBN-13 =      "978-4-87311-267-1",
  LCCN =         "????",
  bibdate =      "Fri May 1 11:47:10 MDT 2015",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib;
                 https://www.math.utah.edu/pub/tex/bib/linux.bib;
                 https://www.math.utah.edu/pub/tex/bib/master.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 https://www.math.utah.edu/pub/tex/bib/utah-math-dept-books.bib",
  note =         "Japanese translation of \cite{Robbins:2005:CSS} by Aoi
                 Hy{\=u}ga.",
  acknowledgement = ack-nhfb,
  language =     "Japanese",
  ORCID-numbers = "Beebe, Nelson H. F./0000-0001-7281-4263",
}


bibtype: article
filename: unix.bib
label: Robbins:2006:UCS
author: Steven Robbins
title: A UNIX concurrent I/O simulator
journal: j-SIGCSE
volume: 38
number: 1
pages: 303--307
month: mar
monthnumber: 3
year: 2006
CODEN: SIGSD3
DOI: https://doi.org/10.1145/1124706.1121435
ISSN: 0097-8418 (print), 2331-3927 (electronic) OR 00978418 (print), 23313927 (electronic)
ISSNL: 0097-8418 OR 00978418
bibdate: Sat Nov 17 16:57:23 MST 2012
bibtimestamp: 2012.11.17 16:57:23 MST
fjournal: SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J688
rawauthor: Steven Robbins
rawtitle: A {UNIX} concurrent {I}/{O} simulator
bibsource:
http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib

abstract:
This paper describes a simulator that allows users to explore concurrent I/O in UNIX. UNIX I/O provides an interesting example of how a shared variable, in this case the file offset, can be affected by concurrent access. The examples given can run on the simulator or a real UNIX-like system such as Linux, Solaris for Mac OS X. The simulator can run programs written by the user and display pictorially the relationship among various data structures involved in I/O, including the process file descriptor table, the system open file table, the inodes, and the data stored on disk. The user can run the program slowly, or step forward or back through the program to examine the data structures in detail. The simulator supports the creation of both child processes and threads as well as open, close, read, write, wait, join and detach functions. The simulator is freely available for download. It can be also be used directly from a browser without the need for installation.

rawabstract:
This paper describes a simulator that allows users to explore concurrent I/O in UNIX. UNIX I/O provides an interesting example of how a shared variable, in this case the file offset, can be affected by concurrent access. The examples given can run on the simulator or a real UNIX-like system such as Linux, Solaris for Mac OS X. The simulator can run programs written by the user and display pictorially the relationship among various data structures involved in I/O, including the process file descriptor table, the system open file table, the inodes, and the data stored on disk. The user can run the program slowly, or step forward or back through the program to examine the data structures in detail. The simulator supports the creation of both child processes and threads as well as open, close, read, write, wait, join and detach functions. The simulator is freely available for download. It can be also be used directly from a browser without the need for installation.

entry:
@Article{Robbins:2006:UCS,
  author =       "Steven Robbins",
  title =        "A {UNIX} concurrent {I}/{O} simulator",
  journal =      j-SIGCSE,
  volume =       "38",
  number =       "1",
  pages =        "303--307",
  month =        mar,
  year =         "2006",
  CODEN =        "SIGSD3",
  DOI =          "https://doi.org/10.1145/1124706.1121435",
  ISSN =         "0097-8418 (print), 2331-3927 (electronic)",
  ISSN-L =       "0097-8418",
  bibdate =      "Sat Nov 17 16:57:23 MST 2012",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  abstract =     "This paper describes a simulator that allows users to
                 explore concurrent I/O in UNIX. UNIX I/O provides an
                 interesting example of how a shared variable, in this
                 case the file offset, can be affected by concurrent
                 access. The examples given can run on the simulator or
                 a real UNIX-like system such as Linux, Solaris for Mac
                 OS X. The simulator can run programs written by the
                 user and display pictorially the relationship among
                 various data structures involved in I/O, including the
                 process file descriptor table, the system open file
                 table, the inodes, and the data stored on disk. The
                 user can run the program slowly, or step forward or
                 back through the program to examine the data structures
                 in detail. The simulator supports the creation of both
                 child processes and threads as well as open, close,
                 read, write, wait, join and detach functions. The
                 simulator is freely available for download. It can be
                 also be used directly from a browser without the need
                 for installation.",
  acknowledgement = ack-nhfb,
  fjournal =     "SIGCSE Bulletin (ACM Special Interest Group on
                 Computer Science Education)",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J688",
}


bibtype: book
filename: unix.bib
label: Robbins:2006:UN
author: Arnold Robbins
title: Unix in a Nutshell
publisher: pub-ORA-MEDIA
address: pub-ORA-MEDIA:adr
edition: Fourth
pages: xviii + 885
year: 2006
ISBN: 0-596-10029-9 OR 0596100299
ISBN13: 978-0-596-10029-2 OR 9780596100292
LCCN: QA76.76.O63 R566 2006
bibdate: Mon Nov 21 12:08:47 2005
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2005.11.21 12:08:47 ???
URL: http://www.oreilly.com/catalog/9780596100292; http://www.oreilly.com/catalog/unixnut4/index.html
acknowledgement: ack-nhfb
rawauthor: Arnold Robbins
rawtitle: {Unix} in a Nutshell
entry:
@Book{Robbins:2006:UN,
  author =       "Arnold Robbins",
  title =        "{Unix} in a Nutshell",
  publisher =    pub-ORA-MEDIA,
  address =      pub-ORA-MEDIA:adr,
  edition =      "Fourth",
  pages =        "xviii + 885",
  year =         "2006",
  ISBN =         "0-596-10029-9",
  ISBN-13 =      "978-0-596-10029-2",
  LCCN =         "QA76.76.O63 R566 2006",
  bibdate =      "Mon Nov 21 12:08:47 2005",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$34.95, CAN\$48.95, UK\pounds 24.95",
  URL =          "http://www.oreilly.com/catalog/9780596100292;
                 http://www.oreilly.com/catalog/unixnut4/index.html",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Rodriguez:2006:LKP
author: Claudia Salzberg Rodriguez and Gordon Fischer and Steven Smolski
title: The Linux Kernel primer: a top-down approach for X86 and PowerPC architectures
publisher: pub-PHPTR
address: pub-PHPTR:adr
pages: xxvii + 616
year: 2006
ISBN: 0-13-118163-7 (paperback) OR 0131181637 (paperback)
ISBN13: 978-0-13-118163-2 (paperback) OR 9780131181632 (paperback)
LCCN: QA76.76.O63 R633 2006
bibdate: Wed Mar 15 17:45:49 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.03.15 17:45:49 MST
series: Prentice Hall open source software development series
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Claudia Salzberg Rodriguez and Gordon Fischer and Steven Smolski
rawtitle: The {Linux} Kernel primer: a top-down approach for {X86} and {PowerPC} architectures
entry:
@Book{Rodriguez:2006:LKP,
  author =       "Claudia Salzberg Rodriguez and Gordon Fischer and
                 Steven Smolski",
  title =        "The {Linux} Kernel primer: a top-down approach for
                 {X86} and {PowerPC} architectures",
  publisher =    pub-PHPTR,
  address =      pub-PHPTR:adr,
  pages =        "xxvii + 616",
  year =         "2006",
  ISBN =         "0-13-118163-7 (paperback)",
  ISBN-13 =      "978-0-13-118163-2 (paperback)",
  LCCN =         "QA76.76.O63 R633 2006",
  bibdate =      "Wed Mar 15 17:45:49 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "Prentice Hall open source software development
                 series",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Rosenthal:2006:ACG
author: Hanaan Rosenthal
title: AppleScript: the comprehensive guide to scripting and automation on Mac OS X
publisher: pub-APRESS
address: pub-APRESS:adr
edition: Second
pages: xxxiv + 772
year: 2006
ISBN: 1-59059-653-6 (paperback) OR 1590596536 (paperback)
ISBN13: 978-1-59059-653-1 (paperback) OR 9781590596531 (paperback)
LCCN: QA76.73.A66 R67 2006
bibdate: Mon Oct 13 14:35:48 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2008.10.13 14:35:48 MDT
series: Expert's voice in Mac development
subject: AppleScript (Computer program language); Mac OS
acknowledgement: ack-nhfb
rawauthor: Hanaan Rosenthal
rawtitle: {AppleScript}: the comprehensive guide to scripting and automation on {Mac OS X}
entry:
@Book{Rosenthal:2006:ACG,
  author =       "Hanaan Rosenthal",
  title =        "{AppleScript}: the comprehensive guide to scripting
                 and automation on {Mac OS X}",
  publisher =    pub-APRESS,
  address =      pub-APRESS:adr,
  edition =      "Second",
  pages =        "xxxiv + 772",
  year =         "2006",
  ISBN =         "1-59059-653-6 (paperback)",
  ISBN-13 =      "978-1-59059-653-1 (paperback)",
  LCCN =         "QA76.73.A66 R67 2006",
  bibdate =      "Mon Oct 13 14:35:48 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  series =       "Expert's voice in Mac development",
  acknowledgement = ack-nhfb,
  subject =      "AppleScript (Computer program language); Mac OS",
}


bibtype: article
filename: unix.bib
label: Rozman:2006:CPL
author: Igor Rozman and Marjan sterk and Roman Trobec
title: Communication Performance of LAM / MPI and MPICH on a Linux Cluster
journal: j-PARALLEL-PROCESS-LETT
volume: 16
number: 3
pages: 323--334
month: sep
monthnumber: 9
year: 2006
CODEN: PPLTEE
DOI: https://doi.org/10.1142/S0129626406002678
ISSN: 0129-6264 (print), 1793-642X (electronic) OR 01296264 (print), 1793642X (electronic)
bibdate: Thu Sep 2 09:08:11 MDT 2010
bibsource: http://ejournals.wspc.com.sg/ppl/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2010.09.02 09:08:11 MDT
fjournal: Parallel Processing Letters
acknowledgement: ack-nhfb
journalURL: http://www.worldscientific.com/loi/ppl
rawauthor: Igor Rozman and Marjan {\v{s}}terk and Roman Trobec
rawtitle: Communication Performance of {LAM\slash MPI} and {MPICH} on a {Linux} Cluster
entry:
@Article{Rozman:2006:CPL,
  author =       "Igor Rozman and Marjan {\v{s}}terk and Roman Trobec",
  title =        "Communication Performance of {LAM\slash MPI} and
                 {MPICH} on a {Linux} Cluster",
  journal =      j-PARALLEL-PROCESS-LETT,
  volume =       "16",
  number =       "3",
  pages =        "323--334",
  month =        sep,
  year =         "2006",
  CODEN =        "PPLTEE",
  DOI =          "https://doi.org/10.1142/S0129626406002678",
  ISSN =         "0129-6264 (print), 1793-642X (electronic)",
  bibdate =      "Thu Sep 2 09:08:11 MDT 2010",
  bibsource =    "http://ejournals.wspc.com.sg/ppl/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "Parallel Processing Letters",
  journal-URL =  "http://www.worldscientific.com/loi/ppl",
}


bibtype: book
filename: unix.bib
label: Sanghera:2006:SCS
author: Paul Sanghera and Nalneesh Gaur
title: Sun Certified System Administrator for Solaris 10 Study Guide (Exams CX-310-200 and CX-310-202)
publisher: pub-OSBORNE-MCGRAW-HILL
address: pub-OSBORNE-MCGRAW-HILL:adr
pages: 599 (est.)
year: 2006
ISBN: 0-07-222959-4 OR 0072229594
ISBN13: 978-0-07-222959-2 OR 9780072229592
bibdate: Mon Apr 10 19:24:57 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.04.10 19:24:57 ???
acknowledgement: ack-nhfb
rawauthor: Paul Sanghera and Nalneesh Gaur
TOC:
1. UNIX operating system: mind the gap 2. Installing Solaris 10 software 3. Performing system boot and shutdown 4. Managing file systems 5. Managing disks 6. Performing user administration 7. Performing security administration 8. Managing network printers and system processes 9. Performing system backups and restores 10. Working with the solaris network environment 11. Managing naming services 12. Managing virtual file systems and core dumps 13. Managing storage volumes 14. Managing access control and system messaging 15. Performing advanced installation

rawtitle:
{Sun} Certified System Administrator for {Solaris 10} Study Guide (Exams {CX-310-200} and {CX-310-202})

rawTOC:
1. UNIX operating system: mind the gap \\ 2. Installing Solaris 10 software \\ 3. Performing system boot and shutdown \\ 4. Managing file systems \\ 5. Managing disks \\ 6. Performing user administration \\ 7. Performing security administration \\ 8. Managing network printers and system processes \\ 9. Performing system backups and restores \\ 10. Working with the solaris network environment \\ 11. Managing naming services \\ 12. Managing virtual file systems and core dumps \\ 13. Managing storage volumes \\ 14. Managing access control and system messaging \\ 15. Performing advanced installation

entry:
@Book{Sanghera:2006:SCS,
  author =       "Paul Sanghera and Nalneesh Gaur",
  title =        "{Sun} Certified System Administrator for {Solaris 10}
                 Study Guide (Exams {CX-310-200} and {CX-310-202})",
  publisher =    pub-OSBORNE-MCGRAW-HILL,
  address =      pub-OSBORNE-MCGRAW-HILL:adr,
  pages =        "599 (est.)",
  year =         "2006",
  ISBN =         "0-07-222959-4",
  ISBN-13 =      "978-0-07-222959-2",
  LCCN =         "????",
  bibdate =      "Mon Apr 10 19:24:57 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  tableofcontents = "1. UNIX operating system: mind the gap \\
                 2. Installing Solaris 10 software \\
                 3. Performing system boot and shutdown \\
                 4. Managing file systems \\
                 5. Managing disks \\
                 6. Performing user administration \\
                 7. Performing security administration \\
                 8. Managing network printers and system processes \\
                 9. Performing system backups and restores \\
                 10. Working with the solaris network environment \\
                 11. Managing naming services \\
                 12. Managing virtual file systems and core dumps \\
                 13. Managing storage volumes \\
                 14. Managing access control and system messaging \\
                 15. Performing advanced installation",
}


bibtype: book
filename: unix.bib
label: Schroeder:2006:VTO
author: Will Schroeder and Ken Martin and Bill Lorensen
publisher: Kitware
address: Clifton Park, NY
edition: Fourth
pages: xvi + 512
year: 2006
ISBN: 1-930934-19-X OR 193093419X
ISBN13: 978-1-930934-19-1 OR 9781930934191
bibdate: Thu Apr 16 09:20:47 MDT 2009
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.bibsys.no:2100/BIBSYS
bibtimestamp: 2009.04.16 09:20:47 MDT
subject: Visualisering; Datamaskinassistert presentasjon; Python
acknowledgement: ack-nhfb
rawauthor: Will Schroeder and Ken Martin and Bill Lorensen
title:
The visualization toolkit: an object-oriented approach to 3D graphics [visualize data in 3D --- medical, engineering or scientific; build your own applications with C++, Tcl, Java or Python; includes source code for VTK (supports UNIX, Windows and Mac)]

rawtitle:
The visualization toolkit: an object-oriented approach to {3D} graphics [visualize data in {3D} --- medical, engineering or scientific; build your own applications with {C}++, Tcl, Java or Python; includes source code for {VTK} (supports {UNIX}, Windows and Mac)]

entry:
@Book{Schroeder:2006:VTO,
  author =       "Will Schroeder and Ken Martin and Bill Lorensen",
  title =        "The visualization toolkit: an object-oriented approach
                 to {3D} graphics [visualize data in {3D} --- medical,
                 engineering or scientific; build your own applications
                 with {C}++, Tcl, Java or Python; includes source code
                 for {VTK} (supports {UNIX}, Windows and Mac)]",
  publisher =    "Kitware",
  address =      "Clifton Park, NY",
  edition =      "Fourth",
  pages =        "xvi + 512",
  year =         "2006",
  ISBN =         "1-930934-19-X",
  ISBN-13 =      "978-1-930934-19-1",
  LCCN =         "????",
  bibdate =      "Thu Apr 16 09:20:47 MDT 2009",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.bibsys.no:2100/BIBSYS",
  acknowledgement = ack-nhfb,
  subject =      "Visualisering; Datamaskinassistert presentasjon;
                 Python",
}


bibtype: inproceedings
filename: unix.bib
label: Shermerhorn:2006:HOL
author: Lee Shermerhorn
title: HP / OSLO Linux Scalability Tracking and Investigations
crossref: Anonymous:2006:PGI
pages: ??--??
year: 2006
bibdate: Sat Oct 14 18:26:53 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.14 18:26:53 ???
URL: http://www.ice.gelato.org/oct06/pres_pdf/gelato_ICE06oct_scaltracking_shermerhorn_hp.pdf
keywords: GNU/Linux; Intel IA-64; Itanium
acknowledgement: ack-nhfb
rawauthor: Lee Shermerhorn
rawtitle: {HP\slash OSLO Linux} Scalability Tracking and Investigations
entry:
@InProceedings{Shermerhorn:2006:HOL,
  author =       "Lee Shermerhorn",
  title =        "{HP\slash OSLO Linux} Scalability Tracking and
                 Investigations",
  crossref =     "Anonymous:2006:PGI",
  pages =        "??--??",
  year =         "2006",
  bibdate =      "Sat Oct 14 18:26:53 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  URL =          "http://www.ice.gelato.org/oct06/pres_pdf/gelato_ICE06oct_scaltracking_shermerhorn_hp.pdf",
  acknowledgement = ack-nhfb,
  keywords =     "GNU/Linux; Intel IA-64; Itanium",
}


bibtype: article
filename: unix.bib
label: Shumba:2006:THL
author: Rose Shumba
title: Teaching hands-on Linux host computer security
journal: j-JERIC
volume: 6
number: 3
pages: 5:1--5:??
month: sep
monthnumber: 9
year: 2006
DOI: https://doi.org/10.1145/1243481.1243486
ISSN: 1531-4278 OR 15314278
bibdate: Fri Jun 20 10:12:25 MDT 2008
bibsource: http://www.acm.org/pubs/contents/journals/jeric/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2008.06.20 10:12:25 MDT
fjournal: ACM Journal on Educational Resources in Computing (JERIC)
acknowledgement: ack-nhfb
articleno: 5
rawauthor: Rose Shumba
rawtitle: Teaching hands-on {Linux} host computer security
abstract:
In the summer of 2003, a project to augment and improve the teaching of information assurance courses was started at IUP. Thus far, ten hands-on exercises have been developed. The exercises described in this article, and presented in the appendix, are based on actions required to secure a Linux host. Publicly available resources were used to develop the exercises, which have been successfully utilized since spring 2003 to teach cybersecurity basics classes. The experiences and challenges encountered in teaching the course and possible future work are also described.

keywords:
computer security; cryptography; file integrity; file permissions; host security exercises; user accounts

rawabstract:
In the summer of 2003, a project to augment and improve the teaching of information assurance courses was started at IUP. Thus far, ten hands-on exercises have been developed. The exercises described in this article, and presented in the appendix, are based on actions required to secure a Linux host. Publicly available resources were used to develop the exercises, which have been successfully utilized since spring 2003 to teach cybersecurity basics classes. The experiences and challenges encountered in teaching the course and possible future work are also described.

entry:
@Article{Shumba:2006:THL,
  author =       "Rose Shumba",
  title =        "Teaching hands-on {Linux} host computer security",
  journal =      j-JERIC,
  volume =       "6",
  number =       "3",
  pages =        "5:1--5:??",
  month =        sep,
  year =         "2006",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1145/1243481.1243486",
  ISSN =         "1531-4278",
  bibdate =      "Fri Jun 20 10:12:25 MDT 2008",
  bibsource =    "http://www.acm.org/pubs/contents/journals/jeric/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  abstract =     "In the summer of 2003, a project to augment and
                 improve the teaching of information assurance courses
                 was started at IUP. Thus far, ten hands-on exercises
                 have been developed. The exercises described in this
                 article, and presented in the appendix, are based on
                 actions required to secure a Linux host. Publicly
                 available resources were used to develop the exercises,
                 which have been successfully utilized since spring 2003
                 to teach cybersecurity basics classes. The experiences
                 and challenges encountered in teaching the course and
                 possible future work are also described.",
  acknowledgement = ack-nhfb,
  articleno =    "5",
  fjournal =     "ACM Journal on Educational Resources in Computing
                 (JERIC)",
  keywords =     "computer security; cryptography; file integrity; file
                 permissions; host security exercises; user accounts",
}


bibtype: book
filename: unix.bib
label: Smith:2006:BSE
author: Larry L. Smith
title: BASH Shell: Essential Programs for Your Survival at Work
publisher: BookSurge Publishing
pages: 590 (est.)
year: 2006
ISBN: 1-4196-4833-0 OR 1419648330
ISBN13: 978-1-4196-4833-5 OR 9781419648335
bibdate: Mon Nov 26 18:37:59 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2007.11.26 18:37:59 ???
remark: Book 3 in the Rosetta Stone Series for Computer Programmers and Script-Writers (Rosetta Stone)
acknowledgement: ack-nhfb
rawauthor: Larry L. Smith
rawtitle: {BASH} Shell: Essential Programs for Your Survival at Work
entry:
@Book{Smith:2006:BSE,
  author =       "Larry L. Smith",
  title =        "{BASH} Shell: Essential Programs for Your Survival at
                 Work",
  publisher =    "BookSurge Publishing",
  address =      "????",
  pages =        "590 (est.)",
  year =         "2006",
  ISBN =         "1-4196-4833-0",
  ISBN-13 =      "978-1-4196-4833-5",
  LCCN =         "????",
  bibdate =      "Mon Nov 26 18:37:59 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  price =        "US\$32.99",
  acknowledgement = ack-nhfb,
  remark =       "Book 3 in the Rosetta Stone Series for Computer
                 Programmers and Script-Writers (Rosetta Stone)",
}


bibtype: book
filename: unix.bib
label: Smith:2006:HUU
author: Larry L. Smith
title: How To Use the UNIX-LINUX pgm vi Text Editor: Tips, Tricks, and Techniques (And Tutorials Too!)
publisher: BookSurge Publishing
address: Charleston, SC, USA
pages: 56
year: 2006
ISBN: 1-4196-4834-9 OR 1419648349
ISBN13: 978-1-4196-4834-2 OR 9781419648342
bibdate: Mon Nov 17 13:51:08 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2008.11.17 13:51:08 ???
acknowledgement: ack-nhfb
rawauthor: Larry L. Smith
rawtitle:
How To Use the {UNIX-LINUX} {\pgm{vi}} Text Editor: Tips, Tricks, and Techniques (And Tutorials Too!)

entry:
@Book{Smith:2006:HUU,
  author =       "Larry L. Smith",
  title =        "How To Use the {UNIX-LINUX} {\pgm{vi}} Text Editor:
                 Tips, Tricks, and Techniques (And Tutorials Too!)",
  publisher =    "BookSurge Publishing",
  address =      "Charleston, SC, USA",
  pages =        "56",
  year =         "2006",
  ISBN =         "1-4196-4834-9",
  ISBN-13 =      "978-1-4196-4834-2",
  LCCN =         "????",
  bibdate =      "Mon Nov 17 13:51:08 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: Smith:2006:KSK
author: Larry L. Smith
title: Korn Shell / pgm ksh: Essential Programs for Your Survival at Work
publisher: BookSurge Publishing
address: Charleston, SC, USA
pages: 588
year: 2006
ISBN: 1-4196-4831-4 OR 1419648314
ISBN13: 978-1-4196-4831-1 OR 9781419648311
bibdate: Mon Nov 17 13:51:08 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2008.11.17 13:51:08 ???
remark: Book 1 in the Rosetta Stone Series for Computer Programmers and Script-Writers.
acknowledgement: ack-nhfb
rawauthor: Larry L. Smith
rawtitle: {Korn} Shell / {\pgm{ksh}}: Essential Programs for Your Survival at Work
entry:
@Book{Smith:2006:KSK,
  author =       "Larry L. Smith",
  title =        "{Korn} Shell / {\pgm{ksh}}: Essential Programs for
                 Your Survival at Work",
  publisher =    "BookSurge Publishing",
  address =      "Charleston, SC, USA",
  pages =        "588",
  year =         "2006",
  ISBN =         "1-4196-4831-4",
  ISBN-13 =      "978-1-4196-4831-1",
  LCCN =         "????",
  bibdate =      "Mon Nov 17 13:51:08 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  remark =       "Book 1 in the Rosetta Stone Series for Computer
                 Programmers and Script-Writers.",
}


bibtype: book
filename: unix.bib
label: Sobell:2006:PGR
author: Mark G. Sobell
title: A practical guide to Red Hat Linux: Fedora Core and Red Hat Enterprise Linux
publisher: pub-PH
address: pub-PH:adr
edition: Third
pages: 1168 (est.)
year: 2006
ISBN: 0-13-228027-2 (paperback) OR 0132280272 (paperback)
ISBN13: 978-0-13-228027-3 (paperback) OR 9780132280273 (paperback)
LCCN: QA76.76.O63 S59485 2006
bibdate: Tue Jun 20 17:36:11 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.06.20 17:36:11 MDT
note: Includes DVD.
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Mark G. Sobell
rawnote: Includes DVD.
rawtitle: A practical guide to {Red Hat Linux}: {Fedora Core} and {Red Hat Enterprise Linux}
URL:
http://vig.prenhall.com/catalog/academic/product/0,1144,0132280272,00.html; http://www.loc.gov/catdir/toc/ecip0613/2006014003.html

entry:
@Book{Sobell:2006:PGR,
  author =       "Mark G. Sobell",
  title =        "A practical guide to {Red Hat Linux}: {Fedora Core}
                 and {Red Hat Enterprise Linux}",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  edition =      "Third",
  pages =        "1168 (est.)",
  year =         "2006",
  ISBN =         "0-13-228027-2 (paperback)",
  ISBN-13 =      "978-0-13-228027-3 (paperback)",
  LCCN =         "QA76.76.O63 S59485 2006",
  bibdate =      "Tue Jun 20 17:36:11 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  note =         "Includes DVD.",
  URL =          "http://vig.prenhall.com/catalog/academic/product/0,1144,0132280272,00.html;
                 http://www.loc.gov/catdir/toc/ecip0613/2006014003.html",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Sobell:2006:PGU
author: Mark G. Sobell and Peter Seebach
title: A practical guide to Unix for Mac OS X users
publisher: pub-PH
address: pub-PH:adr
pages: xxxix + 999
year: 2006
ISBN: 0-13-186333-9 (paperback) OR 0131863339 (paperback)
ISBN13: 978-0-13-186333-0 OR 9780131863330
LCCN: QA76.76.O63 S597 2006
bibdate: Tue May 27 13:07:39 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2008.05.27 13:07:39 MDT
subject: UNIX (Computer file); Mac OS; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Mark G. Sobell and Peter Seebach
rawtitle: A practical guide to {Unix} for {Mac OS X} users
entry:
@Book{Sobell:2006:PGU,
  author =       "Mark G. Sobell and Peter Seebach",
  title =        "A practical guide to {Unix} for {Mac OS X} users",
  publisher =    pub-PH,
  address =      pub-PH:adr,
  pages =        "xxxix + 999",
  year =         "2006",
  ISBN =         "0-13-186333-9 (paperback)",
  ISBN-13 =      "978-0-13-186333-0",
  LCCN =         "QA76.76.O63 S597 2006",
  bibdate =      "Tue May 27 13:07:39 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  acknowledgement = ack-nhfb,
  subject =      "UNIX (Computer file); Mac OS; Operating systems
                 (Computers)",
}


bibtype: book
filename: unix.bib
label: Sprang:2006:XVL
author: Henning Sprang
title: Xen: Virtualisierung unter Linux
publisher: Open Source Press
address: Munchen, Germany
pages: 350
year: 2006
ISBN: 3-937514-29-5 OR 3937514295
ISBN13: 978-3-937514-29-1 OR 9783937514291
bibdate: Sat Oct 14 17:41:07 MDT 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.gbv.de:20011/gvk
bibtimestamp: 2006.10.14 17:41:07 MDT
language: German
acknowledgement: ack-nhfb
rawauthor: Henning Sprang
rawtitle: {Xen: Virtualisierung unter Linux}
entry:
@Book{Sprang:2006:XVL,
  author =       "Henning Sprang",
  title =        "{Xen: Virtualisierung unter Linux}",
  publisher =    "Open Source Press",
  address =      "M{\"u}nchen, Germany",
  pages =        "350",
  year =         "2006",
  ISBN =         "3-937514-29-5",
  ISBN-13 =      "978-3-937514-29-1",
  LCCN =         "????",
  bibdate =      "Sat Oct 14 17:41:07 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.gbv.de:20011/gvk",
  price =        "ca. EUR 39.90, EUR 41.35 (AT)",
  acknowledgement = ack-nhfb,
  language =     "German",
}


bibtype: article
filename: unix.bib
label: Stanik:2006:NML
author: John Stanik
title: News 2.0: The Mobile Linux Challenge; Google not into Googling; Keeping Online Video Legit
journal: j-QUEUE
volume: 4
number: 8
pages: 8--8
month: oct
monthnumber: 10
year: 2006
CODEN: AQCUAE
ISSN: 1542-7730 (print), 1542-7749 (electronic) OR 15427730 (print), 15427749 (electronic)
ISSNL: 1542-7730 OR 15427730
bibdate: Wed Oct 11 07:01:51 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.10.11 07:01:51 MDT
fjournal: ACM Queue: Tomorrow's Computing Today
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J882
rawauthor: John Stanik
rawtitle: News 2.0: The Mobile {Linux} Challenge; {Google} not into Googling; Keeping Online Video Legit
entry:
@Article{Stanik:2006:NML,
  author =       "John Stanik",
  title =        "News 2.0: The Mobile {Linux} Challenge; {Google} not
                 into Googling; Keeping Online Video Legit",
  journal =      j-QUEUE,
  volume =       "4",
  number =       "8",
  pages =        "8--8",
  month =        oct,
  year =         "2006",
  CODEN =        "AQCUAE",
  ISSN =         "1542-7730 (print), 1542-7749 (electronic)",
  ISSN-L =       "1542-7730",
  bibdate =      "Wed Oct 11 07:01:51 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Queue: Tomorrow's Computing Today",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J882",
}


bibtype: article
filename: unix.bib
label: Tanenbaum:2006:FSD
author: Andrew S. Tanenbaum and Jorrit N. Herder and Herbert Bos
title: File size distribution on UNIX systems: then and now
journal: j-OPER-SYS-REV
volume: 40
number: 1
pages: 100--104
month: jan
monthnumber: 1
year: 2006
CODEN: OSRED8
ISSN: 0163-5980 (print), 1943-586X (electronic) OR 01635980 (print), 1943586X (electronic)
ISSNL: 0163-5980 OR 01635980
bibdate: Sat Aug 26 08:55:38 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.26 08:55:38 MDT
fjournal: ACM SIGOPS Operating Systems Review
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J597
rawauthor: Andrew S. Tanenbaum and Jorrit N. Herder and Herbert Bos
rawtitle: File size distribution on {UNIX} systems: then and now
entry:
@Article{Tanenbaum:2006:FSD,
  author =       "Andrew S. Tanenbaum and Jorrit N. Herder and Herbert
                 Bos",
  title =        "File size distribution on {UNIX} systems: then and
                 now",
  journal =      j-OPER-SYS-REV,
  volume =       "40",
  number =       "1",
  pages =        "100--104",
  month =        jan,
  year =         "2006",
  CODEN =        "OSRED8",
  ISSN =         "0163-5980 (print), 1943-586X (electronic)",
  ISSN-L =       "0163-5980",
  bibdate =      "Sat Aug 26 08:55:38 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGOPS Operating Systems Review",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J597",
}


bibtype: book
filename: unix.bib
label: Tanenbaum:2006:OSD
author: Andrew S. Tanenbaum and Albert S. Woodhull
title: Operating systems: design and implementation
publisher: pub-PEARSON-PH
address: pub-PEARSON-PH:adr
edition: Third
pages: xvii + 1054
year: 2006
ISBN: 0-13-142938-8 OR 0131429388
ISBN13: 978-0-13-142938-3 OR 9780131429383
LCCN: QA76.76.O63 T36 2006
bibdate: Wed Apr 12 05:42:39 MDT 2006
bibtimestamp: 2006.04.12 05:42:39 MDT
keywords: MINIX 3
subject: Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Andrew S. Tanenbaum and Albert S. Woodhull
rawtitle: Operating systems: design and implementation
bibsource:
https://www.math.utah.edu/pub/tex/bib/minix.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager

TOC:
Chapter 1 introduction 1.1 What is an operating system? 1.2 History of operating systems 1.3 Operating system concepts 1.4 System calls 1.5 Operating system structure 1.6 Outline of the rest of this book 1.7 Summary Chapter 2 Processes 2.1 Introduction to processes 2.2 Interprocess communication 2.3 Classical IPC problems 2.4 Scheduling 2.5 Overview of processes in Minix 3 2.6 Implementation of processes in Minix 3 2.7 The system task in Minix 3 2.8 The clock task in Minix 3 2.9 Summary Chapter 3 input/output 3.1 Principles of I/O hardware 3.2 Principles of I/O software 3.3 Deadlocks 3.4 Overview of I/O in Minix 3 3.5 Block devices in Minix 3 3.6 RAM disks 3.7 Disks 3.8 Terminals 3.9 Summary Chapter 4 memory management 4.1 Basic memory management 4.2 Swapping 4.3 Virtual memory 4.4 Page replacement algorithms 4.5 Design issues for paging systems 4.6 Segmentation 4.7 Overview of the Minix 3 process manager 4.8 Implementation of the Minix 3 process manager 4.9 Summary Chapter 5 file systems 5.1 Files 5.2 Directories 5.3 File system implementation 5.4 Security 5.5 Protection mechanisms 5.6 Overview of the Minix 3 file system 5.7 Implementation of the Minix 3 file system 5.8 Summary Chapter 6 Reading list and bibliography 6.1 Suggestions for further reading 6.2 Alphabetical bibliography Appendix A - Installing Minix 3 Appendix B - Minix 3 source code listing Appendix C - Index to files Index

rawTOC:
Chapter 1 introduction \\ 1.1 What is an operating system? \\ 1.2 History of operating systems \\ 1.3 Operating system concepts \\ 1.4 System calls \\ 1.5 Operating system structure \\ 1.6 Outline of the rest of this book \\ 1.7 Summary \\ Chapter 2 Processes \\ 2.1 Introduction to processes \\ 2.2 Interprocess communication \\ 2.3 Classical IPC problems \\ 2.4 Scheduling \\ 2.5 Overview of processes in Minix 3 \\ 2.6 Implementation of processes in Minix 3 \\ 2.7 The system task in Minix 3 \\ 2.8 The clock task in Minix 3 \\ 2.9 Summary \\ Chapter 3 input/output \\ 3.1 Principles of I/O hardware \\ 3.2 Principles of I/O software \\ 3.3 Deadlocks \\ 3.4 Overview of I/O in Minix 3 \\ 3.5 Block devices in Minix 3 \\ 3.6 RAM disks \\ 3.7 Disks \\ 3.8 Terminals \\ 3.9 Summary \\ Chapter 4 memory management \\ 4.1 Basic memory management \\ 4.2 Swapping \\ 4.3 Virtual memory \\ 4.4 Page replacement algorithms \\ 4.5 Design issues for paging systems \\ 4.6 Segmentation \\ 4.7 Overview of the Minix 3 process manager \\ 4.8 Implementation of the Minix 3 process manager \\ 4.9 Summary \\ Chapter 5 file systems \\ 5.1 Files \\ 5.2 Directories \\ 5.3 File system implementation \\ 5.4 Security \\ 5.5 Protection mechanisms \\ 5.6 Overview of the Minix 3 file system \\ 5.7 Implementation of the Minix 3 file system \\ 5.8 Summary \\ Chapter 6 Reading list and bibliography \\ 6.1 Suggestions for further reading \\ 6.2 Alphabetical bibliography \\ Appendix A - Installing Minix 3 \\ Appendix B - Minix 3 source code listing \\ Appendix C - Index to files \\ Index

entry:
@Book{Tanenbaum:2006:OSD,
  author =       "Andrew S. Tanenbaum and Albert S. Woodhull",
  title =        "Operating systems: design and implementation",
  publisher =    pub-PEARSON-PH,
  address =      pub-PEARSON-PH:adr,
  edition =      "Third",
  pages =        "xvii + 1054",
  year =         "2006",
  ISBN =         "0-13-142938-8",
  ISBN-13 =      "978-0-13-142938-3",
  LCCN =         "QA76.76.O63 T36 2006",
  bibdate =      "Wed Apr 12 05:42:39 MDT 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/minix.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  acknowledgement = ack-nhfb,
  keywords =     "MINIX 3",
  subject =      "Operating systems (Computers)",
  tableofcontents = "Chapter 1 introduction \\
                 1.1 What is an operating system? \\
                 1.2 History of operating systems \\
                 1.3 Operating system concepts \\
                 1.4 System calls \\
                 1.5 Operating system structure \\
                 1.6 Outline of the rest of this book \\
                 1.7 Summary \\
                 Chapter 2 Processes \\
                 2.1 Introduction to processes \\
                 2.2 Interprocess communication \\
                 2.3 Classical IPC problems \\
                 2.4 Scheduling \\
                 2.5 Overview of processes in Minix 3 \\
                 2.6 Implementation of processes in Minix 3 \\
                 2.7 The system task in Minix 3 \\
                 2.8 The clock task in Minix 3 \\
                 2.9 Summary \\
                 Chapter 3 input/output \\
                 3.1 Principles of I/O hardware \\
                 3.2 Principles of I/O software \\
                 3.3 Deadlocks \\
                 3.4 Overview of I/O in Minix 3 \\
                 3.5 Block devices in Minix 3 \\
                 3.6 RAM disks \\
                 3.7 Disks \\
                 3.8 Terminals \\
                 3.9 Summary \\
                 Chapter 4 memory management \\
                 4.1 Basic memory management \\
                 4.2 Swapping \\
                 4.3 Virtual memory \\
                 4.4 Page replacement algorithms \\
                 4.5 Design issues for paging systems \\
                 4.6 Segmentation \\
                 4.7 Overview of the Minix 3 process manager \\
                 4.8 Implementation of the Minix 3 process manager \\
                 4.9 Summary \\
                 Chapter 5 file systems \\
                 5.1 Files \\
                 5.2 Directories \\
                 5.3 File system implementation \\
                 5.4 Security \\
                 5.5 Protection mechanisms \\
                 5.6 Overview of the Minix 3 file system \\
                 5.7 Implementation of the Minix 3 file system \\
                 5.8 Summary \\
                 Chapter 6 Reading list and bibliography \\
                 6.1 Suggestions for further reading \\
                 6.2 Alphabetical bibliography \\
                 Appendix A - Installing Minix 3 \\
                 Appendix B - Minix 3 source code listing \\
                 Appendix C - Index to files \\
                 Index",
}


bibtype: book
filename: unix.bib
label: Taylor:2006:STY
author: Dave Taylor
title: Sams teach yourself Unix in 24 hours
publisher: Sams
address: Indianapolis, Ind.
edition: Fourth
pages: vii + 518
year: 2006
ISBN: 0-672-32814-3 OR 0672328143
ISBN13: 978-0-672-32814-5 OR 9780672328145
LCCN: QA76.76.O63 T3888 2006
bibdate: Thu Sep 17 06:00:51 MDT 2015
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2015.09.17 06:00:51 MDT
URL: http://proquest.safaribooksonline.com/0672328143
subject: UNIX (Computer file); Operating systems (Computers)
acknowledgement: ack-nhfb
authordates: 1962--
rawauthor: Dave Taylor
rawtitle: {Sams} teach yourself {Unix} in 24 hours
TOC:
1. What is this Unix stuff? 2. Getting onto the system and using the command line 3. Moving about the file system 4. Listing files and managing disk usage 5. Ownership and permissions 6. Creating, moving, renaming, and deleting files and directories 7. Looking into files 8. Filters, pipes, and wildcards! 9. Slicing and dicing command-pipe data 10. An introduction to the vi editor 11. Advanced vi tricks, tools, and techniques 12. An overview of the emacs editor 13. Introduction to command shells 14. Advanced shell interaction 15. Job control 16. Shell programming overview 17. Advanced shell script programming 18. Printing in the Unix environment 19. Archives and backups 20. Communicating with email 21. Using telnet, ssh, and ftp 22. Searching for information and files 23. Perl programming in Unix 24. GNOME and the GUI environment Appendixes: A. Command Unix questions and answers B. Working with the Apache Web server

rawTOC:
1. What is this Unix stuff? \\ 2. Getting onto the system and using the command line \\ 3. Moving about the file system \\ 4. Listing files and managing disk usage \\ 5. Ownership and permissions \\ 6. Creating, moving, renaming, and deleting files and directories \\ 7. Looking into files \\ 8. Filters, pipes, and wildcards! \\ 9. Slicing and dicing command-pipe data \\ 10. An introduction to the vi editor \\ 11. Advanced vi tricks, tools, and techniques \\ 12. An overview of the emacs editor \\ 13. Introduction to command shells \\ 14. Advanced shell interaction \\ 15. Job control \\ 16. Shell programming overview \\ 17. Advanced shell script programming \\ 18. Printing in the Unix environment \\ 19. Archives and backups \\ 20. Communicating with email \\ 21. Using telnet, ssh, and ftp \\ 22. Searching for information and files \\ 23. Perl programming in Unix \\ 24. GNOME and the GUI environment \\ Appendixes: \\ A. Command Unix questions and answers \\ B. Working with the Apache Web server

entry:
@Book{Taylor:2006:STY,
  author =       "Dave Taylor",
  title =        "{Sams} teach yourself {Unix} in 24 hours",
  publisher =    "Sams",
  address =      "Indianapolis, Ind.",
  edition =      "Fourth",
  pages =        "vii + 518",
  year =         "2006",
  ISBN =         "0-672-32814-3",
  ISBN-13 =      "978-0-672-32814-5",
  LCCN =         "QA76.76.O63 T3888 2006",
  bibdate =      "Thu Sep 17 06:00:51 MDT 2015",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://proquest.safaribooksonline.com/0672328143",
  acknowledgement = ack-nhfb,
  author-dates = "1962--",
  subject =      "UNIX (Computer file); Operating systems (Computers)",
  tableofcontents = "1. What is this Unix stuff? \\
                 2. Getting onto the system and using the command line
                 \\
                 3. Moving about the file system \\
                 4. Listing files and managing disk usage \\
                 5. Ownership and permissions \\
                 6. Creating, moving, renaming, and deleting files and
                 directories \\
                 7. Looking into files \\
                 8. Filters, pipes, and wildcards! \\
                 9. Slicing and dicing command-pipe data \\
                 10. An introduction to the vi editor \\
                 11. Advanced vi tricks, tools, and techniques \\
                 12. An overview of the emacs editor \\
                 13. Introduction to command shells \\
                 14. Advanced shell interaction \\
                 15. Job control \\
                 16. Shell programming overview \\
                 17. Advanced shell script programming \\
                 18. Printing in the Unix environment \\
                 19. Archives and backups \\
                 20. Communicating with email \\
                 21. Using telnet, ssh, and ftp \\
                 22. Searching for information and files \\
                 23. Perl programming in Unix \\
                 24. GNOME and the GUI environment \\
                 Appendixes: \\
                 A. Command Unix questions and answers \\
                 B. Working with the Apache Web server",
}


bibtype: book
filename: unix.bib
label: Thomas:2006:BUL
author: Keir Thomas
title: Beginning Ubuntu Linux: from novice to professional
publisher: pub-APRESS
address: pub-APRESS:adr
pages: xxxii + 573
year: 2006
ISBN: 1-59059-627-7 OR 1590596277
ISBN13: 978-1-59059-627-2 OR 9781590596272
LCCN: QA76.76.O63 T565 2006
bibdate: Mon Oct 29 18:40:51 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2007.10.29 18:40:51 MDT
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Keir Thomas
rawtitle: Beginning {Ubuntu Linux}: from novice to professional
entry:
@Book{Thomas:2006:BUL,
  author =       "Keir Thomas",
  title =        "Beginning {Ubuntu Linux}: from novice to
                 professional",
  publisher =    pub-APRESS,
  address =      pub-APRESS:adr,
  pages =        "xxxii + 573",
  year =         "2006",
  ISBN =         "1-59059-627-7",
  ISBN-13 =      "978-1-59059-627-2",
  LCCN =         "QA76.76.O63 T565 2006",
  bibdate =      "Mon Oct 29 18:40:51 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Thompson:2006:QGM
author: R. Scott Thompson
title: Quartz 2D graphics for Mac OS X developers
publisher: pub-AW
address: pub-AW:adr
pages: xvi + 330
year: 2006
ISBN: 0-321-33663-1 (paperback) OR 0321336631 (paperback)
ISBN13: 978-0-321-33663-7 (paperback) OR 9780321336637 (paperback)
LCCN: T385 .T4953995 2006
bibdate: Mon May 5 12:43:03 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2008.05.05 12:43:03 MDT
URL: http://www.loc.gov/catdir/toc/ecip064/2005034911.html
subject: Computer graphics; Quartz (Electronic resource); Mac OS; Macintosh (Computer); Programming
acknowledgement: ack-nhfb
rawauthor: R. Scott Thompson
rawtitle: {Quartz 2D} graphics for {Mac OS X} developers
TOC:
Getting Started From QuickDraw to Quartz 2D Introduction to Quartz 2D The Graphics Context Transformations Line Art --- Building Paths Line Art --- Drawing Image Basics Importing and Exporting Images Drawing with Core Image Drawing Text with Quartz 2D Drawing Off-Screen Shadings and Patterns Working with PDF

rawTOC:
Getting Started \\ From QuickDraw to Quartz 2D \\ Introduction to Quartz 2D \\ The Graphics Context \\ Transformations \\ Line Art --- Building Paths \\ Line Art --- Drawing \\ Image Basics \\ Importing and Exporting Images \\ Drawing with Core Image \\ Drawing Text with Quartz 2D \\ Drawing Off-Screen \\ Shadings and Patterns \\ Working with PDF

entry:
@Book{Thompson:2006:QGM,
  author =       "R. Scott Thompson",
  title =        "{Quartz 2D} graphics for {Mac OS X} developers",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xvi + 330",
  year =         "2006",
  ISBN =         "0-321-33663-1 (paperback)",
  ISBN-13 =      "978-0-321-33663-7 (paperback)",
  LCCN =         "T385 .T4953995 2006",
  bibdate =      "Mon May 5 12:43:03 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip064/2005034911.html",
  acknowledgement = ack-nhfb,
  subject =      "Computer graphics; Quartz (Electronic resource); Mac
                 OS; Macintosh (Computer); Programming",
  tableofcontents = "Getting Started \\
                 From QuickDraw to Quartz 2D \\
                 Introduction to Quartz 2D \\
                 The Graphics Context \\
                 Transformations \\
                 Line Art --- Building Paths \\
                 Line Art --- Drawing \\
                 Image Basics \\
                 Importing and Exporting Images \\
                 Drawing with Core Image \\
                 Drawing Text with Quartz 2D \\
                 Drawing Off-Screen \\
                 Shadings and Patterns \\
                 Working with PDF",
}


bibtype: book
filename: unix.bib
label: Tiemann:2006:FU
author: Brian Tiemann and Michael C. Urban
title: FreeBSD 6 unleashed
publisher: pub-SAMS
address: pub-SAMS:adr
pages: xxv + 877
year: 2006
ISBN: 0-672-32875-5 OR 0672328755
ISBN13: 978-0-672-32875-6 OR 9780672328756
LCCN: QA76.754 T53 2006
bibdate: Wed Feb 21 14:25:15 MST 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.02.21 14:25:15 MST
remark: DVD includes FreeBSD 6.1.
subject: FreeBSD; Free computer software; Computer networks
acknowledgement: ack-nhfb
rawauthor: Brian Tiemann and Michael C. Urban
rawtitle: {FreeBSD 6} unleashed
entry:
@Book{Tiemann:2006:FU,
  author =       "Brian Tiemann and Michael C. Urban",
  title =        "{FreeBSD 6} unleashed",
  publisher =    pub-SAMS,
  address =      pub-SAMS:adr,
  pages =        "xxv + 877",
  year =         "2006",
  ISBN =         "0-672-32875-5",
  ISBN-13 =      "978-0-672-32875-6",
  LCCN =         "QA76.754 T53 2006",
  bibdate =      "Wed Feb 21 14:25:15 MST 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  acknowledgement = ack-nhfb,
  remark =       "DVD includes FreeBSD 6.1.",
  subject =      "FreeBSD; Free computer software; Computer networks",
}


bibtype: book
filename: unix.bib
label: Toporek:2006:MXT
author: Chuck Toporek and Chris Stone and Jason McIntosh and others
title: Mac OS X Tiger in a nutshell
publisher: pub-ORA
address: pub-ORA:adr
edition: Third
pages: xv + 498
year: 2006
ISBN: 0-596-00943-7 (paperback) OR 0596009437 (paperback)
ISBN13: 978-0-596-00943-4 (paperback) OR 9780596009434 (paperback)
LCCN: QA76.76.O63 M3873 2006
bibdate: Thu Apr 19 18:05:23 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2007.04.19 18:05:23 MDT
subject: Mac OS; Operating systems (Computers); Macintosh (Computer); Programming
acknowledgement: ack-nhfb
rawauthor: Chuck Toporek and Chris Stone and Jason McIntosh and others
rawtitle: {Mac OS X Tiger} in a nutshell
abstract:
Complete overview of Mac OS Jaguar (Mac OS X 10.2) including basic system and network administration features, hundreds of tips and tricks, with an overview of Mac OS X's Unix text editors and CVS.

rawabstract:
Complete overview of Mac OS Jaguar (Mac OS X 10.2) including basic system and network administration features, hundreds of tips and tricks, with an overview of Mac OS X's Unix text editors and CVS.

entry:
@Book{Toporek:2006:MXT,
  author =       "Chuck Toporek and Chris Stone and Jason McIntosh and
                 others",
  title =        "{Mac OS X Tiger} in a nutshell",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  edition =      "Third",
  pages =        "xv + 498",
  year =         "2006",
  ISBN =         "0-596-00943-7 (paperback)",
  ISBN-13 =      "978-0-596-00943-4 (paperback)",
  LCCN =         "QA76.76.O63 M3873 2006",
  bibdate =      "Thu Apr 19 18:05:23 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  abstract =     "Complete overview of Mac OS Jaguar (Mac OS X 10.2)
                 including basic system and network administration
                 features, hundreds of tips and tricks, with an overview
                 of Mac OS X's Unix text editors and CVS.",
  acknowledgement = ack-nhfb,
  subject =      "Mac OS; Operating systems (Computers); Macintosh
                 (Computer); Programming",
}


bibtype: book
filename: unix.bib
label: Tyler:2006:FL
author: Chris Tyler
title: Fedora Linux
publisher: pub-ORA
address: pub-ORA:adr
pages: xiii + 639
year: 2006
ISBN: 0-596-52682-2 OR 0596526822
ISBN13: 978-0-596-52682-5 OR 9780596526825
LCCN: QA76.76.O63; QA76.76.O63 T9 2006eb
bibdate: Tue Aug 5 18:05:03 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 18:05:03 MDT
URL: http://www.oreilly.com/catalog/9780596526825
subject: Linux
acknowledgement: ack-nhfb
rawauthor: Chris Tyler
rawtitle: {Fedora Linux}
entry:
@Book{Tyler:2006:FL,
  author =       "Chris Tyler",
  title =        "{Fedora Linux}",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xiii + 639",
  year =         "2006",
  ISBN =         "0-596-52682-2",
  ISBN-13 =      "978-0-596-52682-5",
  LCCN =         "QA76.76.O63; QA76.76.O63 T9 2006eb",
  bibdate =      "Tue Aug 5 18:05:03 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9780596526825",
  acknowledgement = ack-nhfb,
  subject =      "Linux",
}


bibtype: book
filename: unix.bib
label: Vesperman:2006:EC
author: Jennifer Vesperman
title: Essential CVS
publisher: pub-ORA
address: pub-ORA:adr
edition: Second
pages: 428 (est.)
year: 2006
ISBN: 0-596-52703-9 OR 0596527039
ISBN13: 978-0-596-52703-7 OR 9780596527037
bibdate: Tue Nov 28 14:27:15 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager
bibtimestamp: 2006.11.28 14:27:15 ???
subject: CVS; Computer software; Development; Database management
acknowledgement: ack-nhfb
rawauthor: Jennifer Vesperman
rawtitle: Essential {CVS}
entry:
@Book{Vesperman:2006:EC,
  author =       "Jennifer Vesperman",
  title =        "Essential {CVS}",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  edition =      "Second",
  pages =        "428 (est.)",
  year =         "2006",
  ISBN =         "0-596-52703-9",
  ISBN-13 =      "978-0-596-52703-7",
  LCCN =         "????",
  bibdate =      "Tue Nov 28 14:27:15 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  acknowledgement = ack-nhfb,
  subject =      "CVS; Computer software; Development; Database
                 management",
}


bibtype: book
filename: unix.bib
label: vonHagen:2006:DGG
author: William von Hagen and Kurt Wall
title: The Definitive Guide to GCC
publisher: pub-APRESS
address: pub-APRESS:adr
edition: Second
pages: 584 (est.)
year: 2006
ISBN: 1-59059-585-8 OR 1590595858
ISBN13: 978-1-59059-585-5 OR 9781590595855
bibdate: Tue Nov 28 14:36:01 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.11.28 14:36:01 ???
acknowledgement: ack-nhfb
rawauthor: William von Hagen and Kurt Wall
rawtitle: The Definitive Guide to {GCC}
entry:
@Book{vonHagen:2006:DGG,
  author =       "William von Hagen and Kurt Wall",
  title =        "The Definitive Guide to {GCC}",
  publisher =    pub-APRESS,
  address =      pub-APRESS:adr,
  edition =      "Second",
  pages =        "584 (est.)",
  year =         "2006",
  ISBN =         "1-59059-585-8",
  ISBN-13 =      "978-1-59059-585-5",
  LCCN =         "????",
  bibdate =      "Tue Nov 28 14:36:01 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib",
  acknowledgement = ack-nhfb,
}


bibtype: book
filename: unix.bib
label: VonHagen:2006:LSH
author: William Von Hagen and Brian K. (Brian Kenneth) Jones
title: Linux server hacks. Vol. 2
publisher: pub-ORA
address: pub-ORA:adr
pages: xx + 456
year: 2006
ISBN: 0-596-10082-5 OR 0596100825
ISBN13: 978-0-596-10082-7 OR 9780596100827
LCCN: QA76.76.O63; QA76.76.O63eb
bibdate: Tue Aug 5 17:49:03 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 17:49:03 MDT
URL: http://www.oreilly.com/catalog/9780596100827
remark: Tips and tools for connecting, monitoring, and troubleshooting.
subject: Linux; Client/server computing; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: William {Von Hagen} and Brian K. (Brian Kenneth) Jones
rawtitle: {Linux} server hacks. Vol. 2
entry:
@Book{VonHagen:2006:LSH,
  author =       "William {Von Hagen} and Brian K. (Brian Kenneth)
                 Jones",
  title =        "{Linux} server hacks. Vol. 2",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xx + 456",
  year =         "2006",
  ISBN =         "0-596-10082-5",
  ISBN-13 =      "978-0-596-10082-7",
  LCCN =         "QA76.76.O63; QA76.76.O63eb",
  bibdate =      "Tue Aug 5 17:49:03 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9780596100827",
  acknowledgement = ack-nhfb,
  remark =       "Tips and tools for connecting, monitoring, and
                 troubleshooting.",
  subject =      "Linux; Client/server computing; Operating systems
                 (Computers)",
}


bibtype: book
filename: unix.bib
label: vonHagen:2006:ULB
author: William von Hagen
title: Ubuntu Linux bible
publisher: pub-WILEY
address: pub-WILEY:adr
pages: xxvi + 904
year: 2006
ISBN: 0-470-03899-3 (paperback) OR 0470038993 (paperback)
ISBN13: 978-0-470-03899-4 (paperback) OR 9780470038994 (paperback)
LCCN: QA76.76.O63 V665 2007
bibdate: Mon Oct 29 18:40:51 MDT 2007
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2007.10.29 18:40:51 MDT
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: William von Hagen
rawtitle: {Ubuntu Linux} bible
entry:
@Book{vonHagen:2006:ULB,
  author =       "William von Hagen",
  title =        "{Ubuntu Linux} bible",
  publisher =    pub-WILEY,
  address =      pub-WILEY:adr,
  pages =        "xxvi + 904",
  year =         "2006",
  ISBN =         "0-470-03899-3 (paperback)",
  ISBN-13 =      "978-0-470-03899-4 (paperback)",
  LCCN =         "QA76.76.O63 V665 2007",
  bibdate =      "Mon Oct 29 18:40:51 MDT 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: book
filename: unix.bib
label: Wilding:2006:SSL
author: Mark Wilding and Dan Behman
title: Self-service Linux: mastering the art of problem determination
publisher: pub-PHPTR
address: pub-PHPTR:adr
pages: xxii + 431
year: 2006
ISBN: 0-13-147751-X OR 013147751X
ISBN13: 978-0-13-147751-3 OR 9780131477513
LCCN: QA76.76.O63 W52 2006
bibdate: Wed Nov 15 08:21:52 MST 2006
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; open
bibtimestamp: 2006.11.15 08:21:52 MST
series: Bruce Perens' Open Source series
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Mark Wilding and Dan Behman
rawtitle: Self-service {Linux}: mastering the art of problem determination
entry:
@Book{Wilding:2006:SSL,
  author =       "Mark Wilding and Dan Behman",
  title =        "Self-service {Linux}: mastering the art of problem
                 determination",
  publisher =    pub-PHPTR,
  address =      pub-PHPTR:adr,
  pages =        "xxii + 431",
  year =         "2006",
  ISBN =         "0-13-147751-X",
  ISBN-13 =      "978-0-13-147751-3",
  LCCN =         "QA76.76.O63 W52 2006",
  bibdate =      "Wed Nov 15 08:21:52 MST 2006",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib; open",
  series =       "Bruce Perens' Open Source series",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
}


bibtype: article
filename: unix.bib
label: Wright:2006:VUS
title: Versatility and Unix semantics in namespace unification
journal: j-TOS
volume: 2
number: 1
pages: 74--105
month: feb
monthnumber: 2
year: 2006
DOI: https://doi.org/10.1145/1138041.1138045
ISSN: 1553-3077 (print), 1553-3093 (electronic) OR 15533077 (print), 15533093 (electronic)
ISSNL: 1553-3077 OR 15533077
bibdate: Wed Aug 23 05:41:22 MDT 2006
bibsource: http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/unix.bib
bibtimestamp: 2006.08.23 05:41:22 MDT
fjournal: ACM Transactions on Storage
acknowledgement: ack-nhfb
journalURL: http://portal.acm.org/browse_dl.cfm?idx=J960
rawtitle: Versatility and {Unix} semantics in namespace unification
author:
Charles P. Wright and Jay Dave and Puja Gupta and Harikesavan Krishnan and David P. Quigley and Erez Zadok and Mohammad Nayyer Zubair

abstract:
Administrators often prefer to keep related sets of files in different locations or media, as it is easier to maintain them separately. Users, however, prefer to see all files in one location for convenience. One solution that accommodates both needs is virtual namespace unification---providing a merged view of several directories without physically merging them. For example, namespace unification can merge the contents of several CD-ROM images without unpacking them, merge binary directories from different packages, merge views from several file servers, and more. Namespace unification can also enable snapshotting by marking some data sources read-only and then utilizing copy-on-write for the read-only sources. For example, an OS image may be contained on a read-only CD-ROM image---and the user's configuration, data, and programs could be stored in a separate read-write directory. With copy-on-write unification, the user need not be concerned about the two disparate file systems. It is difficult to maintain Unix semantics while offering a versatile namespace unification system. Past efforts to provide such unification often compromised on the set of features provided or Unix compatibility---resulting in an incomplete solution that users could not use. We designed and implemented a versatile namespace unification system called Unionfs. Unionfs maintains Unix semantics while offering advanced namespace unification features: dynamic insertion and removal of namespaces at any point in the merged view, mixing read-only and read-write components, efficient in-kernel duplicate elimination, NFS interoperability, and more. Since releasing our Linux implementation, it has been used by thousands of users and over a dozen Linux distributions, which helped us discover and solve many practical problems.

rawabstract:
Administrators often prefer to keep related sets of files in different locations or media, as it is easier to maintain them separately. Users, however, prefer to see all files in one location for convenience. One solution that accommodates both needs is virtual namespace unification---providing a merged view of several directories without physically merging them. For example, namespace unification can merge the contents of several CD-ROM images without unpacking them, merge binary directories from different packages, merge views from several file servers, and more. Namespace unification can also enable snapshotting by marking some data sources read-only and then utilizing copy-on-write for the read-only sources. For example, an OS image may be contained on a read-only CD-ROM image---and the user's configuration, data, and programs could be stored in a separate read-write directory. With copy-on-write unification, the user need not be concerned about the two disparate file systems. It is difficult to maintain Unix semantics while offering a versatile namespace unification system. Past efforts to provide such unification often compromised on the set of features provided or Unix compatibility---resulting in an incomplete solution that users could not use. We designed and implemented a versatile namespace unification system called Unionfs. Unionfs maintains Unix semantics while offering advanced namespace unification features: dynamic insertion and removal of namespaces at any point in the merged view, mixing read-only and read-write components, efficient in-kernel duplicate elimination, NFS interoperability, and more. Since releasing our Linux implementation, it has been used by thousands of users and over a dozen Linux distributions, which helped us discover and solve many practical problems.

rawauthor:
Charles P. Wright and Jay Dave and Puja Gupta and Harikesavan Krishnan and David P. Quigley and Erez Zadok and Mohammad Nayyer Zubair

entry:
@Article{Wright:2006:VUS,
  author =       "Charles P. Wright and Jay Dave and Puja Gupta and
                 Harikesavan Krishnan and David P. Quigley and Erez
                 Zadok and Mohammad Nayyer Zubair",
  title =        "Versatility and {Unix} semantics in namespace
                 unification",
  journal =      j-TOS,
  volume =       "2",
  number =       "1",
  pages =        "74--105",
  month =        feb,
  year =         "2006",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1145/1138041.1138045",
  ISSN =         "1553-3077 (print), 1553-3093 (electronic)",
  ISSN-L =       "1553-3077",
  bibdate =      "Wed Aug 23 05:41:22 MDT 2006",
  bibsource =    "http://portal.acm.org/;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib",
  abstract =     "Administrators often prefer to keep related sets of
                 files in different locations or media, as it is easier
                 to maintain them separately. Users, however, prefer to
                 see all files in one location for convenience. One
                 solution that accommodates both needs is virtual
                 namespace unification---providing a merged view of
                 several directories without physically merging them.
                 For example, namespace unification can merge the
                 contents of several CD-ROM images without unpacking
                 them, merge binary directories from different packages,
                 merge views from several file servers, and more.
                 Namespace unification can also enable snapshotting by
                 marking some data sources read-only and then utilizing
                 copy-on-write for the read-only sources. For example,
                 an OS image may be contained on a read-only CD-ROM
                 image---and the user's configuration, data, and
                 programs could be stored in a separate read-write
                 directory. With copy-on-write unification, the user
                 need not be concerned about the two disparate file
                 systems. It is difficult to maintain Unix semantics
                 while offering a versatile namespace unification
                 system. Past efforts to provide such unification often
                 compromised on the set of features provided or Unix
                 compatibility---resulting in an incomplete solution
                 that users could not use. We designed and implemented a
                 versatile namespace unification system called Unionfs.
                 Unionfs maintains Unix semantics while offering
                 advanced namespace unification features: dynamic
                 insertion and removal of namespaces at any point in the
                 merged view, mixing read-only and read-write
                 components, efficient in-kernel duplicate elimination,
                 NFS interoperability, and more. Since releasing our
                 Linux implementation, it has been used by thousands of
                 users and over a dozen Linux distributions, which
                 helped us discover and solve many practical problems.",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Transactions on Storage",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J960",
}


bibtype: article
filename: unix.bib
label: Yu:2006:MKO
author: Liguo Yu and Stephen R. Schach and Kai Chen and Gillian Z. Heller and Jeff Offutt
journal: j-J-SYST-SOFTW
volume: 79
number: 6
pages: 807--815
month: jun
monthnumber: 6
year: 2006
CODEN: JSSODM
ISSN: 0164-1212 (print), 1873-1228 (electronic) OR 01641212 (print), 18731228 (electronic)
ISSNL: 0164-1212 OR 01641212
bibdate: Tue Sep 7 07:27:01 MDT 2010
bibtimestamp: 2010.09.07 07:27:01 MDT
fjournal: The Journal of systems and software
acknowledgement: ack-nhfb
journalURL: http://www.sciencedirect.com/science/journal/01641212
rawauthor: Liguo Yu and Stephen R. Schach and Kai Chen and Gillian Z. Heller and Jeff Offutt
title:
Maintainability of the kernels of open-source operating systems: a comparison of Linux with FreeBSD, NetBSD, and OpenBSD

rawtitle:
Maintainability of the kernels of open-source operating systems: a comparison of {Linux} with {FreeBSD}, {NetBSD}, and {OpenBSD}

entry:
@Article{Yu:2006:MKO,
  author =       "Liguo Yu and Stephen R. Schach and Kai Chen and
                 Gillian Z. Heller and Jeff Offutt",
  title =        "Maintainability of the kernels of open-source
                 operating systems: a comparison of {Linux} with
                 {FreeBSD}, {NetBSD}, and {OpenBSD}",
  journal =      j-J-SYST-SOFTW,
  volume =       "79",
  number =       "6",
  pages =        "807--815",
  month =        jun,
  year =         "2006",
  CODEN =        "JSSODM",
  ISSN =         "0164-1212 (print), 1873-1228 (electronic)",
  ISSN-L =       "0164-1212",
  bibdate =      "Tue Sep 7 07:27:01 MDT 2010",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 http://www.sciencedirect.com/science/journal/01641212",
  acknowledgement = ack-nhfb,
  fjournal =     "The Journal of systems and software",
  journal-URL =  "http://www.sciencedirect.com/science/journal/01641212",
}


bibtype: book
filename: unix.bib
label: Adelstein:2007:LSA
author: Tom Adelstein and Falko Timme
title: Linux system administration
publisher: pub-ORA
address: pub-ORA:adr
pages: xiii + 279
year: 2007
ISBN: 0-596-00952-6 (paperback) OR 0596009526 (paperback)
ISBN13: 978-0-596-00952-6 (paperback) OR 9780596009526 (paperback)
LCCN: QA76.76.O63; QA76.76.O63 A34 2007eb
bibdate: Tue Aug 5 17:46:26 MDT 2008
bibsource: https://www.math.utah.edu/pub/tex/bib/unix.bib; melvyl.cdlib.org:210/CDL90
bibtimestamp: 2008.08.05 17:46:26 MDT
URL: http://www.oreilly.com/catalog/9780596009526
subject: Linux; Operating systems (Computers)
acknowledgement: ack-nhfb
rawauthor: Tom Adelstein and Falko Timme
rawtitle: {Linux} system administration
entry:
@Book{Adelstein:2007:LSA,
  author =       "Tom Adelstein and Falko Timme",
  title =        "{Linux} system administration",
  publisher =    pub-ORA,
  address =      pub-ORA:adr,
  pages =        "xiii + 279",
  year =         "2007",
  ISBN =         "0-596-00952-6 (paperback)",
  ISBN-13 =      "978-0-596-00952-6 (paperback)",
  LCCN =         "QA76.76.O63; QA76.76.O63 A34 2007eb",
  bibdate =      "Tue Aug 5 17:46:26 MDT 2008",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 melvyl.cdlib.org:210/CDL90",
  URL =          "http://www.oreilly.com/catalog/9780596009526",
  acknowledgement = ack-nhfb,
  subject =      "Linux; Operating systems (Computers)",
  xxauthor =     "Tom Adelstein and Bill Lubanovic",
}


bibtype: book
filename: unix.bib
label: Aho:2007:CPT
editor: Alfred V. Aho and Monica S. Lam and Ravi Sethi and Jeffrey D. Ullman
title: Compilers: Principles, Techniques, and Tools
publisher: Pearson/Addison Wesley
address: Boston, MA, USA
edition: Second
pages: xxiv + 1009
year: 2007
LCCN: QA76.76.C65 A37 2007
bibdate: Tue Jan 30 16:21:16 MST 2007
bibtimestamp: 2007.01.30 16:21:16 MST
URL: http://www.loc.gov/catdir/toc/ecip0618/2006024333.html
subject: Compilers (Computer programs)
acknowledgement: ack-nhfb
raweditor: Alfred V. Aho and Monica S. Lam and Ravi Sethi and Jeffrey D. Ullman
rawtitle: Compilers: Principles, Techniques, and Tools
ISBN:
0-321-48681-1 (hardcover), 0-321-49169-6 (paperback) OR 0321486811 (hardcover), 0321491696 (paperback)

ISBN13:
978-0-321-48681-3 (hardcover), 978-0-321-49169-5 (paperback) OR 9780321486813 (hardcover), 9780321491695 (paperback)

bibsource:
https://www.math.utah.edu/pub/tex/bib/master.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib; z3950.loc.gov:7090/Voyager

abstract:
This new edition of the classic `Dragon' book has been completely revised to include the most recent developments to compiling. The book provides a thorough introduction to compiler design and continues to emphasize the applicability of compiler technology to a broad range of problems in software design and development. The first half of the book is designed for use in an undergraduate compilers course while the second half can be used in a graduate course stressing code optimization.

remark:
Revised edition of cite Aho:1986:CPC. This is commonly called the ``purple dragon'' book, after its colorful cover design.

TOC:
1: Introduction / 1 1.1 Language Processors / 1 1.1.1 Exercises for Section 1.1 / 3 1.2 The Structure of a Compiler / 4 1.2.1 Lexical Analysis / 5 1.2.2 Syntax Analysis / 8 1.2.3 Semantic Analysis / 8 1.2.4 Intermediate Code Generation / 9 1.2.5 Code Optimization / 10 1.2.6 Code Generation / 10 1.2.7 Symbol-Table Management / 11 1.2.8 The Grouping of Phases into Passes / 11 1.2.9 Compiler-Construction Tools / 12 1.3 The Evolution of Programming Languages / 12 1.3.1 The Move to Higher-level Languages / 13 1.3.2 Impacts on Compilers / 14 1.3.3 Exercises for Section 1.3 / 14 1.4 The Science of Building a Compiler / 15 1.4.1 Modeling in Compiler Design and Implementation / 15 1.4.2 The Science of Code Optimization / 15 1.5 Applications of Compiler Technology / 17 1.5.1 Implementation of High-Level Programming Languages / 17 1.5.2 Optimizations for Computer Architectures / 19 1.5.3 Design of New Computer Architectures / 21 1.5.4 Program Translations / 22 1.5.5 Software Productivity Tools / 23 1.6 Programming Language Basics / 25 1.6.1 The Static/Dynamic Distinction / 25 1.6.2 Environments and States / 26 1.6.3 Static Scope and Block Structure / 28 1.6.4 Explicit Access Control / 31 1.6.5 Dynamic Scope / 31 1.6.6 Parameter Passing Mechanisms / 33 1.6.7 Aliasing / 35 1.6.8 Exercises for Section 1.6 / 35 1.7 Summary of Chapter 1 / 36 1.8 References for Chapter 1 / 38 2: A Simple Syntax-Directed Translator / 39 2.1 Introduction / 40 2.2 Syntax Definition / 42 2.2.1 Definition of Grammars / 42 2.2.2 Derivations / 44 2.2.3 Parse Trees / 45 2.2.4 Ambiguity / 47 2.2.5 Associativity of Operators / 48 2.2.6 Precedence of Operators / 48 2.2.7 Exercises for Section 2.2 / 51 2.3 Syntax-Directed Translation / 52 2.3.1 Postfix Notation / 53 2.3.2 Synthesized Attributes / 54 2.3.3 Simple Syntax-Directed Definitions / 56 2.3.4 Tree Traversals / 56 2.3.5 Translation Schemes / 57 2.3.6 Exercises for Section 2.3 / 60 2.4 Parsing / 60 2.4.1 Top-Down Parsing / 61 2.4.2 Predictive Parsing / 64 2.4.3 When to Use $epsilon $-Productions / 65 2.4.4 Designing a Predictive Parser / 66 2.4.5 Left Recursion / 67 2.4.6 Exercises for Section 2.4 / 68 2.5 A Translator for Simple Expressions / 68 2.5.1 Abstract and Concrete Syntax / 69 2.5.2 Adapting the Translation Scheme / 70 2.5.3 Procedures for the Nonterminals / 72 2.5.4 Simplifying the Translator / 73 2.5.5 The Complete Program / 74 2.6 Lexical Analysis / 76 2.6.1 Removal of White Space and Comments / 77 2.6.2 Reading Ahead / 78 2.6.3 Constants / 78 2.6.4 Recognizing Keywords and Identifiers / 79 2.6.5 A Lexical Analyzer / 81 2.6.6 Exercises for Section 2.6 / 84 2.7 Symbol Tables / 85 2.7.1 Symbol Table Per Scope / 86 2.7.2 The Use of Symbol Tables / 89 2.8 Intermediate Code Generation / 91 2.8.1 Two Kinds of Intermediate Representations / 91 2.8.2 Construction of Syntax Trees / 92 2.8.3 Static Checking / 97 2.8.4 Three-Address Code / 99 2.8.5 Exercises for Section 2.8 / 105 2.9 Summary of Chapter 2 / 105 3: Lexical Analysis / 109 3.1 The Role of the Lexical Analyzer / 109 3.1.1 Lexical Analysis Versus Parsing / 110 3.1.2 Tokens, Patterns, and Lexemes / 111 3.1.3 Attributes for Tokens / 112 3.1.4 Lexical Errors / 113 3.1.5 Exercises for Section 3.1 / 114 3.2 Input Buffering / 115 3.2.1 Buffer Pairs / 115 3.2.2 Sentinels / 116 3.3 Specification of Tokens / 116 3.3.1 Strings and Languages / 117 3.3.2 Operations on Languages / 119 3.3.3 Regular Expressions / 120 3.3.4 Regular Definitions / 123 3.3.5 Extensions of Regular Expressions / 124 3.3.6 Exercises for Section 3.3 / 125 3.4 Recognition of Tokens / 128 3.4.1 Transition Diagrams / 130 3.4.2 Recognition of Reserved Words and Identifiers / 132 3.4.3 Completion of the Running Example / 133 3.4.4 Architecture of a Transition-Diagram-Based Lexical Analyzer / 134 3.4.5 Exercises for Section 3.4 / 136 3.5 The Lexical-Analyzer Generator Lex / 140 3.5.1 Use of Lex / 140 3.5.2 Structure of Lex Programs / 141 3.5.3 Conflict Resolution in Lex / 144 3.5.4 The Lookahead Operator / 144 3.5.5 Exercises for Section 3.5 / 146 3.6 Finite Automata / 147 3.6.1 Nondeterministic Finite Automata / 147 3.6.2 Transition Tables / 148 3.6.3 Acceptance of Input Strings by Automata / 149 3.6.4 Deterministic Finite Automata / 149 3.6.5 Exercises for Section 3.6 / 151 3.7 From Regular Expressions to Automata / 152 3.7.1 Conversion of an NFA to a DFA / 152 3.7.2 Simulation of an NFA / 156 3.7.3 Efficiency of NFA Simulation / 157 3.7.4 Construction of an NFA from a Regular Expression / 159 3.7.5 Efficiency of String-Processing Algorithms / 163 3.7.6 Exercises for Section 3.7 / 166 3.8 Design of a Lexical-Analyzer Generator / 166 3.8.1 The Structure of the Generated Analyzer / 167 3.8.2 Pattern Matching Based on NFA's / 168 3.8.3 DFA's for Lexical Analyzers / 170 3.8.4 Implementing the Lookahead Operator / 171 3.8.5 Exercises for Section 3.8 / 172 3.9 Optimization of DFA-Based Pattern Matchers / 173 3.9.1 Important States of an NFA / 173 3.9.2 Functions Computed From the Syntax Tree / 175 3.9.3 Computing em nullable, em firstpos, and em lastpos / 176 3.9.4 Computing em followpos / 177 3.9.5 Converting a Regular Expression Directly to a DFA / 179 3.9.6 Minimizing the Number of States of a DFA / 180 3.9.7 State Minimization in Lexical Analyzers / 184 3.9.8 Trading Time for Space in DFA Simulation / 185 3.9.9 Exercises for Section 3.9 / 186 3.10 Summary of Chapter 3 / 187 3.11 References for Chapter 3 / 189 4: Syntax Analysis / 191 4.1 Introduction / 192 4.1.1 The Role of the Parser / 192 4.1.2 Representative Grammars / 193 4.1.3 Syntax Error Handling / 194 4.1.4 Error-Recovery Strategies / 195 4.2 Context-Free Grammars / 197 4.2.1 The Formal Definition of a Context-Free Grammar. / 197 4.2.2 Notational Conventions / 198 4.2.3 Derivations / 199 4.2.4 Parse Trees and Derivations / 201 4.2.5 Ambiguity / 203 4.2.6 Verifying the Language Generated by a Grammar / 204 4.2.7 Context-Free Grammars Versus Regular Expressions / 205 4.2.8 Exercise for Section 4.2 / 206 4.3 Writing a Grammar / 209 4.3.1 Lexical Versus Syntactic Analysis / 209 4.3.2 Eliminating Ambiguity / 210 4.3.3 Elimination of Left Recursion / 212 4.3.4 Left Factoring / 214 4.3.5 Non-Context-Free Language Constructs / 215 4.3.6 Exercises for Section 4.3 / 216 4.4 Top-Down Parsing / 217 4.4.1 Recursive-Descent Parsing / 219 4.4.2 FIRST and FOLLOW / 220 4.4.3 LL(l) Grammars / 222 4.4.4 Nonrecursive Predictive Parsing / 226 4.4.5 Error Recovery in Predictive Parsing / 228 4.4.6 Exercises for Section 4.4 / 231 4.5 Bottom-Up Parsing / 233 4.5.1 Reductions / 234 4.5.2 Handle Pruning / 235 4.5.3 Shift-Reduce Parsing / 236 4.5.4 Conflicts During Shift-Reduce Parsing / 238 4.5.5 Exercises for Section 4.5 / 240 4.6 Introduction to LR Parsing: Simple LR / 241 4.6.1 Why LR Parsers? / 241 4.6.2 Items and the LR(0) Automaton / 242 4.6.3 The LR-Parsing Algorithm / 248 4.6.4 Constructing SLR-Parsing Tables / 252 4.6.5 Viable Prefixes / 256 4.6.6 Exercises for Section 4.6 / 257 4.7 More Powerful LR Parsers / 259 4.7.1 Canonical LR(1) Items / 260 4.7.2 Constructing LR(1) Sets of Items / 261 4.7.3 Canonical LR(1) Parsing Tables / 265 4.7.4 Constructing LALR Parsing Tables / 266 4.7.5 Efficient Construction of LALR Parsing Tables / 270 4.7.6 Compaction of LR Parsing Tables / 275 4.7.7 Exercises for Section 4.7 / 277 4.8 Using Ambiguous Grammars / 278 4.8.1 Precedence and Associativity to Resolve Conflicts / 279 4.8.2 The ``Dangling-Else'' Ambiguity / 281 4.8.3 Error Recovery in LR Parsing / 283 4.8.4 Exercises for Section 4.8 / 285 4.9 Parser Generators / 287 4.9.1 The Parser Generator Yacc / 287 4.9.2 Using Yacc with Ambiguous Grammars / 291 4.9.3 Creating Yacc Lexical Analyzers with Lex / 294 4.9.4 Error Recovery in Yacc / 295 4.9.5 Exercises for Section 4.9 / 297 4.10 Summary of Chapter 4 / 297 4.11 References for Chapter 4 / 300 5: Syntax-Directed Translation / 303 5.1 Syntax-Directed Definitions / 304 5.1.1 Inherited and Synthesized Attributes / 304 5.1.2 Evaluating an SDD at the Nodes of a Parse Tree / 306 5.1.3 Exercises for Section 5.1 / 309 5.2 Evaluation Orders for SDD's / 310 5.2.1 Dependency Graphs / 310 5.2.2 Ordering the Evaluation of Attributes / 312 5.2.3 S-Attributed Definitions / 312 5.2.4 L-Attributed Definitions / 313 5.2.5 Semantic Rules with Controlled Side Effects / 314 5.2.6 Exercises for Section 5.2 / 317 5.3 Applications of Syntax-Directed Translation / 318 5.3.1 Construction of Syntax Trees / 318 5.3.2 The Structure of a Type / 321 5.3.3 Exercises for Section 5.3 / 323 5.4 Syntax-Directed Translation Schemes / 324 5.4.1 Postfix Translation Schemes / 324 5.4.2 Parser-Stack Implementation of Postfix SDT's / 325 5.4.3 SDT's With Actions Inside Productions / 327 5.4.4 Eliminating Left Recursion From SDT 's / 328 5.4.5 SDT's for L-Attributed Definitions / 331 5.4.6 Exercises for Section 5.4 / 336 5.5 Implementing L-Attributed SDD's / 337 5.5.1 Translation During Recursive-Descent Parsing / 338 5.5.2 On-The-Fly Code Generation / 340 5.5.3 L-Attributed SDD's and LL Parsing / 343 5.5.4 Bottom-Up Parsing of L-Attributed SDD's / 348 5.5.5 Exercises for Section 5.5 / 352 5.6 Summary of Chapter 5 / 353 5.7 References for Chapter 5 / 354 6: Intermediate-Code Generation / 357 6.1 Variants of Syntax Trees / 358 6.1.1 Directed Acyclic Graphs for Expressions / 359 6.1.2 The Value-Number Method for Constructing DAG's / 360 6.1.3 Exercises for Section 6.1 / 362 6.2 Three-Address Code / 363 6.2.1 Addresses and Instructions / 364 6.2.2 Quadruples / 366 6.2.3 Triples / 367 6.2.4 Static Single-Assignment Form / 369 6.2.5 Exercises for Section 6.2 / 370 6.3 Types and Declarations / 370 6.3.1 Type Expressions / 371 6.3.2 Type Equivalence / 372 6.3.3 Declarations / 373 6.3.4 Storage Layout for Local Names / 373 6.3.5 Sequences of Declarations / 376 6.3.6 Fields in Records and Classes / 376 6.3.7 Exercises for Section 6.3 / 378 6.4 Translation of Expressions / 378 6.4.1 Operations Within Expressions / 378 6.4.2 Incremental Translation / 380 6.4.3 Addressing Array Elements / 381 6.4.4 Translation of Array References / 383 6.4.5 Exercises for Section 6.4 / 384 6.5 Type Checking / 386 6.5.1 Rules for Type Checking / 387 6.5.2 Type Conversions / 388 6.5.3 Overloading of Functions and Operators / 390 6.5.4 Type Inference and Polymorphic Functions / 391 6.5.5 An Algorithm for Unification / 395 6.5.6 Exercises for Section 6.5 / 398 6.6 Control Flow / 399 6.6.1 Boolean Expressions / 399 6.6.2 Short-Circuit Code / 400 6.6.3 Flow-of-Control Statements / 401 6.6.4 Control-Flow Translation of Boolean Expressions / 403 6.6.5 A voiding Redundant Gotos / 405 6.6.6 Boolean Values and Jumping Code / 408 6.6.7 Exercises for Section 6.6 / 408 6.7 Backpatching / 410 6.7.1 One-Pass Code Generation Using Backpatching / 410 6.7.2 Backpatching for Boolean Expressions / 411 6.7.3 Flow-of-Control Statements / 413 6.7.4 Break-, Continue-, and Goto-Statements / 416 6.7.5 Exercises for Section 6.7 / 417 6.8 Switch-Statements / 418 6.8.1 Translation of Switch-Statements / 419 6.8.2 Syntax-Directed Translation of Switch-Statements / 420 6.8.3 Exercises for Section 6.8 / 421 6.9 Intermediate Code for Procedures / 422 6.10 Summary of Chapter 6 / 424 6.11 References for Chapter 6 / 425 7: Run-Time Environments / 427 7.1 Storage Organization / 427 7.1.1 Static Versus Dynamic Storage Allocation / 429 7.2 Stack Allocation of Space / 430 7.2.1 Activation Trees / 430 7.2.2 Activation Records / 433 7.2.3 Calling Sequences / 436 7.2.4 Variable-Length Data on the Stack / 438 7.2.5 Exercises for Section 7.2 / 440 7.3 Access to Nonlocal Data on the Stack / 441 7.3.1 Data Access Without Nested Procedures / 442 7.3.2 Issues With Nested Procedures / 442 7.3.3 A Language With Nested Procedure Declarations / 443 7.3.4 Nesting Depth / 443 7.3.5 Access Links / 445 7.3.6 Manipulating Access Links / 447 7.3.7 Access Links for Procedure Parameters / 448 7.3.8 Displays / 449 7.3.9 Exercises for Section 7.3 / 451 7.4 Heap Management / 452 7.4.1 The Memory Manager / 453 7.4.2 The Memory Hierarchy of a Computer / 454 7.4.3 Locality in Programs / 455 7.4.4 Reducing Fragmentation / 457 7.4.5 Manual Deallocation Requests / 460 7.4.6 Exercises for Section 7.4 / 463 7.5 Introduction to Garbage Collection / 463 7.5.1 Design Goals for Garbage Collectors / 464 7.5.2 Reachability / 466 7.5.3 Reference Counting Garbage Collectors / 468 7.5.4 Exercises for Section 7.5 / 470 7.6 Introduction to Trace-Based Collection / 470 7.6.1 A Basic Mark-and-Sweep Collector / 471 7.6.2 Basic Abstraction / 473 7.6.3 Optimizing Mark-and-Sweep / 475 7.6.4 Mark-and-Compact Garbage Collectors / 476 7.6.5 Copying collectors / 478 7.6.6 Comparing Costs / 482 7.6.7 Exercises for Section 7.6 / 482 7.7 Short-Pause Garbage Collection / 483 7.7.1 Incremental Garbage Collection / 483 7.7.2 Incremental Reachability Analysis / 485 7.7.3 Partial-Collection Basics / 487 7.7.4 Generational Garbage Collection / 488 7.7.5 The Train Algorithm / 490 7.7.6 Exercises for Section 7.7 / 493 7.8 Advanced Topics in Garbage Collection / 494 7.8.1 Parallel and Concurrent Garbage Collection / 495 7.8.2 Partial Object Relocation / 497 7.8.3 Conservative Collection for Unsafe Languages / 498 7.8.4 Weak References / 498 7.8.5 Exercises for Section 7.8 / 499 7.9 Summary of Chapter 7 / 500 7.10 References for Chapter 7 / 502 8: Code Generation / 505 8.1 Issues in the Design of a Code Generator / 506 8.1.1 Input to the Code Generator / 507 8.1.2 The Target Program / 507 8.1.3 Instruction Selection / 508 8.1.4 Register Allocation / 510 8.1.5 Evaluation Order / 511 8.2 The Target Language / 512 8.2.1 A Simple Target Machine Model / 512 8.2.2 Program and Instruction Costs / 515 8.2.3 Exercises for Section 8.2 / 516 8.3 Addresses in the Target Code / 518 8.3.1 Static Allocation / 518 8.3.2 Stack Allocation / 520 8.3.3 Run-Time Addresses for Names / 522 8.3.4 Exercises for Section 8.3 / 524 8.4 Basic Blocks and Flow Graphs / 525 8.4.1 Basic Blocks / 526 8.4.2 Next-Use Information / 528 8.4.3 Flow Graphs / 529 8.4.4 Representation of Flow Graphs / 530 8.4.5 Loops / 531 8.4.6 Exercises for Section 8.4 / 531 8.5 Optimization of Basic Blocks / 533 8.5.1 The DAG Representation of Basic Blocks / 533 8.5.2 Finding Local Common Subexpressions / 534 8.5.3 Dead Code Elimination / 535 8.5.4 The Use of Algebraic Identities / 536 8.5.5 Representation of Array References / 537 8.5.6 Pointer Assignments and Procedure Calls / 539 8.5.7 Reassembling Basic Blocks From DAG's / 539 8.5.8 Exercises for Section 8.5 / 541 8.6 A Simple Code Generator / 542 8.6.1 Register and Address Descriptors / 543 8.6.2 The Code-Generation Algorithm / 544 8.6.3 Design of the Function em getReg / 547 8.6.4 Exercises for Section 8.6 / 548 8.7 Peephole Optimization / 549 8.7.1 Eliminating Redundant Loads and Stores / 550 8.7.2 Eliminating Unreachable Code / 550 8.7.3 Flow-of-Control Optimizations / 551 8.7.4 Algebraic Simplification and Reduction in Strength / 552 8.7.5 Use of Machine Idioms / 552 8.7.6 Exercises for Section 8.7 / 553 8.8 Register Allocation and Assignment / 553 8.8.1 Global Register Allocation / 553 8.8.2 Usage Counts / 554 8.8.3 Register Assignment for Out er Loops / 556 8.8.4 Register Allocation by Graph Coloring / 556 8.8.5 Exercises for Section 8.8 / 557 8.9 Instruction Selection by Tree Rewriting / 558 8.9.1 Tree-Translation Schemes / 558 8.9.2 Code Generation by Tiling an Input Tree / 560 8.9.3 Pattern Matching by Parsing / 563 8.9.4 Routines for Semantic Checking / 565 8.9.5 General Tree Matching / 565 8.9.6 Exercises for Section 8.9 / 567 8.10 Optimal Code Generation for Expressions / 567 8.10.1 Ershov Numbers / 567 8.10.2 Generating Code From Labeled Expression Trees / 568 8.10.3 Evaluating Expressions with an Insufficient Supply of Registers / 570 8.10.4 Exercises for Section 8.10 / 572 8.11 Dynamic Programming Code-Generation / 573 8.11.1 Contiguous Evaluation / 574 8.11.2 The Dynamic Programming Algorithm / 575 8.11.3 Exercises for Section 8.11 / 577 8.12 Summary of Chapter 8 / 578 8.13 References for Chapter 8 / 579 9: Machine-Independent Optimizations / 583 9.1 The Principal Sources of Optimization / 584 9.1.1 Causes of Redundancy / 584 9.1.2 A Running Example: Quicksort / 585 9.1.3 Semantics-Preserving Transformations / 586 9.1.4 Global Common Subexpressions / 588 9.1.5 Copy Propagation / 590 9.1.6 Dead-Code Elimination / 591 9.1.7 Code Motion / 592 9.1.8 Induction Variables and Reduction in Strength / 592 9.1.9 Exercises for Section 9.1 / 596 9.2 Introduction to Data-Flow Analysis / 597 9.2.1 The Data-Flow Abstraction / 597 9.2.2 The Data-Flow Analysis Schema / 599 9.2.3 Data-Flow Schemas on Basic Blocks / 600 9.2.4 Reaching Definitions / 601 9.2.5 Live-Variable Analysis / 608 9.2.6 Available Expressions / 610 9.2.7 Summary / 614 9.2.8 Exercises for Section 9.2 / 615 9.3 Foundations of Data-Flow Analysis / 618 9.3.1 Semilattices / 618 9.3.2 Transfer Functions / 623 9.3.3 The Iterative Algorithm for General Frameworks / 626 9.3.4 Meaning of a Data-Flow Solution / 628 9.3.5 Exercises for Section 9.3 / 631 9.4 Constant Propagation / 632 9.4.1 Data-Flow Values for the Constant-Propagation Framework / 633 9.4.2 The Meet for the Constant-Propagation Framework / 633 9.4.3 Transfer Functions for the Constant-Propagation Framework / 634 9.4.4 Monotonicity of the Constant-Propagation Framework / 635 9.4.5 Nondistributivity of the Constant-Propagation Framework / 635 9.4.6 Interpretation of the Results / 637 9.4.7 Exercises for Section 9.4 / 637 9.5 Partial-Redundancy Elimination / 639 9.5.1 The Sources of Redundancy / 639 9.5.2 Can All Redundancy Be Eliminated? / 642 9.5.3 The Lazy-Code-Motion Problem / 644 9.5.4 Anticipation of Expressions / 645 9.5.5 The Lazy-Code-Motion Algorithm / 646 9.5.6 Exercises for Section 9.5 / 655 9.6 Loops in Flow Graphs / 655 9.6.1 Dominators / 656 9.6.2 Depth-First Ordering / 660 9.6.3 Edges in a Depth-First Spanning Tree / 661 9.6.4 Back Edges and Reducibility / 662 9.6.5 Depth of a Flow Graph / 665 9.6.6 Natural Loops / 665 9.6.7 Speed of Convergence of Iterative Data-Flow Algorithms / 667 9.6.8 Exercises for Section 9.6 / 669 9.7 Region-Based Analysis / 672 9.7.1 Regions / 672 9.7.2 Region Hierarchies for Reducible Flow Graphs / 673 9.7.3 Overview of a Region-Based Analysis / 676 9.7.4 Necessary Assumptions About Transfer Functions / 678 9.7.5 An Algorithm for Region-Based Analysis / 680 9.7.6 Handling Nonreducible Flow Graphs / 684 9.7.7 Exercises for Section 9.7 / 686 9.8 Symbolic Analysis / 686 9.8.1 Affine Expressions of Reference Variables / 687 9.8.2 Data-Flow Problem Formulation / 689 9.8.3 Region-Based Symbolic Analysis / 694 9.8.4 Exercises for Section 9.8 / 699 9.9 Summary of Chapter 9 / 700 9.10 References for Chapter 9 / 703 10: Instruction-Level Parallelism / 707 10.1 Processor Architectures / 708 10.1.1 Instruction Pipelines and Branch Delays / 708 10.1.2 Pipelined Execution / 709 10.1.3 Multiple Instruction Issue / 710 10.2 Code-Scheduling Constraints / 710 10.2.1 Data Dependence / 711 10.2.2 Finding Dependences Among Memory Accesses / 712 10.2.3 Tradeoff Between Register Usage and Parallelism. / 713 10.2.4 Phase Ordering Between Register Allocation and Code Scheduling / 716 10.2.5 Control Dependence / 716 10.2.6 Speculative Execution Support / 717 10.2.7 A Basic Machine Model / 719 10.2.8 Exercises for Section 10.2 / 720 10.3 Basic-Block Scheduling / 721 10.3.1 Data-Dependence Graphs / 722 10.3.2 List Scheduling of Basic Blocks / 723 10.3.3 Prioritized Topological Orders / 725 10.3.4 Exercises for Section 10.3 / 726 10.4 Global Code Scheduling / 727 10.4.1 Primitive Code Motion / 728 10.4.2 Upward Code Motion / 730 10.4.3 Downward Code Motion / 731 10.4.4 Updating Data Dependences / 732 10.4.5 Global Scheduling Algorithms / 732 10.4.6 Advanced Code Motion Techniques / 736 10.4.7 Interaction with Dynamic Schedulers / 737 10.4.8 Exercises for Section 10.4 / 737 10.5 Software Pipelining / 738 10.5.1 Introduction / 738 10.5.2 Software Pipelining of Loops / 740 10.5.3 Register Allocation and Code Generation / 743 10.5.4 Do-Across Loops / 743 10.5.5 Goals and Constraints of Software Pipelining / 745 10.5.6 A Software-Pipelining Algorithm / 749 10.5.7 Scheduling Acyclic Data-Dependence Graphs / 749 10.5.8 Scheduling Cyclic Dependence Graphs / 751 10.5.9 Improvements to the Pipelining Algorithms / 758 10.5.10 Modular Variable Expansion / 758 10.5.11 Conditional Statements / 761 10.5.12 Hardware Support for Software Pipelining / 762 10.5.13 Exercises for Section 10.5 / 763 10.6 Summary of Chapter 10 / 765 10.7 References for Chapter 10 / 766 11: Optimizing for Parallelism and Locality / 769 11.1 Basic Concepts / 771 11.1.1 Multiprocessors / 772 11.1.2 Parallelism in Applications / 773 11.1.3 Loop-Level Parallelism / 775 11.1.4 Data Locality / 777 11.1.5 Introduction to Affine Transform Theory / 778 11.2 Matrix Multiply: An In-Depth Example / 782 11.2.1 The Matrix-Multiplication Algorithm / 782 11.2.2 Optimizations / 785 11.2.3 Cache Interference / 788 11.2.4 Exercises for Section 11.2 / 788 11.3 Iteration Spaces / 788 11.3.1 Constructing Iteration Spaces from Loop Nests / 788 11.3.2 Execution Order for Loop Nests / 791 11.3.3 Matrix Formulation of Inequalities / 791 11.3.4 Incorporating Symbolic Constants / 793 11.3.5 Controlling the Order of Execution / 793 11.3.6 Changing Axes / 798 11.3.7 Exercises for Section 11.3 / 799 11.4 Affine Array Indexes / 801 11.4.1 Affine Accesses / 802 11.4.2 Affine and Nonaffine Accesses in Practice / 803 11.4.3 Exercises for Section 11.4 / 804 11.5 Data Reuse / 804 11.5.1 Types of Reuse / 805 11.5.2 Self Reuse / 806 11.5.3 Self-Spatial Reuse / 809 11.5.4 Group Reuse / 811 11.5.5 Exercises for Section 11.5 / 814 11.6 Array Data-Dependence Analysis / 815 11.6.1 Definition of Data Dependence of Array Accesses / 816 11.6.2 Integer Linear Programming / 817 11.6.3 The GCD Test / 818 11.6.4 Heuristics for Solving Integer Linear Programs / 820 11.6.5 Solving General Integer Linear Programs / 823 11.6.6 Summary / 825 11.6.7 Exercises for Section 11.6 / 826 11.7 Finding Synchronization-Free Parallelism / 828 11.7.1 An Introductory Example / 828 11.7.2 Affine Space Partitions / 830 11.7.3 Space-Partition Constraints / 831 11.7.4 Solving Space-Partition Constraints / 835 11.7.5 A Simple Code-Generation Algorithm / 838 11.7.6 Eliminating Empty Iterations / 841 11.7.7 Eliminating Tests from Innermost Loops / 844 11.7.8 Source-Code Transforms / 846 11.7.9 Exercises for Section 11.7 / 851 11.8 Synchronization Between Parallel Loops / 853 11.8.1 A Constant Number of Synchronizations / 853 11.8.2 Program-Dependence Graphs / 854 11.8.3 Hierarchical Time / 857 11.8.4 The Parallelization Algorithm / 859 11.8.5 Exercises for Section 11.8 / 860 11.9 Pipelining / 861 11.9.1 What is Pipelining? / 861 11.9.2 Successive Over-Relaxation (SOR): An Example / 863 11.9.3 Fully Permutable Loops / 864 11.9.4 Pipelining Fully Permutable Loops / 864 11.9.5 General Theory / 867 11.9.6 Time-Partition Constraints / 868 11.9.7 Solving Time-Partition Constraints by Farkas' Lemma / 872 11.9.8 Code Transformations / 875 11.9.9 Parallelism With Minimum Synchronization / 880 11.9.10 Exercises for Section 11.9 / 882 11.10 Locality Optimizations / 884 11.10.1 Temporal Locality of Computed Data / 885 11.10.2 Array Contraction / 885 11.10.3 Partition Interleaving / 887 11.10.4 Putting it All Together / 890 11.10.5 Exercises for Section 11.10 / 892 11.11 Other Uses of Affine Transforms / 893 11.11.1 Distributed memory machines / 894 11.11.2 Multi-Instruction-Issue Processors / 895 11.11.3 Vector and SIMD Instructions / 895 11.11.4 Prefetching / 896 11.12 Summary of Chapter 11 / 897 11.13 References for Chapter 11 / 899 12: Interprocedural Analysis / 903 12.1 Basic Concepts / 904 12.1.1 Call Graphs / 904 12.1.2 Context Sensitivity / 906 12.1.3 Call Strings / 908 12.1.4 Cloning-Based Context-Sensitive Analysis / 910 12.1.5 Summary-Based Context-Sensitive Analysis / 911 12.1.6 Exercises for Section 12.1 / 914 12.2 Why Interprocedural Analysis? / 916 12.2.1 Virtual Method Invocation / 916 12.2.2 Pointer Alias Analysis / 917 12.2.3 Parallelization / 917 12.2.4 Detection of Software Errors and Vulnerabilities / 917 12.2.5 SQL Injection / 918 12.2.6 Buffer Overflow / 920 12.3 A Logical Representation of Data Flow / 921 12.3.1 Introduction to Datalog / 921 12.3.2 Datalog Rules / 922 12.3.3 Intensional and Extensional Predicates / 924 12.3.4 Execution of Datalog Programs / 927 12.3.5 Incremental Evaluation of Datalog Programs / 928 12.3.6 Problematic Datalog Rules / 930 12.3.7 Exercises for Section 12.3 / 932 12.4 A Simple Pointer-Analysis Algorithm / 933 12.4.1 Why is Pointer Analysis Difficult / 934 12.4.2 A Model for Pointers and References / 935 12.4.3 Flow Insensitivity / 936 12.4.4 The Formulation in Datalog / 937 12.4.5 Using Type Information / 938 12.4.6 Exercises for Section 12.4 / 939 12.5 Context-Insensitive Interprocedural Analysis / 941 12.5.1 Effects of a Method Invocation / 941 12.5.2 Call Graph Discovery in Datalog / 943 12.5.3 Dynamic Loading and Reflection / 944 12.5.4 Exercises for Section 12.5 / 945 12.6 Context-Sensitive Pointer Analysis / 945 12.6.1 Contexts and Call Strings / 946 12.6.2 Adding Context to Datalog Rules / 949 12.6.3 Additional Observations About Sensitivity / 949 12.6.4 Exercises for Section 12.6 / 950 12.7 Datalog Implementation by BDD's / 951 12.7.1 Binary Decision Diagrams / 951 12.7.2 Transformations on BDD's / 953 12.7.3 Representing Relations by BDD's / 954 12.7.4 Relational Operations as BDD Operations / 954 12.7.5 Using BDD's for Points-to Analysis / 957 12.7.6 Exercises for Section 12.7 / 958 12.8 Summary of Chapter 12 / 958 12.9 References for Chapter 12 / 961 A: A Complete Front End / 965 A.1 The Source Language / 965 A.2 Main / 966 A.3 Lexical Analyzer / 967 A.4 Symbol Tables and Types / 970 A.5 Intermediate Code for Expressions / 971 A.6 Jumping Code for Boolean Expressions / 974 A.7 Intermediate Code for Statements / 978 A.8 Parser / 981 A.9 Creating the Front End / 986 B: Finding Linearly Independent Solutions / 989 Index / 993

rawabstract:
This new edition of the classic `Dragon' book has been completely revised to include the most recent developments to compiling. The book provides a thorough introduction to compiler design and continues to emphasize the applicability of compiler technology to a broad range of problems in software design and development. The first half of the book is designed for use in an undergraduate compilers course while the second half can be used in a graduate course stressing code optimization.

shortTOC:
1: Introduction / 1 2: A Simple Syntax-Directed Translator / 39 3: Lexical Analysis / 109 4: Syntax Analysis / 191 5: Syntax-Directed Translation / 303 6: Intermediate-Code Generation / 357 7: Run-Time Environments / 427 8: Code Generation / 505 9: Machine-Independent Optimizations / 583 10: Instruction-Level Parallelism / 707 11: Optimizing for Parallelism and Locality / 769 12: Interprocedural Analysis / 903 A: A Complete Front End / 965 B: Finding Linearly Independent Solutions / 989 Index / 993

rawshortTOC:
1: Introduction / 1 \\ 2: A Simple Syntax-Directed Translator / 39 \\ 3: Lexical Analysis / 109 \\ 4: Syntax Analysis / 191 \\ 5: Syntax-Directed Translation / 303 \\ 6: Intermediate-Code Generation / 357 \\ 7: Run-Time Environments / 427 \\ 8: Code Generation / 505 \\ 9: Machine-Independent Optimizations / 583 \\ 10: Instruction-Level Parallelism / 707 \\ 11: Optimizing for Parallelism and Locality / 769 \\ 12: Interprocedural Analysis / 903 \\ A: A Complete Front End / 965 \\ B: Finding Linearly Independent Solutions / 989 \\ Index / 993

rawTOC:
1: Introduction / 1 \\ 1.1 Language Processors / 1 \\ 1.1.1 Exercises for Section 1.1 / 3 \\ 1.2 The Structure of a Compiler / 4 \\ 1.2.1 Lexical Analysis / 5 \\ 1.2.2 Syntax Analysis / 8 \\ 1.2.3 Semantic Analysis / 8 \\ 1.2.4 Intermediate Code Generation / 9 \\ 1.2.5 Code Optimization / 10 \\ 1.2.6 Code Generation / 10 \\ 1.2.7 Symbol-Table Management / 11 \\ 1.2.8 The Grouping of Phases into Passes / 11 \\ 1.2.9 Compiler-Construction Tools / 12 \\ 1.3 The Evolution of Programming Languages / 12 \\ 1.3.1 The Move to Higher-level Languages / 13 \\ 1.3.2 Impacts on Compilers / 14 \\ 1.3.3 Exercises for Section 1.3 / 14 \\ 1.4 The Science of Building a Compiler / 15 \\ 1.4.1 Modeling in Compiler Design and Implementation / 15 \\ 1.4.2 The Science of Code Optimization / 15 \\ 1.5 Applications of Compiler Technology / 17 \\ 1.5.1 Implementation of High-Level Programming Languages / 17 \\ 1.5.2 Optimizations for Computer Architectures / 19 \\ 1.5.3 Design of New Computer Architectures / 21 \\ 1.5.4 Program Translations / 22 \\ 1.5.5 Software Productivity Tools / 23 \\ 1.6 Programming Language Basics / 25 \\ 1.6.1 The Static/Dynamic Distinction / 25 \\ 1.6.2 Environments and States / 26 \\ 1.6.3 Static Scope and Block Structure / 28 \\ 1.6.4 Explicit Access Control / 31 \\ 1.6.5 Dynamic Scope / 31 \\ 1.6.6 Parameter Passing Mechanisms / 33 \\ 1.6.7 Aliasing / 35 \\ 1.6.8 Exercises for Section 1.6 / 35 \\ 1.7 Summary of Chapter 1 / 36 \\ 1.8 References for Chapter 1 / 38 \\ 2: A Simple Syntax-Directed Translator / 39 \\ 2.1 Introduction / 40 \\ 2.2 Syntax Definition / 42 \\ 2.2.1 Definition of Grammars / 42 \\ 2.2.2 Derivations / 44 \\ 2.2.3 Parse Trees / 45 \\ 2.2.4 Ambiguity / 47 \\ 2.2.5 Associativity of Operators / 48 \\ 2.2.6 Precedence of Operators / 48 \\ 2.2.7 Exercises for Section 2.2 / 51 \\ 2.3 Syntax-Directed Translation / 52 \\ 2.3.1 Postfix Notation / 53 \\ 2.3.2 Synthesized Attributes / 54 \\ 2.3.3 Simple Syntax-Directed Definitions / 56 \\ 2.3.4 Tree Traversals / 56 \\ 2.3.5 Translation Schemes / 57 \\ 2.3.6 Exercises for Section 2.3 / 60 \\ 2.4 Parsing / 60 \\ 2.4.1 Top-Down Parsing / 61 \\ 2.4.2 Predictive Parsing / 64 \\ 2.4.3 When to Use $\epsilon$-Productions / 65 \\ 2.4.4 Designing a Predictive Parser / 66 \\ 2.4.5 Left Recursion / 67 \\ 2.4.6 Exercises for Section 2.4 / 68 \\ 2.5 A Translator for Simple Expressions / 68 \\ 2.5.1 Abstract and Concrete Syntax / 69 \\ 2.5.2 Adapting the Translation Scheme / 70 \\ 2.5.3 Procedures for the Nonterminals / 72 \\ 2.5.4 Simplifying the Translator / 73 \\ 2.5.5 The Complete Program / 74 \\ 2.6 Lexical Analysis / 76 \\ 2.6.1 Removal of White Space and Comments / 77 \\ 2.6.2 Reading Ahead / 78 \\ 2.6.3 Constants / 78 \\ 2.6.4 Recognizing Keywords and Identifiers / 79 \\ 2.6.5 A Lexical Analyzer / 81 \\ 2.6.6 Exercises for Section 2.6 / 84 \\ 2.7 Symbol Tables / 85 \\ 2.7.1 Symbol Table Per Scope / 86 \\ 2.7.2 The Use of Symbol Tables / 89 \\ 2.8 Intermediate Code Generation / 91 \\ 2.8.1 Two Kinds of Intermediate Representations / 91 \\ 2.8.2 Construction of Syntax Trees / 92 \\ 2.8.3 Static Checking / 97 \\ 2.8.4 Three-Address Code / 99 \\ 2.8.5 Exercises for Section 2.8 / 105 \\ 2.9 Summary of Chapter 2 / 105 \\ 3: Lexical Analysis / 109 \\ 3.1 The Role of the Lexical Analyzer / 109 \\ 3.1.1 Lexical Analysis Versus Parsing / 110 \\ 3.1.2 Tokens, Patterns, and Lexemes / 111 \\ 3.1.3 Attributes for Tokens / 112 \\ 3.1.4 Lexical Errors / 113 \\ 3.1.5 Exercises for Section 3.1 / 114 \\ 3.2 Input Buffering / 115 \\ 3.2.1 Buffer Pairs / 115 \\ 3.2.2 Sentinels / 116 \\ 3.3 Specification of Tokens / 116 \\ 3.3.1 Strings and Languages / 117 \\ 3.3.2 Operations on Languages / 119 \\ 3.3.3 Regular Expressions / 120 \\ 3.3.4 Regular Definitions / 123 \\ 3.3.5 Extensions of Regular Expressions / 124 \\ 3.3.6 Exercises for Section 3.3 / 125 \\ 3.4 Recognition of Tokens / 128 \\ 3.4.1 Transition Diagrams / 130 \\ 3.4.2 Recognition of Reserved Words and Identifiers / 132 \\ 3.4.3 Completion of the Running Example / 133 \\ 3.4.4 Architecture of a Transition-Diagram-Based Lexical Analyzer / 134 \\ 3.4.5 Exercises for Section 3.4 / 136 \\ 3.5 The Lexical-Analyzer Generator Lex / 140 \\ 3.5.1 Use of Lex / 140 \\ 3.5.2 Structure of Lex Programs / 141 \\ 3.5.3 Conflict Resolution in Lex / 144 \\ 3.5.4 The Lookahead Operator / 144 \\ 3.5.5 Exercises for Section 3.5 / 146 \\ 3.6 Finite Automata / 147 \\ 3.6.1 Nondeterministic Finite Automata / 147 \\ 3.6.2 Transition Tables / 148 \\ 3.6.3 Acceptance of Input Strings by Automata / 149 \\ 3.6.4 Deterministic Finite Automata / 149 \\ 3.6.5 Exercises for Section 3.6 / 151 \\ 3.7 From Regular Expressions to Automata / 152 \\ 3.7.1 Conversion of an NFA to a DFA / 152 \\ 3.7.2 Simulation of an NFA / 156 \\ 3.7.3 Efficiency of NFA Simulation / 157 \\ 3.7.4 Construction of an NFA from a Regular Expression / 159 \\ 3.7.5 Efficiency of String-Processing Algorithms / 163 \\ 3.7.6 Exercises for Section 3.7 / 166 \\ 3.8 Design of a Lexical-Analyzer Generator / 166 \\ 3.8.1 The Structure of the Generated Analyzer / 167 \\ 3.8.2 Pattern Matching Based on NFA's / 168 \\ 3.8.3 DFA's for Lexical Analyzers / 170 \\ 3.8.4 Implementing the Lookahead Operator / 171 \\ 3.8.5 Exercises for Section 3.8 / 172 \\ 3.9 Optimization of DFA-Based Pattern Matchers / 173 \\ 3.9.1 Important States of an NFA / 173 \\ 3.9.2 Functions Computed From the Syntax Tree / 175 \\ 3.9.3 Computing {\em nullable}, {\em firstpos}, and {\em lastpos} / 176 \\ 3.9.4 Computing {\em followpos} / 177 \\ 3.9.5 Converting a Regular Expression Directly to a DFA / 179 \\ 3.9.6 Minimizing the Number of States of a DFA / 180 \\ 3.9.7 State Minimization in Lexical Analyzers / 184 \\ 3.9.8 Trading Time for Space in DFA Simulation / 185 \\ 3.9.9 Exercises for Section 3.9 / 186 \\ 3.10 Summary of Chapter 3 / 187 \\ 3.11 References for Chapter 3 / 189 \\ 4: Syntax Analysis / 191 \\ 4.1 Introduction / 192 \\ 4.1.1 The Role of the Parser / 192 \\ 4.1.2 Representative Grammars / 193 \\ 4.1.3 Syntax Error Handling / 194 \\ 4.1.4 Error-Recovery Strategies / 195 \\ 4.2 Context-Free Grammars / 197 \\ 4.2.1 The Formal Definition of a Context-Free Grammar. / 197 \\ 4.2.2 Notational Conventions / 198 \\ 4.2.3 Derivations / 199 \\ 4.2.4 Parse Trees and Derivations / 201 \\ 4.2.5 Ambiguity / 203 \\ 4.2.6 Verifying the Language Generated by a Grammar / 204 \\ 4.2.7 Context-Free Grammars Versus Regular Expressions / 205 \\ 4.2.8 Exercise for Section 4.2 / 206 \\ 4.3 Writing a Grammar / 209 \\ 4.3.1 Lexical Versus Syntactic Analysis / 209 \\ 4.3.2 Eliminating Ambiguity / 210 \\ 4.3.3 Elimination of Left Recursion / 212 \\ 4.3.4 Left Factoring / 214 \\ 4.3.5 Non-Context-Free Language Constructs / 215 \\ 4.3.6 Exercises for Section 4.3 / 216 \\ 4.4 Top-Down Parsing / 217 \\ 4.4.1 Recursive-Descent Parsing / 219 \\ 4.4.2 FIRST and FOLLOW / 220 \\ 4.4.3 LL(l) Grammars / 222 \\ 4.4.4 Nonrecursive Predictive Parsing / 226 \\ 4.4.5 Error Recovery in Predictive Parsing / 228 \\ 4.4.6 Exercises for Section 4.4 / 231 \\ 4.5 Bottom-Up Parsing / 233 \\ 4.5.1 Reductions / 234 \\ 4.5.2 Handle Pruning / 235 \\ 4.5.3 Shift-Reduce Parsing / 236 \\ 4.5.4 Conflicts During Shift-Reduce Parsing / 238 \\ 4.5.5 Exercises for Section 4.5 / 240 \\ 4.6 Introduction to LR Parsing: Simple LR / 241 \\ 4.6.1 Why LR Parsers? / 241 \\ 4.6.2 Items and the LR(0) Automaton / 242 \\ 4.6.3 The LR-Parsing Algorithm / 248 \\ 4.6.4 Constructing SLR-Parsing Tables / 252 \\ 4.6.5 Viable Prefixes / 256 \\ 4.6.6 Exercises for Section 4.6 / 257 \\ 4.7 More Powerful LR Parsers / 259 \\ 4.7.1 Canonical LR(1) Items / 260 \\ 4.7.2 Constructing LR(1) Sets of Items / 261 \\ 4.7.3 Canonical LR(1) Parsing Tables / 265 \\ 4.7.4 Constructing LALR Parsing Tables / 266 \\ 4.7.5 Efficient Construction of LALR Parsing Tables / 270 \\ 4.7.6 Compaction of LR Parsing Tables / 275 \\ 4.7.7 Exercises for Section 4.7 / 277 \\ 4.8 Using Ambiguous Grammars / 278 \\ 4.8.1 Precedence and Associativity to Resolve Conflicts / 279 \\ 4.8.2 The ``Dangling-Else'' Ambiguity / 281 \\ 4.8.3 Error Recovery in LR Parsing / 283 \\ 4.8.4 Exercises for Section 4.8 / 285 \\ 4.9 Parser Generators / 287 \\ 4.9.1 The Parser Generator Yacc / 287 \\ 4.9.2 Using Yacc with Ambiguous Grammars / 291 \\ 4.9.3 Creating Yacc Lexical Analyzers with Lex / 294 \\ 4.9.4 Error Recovery in Yacc / 295 \\ 4.9.5 Exercises for Section 4.9 / 297 \\ 4.10 Summary of Chapter 4 / 297 \\ 4.11 References for Chapter 4 / 300 \\ 5: Syntax-Directed Translation / 303 \\ 5.1 Syntax-Directed Definitions / 304 \\ 5.1.1 Inherited and Synthesized Attributes / 304 \\ 5.1.2 Evaluating an SDD at the Nodes of a Parse Tree / 306 \\ 5.1.3 Exercises for Section 5.1 / 309 \\ 5.2 Evaluation Orders for SDD's / 310 \\ 5.2.1 Dependency Graphs / 310 \\ 5.2.2 Ordering the Evaluation of Attributes / 312 \\ 5.2.3 S-Attributed Definitions / 312 \\ 5.2.4 L-Attributed Definitions / 313 \\ 5.2.5 Semantic Rules with Controlled Side Effects / 314 \\ 5.2.6 Exercises for Section 5.2 / 317 \\ 5.3 Applications of Syntax-Directed Translation / 318 \\ 5.3.1 Construction of Syntax Trees / 318 \\ 5.3.2 The Structure of a Type / 321 \\ 5.3.3 Exercises for Section 5.3 / 323 \\ 5.4 Syntax-Directed Translation Schemes / 324 \\ 5.4.1 Postfix Translation Schemes / 324 \\ 5.4.2 Parser-Stack Implementation of Postfix SDT's / 325 \\ 5.4.3 SDT's With Actions Inside Productions / 327 \\ 5.4.4 Eliminating Left Recursion From SDT 's / 328 \\ 5.4.5 SDT's for L-Attributed Definitions / 331 \\ 5.4.6 Exercises for Section 5.4 / 336 \\ 5.5 Implementing L-Attributed SDD's / 337 \\ 5.5.1 Translation During Recursive-Descent Parsing / 338 \\ 5.5.2 On-The-Fly Code Generation / 340 \\ 5.5.3 L-Attributed SDD's and LL Parsing / 343 \\ 5.5.4 Bottom-Up Parsing of L-Attributed SDD's / 348 \\ 5.5.5 Exercises for Section 5.5 / 352 \\ 5.6 Summary of Chapter 5 / 353 \\ 5.7 References for Chapter 5 / 354 \\ 6: Intermediate-Code Generation / 357 \\ 6.1 Variants of Syntax Trees / 358 \\ 6.1.1 Directed Acyclic Graphs for Expressions / 359 \\ 6.1.2 The Value-Number Method for Constructing DAG's / 360 \\ 6.1.3 Exercises for Section 6.1 / 362 \\ 6.2 Three-Address Code / 363 \\ 6.2.1 Addresses and Instructions / 364 \\ 6.2.2 Quadruples / 366 \\ 6.2.3 Triples / 367 \\ 6.2.4 Static Single-Assignment Form / 369 \\ 6.2.5 Exercises for Section 6.2 / 370 \\ 6.3 Types and Declarations / 370 \\ 6.3.1 Type Expressions / 371 \\ 6.3.2 Type Equivalence / 372 \\ 6.3.3 Declarations / 373 \\ 6.3.4 Storage Layout for Local Names / 373 \\ 6.3.5 Sequences of Declarations / 376 \\ 6.3.6 Fields in Records and Classes / 376 \\ 6.3.7 Exercises for Section 6.3 / 378 \\ 6.4 Translation of Expressions / 378 \\ 6.4.1 Operations Within Expressions / 378 \\ 6.4.2 Incremental Translation / 380 \\ 6.4.3 Addressing Array Elements / 381 \\ 6.4.4 Translation of Array References / 383 \\ 6.4.5 Exercises for Section 6.4 / 384 \\ 6.5 Type Checking / 386 \\ 6.5.1 Rules for Type Checking / 387 \\ 6.5.2 Type Conversions / 388 \\ 6.5.3 Overloading of Functions and Operators / 390 \\ 6.5.4 Type Inference and Polymorphic Functions / 391 \\ 6.5.5 An Algorithm for Unification / 395 \\ 6.5.6 Exercises for Section 6.5 / 398 \\ 6.6 Control Flow / 399 \\ 6.6.1 Boolean Expressions / 399 \\ 6.6.2 Short-Circuit Code / 400 \\ 6.6.3 Flow-of-Control Statements / 401 \\ 6.6.4 Control-Flow Translation of Boolean Expressions / 403 \\ 6.6.5 A voiding Redundant Gotos / 405 \\ 6.6.6 Boolean Values and Jumping Code / 408 \\ 6.6.7 Exercises for Section 6.6 / 408 \\ 6.7 Backpatching / 410 \\ 6.7.1 One-Pass Code Generation Using Backpatching / 410 \\ 6.7.2 Backpatching for Boolean Expressions / 411 \\ 6.7.3 Flow-of-Control Statements / 413 \\ 6.7.4 Break-, Continue-, and Goto-Statements / 416 \\ 6.7.5 Exercises for Section 6.7 / 417 \\ 6.8 Switch-Statements / 418 \\ 6.8.1 Translation of Switch-Statements / 419 \\ 6.8.2 Syntax-Directed Translation of Switch-Statements / 420 \\ 6.8.3 Exercises for Section 6.8 / 421 \\ 6.9 Intermediate Code for Procedures / 422 \\ 6.10 Summary of Chapter 6 / 424 \\ 6.11 References for Chapter 6 / 425 \\ 7: Run-Time Environments / 427 \\ 7.1 Storage Organization / 427 \\ 7.1.1 Static Versus Dynamic Storage Allocation / 429 \\ 7.2 Stack Allocation of Space / 430 \\ 7.2.1 Activation Trees / 430 \\ 7.2.2 Activation Records / 433 \\ 7.2.3 Calling Sequences / 436 \\ 7.2.4 Variable-Length Data on the Stack / 438 \\ 7.2.5 Exercises for Section 7.2 / 440 \\ 7.3 Access to Nonlocal Data on the Stack / 441 \\ 7.3.1 Data Access Without Nested Procedures / 442 \\ 7.3.2 Issues With Nested Procedures / 442 \\ 7.3.3 A Language With Nested Procedure Declarations / 443 \\ 7.3.4 Nesting Depth / 443 \\ 7.3.5 Access Links / 445 \\ 7.3.6 Manipulating Access Links / 447 \\ 7.3.7 Access Links for Procedure Parameters / 448 \\ 7.3.8 Displays / 449 \\ 7.3.9 Exercises for Section 7.3 / 451 \\ 7.4 Heap Management / 452 \\ 7.4.1 The Memory Manager / 453 \\ 7.4.2 The Memory Hierarchy of a Computer / 454 \\ 7.4.3 Locality in Programs / 455 \\ 7.4.4 Reducing Fragmentation / 457 \\ 7.4.5 Manual Deallocation Requests / 460 \\ 7.4.6 Exercises for Section 7.4 / 463 \\ 7.5 Introduction to Garbage Collection / 463 \\ 7.5.1 Design Goals for Garbage Collectors / 464 \\ 7.5.2 Reachability / 466 \\ 7.5.3 Reference Counting Garbage Collectors / 468 \\ 7.5.4 Exercises for Section 7.5 / 470 \\ 7.6 Introduction to Trace-Based Collection / 470 \\ 7.6.1 A Basic Mark-and-Sweep Collector / 471 \\ 7.6.2 Basic Abstraction / 473 \\ 7.6.3 Optimizing Mark-and-Sweep / 475 \\ 7.6.4 Mark-and-Compact Garbage Collectors / 476 \\ 7.6.5 Copying collectors / 478 \\ 7.6.6 Comparing Costs / 482 \\ 7.6.7 Exercises for Section 7.6 / 482 \\ 7.7 Short-Pause Garbage Collection / 483 \\ 7.7.1 Incremental Garbage Collection / 483 \\ 7.7.2 Incremental Reachability Analysis / 485 \\ 7.7.3 Partial-Collection Basics / 487 \\ 7.7.4 Generational Garbage Collection / 488 \\ 7.7.5 The Train Algorithm / 490 \\ 7.7.6 Exercises for Section 7.7 / 493 \\ 7.8 Advanced Topics in Garbage Collection / 494 \\ 7.8.1 Parallel and Concurrent Garbage Collection / 495 \\ 7.8.2 Partial Object Relocation / 497 \\ 7.8.3 Conservative Collection for Unsafe Languages / 498 \\ 7.8.4 Weak References / 498 \\ 7.8.5 Exercises for Section 7.8 / 499 \\ 7.9 Summary of Chapter 7 / 500 \\ 7.10 References for Chapter 7 / 502 \\ 8: Code Generation / 505 \\ 8.1 Issues in the Design of a Code Generator / 506 \\ 8.1.1 Input to the Code Generator / 507 \\ 8.1.2 The Target Program / 507 \\ 8.1.3 Instruction Selection / 508 \\ 8.1.4 Register Allocation / 510 \\ 8.1.5 Evaluation Order / 511 \\ 8.2 The Target Language / 512 \\ 8.2.1 A Simple Target Machine Model / 512 \\ 8.2.2 Program and Instruction Costs / 515 \\ 8.2.3 Exercises for Section 8.2 / 516 \\ 8.3 Addresses in the Target Code / 518 \\ 8.3.1 Static Allocation / 518 \\ 8.3.2 Stack Allocation / 520 \\ 8.3.3 Run-Time Addresses for Names / 522 \\ 8.3.4 Exercises for Section 8.3 / 524 \\ 8.4 Basic Blocks and Flow Graphs / 525 \\ 8.4.1 Basic Blocks / 526 \\ 8.4.2 Next-Use Information / 528 \\ 8.4.3 Flow Graphs / 529 \\ 8.4.4 Representation of Flow Graphs / 530 \\ 8.4.5 Loops / 531 \\ 8.4.6 Exercises for Section 8.4 / 531 \\ 8.5 Optimization of Basic Blocks / 533 \\ 8.5.1 The DAG Representation of Basic Blocks / 533 \\ 8.5.2 Finding Local Common Subexpressions / 534 \\ 8.5.3 Dead Code Elimination / 535 \\ 8.5.4 The Use of Algebraic Identities / 536 \\ 8.5.5 Representation of Array References / 537 \\ 8.5.6 Pointer Assignments and Procedure Calls / 539 \\ 8.5.7 Reassembling Basic Blocks From DAG's / 539 \\ 8.5.8 Exercises for Section 8.5 / 541 \\ 8.6 A Simple Code Generator / 542 \\ 8.6.1 Register and Address Descriptors / 543 \\ 8.6.2 The Code-Generation Algorithm / 544 \\ 8.6.3 Design of the Function {\em getReg} / 547 \\ 8.6.4 Exercises for Section 8.6 / 548 \\ 8.7 Peephole Optimization / 549 \\ 8.7.1 Eliminating Redundant Loads and Stores / 550 \\ 8.7.2 Eliminating Unreachable Code / 550 \\ 8.7.3 Flow-of-Control Optimizations / 551 \\ 8.7.4 Algebraic Simplification and Reduction in Strength / 552 \\ 8.7.5 Use of Machine Idioms / 552 \\ 8.7.6 Exercises for Section 8.7 / 553 \\ 8.8 Register Allocation and Assignment / 553 \\ 8.8.1 Global Register Allocation / 553 \\ 8.8.2 Usage Counts / 554 \\ 8.8.3 Register Assignment for Out er Loops / 556 \\ 8.8.4 Register Allocation by Graph Coloring / 556 \\ 8.8.5 Exercises for Section 8.8 / 557 \\ 8.9 Instruction Selection by Tree Rewriting / 558 \\ 8.9.1 Tree-Translation Schemes / 558 \\ 8.9.2 Code Generation by Tiling an Input Tree / 560 \\ 8.9.3 Pattern Matching by Parsing / 563 \\ 8.9.4 Routines for Semantic Checking / 565 \\ 8.9.5 General Tree Matching / 565 \\ 8.9.6 Exercises for Section 8.9 / 567 \\ 8.10 Optimal Code Generation for Expressions / 567 \\ 8.10.1 Ershov Numbers / 567 \\ 8.10.2 Generating Code From Labeled Expression Trees / 568 \\ 8.10.3 Evaluating Expressions with an Insufficient Supply of Registers / 570 \\ 8.10.4 Exercises for Section 8.10 / 572 \\ 8.11 Dynamic Programming Code-Generation / 573 \\ 8.11.1 Contiguous Evaluation / 574 \\ 8.11.2 The Dynamic Programming Algorithm / 575 \\ 8.11.3 Exercises for Section 8.11 / 577 \\ 8.12 Summary of Chapter 8 / 578 \\ 8.13 References for Chapter 8 / 579 \\ 9: Machine-Independent Optimizations / 583 \\ 9.1 The Principal Sources of Optimization / 584 \\ 9.1.1 Causes of Redundancy / 584 \\ 9.1.2 A Running Example: Quicksort / 585 \\ 9.1.3 Semantics-Preserving Transformations / 586 \\ 9.1.4 Global Common Subexpressions / 588 \\ 9.1.5 Copy Propagation / 590 \\ 9.1.6 Dead-Code Elimination / 591 \\ 9.1.7 Code Motion / 592 \\ 9.1.8 Induction Variables and Reduction in Strength / 592 \\ 9.1.9 Exercises for Section 9.1 / 596 \\ 9.2 Introduction to Data-Flow Analysis / 597 \\ 9.2.1 The Data-Flow Abstraction / 597 \\ 9.2.2 The Data-Flow Analysis Schema / 599 \\ 9.2.3 Data-Flow Schemas on Basic Blocks / 600 \\ 9.2.4 Reaching Definitions / 601 \\ 9.2.5 Live-Variable Analysis / 608 \\ 9.2.6 Available Expressions / 610 \\ 9.2.7 Summary / 614 \\ 9.2.8 Exercises for Section 9.2 / 615 \\ 9.3 Foundations of Data-Flow Analysis / 618 \\ 9.3.1 Semilattices / 618 \\ 9.3.2 Transfer Functions / 623 \\ 9.3.3 The Iterative Algorithm for General Frameworks / 626 \\ 9.3.4 Meaning of a Data-Flow Solution / 628 \\ 9.3.5 Exercises for Section 9.3 / 631 \\ 9.4 Constant Propagation / 632 \\ 9.4.1 Data-Flow Values for the Constant-Propagation Framework / 633 \\ 9.4.2 The Meet for the Constant-Propagation Framework / 633 \\ 9.4.3 Transfer Functions for the Constant-Propagation Framework / 634 \\ 9.4.4 Monotonicity of the Constant-Propagation Framework / 635 \\ 9.4.5 Nondistributivity of the Constant-Propagation Framework / 635 \\ 9.4.6 Interpretation of the Results / 637 \\ 9.4.7 Exercises for Section 9.4 / 637 \\ 9.5 Partial-Redundancy Elimination / 639 \\ 9.5.1 The Sources of Redundancy / 639 \\ 9.5.2 Can All Redundancy Be Eliminated? / 642 \\ 9.5.3 The Lazy-Code-Motion Problem / 644 \\ 9.5.4 Anticipation of Expressions / 645 \\ 9.5.5 The Lazy-Code-Motion Algorithm / 646 \\ 9.5.6 Exercises for Section 9.5 / 655 \\ 9.6 Loops in Flow Graphs / 655 \\ 9.6.1 Dominators / 656 \\ 9.6.2 Depth-First Ordering / 660 \\ 9.6.3 Edges in a Depth-First Spanning Tree / 661 \\ 9.6.4 Back Edges and Reducibility / 662 \\ 9.6.5 Depth of a Flow Graph / 665 \\ 9.6.6 Natural Loops / 665 \\ 9.6.7 Speed of Convergence of Iterative Data-Flow Algorithms / 667 \\ 9.6.8 Exercises for Section 9.6 / 669 \\ 9.7 Region-Based Analysis / 672 \\ 9.7.1 Regions / 672 \\ 9.7.2 Region Hierarchies for Reducible Flow Graphs / 673 \\ 9.7.3 Overview of a Region-Based Analysis / 676 \\ 9.7.4 Necessary Assumptions About Transfer Functions / 678 \\ 9.7.5 An Algorithm for Region-Based Analysis / 680 \\ 9.7.6 Handling Nonreducible Flow Graphs / 684 \\ 9.7.7 Exercises for Section 9.7 / 686 \\ 9.8 Symbolic Analysis / 686 \\ 9.8.1 Affine Expressions of Reference Variables / 687 \\ 9.8.2 Data-Flow Problem Formulation / 689 \\ 9.8.3 Region-Based Symbolic Analysis / 694 \\ 9.8.4 Exercises for Section 9.8 / 699 \\ 9.9 Summary of Chapter 9 / 700 \\ 9.10 References for Chapter 9 / 703 \\ 10: Instruction-Level Parallelism / 707 \\ 10.1 Processor Architectures / 708 \\ 10.1.1 Instruction Pipelines and Branch Delays / 708 \\ 10.1.2 Pipelined Execution / 709 \\ 10.1.3 Multiple Instruction Issue / 710 \\ 10.2 Code-Scheduling Constraints / 710 \\ 10.2.1 Data Dependence / 711 \\ 10.2.2 Finding Dependences Among Memory Accesses / 712 \\ 10.2.3 Tradeoff Between Register Usage and Parallelism. / 713 \\ 10.2.4 Phase Ordering Between Register Allocation and Code Scheduling / 716 \\ 10.2.5 Control Dependence / 716 \\ 10.2.6 Speculative Execution Support / 717 \\ 10.2.7 A Basic Machine Model / 719 \\ 10.2.8 Exercises for Section 10.2 / 720 \\ 10.3 Basic-Block Scheduling / 721 \\ 10.3.1 Data-Dependence Graphs / 722 \\ 10.3.2 List Scheduling of Basic Blocks / 723 \\ 10.3.3 Prioritized Topological Orders / 725 \\ 10.3.4 Exercises for Section 10.3 / 726 \\ 10.4 Global Code Scheduling / 727 \\ 10.4.1 Primitive Code Motion / 728 \\ 10.4.2 Upward Code Motion / 730 \\ 10.4.3 Downward Code Motion / 731 \\ 10.4.4 Updating Data Dependences / 732 \\ 10.4.5 Global Scheduling Algorithms / 732 \\ 10.4.6 Advanced Code Motion Techniques / 736 \\ 10.4.7 Interaction with Dynamic Schedulers / 737 \\ 10.4.8 Exercises for Section 10.4 / 737 \\ 10.5 Software Pipelining / 738 \\ 10.5.1 Introduction / 738 \\ 10.5.2 Software Pipelining of Loops / 740 \\ 10.5.3 Register Allocation and Code Generation / 743 \\ 10.5.4 Do-Across Loops / 743 \\ 10.5.5 Goals and Constraints of Software Pipelining / 745 \\ 10.5.6 A Software-Pipelining Algorithm / 749 \\ 10.5.7 Scheduling Acyclic Data-Dependence Graphs / 749 \\ 10.5.8 Scheduling Cyclic Dependence Graphs / 751 \\ 10.5.9 Improvements to the Pipelining Algorithms / 758 \\ 10.5.10 Modular Variable Expansion / 758 \\ 10.5.11 Conditional Statements / 761 \\ 10.5.12 Hardware Support for Software Pipelining / 762 \\ 10.5.13 Exercises for Section 10.5 / 763 \\ 10.6 Summary of Chapter 10 / 765 \\ 10.7 References for Chapter 10 / 766 \\ 11: Optimizing for Parallelism and Locality / 769 \\ 11.1 Basic Concepts / 771 \\ 11.1.1 Multiprocessors / 772 \\ 11.1.2 Parallelism in Applications / 773 \\ 11.1.3 Loop-Level Parallelism / 775 \\ 11.1.4 Data Locality / 777 \\ 11.1.5 Introduction to Affine Transform Theory / 778 \\ 11.2 Matrix Multiply: An In-Depth Example / 782 \\ 11.2.1 The Matrix-Multiplication Algorithm / 782 \\ 11.2.2 Optimizations / 785 \\ 11.2.3 Cache Interference / 788 \\ 11.2.4 Exercises for Section 11.2 / 788 \\ 11.3 Iteration Spaces / 788 \\ 11.3.1 Constructing Iteration Spaces from Loop Nests / 788 \\ 11.3.2 Execution Order for Loop Nests / 791 \\ 11.3.3 Matrix Formulation of Inequalities / 791 \\ 11.3.4 Incorporating Symbolic Constants / 793 \\ 11.3.5 Controlling the Order of Execution / 793 \\ 11.3.6 Changing Axes / 798 \\ 11.3.7 Exercises for Section 11.3 / 799 \\ 11.4 Affine Array Indexes / 801 \\ 11.4.1 Affine Accesses / 802 \\ 11.4.2 Affine and Nonaffine Accesses in Practice / 803 \\ 11.4.3 Exercises for Section 11.4 / 804 \\ 11.5 Data Reuse / 804 \\ 11.5.1 Types of Reuse / 805 \\ 11.5.2 Self Reuse / 806 \\ 11.5.3 Self-Spatial Reuse / 809 \\ 11.5.4 Group Reuse / 811 \\ 11.5.5 Exercises for Section 11.5 / 814 \\ 11.6 Array Data-Dependence Analysis / 815 \\ 11.6.1 Definition of Data Dependence of Array Accesses / 816 \\ 11.6.2 Integer Linear Programming / 817 \\ 11.6.3 The GCD Test / 818 \\ 11.6.4 Heuristics for Solving Integer Linear Programs / 820 \\ 11.6.5 Solving General Integer Linear Programs / 823 \\ 11.6.6 Summary / 825 \\ 11.6.7 Exercises for Section 11.6 / 826 \\ 11.7 Finding Synchronization-Free Parallelism / 828 \\ 11.7.1 An Introductory Example / 828 \\ 11.7.2 Affine Space Partitions / 830 \\ 11.7.3 Space-Partition Constraints / 831 \\ 11.7.4 Solving Space-Partition Constraints / 835 \\ 11.7.5 A Simple Code-Generation Algorithm / 838 \\ 11.7.6 Eliminating Empty Iterations / 841 \\ 11.7.7 Eliminating Tests from Innermost Loops / 844 \\ 11.7.8 Source-Code Transforms / 846 \\ 11.7.9 Exercises for Section 11.7 / 851 \\ 11.8 Synchronization Between Parallel Loops / 853 \\ 11.8.1 A Constant Number of Synchronizations / 853 \\ 11.8.2 Program-Dependence Graphs / 854 \\ 11.8.3 Hierarchical Time / 857 \\ 11.8.4 The Parallelization Algorithm / 859 \\ 11.8.5 Exercises for Section 11.8 / 860 \\ 11.9 Pipelining / 861 \\ 11.9.1 What is Pipelining? / 861 \\ 11.9.2 Successive Over-Relaxation (SOR): An Example / 863 \\ 11.9.3 Fully Permutable Loops / 864 \\ 11.9.4 Pipelining Fully Permutable Loops / 864 \\ 11.9.5 General Theory / 867 \\ 11.9.6 Time-Partition Constraints / 868 \\ 11.9.7 Solving Time-Partition Constraints by Farkas' Lemma / 872 \\ 11.9.8 Code Transformations / 875 \\ 11.9.9 Parallelism With Minimum Synchronization / 880 \\ 11.9.10 Exercises for Section 11.9 / 882 \\ 11.10 Locality Optimizations / 884 \\ 11.10.1 Temporal Locality of Computed Data / 885 \\ 11.10.2 Array Contraction / 885 \\ 11.10.3 Partition Interleaving / 887 \\ 11.10.4 Putting it All Together / 890 \\ 11.10.5 Exercises for Section 11.10 / 892 \\ 11.11 Other Uses of Affine Transforms / 893 \\ 11.11.1 Distributed memory machines / 894 \\ 11.11.2 Multi-Instruction-Issue Processors / 895 \\ 11.11.3 Vector and SIMD Instructions / 895 \\ 11.11.4 Prefetching / 896 \\ 11.12 Summary of Chapter 11 / 897 \\ 11.13 References for Chapter 11 / 899 \\ 12: Interprocedural Analysis / 903 \\ 12.1 Basic Concepts / 904 \\ 12.1.1 Call Graphs / 904 \\ 12.1.2 Context Sensitivity / 906 \\ 12.1.3 Call Strings / 908 \\ 12.1.4 Cloning-Based Context-Sensitive Analysis / 910 \\ 12.1.5 Summary-Based Context-Sensitive Analysis / 911 \\ 12.1.6 Exercises for Section 12.1 / 914 \\ 12.2 Why Interprocedural Analysis? / 916 \\ 12.2.1 Virtual Method Invocation / 916 \\ 12.2.2 Pointer Alias Analysis / 917 \\ 12.2.3 Parallelization / 917 \\ 12.2.4 Detection of Software Errors and Vulnerabilities / 917 \\ 12.2.5 SQL Injection / 918 \\ 12.2.6 Buffer Overflow / 920 \\ 12.3 A Logical Representation of Data Flow / 921 \\ 12.3.1 Introduction to Datalog / 921 \\ 12.3.2 Datalog Rules / 922 \\ 12.3.3 Intensional and Extensional Predicates / 924 \\ 12.3.4 Execution of Datalog Programs / 927 \\ 12.3.5 Incremental Evaluation of Datalog Programs / 928 \\ 12.3.6 Problematic Datalog Rules / 930 \\ 12.3.7 Exercises for Section 12.3 / 932 \\ 12.4 A Simple Pointer-Analysis Algorithm / 933 \\ 12.4.1 Why is Pointer Analysis Difficult / 934 \\ 12.4.2 A Model for Pointers and References / 935 \\ 12.4.3 Flow Insensitivity / 936 \\ 12.4.4 The Formulation in Datalog / 937 \\ 12.4.5 Using Type Information / 938 \\ 12.4.6 Exercises for Section 12.4 / 939 \\ 12.5 Context-Insensitive Interprocedural Analysis / 941 \\ 12.5.1 Effects of a Method Invocation / 941 \\ 12.5.2 Call Graph Discovery in Datalog / 943 \\ 12.5.3 Dynamic Loading and Reflection / 944 \\ 12.5.4 Exercises for Section 12.5 / 945 \\ 12.6 Context-Sensitive Pointer Analysis / 945 \\ 12.6.1 Contexts and Call Strings / 946 \\ 12.6.2 Adding Context to Datalog Rules / 949 \\ 12.6.3 Additional Observations About Sensitivity / 949 \\ 12.6.4 Exercises for Section 12.6 / 950 \\ 12.7 Datalog Implementation by BDD's / 951 \\ 12.7.1 Binary Decision Diagrams / 951 \\ 12.7.2 Transformations on BDD's / 953 \\ 12.7.3 Representing Relations by BDD's / 954 \\ 12.7.4 Relational Operations as BDD Operations / 954 \\ 12.7.5 Using BDD's for Points-to Analysis / 957 \\ 12.7.6 Exercises for Section 12.7 / 958 \\ 12.8 Summary of Chapter 12 / 958 \\ 12.9 References for Chapter 12 / 961 \\ A: A Complete Front End / 965 \\ A.1 The Source Language / 965 \\ A.2 Main / 966 \\ A.3 Lexical Analyzer / 967 \\ A.4 Symbol Tables and Types / 970 \\ A.5 Intermediate Code for Expressions / 971 \\ A.6 Jumping Code for Boolean Expressions / 974 \\ A.7 Intermediate Code for Statements / 978 \\ A.8 Parser / 981 \\ A.9 Creating the Front End / 986 \\ B: Finding Linearly Independent Solutions / 989 \\ Index / 993

entry:
@Book{Aho:2007:CPT,
  editor =       "Alfred V. Aho and Monica S. Lam and Ravi Sethi and
                 Jeffrey D. Ullman",
  title =        "Compilers: Principles, Techniques, and Tools",
  publisher =    "Pearson/Addison Wesley",
  address =      "Boston, MA, USA",
  edition =      "Second",
  pages =        "xxiv + 1009",
  year =         "2007",
  ISBN =         "0-321-48681-1 (hardcover), 0-321-49169-6 (paperback)",
  ISBN-13 =      "978-0-321-48681-3 (hardcover), 978-0-321-49169-5
                 (paperback)",
  LCCN =         "QA76.76.C65 A37 2007",
  bibdate =      "Tue Jan 30 16:21:16 MST 2007",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/master.bib;
                 https://www.math.utah.edu/pub/tex/bib/unix.bib;
                 z3950.loc.gov:7090/Voyager",
  URL =          "http://www.loc.gov/catdir/toc/ecip0618/2006024333.html",
  abstract =     "This new edition of the classic `Dragon' book has been
                 completely revised to include the most recent
                 developments to compiling. The book provides a thorough
                 introduction to compiler design and continues to
                 emphasize the applicability of compiler technology to a
                 broad range of problems in software design and
                 development. The first half of the book is designed for
                 use in an undergraduate compilers course while the
                 second half can be used in a graduate course stressing
                 code optimization.",
  acknowledgement = ack-nhfb,
  remark =       "Revised edition of \cite{Aho:1986:CPC}. This is
                 commonly called the ``purple dragon'' book, after its
                 colorful cover design.",
  shorttableofcontents = "1: Introduction / 1 \\
                 2: A Simple Syntax-Directed Translator / 39 \\
                 3: Lexical Analysis / 109 \\
                 4: Syntax Analysis / 191 \\
                 5: Syntax-Directed Translation / 303 \\
                 6: Intermediate-Code Generation / 357 \\
                 7: Run-Time Environments / 427 \\
                 8: Code Generation / 505 \\
                 9: Machine-Independent Optimizations / 583 \\
                 10: Instruction-Level Parallelism / 707 \\
                 11: Optimizing for Parallelism and Locality / 769 \\
                 12: Interprocedural Analysis / 903 \\
                 A: A Complete Front End / 965 \\
                 B: Finding Linearly Independent Solutions / 989 \\
                 Index / 993",
  subject =      "Compilers (Computer programs)",
  tableofcontents = "1: Introduction / 1 \\
                 1.1 Language Processors / 1 \\
                 1.1.1 Exercises for Section 1.1 / 3 \\
                 1.2 The Structure of a Compiler / 4 \\
                 1.2.1 Lexical Analysis / 5 \\
                 1.2.2 Syntax Analysis / 8 \\
                 1.2.3 Semantic Analysis / 8 \\
                 1.2.4 Intermediate Code Generation / 9 \\
                 1.2.5 Code Optimization / 10 \\
                 1.2.6 Code Generation / 10 \\
                 1.2.7 Symbol-Table Management / 11 \\
                 1.2.8 The Grouping of Phases into Passes / 11 \\
                 1.2.9 Compiler-Construction Tools / 12 \\
                 1.3 The Evolution of Programming Languages / 12 \\
                 1.3.1 The Move to Higher-level Languages / 13 \\
                 1.3.2 Impacts on Compilers / 14 \\
                 1.3.3 Exercises for Section 1.3 / 14 \\
                 1.4 The Science of Building a Compiler / 15 \\
                 1.4.1 Modeling in Compiler Design and Implementation /
                 15 \\
                 1.4.2 The Science of Code Optimization / 15 \\
                 1.5 Applications of Compiler Technology / 17 \\
                 1.5.1 Implementation of High-Level Programming
                 Languages / 17 \\
                 1.5.2 Optimizations for Computer Architectures / 19 \\
                 1.5.3 Design of New Computer Architectures / 21 \\
                 1.5.4 Program Translations / 22 \\
                 1.5.5 Software Productivity Tools / 23 \\
                 1.6 Programming Language Basics / 25 \\
                 1.6.1 The Static/Dynamic Distinction / 25 \\
                 1.6.2 Environments and States / 26 \\
                 1.6.3 Static Scope and Block Structure / 28 \\
                 1.6.4 Explicit Access Control / 31 \\
                 1.6.5 Dynamic Scope / 31 \\
                 1.6.6 Parameter Passing Mechanisms / 33 \\
                 1.6.7 Aliasing / 35 \\
                 1.6.8 Exercises for Section 1.6 / 35 \\
                 1.7 Summary of Chapter 1 / 36 \\
                 1.8 References for Chapter 1 / 38 \\
                 2: A Simple Syntax-Directed Translator / 39 \\
                 2.1 Introduction / 40 \\
                 2.2 Syntax Definition / 42 \\
                 2.2.1 Definition of Grammars / 42 \\
                 2.2.2 Derivations / 44 \\
                 2.2.3 Parse Trees / 45 \\
                 2.2.4 Ambiguity / 47 \\
                 2.2.5 Associativity of Operators / 48 \\
                 2.2.6 Precedence of Operators / 48 \\
                 2.2.7 Exercises for Section 2.2 / 51 \\
                 2.3 Syntax-Directed Translation / 52 \\
                 2.3.1 Postfix Notation / 53 \\
                 2.3.2 Synthesized Attributes / 54 \\
                 2.3.3 Simple Syntax-Directed Definitions / 56 \\
                 2.3.4 Tree Traversals / 56 \\
                 2.3.5 Translation Schemes / 57 \\
                 2.3.6 Exercises for Section 2.3 / 60 \\
                 2.4 Parsing / 60 \\
                 2.4.1 Top-Down Parsing / 61 \\
                 2.4.2 Predictive Parsing / 64 \\
                 2.4.3 When to Use $\epsilon$-Productions / 65 \\
                 2.4.4 Designing a Predictive Parser / 66 \\
                 2.4.5 Left Recursion / 67 \\
                 2.4.6 Exercises for Section 2.4 / 68 \\
                 2.5 A Translator for Simple Expressions / 68 \\
                 2.5.1 Abstract and Concrete Syntax / 69 \\
                 2.5.2 Adapting the Translation Scheme / 70 \\
                 2.5.3 Procedures for the Nonterminals / 72 \\
                 2.5.4 Simplifying the Translator / 73 \\
                 2.5.5 The Complete Program / 74 \\
                 2.6 Lexical Analysis / 76 \\
                 2.6.1 Removal of White Space and Comments / 77 \\
                 2.6.2 Reading Ahead / 78 \\
                 2.6.3 Constants / 78 \\
                 2.6.4 Recognizing Keywords and Identifiers / 79 \\
                 2.6.5 A Lexical Analyzer / 81 \\
                 2.6.6 Exercises for Section 2.6 / 84 \\
                 2.7 Symbol Tables / 85 \\
                 2.7.1 Symbol Table Per Scope / 86 \\
                 2.7.2 The Use of Symbol Tables / 89 \\
                 2.8 Intermediate Code Generation / 91 \\
                 2.8.1 Two Kinds of Intermediate Representations / 91
                 \\
                 2.8.2 Construction of Syntax Trees / 92 \\
                 2.8.3 Static Checking / 97 \\
                 2.8.4 Three-Address Code / 99 \\
                 2.8.5 Exercises for Section 2.8 / 105 \\
                 2.9 Summary of Chapter 2 / 105 \\
                 3: Lexical Analysis / 109 \\
                 3.1 The Role of the Lexical Analyzer / 109 \\
                 3.1.1 Lexical Analysis Versus Parsing / 110 \\
                 3.1.2 Tokens, Patterns, and Lexemes / 111 \\
                 3.1.3 Attributes for Tokens / 112 \\
                 3.1.4 Lexical Errors / 113 \\
                 3.1.5 Exercises for Section 3.1 / 114 \\
                 3.2 Input Buffering / 115 \\
                 3.2.1 Buffer Pairs / 115 \\
                 3.2.2 Sentinels / 116 \\
                 3.3 Specification of Tokens / 116 \\
                 3.3.1 Strings and Languages / 117 \\
                 3.3.2 Operations on Languages / 119 \\
                 3.3.3 Regular Expressions / 120 \\
                 3.3.4 Regular Definitions / 123 \\
                 3.3.5 Extensions of Regular Expressions / 124 \\
                 3.3.6 Exercises for Section 3.3 / 125 \\
                 3.4 Recognition of Tokens / 128 \\
                 3.4.1 Transition Diagrams / 130 \\
                 3.4.2 Recognition of Reserved Words and Identifiers /
                 132 \\
                 3.4.3 Completion of the Running Example / 133 \\
                 3.4.4 Architecture of a Transition-Diagram-Based
                 Lexical Analyzer / 134 \\
                 3.4.5 Exercises for Section 3.4 / 136 \\
                 3.5 The Lexical-Analyzer Generator Lex / 140 \\
                 3.5.1 Use of Lex / 140 \\
                 3.5.2 Structure of Lex Programs / 141 \\
                 3.5.3 Conflict Resolution in Lex / 144 \\
                 3.5.4 The Lookahead Operator / 144 \\
                 3.5.5 Exercises for Section 3.5 / 146 \\
                 3.6 Finite Automata / 147 \\
                 3.6.1 Nondeterministic Finite Automata / 147 \\
                 3.6.2 Transition Tables / 148 \\
                 3.6.3 Acceptance of Input Strings by Automata / 149 \\
                 3.6.4 Deterministic Finite Automata / 149 \\
                 3.6.5 Exercises for Section 3.6 / 151 \\
                 3.7 From Regular Expressions to Automata / 152 \\
                 3.7.1 Conversion of an NFA to a DFA / 152 \\
                 3.7.2 Simulation of an NFA / 156 \\
                 3.7.3 Efficiency of NFA Simulation / 157 \\
                 3.7.4 Construction of an NFA from a Regular Expression
                 / 159 \\
                 3.7.5 Efficiency of String-Processing Algorithms / 163
                 \\
                 3.7.6 Exercises for Section 3.7 / 166 \\
                 3.8 Design of a Lexical-Analyzer Generator / 166 \\
                 3.8.1 The Structure of the Generated Analyzer / 167 \\
                 3.8.2 Pattern Matching Based on NFA's / 168 \\
                 3.8.3 DFA's for Lexical Analyzers / 170 \\
                 3.8.4 Implementing the Lookahead Operator / 171 \\
                 3.8.5 Exercises for Section 3.8 / 172 \\
                 3.9 Optimization of DFA-Based Pattern Matchers / 173
                 \\
                 3.9.1 Important States of an NFA / 173 \\
                 3.9.2 Functions Computed From the Syntax Tree / 175 \\
                 3.9.3 Computing {\em nullable}, {\em firstpos}, and
                 {\em lastpos} / 176 \\
                 3.9.4 Computing {\em followpos} / 177 \\
                 3.9.5 Converting a Regular Expression Directly to a DFA
                 / 179 \\
                 3.9.6 Minimizing the Number of States of a DFA / 180
                 \\
                 3.9.7 State Minimization in Lexical Analyzers / 184 \\
                 3.9.8 Trading Time for Space in DFA Simulation / 185
                 \\
                 3.9.9 Exercises for Section 3.9 / 186 \\
                 3.10 Summary of Chapter 3 / 187 \\
                 3.11 References for Chapter 3 / 189 \\
                 4: Syntax Analysis / 191 \\
                 4.1 Introduction / 192 \\
                 4.1.1 The Role of the Parser / 192 \\
                 4.1.2 Representative Grammars / 193 \\
                 4.1.3 Syntax Error Handling / 194 \\
                 4.1.4 Error-Recovery Strategies / 195 \\
                 4.2 Context-Free Grammars / 197 \\
                 4.2.1 The Formal Definition of a Context-Free Grammar.
                 / 197 \\
                 4.2.2 Notational Conventions / 198 \\
                 4.2.3 Derivations / 199 \\
                 4.2.4 Parse Trees and Derivations / 201 \\
                 4.2.5 Ambiguity / 203 \\
                 4.2.6 Verifying the Language Generated by a Grammar /
                 204 \\
                 4.2.7 Context-Free Grammars Versus Regular Expressions
                 / 205 \\
                 4.2.8 Exercise for Section 4.2 / 206 \\
                 4.3 Writing a Grammar / 209 \\
                 4.3.1 Lexical Versus Syntactic Analysis / 209 \\
                 4.3.2 Eliminating Ambiguity / 210 \\
                 4.3.3 Elimination of Left Recursion / 212 \\
                 4.3.4 Left Factoring / 214 \\
                 4.3.5 Non-Context-Free Language Constructs / 215 \\
                 4.3.6 Exercises for Section 4.3 / 216 \\
                 4.4 Top-Down Parsing / 217 \\
                 4.4.1 Recursive-Descent Parsing / 219 \\
                 4.4.2 FIRST and FOLLOW / 220 \\
                 4.4.3 LL(l) Grammars / 222 \\
                 4.4.4 Nonrecursive Predictive Parsing / 226 \\
                 4.4.5 Error Recovery in Predictive Parsing / 228 \\
                 4.4.6 Exercises for Section 4.4 / 231 \\
                 4.5 Bottom-Up Parsing / 233 \\
                 4.5.1 Reductions / 234 \\
                 4.5.2 Handle Pruning / 235 \\
                 4.5.3 Shift-Reduce Parsing / 236 \\
                 4.5.4 Conflicts During Shift-Reduce Parsing / 238 \\
                 4.5.5 Exercises for Section 4.5 / 240 \\
                 4.6 Introduction to LR Parsing: Simple LR / 241 \\
                 4.6.1 Why LR Parsers? / 241 \\
                 4.6.2 Items and the LR(0) Automaton / 242 \\
                 4.6.3 The LR-Parsing Algorithm / 248 \\
                 4.6.4 Constructing SLR-Parsing Tables / 252 \\
                 4.6.5 Viable Prefixes / 256 \\
                 4.6.6 Exercises for Section 4.6 / 257 \\
                 4.7 More Powerful LR Parsers / 259 \\
                 4.7.1 Canonical LR(1) Items / 260 \\
                 4.7.2 Constructing LR(1) Sets of Items / 261 \\
                 4.7.3 Canonical LR(1) Parsing Tables / 265 \\
                 4.7.4 Constructing LALR Parsing Tables / 266 \\
                 4.7.5 Efficient Construction of LALR Parsing Tables /
                 270 \\
                 4.7.6 Compaction of LR Parsing Tables / 275 \\
                 4.7.7 Exercises for Section 4.7 / 277 \\
                 4.8 Using Ambiguous Grammars / 278 \\
                 4.8.1 Precedence and Associativity to Resolve Conflicts
                 / 279 \\
                 4.8.2 The ``Dangling-Else'' Ambiguity / 281 \\
                 4.8.3 Error Recovery in LR Parsing / 283 \\
                 4.8.4 Exercises for Section 4.8 / 285 \\
                 4.9 Parser Generators / 287 \\
                 4.9.1 The Parser Generator Yacc / 287 \\
                 4.9.2 Using Yacc with Ambiguous Grammars / 291 \\
                 4.9.3 Creating Yacc Lexical Analyzers with Lex / 294
                 \\
                 4.9.4 Error Recovery in Yacc / 295 \\
                 4.9.5 Exercises for Section 4.9 / 297 \\
                 4.10 Summary of Chapter 4 / 297 \\
                 4.11 References for Chapter 4 / 300 \\
                 5: Syntax-Directed Translation / 303 \\
                 5.1 Syntax-Directed Definitions / 304 \\
                 5.1.1 Inherited and Synthesized Attributes / 304 \\
                 5.1.2 Evaluating an SDD at the Nodes of a Parse Tree /
                 306 \\
                 5.1.3 Exercises for Section 5.1 / 309 \\
                 5.2 Evaluation Orders for SDD's / 310 \\
                 5.2.1 Dependency Graphs / 310 \\
                 5.2.2 Ordering the Evaluation of Attributes / 312 \\
                 5.2.3 S-Attributed Definitions / 312 \\
                 5.2.4 L-Attributed Definitions / 313 \\
                 5.2.5 Semantic Rules with Controlled Side Effects / 314
                 \\
                 5.2.6 Exercises for Section 5.2 / 317 \\
                 5.3 Applications of Syntax-Directed Translation / 318
                 \\
                 5.3.1 Construction of Syntax Trees / 318 \\
                 5.3.2 The Structure of a Type / 321 \\
                 5.3.3 Exercises for Section 5.3 / 323 \\
                 5.4 Syntax-Directed Translation Schemes / 324 \\
                 5.4.1 Postfix Translation Schemes / 324 \\
                 5.4.2 Parser-Stack Implementation of Postfix SDT's /
                 325 \\
                 5.4.3 SDT's With Actions Inside Productions / 327 \\
                 5.4.4 Eliminating Left Recursion From SDT 's / 328 \\
                 5.4.5 SDT's for L-Attributed Definitions / 331 \\
                 5.4.6 Exercises for Section 5.4 / 336 \\
                 5.5 Implementing L-Attributed SDD's / 337 \\
                 5.5.1 Translation During Recursive-Descent Parsing /
                 338 \\
                 5.5.2 On-The-Fly Code Generation / 340 \\
                 5.5.3 L-Attributed SDD's and LL Parsing / 343 \\
                 5.5.4 Bottom-Up Parsing of L-Attributed SDD's / 348 \\
                 5.5.5 Exercises for Section 5.5 / 352 \\
                 5.6 Summary of Chapter 5 / 353 \\
                 5.7 References for Chapter 5 / 354 \\
                 6: Intermediate-Code Generation / 357 \\
                 6.1 Variants of Syntax Trees / 358 \\
                 6.1.1 Directed Acyclic Graphs for Expressions / 359 \\
                 6.1.2 The Value-Number Method for Constructing DAG's /
                 360 \\
                 6.1.3 Exercises for Section 6.1 / 362 \\
                 6.2 Three-Address Code / 363 \\
                 6.2.1 Addresses and Instructions / 364 \\
                 6.2.2 Quadruples / 366 \\
                 6.2.3 Triples / 367 \\
                 6.2.4 Static Single-Assignment Form / 369 \\
                 6.2.5 Exercises for Section 6.2 / 370 \\
                 6.3 Types and Declarations / 370 \\
                 6.3.1 Type Expressions / 371 \\
                 6.3.2 Type Equivalence / 372 \\
                 6.3.3 Declarations / 373 \\
                 6.3.4 Storage Layout for Local Names / 373 \\
                 6.3.5 Sequences of Declarations / 376 \\
                 6.3.6 Fields in Records and Classes / 376 \\
                 6.3.7 Exercises for Section 6.3 / 378 \\
                 6.4 Translation of Expressions / 378 \\
                 6.4.1 Operations Within Expressions / 378 \\
                 6.4.2 Incremental Translation / 380 \\
                 6.4.3 Addressing Array Elements / 381 \\
                 6.4.4 Translation of Array References / 383 \\
                 6.4.5 Exercises for Section 6.4 / 384 \\
                 6.5 Type Checking / 386 \\
                 6.5.1 Rules for Type Checking / 387 \\
                 6.5.2 Type Conversions / 388 \\
                 6.5.3 Overloading of Functions and Operators / 390 \\
                 6.5.4 Type Inference and Polymorphic Functions / 391
                 \\
                 6.5.5 An Algorithm for Unification / 395 \\
                 6.5.6 Exercises for Section 6.5 / 398 \\
                 6.6 Control Flow / 399 \\
                 6.6.1 Boolean Expressions / 399 \\
                 6.6.2 Short-Circuit Code / 400 \\
                 6.6.3 Flow-of-Control Statements / 401 \\
                 6.6.4 Control-Flow Translation of Boolean Expressions /
                 403 \\
                 6.6.5 A voiding Redundant Gotos / 405 \\
                 6.6.6 Boolean Values and Jumping Code / 408 \\
                 6.6.7 Exercises for Section 6.6 / 408 \\
                 6.7 Backpatching / 410 \\
                 6.7.1 One-Pass Code Generation Using Backpatching / 410
                 \\
                 6.7.2 Backpatching for Boolean Expressions / 411 \\
                 6.7.3 Flow-of-Control Statements / 413 \\
                 6.7.4 Break-, Continue-, and Goto-Statements / 416 \\
                 6.7.5 Exercises for Section 6.7 / 417 \\
                 6.8 Switch-Statements / 418 \\
                 6.8.1 Translation of Switch-Statements / 419 \\
                 6.8.2 Syntax-Directed Translation of Switch-Statements
                 / 420 \\
                 6.8.3 Exercises for Section 6.8 / 421 \\
                 6.9 Intermediate Code for Procedures / 422 \\
                 6.10 Summary of Chapter 6 / 424 \\
                 6.11 References for Chapter 6 / 425 \\
                 7: Run-Time Environments / 427 \\
                 7.1 Storage Organization / 427 \\
                 7.1.1 Static Versus Dynamic Storage Allocation / 429
                 \\
                 7.2 Stack Allocation of Space / 430 \\
                 7.2.1 Activation Trees / 430 \\
                 7.2.2 Activation Records / 433 \\
                 7.2.3 Calling Sequences / 436 \\
                 7.2.4 Variable-Length Data on the Stack / 438 \\
                 7.2.5 Exercises for Section 7.2 / 440 \\
                 7.3 Access to Nonlocal Data on the Stack / 441 \\
                 7.3.1 Data Access Without Nested Procedures / 442 \\
                 7.3.2 Issues With Nested Procedures / 442 \\
                 7.3.3 A Language With Nested Procedure Declarations /
                 443 \\
                 7.3.4 Nesting Depth / 443 \\
                 7.3.5 Access Links / 445 \\
                 7.3.6 Manipulating Access Links / 447 \\
                 7.3.7 Access Links for Procedure Parameters / 448 \\
                 7.3.8 Displays / 449 \\
                 7.3.9 Exercises for Section 7.3 / 451 \\
                 7.4 Heap Management / 452 \\
                 7.4.1 The Memory Manager / 453 \\
                 7.4.2 The Memory Hierarchy of a Computer / 454 \\
                 7.4.3 Locality in Programs / 455 \\
                 7.4.4 Reducing Fragmentation / 457 \\
                 7.4.5 Manual Deallocation Requests / 460 \\
                 7.4.6 Exercises for Section 7.4 / 463 \\
                 7.5 Introduction to Garbage Collection / 463 \\
                 7.5.1 Design Goals for Garbage Collectors / 464 \\
                 7.5.2 Reachability / 466 \\
                 7.5.3 Reference Counting Garbage Collectors / 468 \\
                 7.5.4 Exercises for Section 7.5 / 470 \\
                 7.6 Introduction to Trace-Based Collection / 470 \\
                 7.6.1 A Basic Mark-and-Sweep Collector / 471 \\
                 7.6.2 Basic Abstraction / 473 \\
                 7.6.3 Optimizing Mark-and-Sweep / 475 \\
                 7.6.4 Mark-and-Compact Garbage Collectors / 476 \\
                 7.6.5 Copying collectors / 478 \\
                 7.6.6 Comparing Costs / 482 \\
                 7.6.7 Exercises for Section 7.6 / 482 \\
                 7.7 Short-Pause Garbage Collection / 483 \\
                 7.7.1 Incremental Garbage Collection / 483 \\
                 7.7.2 Incremental Reachability Analysis / 485 \\
                 7.7.3 Partial-Collection Basics / 487 \\
                 7.7.4 Generational Garbage Collection / 488 \\
                 7.7.5 The Train Algorithm / 490 \\
                 7.7.6 Exercises for Section 7.7 / 493 \\
                 7.8 Advanced Topics in Garbage Collection / 494 \\
                 7.8.1 Parallel and Concurrent Garbage Collection / 495
                 \\
                 7.8.2 Partial Object Relocation / 497 \\
                 7.8.3 Conservative Collection for Unsafe Languages /
                 498 \\
                 7.8.4 Weak References / 498 \\
                 7.8.5 Exercises for Section 7.8 / 499 \\
                 7.9 Summary of Chapter 7 / 500 \\
                 7.10 References for Chapter 7 / 502 \\
                 8: Code Generation / 505 \\
                 8.1 Issues in the Design of a Code Generator / 506 \\
                 8.1.1 Input to the Code Generator / 507 \\
                 8.1.2 The Target Program / 507 \\
                 8.1.3 Instruction Selection / 508 \\
                 8.1.4 Register Allocation / 510 \\
                 8.1.5 Evaluation Order / 511 \\
                 8.2 The Target Language / 512 \\
                 8.2.1 A Simple Target Machine Model / 512 \\
                 8.2.2 Program and Instruction Costs / 515 \\
                 8.2.3 Exercises for Section 8.2 / 516 \\
                 8.3 Addresses in the Target Code / 518 \\
                 8.3.1 Static Allocation / 518 \\
                 8.3.2 Stack Allocation / 520 \\
                 8.3.3 Run-Time Addresses for Names / 522 \\
                 8.3.4 Exercises for Section 8.3 / 524 \\
                 8.4 Basic Blocks and Flow Graphs / 525 \\
                 8.4.1 Basic Blocks / 526 \\
                 8.4.2 Next-Use Information / 528 \\
                 8.4.3 Flow Graphs / 529 \\
                 8.4.4 Representation of Flow Graphs / 530 \\
                 8.4.5 Loops / 531 \\
                 8.4.6 Exercises for Section 8.4 / 531 \\
                 8.5 Optimization of Basic Blocks / 533 \\
                 8.5.1 The DAG Representation of Basic Blocks / 533 \\
                 8.5.2 Finding Local Common Subexpressions / 534 \\
                 8.5.3 Dead Code Elimination / 535 \\
                 8.5.4 The Use of Algebraic Identities / 536 \\
                 8.5.5 Representation of Array References / 537 \\
                 8.5.6 Pointer Assignments and Procedure Calls / 539 \\
                 8.5.7 Reassembling Basic Blocks From DAG's / 539 \\
                 8.5.8 Exercises for Section 8.5 / 541 \\
                 8.6 A Simple Code Generator / 542 \\
                 8.6.1 Register and Address Descriptors / 543 \\
                 8.6.2 The Code-Generation Algorithm / 544 \\
                 8.6.3 Design of the Function {\em getReg} / 547 \\
                 8.6.4 Exercises for Section 8.6 / 548 \\
                 8.7 Peephole Optimization / 549 \\
                 8.7.1 Eliminating Redundant Loads and Stores / 550 \\
                 8.7.2 Eliminating Unreachable Code / 550 \\
                 8.7.3 Flow-of-Control Optimizations / 551 \\
                 8.7.4 Algebraic Simplification and Reduction in
                 Strength / 552 \\
                 8.7.5 Use of Machine Idioms / 552 \\
                 8.7.6 Exercises for Section 8.7 / 553 \\
                 8.8 Register Allocation and Assignment / 553 \\
                 8.8.1 Global Register Allocation / 553 \\
                 8.8.2 Usage Counts / 554 \\
                 8.8.3 Register Assignment for Out er Loops / 556 \\
                 8.8.4 Register Allocation by Graph Coloring / 556 \\
                 8.8.5 Exercises for Section 8.8 / 557 \\
                 8.9 Instruction Selection by Tree Rewriting / 558 \\
                 8.9.1 Tree-Translation Schemes / 558 \\
                 8.9.2 Code Generation by Tiling an Input Tree / 560 \\
                 8.9.3 Pattern Matching by Parsing / 563 \\
                 8.9.4 Routines for Semantic Checking / 565 \\
                 8.9.5 General Tree Matching / 565 \\
                 8.9.6 Exercises for Section 8.9 / 567 \\
                 8.10 Optimal Code Generation for Expressions / 567 \\
                 8.10.1 Ershov Numbers / 567 \\
                 8.10.2 Generating Code From Labeled Expression Trees /
                 568 \\
                 8.10.3 Evaluating Expressions with an Insufficient
                 Supply of Registers / 570 \\
                 8.10.4 Exercises for Section 8.10 / 572 \\
                 8.11 Dynamic Programming Code-Generation / 573 \\
                 8.11.1 Contiguous Evaluation / 574 \\
                 8.11.2 The Dynamic Programming Algorithm / 575 \\
                 8.11.3 Exercises for Section 8.11 / 577 \\
                 8.12 Summary of Chapter 8 / 578 \\
                 8.13 References for Chapter 8 / 579 \\
                 9: Machine-Independent Optimizations / 583 \\
                 9.1 The Principal Sources of Optimization / 584 \\
                 9.1.1 Causes of Redundancy / 584 \\
                 9.1.2 A Running Example: Quicksort / 585 \\
                 9.1.3 Semantics-Preserving Transformations / 586 \\
                 9.1.4 Global Common Subexpressions / 588 \\
                 9.1.5 Copy Propagation / 590 \\
                 9.1.6 Dead-Code Elimination / 591 \\
                 9.1.7 Code Motion / 592 \\
                 9.1.8 Induction Variables and Reduction in Strength /
                 592 \\
                 9.1.9 Exercises for Section 9.1 / 596 \\
                 9.2 Introduction to Data-Flow Analysis / 597 \\
                 9.2.1 The Data-Flow Abstraction / 597 \\
                 9.2.2 The Data-Flow Analysis Schema / 599 \\
                 9.2.3 Data-Flow Schemas on Basic Blocks / 600 \\
                 9.2.4 Reaching Definitions / 601 \\
                 9.2.5 Live-Variable Analysis / 608 \\
                 9.2.6 Available Expressions / 610 \\
                 9.2.7 Summary / 614 \\
                 9.2.8 Exercises for Section 9.2 / 615 \\
                 9.3 Foundations of Data-Flow Analysis / 618 \\
                 9.3.1 Semilattices / 618 \\
                 9.3.2 Transfer Functions / 623 \\
                 9.3.3 The Iterative Algorithm for General Frameworks /
                 626 \\
                 9.3.4 Meaning of a Data-Flow Solution / 628 \\
                 9.3.5 Exercises for Section 9.3 / 631 \\
                 9.4 Constant Propagation / 632 \\
                 9.4.1 Data-Flow Values for the Constant-Propagation
                 Framework / 633 \\
                 9.4.2 The Meet for the Constant-Propagation Framework /
                 633 \\
                 9.4.3 Transfer Functions for the Constant-Propagation
                 Framework / 634 \\
                 9.4.4 Monotonicity of the Constant-Propagation
                 Framework / 635 \\
                 9.4.5 Nondistributivity of the Constant-Propagation
                 Framework / 635 \\
                 9.4.6 Interpretation of the Results / 637 \\
                 9.4.7 Exercises for Section 9.4 / 637 \\
                 9.5 Partial-Redundancy Elimination / 639 \\
                 9.5.1 The Sources of Redundancy / 639 \\
                 9.5.2 Can All Redundancy Be Eliminated? / 642 \\
                 9.5.3 The Lazy-Code-Motion Problem / 644 \\
                 9.5.4 Anticipation of Expressions / 645 \\
                 9.5.5 The Lazy-Code-Motion Algorithm / 646 \\
                 9.5.6 Exercises for Section 9.5 / 655 \\
                 9.6 Loops in Flow Graphs / 655 \\
                 9.6.1 Dominators / 656 \\
                 9.6.2 Depth-First Ordering / 660 \\
                 9.6.3 Edges in a Depth-First Spanning Tree / 661 \\
                 9.6.4 Back Edges and Reducibility / 662 \\
                 9.6.5 Depth of a Flow Graph / 665 \\
                 9.6.6 Natural Loops / 665 \\
                 9.6.7 Speed of Convergence of Iterative Data-Flow
                 Algorithms / 667 \\
                 9.6.8 Exercises for Section 9.6 / 669 \\
                 9.7 Region-Based Analysis / 672 \\
                 9.7.1 Regions / 672 \\
                 9.7.2 Region Hierarchies for Reducible Flow Graphs /
                 673 \\
                 9.7.3 Overview of a Region-Based Analysis / 676 \\
                 9.7.4 Necessary Assumptions About Transfer Functions /
                 678 \\
                 9.7.5 An Algorithm for Region-Based Analysis / 680 \\
                 9.7.6 Handling Nonreducible Flow Graphs / 684 \\
                 9.7.7 Exercises for Section 9.7 / 686 \\
                 9.8 Symbolic Analysis / 686 \\
                 9.8.1 Affine Expressions of Reference Variables / 687
                 \\
                 9.8.2 Data-Flow Problem Formulation / 689 \\
                 9.8.3 Region-Based Symbolic Analysis / 694 \\
                 9.8.4 Exercises for Section 9.8 / 699 \\
                 9.9 Summary of Chapter 9 / 700 \\
                 9.10 References for Chapter 9 / 703 \\
                 10: Instruction-Level Parallelism / 707 \\
                 10.1 Processor Architectures / 708 \\
                 10.1.1 Instruction Pipelines and Branch Delays / 708
                 \\
                 10.1.2 Pipelined Execution / 709 \\
                 10.1.3 Multiple Instruction Issue / 710 \\
                 10.2 Code-Scheduling Constraints / 710 \\
                 10.2.1 Data Dependence / 711 \\
                 10.2.2 Finding Dependences Among Memory Accesses / 712
                 \\
                 10.2.3 Tradeoff Between Register Usage and Parallelism.
                 / 713 \\
                 10.2.4 Phase Ordering Between Register Allocation and
                 Code Scheduling / 716 \\
                 10.2.5 Control Dependence / 716 \\
                 10.2.6 Speculative Execution Support / 717 \\
                 10.2.7 A Basic Machine Model / 719 \\
                 10.2.8 Exercises for Section 10.2 / 720 \\
                 10.3 Basic-Block Scheduling / 721 \\
                 10.3.1 Data-Dependence Graphs / 722 \\
                 10.3.2 List Scheduling of Basic Blocks / 723 \\
                 10.3.3 Prioritized Topological Orders / 725 \\
                 10.3.4 Exercises for Section 10.3 / 726 \\
                 10.4 Global Code Scheduling / 727 \\
                 10.4.1 Primitive Code Motion / 728 \\
                 10.4.2 Upward Code Motion / 730 \\
                 10.4.3 Downward Code Motion / 731 \\
                 10.4.4 Updating Data Dependences / 732 \\
                 10.4.5 Global Scheduling Algorithms / 732 \\
                 10.4.6 Advanced Code Motion Techniques / 736 \\
                 10.4.7 Interaction with Dynamic Schedulers / 737 \\
                 10.4.8 Exercises for Section 10.4 / 737 \\
                 10.5 Software Pipelining / 738 \\
                 10.5.1 Introduction / 738 \\
                 10.5.2 Software Pipelining of Loops / 740 \\
                 10.5.3 Register Allocation and Code Generation / 743
                 \\
                 10.5.4 Do-Across Loops / 743 \\
                 10.5.5 Goals and Constraints of Software Pipelining /
                 745 \\
                 10.5.6 A Software-Pipelining Algorithm / 749 \\
                 10.5.7 Scheduling Acyclic Data-Dependence Graphs / 749
                 \\
                 10.5.8 Scheduling Cyclic Dependence Graphs / 751 \\
                 10.5.9 Improvements to the Pipelining Algorithms / 758
                 \\
                 10.5.10 Modular Variable Expansion / 758 \\
                 10.5.11 Conditional Statements / 761 \\
                 10.5.12 Hardware Support for Software Pipelining / 762
                 \\
                 10.5.13 Exercises for Section 10.5 / 763 \\
                 10.6 Summary of Chapter 10 / 765 \\
                 10.7 References for Chapter 10 / 766 \\
                 11: Optimizing for Parallelism and Locality / 769 \\
                 11.1 Basic Concepts / 771 \\
                 11.1.1 Multiprocessors / 772 \\
                 11.1.2 Parallelism in Applications / 773 \\
                 11.1.3 Loop-Level Parallelism / 775 \\
                 11.1.4 Data Locality / 777 \\
                 11.1.5 Introduction to Affine Transform Theory / 778
                 \\
                 11.2 Matrix Multiply: An In-Depth Example / 782 \\
                 11.2.1 The Matrix-Multiplication Algorithm / 782 \\
                 11.2.2 Optimizations / 785 \\
                 11.2.3 Cache Interference / 788 \\
                 11.2.4 Exercises for Section 11.2 / 788 \\
                 11.3 Iteration Spaces / 788 \\
                 11.3.1 Constructing Iteration Spaces from Loop Nests /
                 788 \\
                 11.3.2 Execution Order for Loop Nests / 791 \\
                 11.3.3 Matrix Formulation of Inequalities / 791 \\
                 11.3.4 Incorporating Symbolic Constants / 793 \\
                 11.3.5 Controlling the Order of Execution / 793 \\
                 11.3.6 Changing Axes / 798 \\
                 11.3.7 Exercises for Section 11.3 / 799 \\
                 11.4 Affine Array Indexes / 801 \\
                 11.4.1 Affine Accesses / 802 \\
                 11.4.2 Affine and Nonaffine Accesses in Practice / 803
                 \\
                 11.4.3 Exercises for Section 11.4 / 804 \\
                 11.5 Data Reuse / 804 \\
                 11.5.1 Types of Reuse / 805 \\
                 11.5.2 Self Reuse / 806 \\
                 11.5.3 Self-Spatial Reuse / 809 \\
                 11.5.4 Group Reuse / 811 \\
                 11.5.5 Exercises for Section 11.5 / 814 \\
                 11.6 Array Data-Dependence Analysis / 815 \\
                 11.6.1 Definition of Data Dependence of Array Accesses
                 / 816 \\
                 11.6.2 Integer Linear Programming / 817 \\
                 11.6.3 The GCD Test / 818 \\
                 11.6.4 Heuristics for Solving Integer Linear Programs /
                 820 \\
                 11.6.5 Solving General Integer Linear Programs / 823
                 \\
                 11.6.6 Summary / 825 \\
                 11.6.7 Exercises for Section 11.6 / 826 \\
                 11.7 Finding Synchronization-Free Parallelism / 828 \\
                 11.7.1 An Introductory Example / 828 \\
                 11.7.2 Affine Space Partitions / 830 \\
                 11.7.3 Space-Partition Constraints / 831 \\
                 11.7.4 Solving Space-Partition Constraints / 835 \\
                 11.7.5 A Simple Code-Generation Algorithm / 838 \\
                 11.7.6 Eliminating Empty Iterations / 841 \\
                 11.7.7 Eliminating Tests from Innermost Loops / 844 \\
                 11.7.8 Source-Code Transforms / 846 \\
                 11.7.9 Exercises for Section 11.7 / 851 \\
                 11.8 Synchronization Between Parallel Loops / 853 \\
                 11.8.1 A Constant Number of Synchronizations / 853 \\
                 11.8.2 Program-Dependence Graphs / 854 \\
                 11.8.3 Hierarchical Time / 857 \\
                 11.8.4 The Parallelization Algorithm / 859 \\
                 11.8.5 Exercises for Section 11.8 / 860 \\
                 11.9 Pipelining / 861 \\
                 11.9.1 What is Pipelining? / 861 \\
                 11.9.2 Successive Over-Relaxation (SOR): An Example /
                 863 \\
                 11.9.3 Fully Permutable Loops / 864 \\
                 11.9.4 Pipelining Fully Permutable Loops / 864 \\
                 11.9.5 General Theory / 867 \\
                 11.9.6 Time-Partition Constraints / 868 \\
                 11.9.7 Solving Time-Partition Constraints by Farkas'
                 Lemma / 872 \\
                 11.9.8 Code Transformations / 875 \\
                 11.9.9 Parallelism With Minimum Synchronization / 880
                 \\
                 11.9.10 Exercises for Section 11.9 / 882 \\
                 11.10 Locality Optimizations / 884 \\
                 11.10.1 Temporal Locality of Computed Data / 885 \\
                 11.10.2 Array Contraction / 885 \\
                 11.10.3 Partition Interleaving / 887 \\
                 11.10.4 Putting it All Together / 890 \\
                 11.10.5 Exercises for Section 11.10 / 892 \\
                 11.11 Other Uses of Affine Transforms / 893 \\
                 11.11.1 Distributed memory machines / 894 \\
                 11.11.2 Multi-Instruction-Issue Processors / 895 \\
                 11.11.3 Vector and SIMD Instructions / 895 \\
                 11.11.4 Prefetching / 896 \\
                 11.12 Summary of Chapter 11 / 897 \\
                 11.13 References for Chapter 11 / 899 \\
                 12: Interprocedural Analysis / 903 \\
                 12.1 Basic Concepts / 904 \\
                 12.1.1 Call Graphs / 904 \\
                 12.1.2 Context Sensitivity / 906 \\
                 12.1.3 Call Strings / 908 \\
                 12.1.4 Cloning-Based Context-Sensitive Analysis / 910
                 \\
                 12.1.5 Summary-Based Context-Sensitive Analysis / 911
                 \\
                 12.1.6 Exercises for Section 12.1 / 914 \\
                 12.2 Why Interprocedural Analysis? / 916 \\
                 12.2.1 Virtual Method Invocation / 916 \\
                 12.2.2 Pointer Alias Analysis / 917 \\
                 12.2.3 Parallelization / 917 \\
                 12.2.4 Detection of Software Errors and Vulnerabilities
                 / 917 \\
                 12.2.5 SQL Injection / 918 \\
                 12.2.6 Buffer Overflow / 920 \\
                 12.3 A Logical Representation of Data Flow / 921 \\
                 12.3.1 Introduction to Datalog / 921 \\
                 12.3.2 Datalog Rules / 922 \\
                 12.3.3 Intensional and Extensional Predicates / 924 \\
                 12.3.4 Execution of Datalog Programs / 927 \\
                 12.3.5 Incremental Evaluation of Datalog Programs / 928
                 \\
                 12.3.6 Problematic Datalog Rules / 930 \\
                 12.3.7 Exercises for Section 12.3 / 932 \\
                 12.4 A Simple Pointer-Analysis Algorithm / 933 \\
                 12.4.1 Why is Pointer Analysis Difficult / 934 \\
                 12.4.2 A Model for Pointers and References / 935 \\
                 12.4.3 Flow Insensitivity / 936 \\
                 12.4.4 The Formulation in Datalog / 937 \\
                 12.4.5 Using Type Information / 938 \\
                 12.4.6 Exercises for Section 12.4 / 939 \\
                 12.5 Context-Insensitive Interprocedural Analysis / 941
                 \\
                 12.5.1 Effects of a Method Invocation / 941 \\
                 12.5.2 Call Graph Discovery in Datalog / 943 \\
                 12.5.3 Dynamic Loading and Reflection / 944 \\
                 12.5.4 Exercises for Section 12.5 / 945 \\
                 12.6 Context-Sensitive Pointer Analysis / 945 \\
                 12.6.1 Contexts and Call Strings / 946 \\
                 12.6.2 Adding Context to Datalog Rules / 949 \\
                 12.6.3 Additional Observations About Sensitivity / 949
                 \\
                 12.6.4 Exercises for Section 12.6 / 950 \\
                 12.7 Datalog Implementation by BDD's / 951 \\
                 12.7.1 Binary Decision Diagrams / 951 \\
                 12.7.2 Transformations on BDD's / 953 \\
                 12.7.3 Representing Relations by BDD's / 954 \\
                 12.7.4 Relational Operations as BDD Operations / 954
                 \\
                 12.7.5 Using BDD's for Points-to Analysis / 957 \\
                 12.7.6 Exercises for Section 12.7 / 958 \\
                 12.8 Summary of Chapter 12 / 958 \\
                 12.9 References for Chapter 12 / 961 \\
                 A: A Complete Front End / 965 \\
                 A.1 The Source Language / 965 \\
                 A.2 Main / 966 \\
                 A.3 Lexical Analyzer / 967 \\
                 A.4 Symbol Tables and Types / 970 \\
                 A.5 Intermediate Code for Expressions / 971 \\
                 A.6 Jumping Code for Boolean Expressions / 974 \\
                 A.7 Intermediate Code for Statements / 978 \\
                 A.8 Parser / 981 \\
                 A.9 Creating the Front End / 986 \\
                 B: Finding Linearly Independent Solutions / 989 \\
                 Index / 993",
}


