View Source

h3. Summary

!http://blogs.sun.com/d/resource/book.jpg! The book _Solaris_ _Application_ _Programming_ was released January 2008.
!http://blogs.sun.com/d/resource/book_chinese.jpg! Chinese language version released June 2008.

h3. Publication details:
Pearson Media page: [http://vig.prenhall.com/catalog/academic/product/0,1144,0138134553,00.html]
Table of contents: [http://vig.prenhall.com/catalog/academic/product/0,1144,0138134553-TOC,00.html]
Preface: [http://vig.prenhall.com/catalog/academic/product/0,1144,0138134553-PRE,00.html]
Sample chapter: [http://www.sun.com/books/documents/solaris_app_programming_ch04.pdf]
Sun.com page: [http://www.sun.com/books/catalog/solaris_app_programming.xml]
Chinese version: [http://www.china-pub.com/39965]

h3. Author details:

About the author: [http://vig.prenhall.com/catalog/academic/product/0,1144,0138134553-ABI,00.html]
Author's blog: [http://blogs.sun.com/d/]

h3. Related wiki pages

[Application Performance Tuning|http://wikis.sun.com/display/AppPerfTuning]
[Solaris Developer|http://wikis.sun.com/display/SolarisDeveloper]
[Performance|http://wikis.sun.com/display/Performance/Home]

h3. Bibliography

||Processors||Software||
|[SPARC64 VI|http://www.fujitsu.com/downloads/SPARCE/others/sparc64vi-extensions.pdf]||
|[AMD64|http://www.amd.com/us-en/Processors/DevelopWithAMD/0,,30_2252_875_7044,00.html]||
|[UltraSPARC T2|http://opensparc-t2.sunsource.net/specs/OST2-UASuppl-current-draft-HP-EXT.pdf]||
|[UltraSPARC T1|http://opensparc-t1.sunsource.net/specs/UST1-UASuppl-current-draft-P-EXT.pdf]||
|[SPARC Architecture 2007|http://opensparc-t2.sunsource.net/specs/UA2007-current-draft-HP-EXT.pdf]||

h3. Errata for first printing of the book

Page 190. Example 7.14 - The formatting is broken, it should look more like:

{noformat}
(*((void(*)())dlsym(RTLD_NEXT, "exit")))(status);
}

double sin(double x) {
{noformat}

Page 186 Example 7.8 - The flag needs to be in quotes to avoid being interpreted by the shell

{noformat}
$ cc -o myapp -L. '-R$ORIGIN/../lib' -lmylib myapp.c
{noformat}

Page 335. Typo: "achive" should be "achieve".

Page 400. Example 12.28 is missing the following code:

{noformat}
#include <limits.h>
{noformat}

h3. Clarifications

page 399.

"This minimum stack size is held in the PTHREAD_STACK_MIN constant, which is defined in limits.h."
Actually PTHREAD_STACK_MIN is a macro which is declared in limits.h as:
{noformat}
#define PTHREAD_STACK_MIN ((size_t)_sysconf(_SC_THREAD_STACK_MIN))
{noformat}

It is available when limits.h is included and also the code is compiled with \_POSIX_C_SOURCE=199506L (or greater) - meaning that the code requires at least POSIX.1c. To get all possible compatible extensions enabled \_\_EXTENSIONS\_\_ can be defined on the compile line. More details on standards can be found in the [man pages |http://docs.sun.com/app/docs/doc/816-5175/6mbba7f3g?a=view] (`man standards`)

The individuals who post here are part of the extended Sun Microsystems community and they might not be employed or in any way formally affiliated with Sun Microsystems. The opinions expressed here are their own, are not necessarily reviewed in advance by anyone but the individual authors, and neither Sun nor any other party necessarily agrees with them.

Copyright 1994-2009 Sun Microsystems, Inc.
Powered by Atlassian Confluence
Sun Guidelines on Public Discourse Privacy Policy Terms of Use Trademarks Site Map Employment Investor Relations Contact