A Roadmap to the QNX Software Development Platform
Welcome to the QNX Software Development Platform
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
What is the QNX Software Development Platform?
Welcome to the QNX Software Development Platform
Choice, tools, source, and help
QNX Momentics at a glance
Additional components
QNX Aviage middleware
Getting started before you have your target
x86 (PC) target
x86 non-BIOS target
Any supported CPU family
Platform-related issues
A word about licensing
Getting Started
How QNX Momentics is organized
What's on my desktop?
Upgrading your software
Managing source code
Running QNX Neutrino self-hosted
Mixing a self-hosted machine with other hosts
Can different versions of QNX Momentics coexist?
QWinCfg for Windows hosts
qconfig utility for non-Windows hosts
Coexistence and the IDE
Running QNX Neutrino on a target machine
How to Get Help
Overview of the documentation
QNX Software Development Platform
QNX Momentics Tool Suite
QNX Neutrino Realtime Operating System
Photon microGUI
Advanced Graphics
Dinkum C and C++
Viewing the documentation
Within the IDE
The Photon Helpviewer
Keyword indexes
What should I read first?
During development (on your host)
At runtime (on your target)
Where key features are documented
Related reading
On QNX Neutrino
On POSIX
On TCP/IP
Getting quick help with the use command
Hover help in the IDE
Visit http://www.qnx.com
Support plans
Training
Custom engineering and consulting
Glossary
Quickstart Guide
10 Steps to Developing a QNX Program: Quickstart Guide
1. Requirements
2. Installing the QNX Software Development Platform on the development host
3. Installing the QNX Neutrino RTOS on the target system
4. Networking with QNX Neutrino
5. Creating a program project
6. Communicating with QNX Neutrino
7. Compiling and linking
8. Preparing to launch the program
9. Starting and debugging
10. Making the program your own
Installation Guide
About This Guide
Typographical conventions
Before you start
Getting started with the documentation
Technical support
QNX Neutrino Hosts
System requirements
BIOS settings
Installing QNX SDP
Activating QNX SDP
Activating automatically
Activating manually
Commercializing your evaluation software
Updating disk drivers
Uninstalling QNX SDP
Determining your base directory
Microsoft Windows Hosts
System requirements
Installing QNX SDP
Activating QNX SDP
Activating automatically
Activating manually
Important notes
Commercializing your evaluation software
Uninstalling QNX SDP
Determining your base directory
Linux Hosts
System requirements
Installing QNX SDP
Activating QNX SDP
Activating automatically
Activating manually
Commercializing your evaluation software
Uninstalling QNX SDP
Determining your base directory
Release Notes
QNX(R) Software Development Platform 6.5.0: Release Notes
Contents
What's new in QNX Neutrino 6.5.0?
Migrating from earlier releases
APIC-enabled devices
What's new: Kernel
Persistent Publish/Subscribe (PPS)
What's new: Licensing
What's new: Installing and booting
What's new: Startup
What's new: Core networking
What's new: Filesystems
io-blk.so redesign
Other filesystem changes
What's new: Graphics
Advanced Graphics
Composition Manager
Photon microGUI
What's new: Libraries and header files
What's new: Drivers
What's new: Audio device drivers (deva-*)
What's new: Block-oriented drivers (devb-*)
What's new: Character drivers (devc-*)
What's new: Graphics drivers (devg-*)
What's new: Human interface device drivers (devh-*)
What's new: Network drivers (devn-*, devnp-*)
What's new: Documentation
What's new: I/O devices
What's new: Security
Using the VMware image of a QNX Neutrino runtime system
What's new in the QNX Momentics Tool Suite?
What's new: Compiler, tools, and utilities
What's new: Integrated Development Environment
Debugging information for shipped binaries
Discontinued items
Experimental items
Known issues
Known issues: Installing and uninstalling
Known issues: Kernel
Known issues: Libraries and header files
Known issues: Filesystems
Known issues: Startup
Known issues: Adaptive partitioning
Known issues: Booting
Known issues: BSPs and DDKs
Known issues: Compiler, tools, and utilities
Known issues: Device drivers
Audio device drivers (deva-*)
Block-oriented drivers (devb-*)
Graphics drivers (devg-*)
Human interface device drivers (devh-*)
Network drivers (devn-*, devnp-*)
USB drivers (devu-*)
Flash filesystems & embedding
Known issues: IDE
Known issues: General
Known issues: Application Profiler perspective
Known issues: System Profiler perspective
Known issues: Memory Analysis perspective
Known issues: System Information perspective
Known issues: System Builder perspective
Known issues: C/C++ development
Known issues: Team/CVS
Known issues: Debugging
Known issues: Documentation
Known issues: Instant Device Activation
Known issues: I/O devices
Known issues: Multimedia
Known issues: Networking
Known issues: Graphics
Advanced Graphics
Photon microGUI
Known issues: Persistent Publish/Subscribe
Known issues: Runtime kit
Known issues: System Analysis Toolkit
Known issues: Host-specific
Windows hosts
Linux hosts
Known issues: Web browsers
Getting started with the documentation
Technical support
List of fixes
Software fixes
Documentation fixes
Welcome to the QNX Software Development Platform
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
What is the QNX Software Development Platform?
Welcome to the QNX Software Development Platform
Choice, tools, source, and help
QNX Momentics at a glance
Additional components
QNX Aviage middleware
Getting started before you have your target
x86 (PC) target
x86 non-BIOS target
Any supported CPU family
Platform-related issues
A word about licensing
Getting Started
How QNX Momentics is organized
What's on my desktop?
Upgrading your software
Managing source code
Running QNX Neutrino self-hosted
Mixing a self-hosted machine with other hosts
Can different versions of QNX Momentics coexist?
QWinCfg for Windows hosts
qconfig utility for non-Windows hosts
Coexistence and the IDE
Running QNX Neutrino on a target machine
How to Get Help
Overview of the documentation
QNX Software Development Platform
QNX Momentics Tool Suite
QNX Neutrino Realtime Operating System
Photon microGUI
Advanced Graphics
Dinkum C and C++
Viewing the documentation
Within the IDE
The Photon Helpviewer
Keyword indexes
What should I read first?
During development (on your host)
At runtime (on your target)
Where key features are documented
Related reading
On QNX Neutrino
On POSIX
On TCP/IP
Getting quick help with the use command
Hover help in the IDE
Visit http://www.qnx.com
Support plans
Training
Custom engineering and consulting
Glossary
Quickstart Guide
10 Steps to Developing a QNX Program: Quickstart Guide
1. Requirements
2. Installing the QNX Software Development Platform on the development host
3. Installing the QNX Neutrino RTOS on the target system
4. Networking with QNX Neutrino
5. Creating a program project
6. Communicating with QNX Neutrino
7. Compiling and linking
8. Preparing to launch the program
9. Starting and debugging
10. Making the program your own
Installation Guide
About This Guide
Typographical conventions
Before you start
Getting started with the documentation
Technical support
QNX Neutrino Hosts
System requirements
BIOS settings
Installing QNX SDP
Activating QNX SDP
Activating automatically
Activating manually
Commercializing your evaluation software
Updating disk drivers
Uninstalling QNX SDP
Determining your base directory
Microsoft Windows Hosts
System requirements
Installing QNX SDP
Activating QNX SDP
Activating automatically
Activating manually
Important notes
Commercializing your evaluation software
Uninstalling QNX SDP
Determining your base directory
Linux Hosts
System requirements
Installing QNX SDP
Activating QNX SDP
Activating automatically
Activating manually
Commercializing your evaluation software
Uninstalling QNX SDP
Determining your base directory
Release Notes
QNX(R) Software Development Platform 6.5.0: Release Notes
Contents
What's new in QNX Neutrino 6.5.0?
Migrating from earlier releases
APIC-enabled devices
What's new: Kernel
Persistent Publish/Subscribe (PPS)
What's new: Licensing
What's new: Installing and booting
What's new: Startup
What's new: Core networking
What's new: Filesystems
io-blk.so redesign
Other filesystem changes
What's new: Graphics
Advanced Graphics
Composition Manager
Photon microGUI
What's new: Libraries and header files
What's new: Drivers
What's new: Audio device drivers (deva-*)
What's new: Block-oriented drivers (devb-*)
What's new: Character drivers (devc-*)
What's new: Graphics drivers (devg-*)
What's new: Human interface device drivers (devh-*)
What's new: Network drivers (devn-*, devnp-*)
What's new: Documentation
What's new: I/O devices
What's new: Security
Using the VMware image of a QNX Neutrino runtime system
What's new in the QNX Momentics Tool Suite?
What's new: Compiler, tools, and utilities
What's new: Integrated Development Environment
Debugging information for shipped binaries
Discontinued items
Experimental items
Known issues
Known issues: Installing and uninstalling
Known issues: Kernel
Known issues: Libraries and header files
Known issues: Filesystems
Known issues: Startup
Known issues: Adaptive partitioning
Known issues: Booting
Known issues: BSPs and DDKs
Known issues: Compiler, tools, and utilities
Known issues: Device drivers
Audio device drivers (deva-*)
Block-oriented drivers (devb-*)
Graphics drivers (devg-*)
Human interface device drivers (devh-*)
Network drivers (devn-*, devnp-*)
USB drivers (devu-*)
Flash filesystems & embedding
Known issues: IDE
Known issues: General
Known issues: Application Profiler perspective
Known issues: System Profiler perspective
Known issues: Memory Analysis perspective
Known issues: System Information perspective
Known issues: System Builder perspective
Known issues: C/C++ development
Known issues: Team/CVS
Known issues: Debugging
Known issues: Documentation
Known issues: Instant Device Activation
Known issues: I/O devices
Known issues: Multimedia
Known issues: Networking
Known issues: Graphics
Advanced Graphics
Photon microGUI
Known issues: Persistent Publish/Subscribe
Known issues: Runtime kit
Known issues: System Analysis Toolkit
Known issues: Host-specific
Windows hosts
Linux hosts
Known issues: Web browsers
Getting started with the documentation
Technical support
List of fixes
Software fixes
Documentation fixes
Dinkum Documentation
Dinkum C++ Library
Dinkum C++ Library
Table of Contents
<algorithm>
adjacent_find
binary_search
copy
copy_backward
count
count_if
equal
equal_range
fill
fill_n
find
find_end
find_first_of
find_if
for_each
generate
generate_n
includes
inplace_merge
iter_swap
lexicographical_compare
lower_bound
make_heap
max
max_element
merge
min
min_element
mismatch
next_permutation
nth_element
partial_sort
partial_sort_copy
partition
pop_heap
prev_permutation
push_heap
random_shuffle
remove
remove_copy
remove_copy_if
remove_if
replace
replace_copy
replace_copy_if
replace_if
reverse
reverse_copy
rotate
rotate_copy
search
search_n
set_difference
set_intersection
set_symmetric_difference
set_union
sort
sort_heap
stable_partition
stable_sort
swap
swap_ranges
transform
unique
unique_copy
upper_bound
<bitset>
bitset
bitset::any
bitset::bitset
bitset::count
bitset::element_type
bitset::flip
bitset::none
bitset::operator!=
bitset::operator&=
bitset::operator<<
bitset::operator<<=
bitset::operator==
bitset::operator>>
bitset::operator>>=
bitset::operator[]
bitset::operator^=
bitset::operator OR=
bitset::operator~
bitset::reference
bitset::reset
bitset::set
bitset::size
bitset::test
bitset::to_string
bitset::to_ulong
operator&
operator OR
operator^
operator<<
operator>>
<complex>
abs
arg
complex
complex::complex
complex::imag
complex::operator*=
complex::operator+=
complex::operator-=
complex::operator/=
complex::operator=
complex::real
complex::value_type
complex<double>
complex<float>
complex<long double>
conj
cos
cosh
exp
imag
log
log10
norm
operator!=
operator*
operator+
operator-
operator/
operator<<
operator==
operator>>
polar
pow
real
sin
sinh
sqrt
__STD_COMPLEX
tan
tanh
<deque>
deque
deque::allocator_type
deque::assign
deque::at
deque::back
deque::begin
deque::clear
deque::const_iterator
deque::const_pointer
deque::const_reference
deque::const_reverse_iterator
deque::deque
deque::difference_type
deque::empty
deque::end
deque::erase
deque::front
deque::get_allocator
deque::insert
deque::iterator
deque::max_size
deque::operator[]
deque::pointer
deque::pop_back
deque::pop_front
deque::push_back
deque::push_front
deque::rbegin
deque::reference
deque::rend
deque::resize
deque::reverse_iterator
deque::size
deque::size_type
deque::swap
deque::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<exception>
bad_exception
exception
set_terminate
set_unexpected
terminate
terminate_handler
uncaught_exception
unexpected
unexpected_handler
<fstream>
basic_filebuf
basic_filebuf::basic_filebuf
basic_filebuf::char_type
basic_filebuf::close
basic_filebuf::int_type
basic_filebuf::is_open
basic_filebuf::off_type
basic_filebuf::open
basic_filebuf::overflow
basic_filebuf::pbackfail
basic_filebuf::pos_type
basic_filebuf::seekoff
basic_filebuf::seekpos
basic_filebuf::setbuf
basic_filebuf::sync
basic_filebuf::traits_type
basic_filebuf::underflow
basic_fstream
basic_fstream::basic_fstream
basic_fstream::close
basic_fstream::is_open
basic_fstream::open
basic_fstream::rdbuf
basic_ifstream
basic_ifstream::basic_ifstream
basic_ifstream::close
basic_ifstream::is_open
basic_ifstream::open
basic_ifstream::rdbuf
basic_ofstream
basic_ofstream::basic_ofstream
basic_ofstream::close
basic_ofstream::is_open
basic_ofstream::open
basic_ofstream::rdbuf
filebuf
fstream
ifstream
ofstream
wfstream
wifstream
wofstream
wfilebuf
<functional>
binary_function
binary_negate
bind1st
bind2nd
binder1st
binder2nd
const_mem_fun_t
const_mem_fun_ref_t
const_mem_fun1_t
const_mem_fun1_ref_t
divides
equal_to
greater
greater_equal
less
less_equal
logical_and
logical_not
logical_or
mem_fun
mem_fun_ref
mem_fun_t
mem_fun_ref_t
mem_fun1_t
mem_fun1_ref_t
minus
modulus
multiplies
negate
not1
not2
not_equal_to
plus
ptr_fun
unary_function
unary_negate
<hash_map>
hash_compare
hash_map
hash_map::allocator_type
hash_map::begin
hash_map::clear
hash_map::const_iterator
hash_map::const_pointer
hash_map::const_reference
hash_map::const_reverse_iterator
hash_map::count
hash_map::difference_type
hash_map::empty
hash_map::end
hash_map::equal_range
hash_map::erase
hash_map::find
hash_map::get_allocator
hash_map::hash_map
hash_map::insert
hash_map::iterator
hash_map::key_comp
hash_map::key_compare
hash_map::key_type
hash_map::lower_bound
hash_map::mapped_type
hash_map::max_size
hash_map::operator[]
hash_map::pointer
hash_map::rbegin
hash_map::reference
hash_map::rend
hash_map::reverse_iterator
hash_map::size
hash_map::size_type
hash_map::swap
hash_map::upper_bound
hash_map::value_comp
hash_map::value_compare
hash_map::value_type
hash_multimap
hash_multimap::allocator_type
hash_multimap::begin
hash_multimap::clear
hash_multimap::const_iterator
hash_multimap::const_pointer
hash_multimap::const_reference
hash_multimap::const_reverse_iterator
hash_multimap::count
hash_multimap::difference_type
hash_multimap::empty
hash_multimap::end
hash_multimap::equal_range
hash_multimap::erase
hash_multimap::find
hash_multimap::get_allocator
hash_multimap::hash_multimap
hash_multimap::insert
hash_multimap::iterator
hash_multimap::key_comp
hash_multimap::key_compare
hash_multimap::key_type
hash_multimap::lower_bound
hash_multimap::mapped_type
hash_multimap::max_size
hash_multimap::pointer
hash_multimap::rbegin
hash_multimap::reference
hash_multimap::rend
hash_multimap::reverse_iterator
hash_multimap::size
hash_multimap::size_type
hash_multimap::swap
hash_multimap::upper_bound
hash_multimap::value_comp
hash_multimap::value_compare
hash_multimap::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<hash_set>
hash_multiset
hash_multiset::allocator_type
hash_multiset::begin
hash_multiset::clear
hash_multiset::const_iterator
hash_multiset::const_pointer
hash_multiset::const_reference
hash_multiset::const_reverse_iterator
hash_multiset::count
hash_multiset::difference_type
hash_multiset::empty
hash_multiset::end
hash_multiset::equal_range
hash_multiset::erase
hash_multiset::find
hash_multiset::get_allocator
hash_multiset::hash_multiset
hash_multiset::insert
hash_multiset::iterator
hash_multiset::key_comp
hash_multiset::key_compare
hash_multiset::key_type
hash_multiset::lower_bound
hash_multiset::max_size
hash_multiset::pointer
hash_multiset::rbegin
hash_multiset::reference
hash_multiset::rend
hash_multiset::reverse_iterator
hash_multiset::size
hash_multiset::size_type
hash_multiset::swap
hash_multiset::upper_bound
hash_multiset::value_comp
hash_multiset::value_compare
hash_multiset::value_type
hash_set
hash_set::allocator_type
hash_set::begin
hash_set::clear
hash_set::const_iterator
hash_set::const_pointer
hash_set::const_reference
hash_set::const_reverse_iterator
hash_set::count
hash_set::difference_type
hash_set::empty
hash_set::end
hash_set::equal_range
hash_set::erase
hash_set::find
hash_set::get_allocator
hash_set::hash_set
hash_set::insert
hash_set::iterator
hash_set::key_comp
hash_set::key_compare
hash_set::key_type
hash_set::lower_bound
hash_set::max_size
hash_set::pointer
hash_set::rbegin
hash_set::reference
hash_set::rend
hash_set::reverse_iterator
hash_set::size
hash_set::size_type
hash_set::swap
hash_set::upper_bound
hash_set::value_comp
hash_set::value_compare
hash_set::value_type
swap
operator!=
operator==
operator<
operator<=
operator>
operator>=
<iomanip>
resetiosflags
setbase
setfill
setiosflags
setprecision
setw
<ios>
basic_ios
basic_ios::bad
basic_ios::basic_ios
basic_ios::char_type
basic_ios::clear
basic_ios::copyfmt
basic_ios::eof
basic_ios::exceptions
basic_ios::fail
basic_ios::fill
basic_ios::good
basic_ios::imbue
basic_ios::init
basic_ios::int_type
basic_ios::narrow
basic_ios::off_type
basic_ios::operator void *
basic_ios::operator!
basic_ios::pos_type
basic_ios::rdbuf
basic_ios::rdstate
basic_ios::setstate
basic_ios::tie
basic_ios::traits_type
basic_ios::widen
boolalpha
dec
fixed
fpos
fpos::fpos
fpos::operator!=
fpos::operator+
fpos::operator+=
fpos::operator-
fpos::operator-=
fpos::operator==
fpos::operator streamoff
fpos::state
hex
internal
ios
ios_base
ios_base::event
ios_base::failure
ios_base::flags
ios_base::fmtflags
ios_base::getloc
ios_base::imbue
ios_base::Init
ios_base::ios_base
ios_base::iostate
ios_base::iword
ios_base::openmode
ios_base::operator=
ios_base::precision
ios_base::pword
ios_base::seekdir
ios_base::setf
ios_base::streamoff
ios_base::streampos
ios_base::sync_with_stdio
ios_base::unsetf
ios_base::width
ios_base::xalloc
left
noboolalpha
noshowbase
noshowpoint
noshowpos
noskipws
nounitbuf
nouppercase
oct
right
scientific
showbase
showpoint
showpos
skipws
streamoff
streampos
streamsize
unitbuf
uppercase
wios
wstreampos
<iosfwd>
<iostream>
cerr
cin
clog
cout
wcerr
wcin
wclog
wcout
<istream>
basic_iostream
basic_istream
basic_istream::basic_istream
basic_istream::gcount
basic_istream::get
basic_istream::getline
basic_istream::ignore
basic_istream::operator>>
basic_istream::peek
basic_istream::putback
basic_istream::read
basic_istream::readsome
basic_istream::seekg
basic_istream::sentry
basic_istream::sync
basic_istream::tellg
basic_istream::unget
iostream
istream
operator>>
wiostream
wistream
ws
<iterator>
advance
back_insert_iterator
back_insert_iterator::back_insert_iterator
back_insert_iterator::operator*
back_insert_iterator::operator++
back_insert_iterator::operator=
back_inserter
bidirectional_iterator_tag
distance
forward_iterator_tag
front_insert_iterator
front_insert_iterator::front_insert_iterator
front_insert_iterator::operator*
front_insert_iterator::operator++
front_insert_iterator::operator=
front_inserter
input_iterator_tag
insert_iterator
insert_iterator::insert_iterator
insert_iterator::operator*
insert_iterator::operator++
insert_iterator::operator=
inserter
istream_iterator
istream_iterator::char_type
istream_iterator::istream_iterator
istream_iterator::istream_type
istream_iterator::operator*
istream_iterator::operator++
istream_iterator::traits_type
istreambuf_iterator
istreambuf_iterator::char_type
istreambuf_iterator::equal
istreambuf_iterator::int_type
istreambuf_iterator::istream_type
istreambuf_iterator::istreambuf_iterator
istreambuf_iterator::operator*
istreambuf_iterator::operator++
istreambuf_iterator::streambuf_type
istreambuf_iterator::traits_type
iterator
iterator_traits
operator!=
operator==
operator<
operator<=
operator>
operator>=
operator+
operator-
ostream_iterator
ostream_iterator::char_type
ostream_iterator::operator*
ostream_iterator::operator++
ostream_iterator::operator=
ostream_iterator::ostream_iterator
ostream_iterator::ostream_type
ostream_iterator::traits_type
ostreambuf_iterator
ostreambuf_iterator::char_type
ostreambuf_iterator::failed
ostreambuf_iterator::operator*
ostreambuf_iterator::operator++
ostreambuf_iterator::operator=
ostreambuf_iterator::ostream_type
ostreambuf_iterator::ostreambuf_iterator
ostreambuf_iterator::streambuf_type
ostreambuf_iterator::traits_type
output_iterator_tag
random_access_iterator_tag
reverse_iterator
reverse_iterator::base
reverse_iterator::operator*
reverse_iterator::operator+
reverse_iterator::operator++
reverse_iterator::operator+=
reverse_iterator::operator-
reverse_iterator::operator--
reverse_iterator::operator-=
reverse_iterator::operator->
reverse_iterator::operator[]
<limits>
float_denorm_style
float_round_style
numeric_limits
<list>
list
list::allocator_type
list::assign
list::back
list::begin
list::clear
list::const_iterator
list::const_pointer
list::const_reference
list::const_reverse_iterator
list::difference_type
list::empty
list::end
list::erase
list::front
list::get_allocator
list::insert
list::iterator
list::list
list::max_size
list::merge
list::pointer
list::pop_back
list::pop_front
list::push_back
list::push_front
list::rbegin
list::reference
list::remove
list::remove_if
list::rend
list::resize
list::reverse
list::reverse_iterator
list::size
list::size_type
list::sort
list::splice
list::swap
list::unique
list::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<locale>
codecvt
codecvt::always_noconv
codecvt::codecvt
codecvt::do_always_noconv
codecvt::do_encoding
codecvt::do_in
codecvt::do_length
codecvt::do_max_length
codecvt::do_out
codecvt::do_unshift
codecvt::extern_type
codecvt::in
codecvt::intern_type
codecvt::length
codecvt::encoding
codecvt::max_length
codecvt::out
codecvt::state_type
codecvt::unshift
codecvt_base
codecvt_byname
collate
collate::char_type
collate::collate
collate::compare
collate::do_compare
collate::do_hash
collate::do_transform
collate::hash
collate::string_type
collate::transform
collate_byname
ctype
ctype::char_type
ctype::ctype
ctype::do_is
ctype::do_narrow
ctype::do_scan_is
ctype::do_scan_not
ctype::do_tolower
ctype::do_toupper
ctype::do_widen
ctype::is
ctype::narrow
ctype::scan_is
ctype::scan_not
ctype::tolower
ctype::toupper
ctype::widen
ctype<char>
ctype_base
ctype_byname
has_facet
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
locale
locale::category
locale::classic
locale::combine
locale::facet
locale::global
locale::id
locale::locale
locale::name
locale::operator!=
locale::operator()
locale::operator==
messages
messages::char_type
messages::close
messages::do_close
messages::do_get
messages::do_open
messages::get
messages::messages
messages::open
messages::string_type
messages_base
messages_byname
money_base
money_get
money_get::char_type
money_get::do_get
money_get::get
money_get::iter_type
money_get::money_get
money_get::string_type
money_put
money_put::char_type
money_put::do_put
money_put::put
money_put::iter_type
money_put::money_put
money_put::string_type
moneypunct
moneypunct::char_type
moneypunct::curr_symbol
moneypunct::decimal_point
moneypunct::do_curr_symbol
moneypunct::do_decimal_point
moneypunct::do_frac_digits
moneypunct::do_grouping
moneypunct::do_neg_format
moneypunct::do_negative_sign
moneypunct::do_pos_format
moneypunct::do_positive_sign
moneypunct::do_thousands_sep
moneypunct::frac_digits
moneypunct::grouping
moneypunct::moneypunct
moneypunct::neg_format
moneypunct::negative_sign
moneypunct::pos_format
moneypunct::positive_sign
moneypunct::string_type
moneypunct::thousands_sep
moneypunct_byname
num_get
num_get::char_type
num_get::do_get
num_get::get
num_get::iter_type
num_get::num_get
num_put
num_put::char_type
num_put::do_put
num_put::put
num_put::iter_type
num_put::num_put
numpunct
numpunct::char_type
numpunct::decimal_point
numpunct::do_decimal_point
numpunct::do_falsename
numpunct::do_grouping
numpunct::do_thousands_sep
numpunct::do_truename
numpunct::falsename
numpunct::grouping
numpunct::numpunct
numpunct::string_type
numpunct::thousands_sep
numpunct::truename
numpunct_byname
time_base
time_get
time_get::char_type
time_get::date_order
time_get::do_date_order
time_get::do_get_date
time_get::do_get_month
time_get::do_get_time
time_get::do_get_weekday
time_get::do_get_year
time_get::get_date
time_get::get_month
time_get::get_time
time_get::get_weekday
time_get::get_year
time_get::iter_type
time_get::time_get
time_get_byname
time_put
time_put::char_type
time_put::do_put
time_put::put
time_put::iter_type
time_put::time_put
time_put_byname
tolower
toupper
use_facet
<map>
map
map::allocator_type
map::begin
map::clear
map::const_iterator
map::const_pointer
map::const_reference
map::const_reverse_iterator
map::count
map::difference_type
map::empty
map::end
map::equal_range
map::erase
map::find
map::get_allocator
map::insert
map::iterator
map::key_comp
map::key_compare
map::key_type
map::lower_bound
map::map
map::mapped_type
map::max_size
map::operator[]
map::pointer
map::rbegin
map::reference
map::rend
map::reverse_iterator
map::size
map::size_type
map::swap
map::upper_bound
map::value_comp
map::value_compare
map::value_type
multimap
multimap::allocator_type
multimap::begin
multimap::clear
multimap::const_iterator
multimap::const_pointer
multimap::const_reference
multimap::const_reverse_iterator
multimap::count
multimap::difference_type
multimap::empty
multimap::end
multimap::equal_range
multimap::erase
multimap::find
multimap::get_allocator
multimap::insert
multimap::iterator
multimap::key_comp
multimap::key_compare
multimap::key_type
multimap::lower_bound
multimap::mapped_type
multimap::max_size
multimap::multimap
multimap::pointer
multimap::rbegin
multimap::reference
multimap::rend
multimap::reverse_iterator
multimap::size
multimap::size_type
multimap::swap
multimap::upper_bound
multimap::value_comp
multimap::value_compare
multimap::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<memory>
allocator
allocator::const_reference
allocator::construct
allocator::destroy
allocator::pointer
allocator::rebind
allocator::reference
allocator::value_type
allocator<void>
auto_ptr
auto_ptr::auto_ptr
auto_ptr::~auto_ptr
auto_ptr::element_type
auto_ptr::get
auto_ptr::operator=
auto_ptr::operator*
auto_ptr::operator->
auto_ptr::operator auto_ptr<Other>
auto_ptr::operator auto_ptr_ref<Other>
auto_ptr::release
auto_ptr::reset
auto_ptr_ref
get_temporary_buffer
operator!=
operator==
uninitialized_copy
uninitialized_fill
uninitialized_fill_n
<new>
bad_alloc
new_handler
nothrow
nothrow_t
operator delete
operator delete[]
operator new
operator new[]
set_new_handler
<numeric>
accumulate
adjacent_difference
inner_product
partial_sum
<ostream>
basic_ostream
basic_ostream::basic_ostream
basic_ostream::flush
basic_ostream::operator<<
basic_ostream::put
basic_ostream::seekp
basic_ostream::sentry
basic_ostream::tellp
basic_ostream::write
endl
ends
flush
operator<<
ostream
wostream
<queue>
operator!=
operator==
operator<
operator<=
operator>
operator>=
priority_queue
priority_queue::container_type
priority_queue::empty
priority_queue::pop
priority_queue::priority_queue
priority_queue::push
priority_queue::size
priority_queue::size_type
priority_queue::top
priority_queue::value_type
queue
queue::back
queue::container_type
queue::empty
queue::front
queue::pop
queue::push
queue::queue
queue::size
queue::size_type
queue::value_type
<set>
multiset
multiset::allocator_type
multiset::begin
multiset::clear
multiset::const_iterator
multiset::const_pointer
multiset::const_reference
multiset::const_reverse_iterator
multiset::count
multiset::difference_type
multiset::empty
multiset::end
multiset::equal_range
multiset::erase
multiset::find
multiset::get_allocator
multiset::insert
multiset::iterator
multiset::key_comp
multiset::key_compare
multiset::key_type
multiset::lower_bound
multiset::multiset
multiset::max_size
multiset::pointer
multiset::rbegin
multiset::reference
multiset::rend
multiset::reverse_iterator
multiset::size
multiset::size_type
multiset::swap
multiset::upper_bound
multiset::value_comp
multiset::value_compare
multiset::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
set
set::allocator_type
set::begin
set::clear
set::const_iterator
set::const_pointer
set::const_reference
set::const_reverse_iterator
set::count
set::difference_type
set::empty
set::end
set::equal_range
set::erase
set::find
set::get_allocator
set::insert
set::iterator
set::key_comp
set::key_compare
set::key_type
set::lower_bound
set::max_size
set::pointer
set::rbegin
set::reference
set::rend
set::reverse_iterator
set::set
set::size
set::size_type
set::swap
set::upper_bound
set::value_comp
set::value_compare
set::value_type
swap
<slist>
operator!=
operator==
operator<
operator<=
operator>
operator>=
slist
slist::allocator_type
slist::assign
slist::back
slist::begin
slist::clear
slist::const_iterator
slist::const_pointer
slist::const_reference
slist::difference_type
slist::empty
slist::end
slist::erase
slist::front
slist::get_allocator
slist::insert
slist::iterator
slist::max_size
slist::merge
slist::pointer
slist::pop_back
slist::pop_front
slist::previous
slist::push_back
slist::push_front
slist::reference
slist::remove
slist::remove_if
slist::resize
slist::reverse
slist::size
slist::size_type
slist::slist
slist::sort
slist::splice
slist::swap
slist::unique
slist::value_type
swap
<sstream>
basic_stringbuf
basic_stringbuf::allocator_type
basic_stringbuf::basic_stringbuf
basic_stringbuf::char_type
basic_stringbuf::int_type
basic_stringbuf::off_type
basic_stringbuf::overflow
basic_stringbuf::pbackfail
basic_stringbuf::pos_type
basic_stringbuf::seekoff
basic_stringbuf::seekpos
basic_stringbuf::str
basic_stringbuf::traits_type
basic_stringbuf::underflow
basic_istringstream
basic_istringstream::allocator_type
basic_istringstream::basic_istringstream
basic_istringstream::rdbuf
basic_istringstream::str
basic_ostringstream
basic_ostringstream::allocator_type
basic_ostringstream::basic_ostringstream
basic_ostringstream::rdbuf
basic_ostringstream::str
basic_stringstream
basic_stringstream::allocator_type
basic_stringstream::basic_stringstream
basic_stringstream::rdbuf
basic_stringstream::str
istringstream
ostringstream
stringbuf
stringstream
wistringstream
wostringstream
wstringbuf
wstringstream
<stack>
operator!=
operator==
operator<
operator<=
operator>
operator>=
stack
stack::container_type
stack::empty
stack::pop
stack::push
stack::size
stack::size_type
stack::stack
stack::top
stack::value_type
<stdexcept>
domain_error
invalid_argument
length_error
logic_error
out_of_range
overflow_error
range_error
runtime_error
underflow_error
<streambuf>
basic_streambuf
basic_streambuf::basic_streambuf
basic_streambuf::char_type
basic_streambuf::eback
basic_streambuf::egptr
basic_streambuf::epptr
basic_streambuf::gbump
basic_streambuf::getloc
basic_streambuf::gptr
basic_streambuf::imbue
basic_streambuf::in_avail
basic_streambuf::int_type
basic_streambuf::off_type
basic_streambuf::overflow
basic_streambuf::pbackfail
basic_streambuf::pbase
basic_streambuf::pbump
basic_streambuf::pos_type
basic_streambuf::pptr
basic_streambuf::pubimbue
basic_streambuf::pubseekoff
basic_streambuf::pubseekpos
basic_streambuf::pubsetbuf
basic_streambuf::pubsync
basic_streambuf::sbumpc
basic_streambuf::seekoff
basic_streambuf::seekpos
basic_streambuf::setbuf
basic_streambuf::setg
basic_streambuf::setp
basic_streambuf::sgetc
basic_streambuf::sgetn
basic_streambuf::showmanyc
basic_streambuf::snextc
basic_streambuf::sputbackc
basic_streambuf::sputc
basic_streambuf::sputn
basic_streambuf::stossc
basic_streambuf::sungetc
basic_streambuf::sync
basic_streambuf::traits_type
basic_streambuf::uflow
basic_streambuf::underflow
basic_streambuf::xsgetn
basic_streambuf::xsputn
streambuf
wstreambuf
<string>
basic_string
basic_string::allocator_type
basic_string::append
basic_string::assign
basic_string::at
basic_string::basic_string
basic_string::begin
basic_string::c_str
basic_string::capacity
basic_string::clear
basic_string::compare
basic_string::const_iterator
basic_string::const_pointer
basic_string::const_reference
basic_string::const_reverse_iterator
basic_string::copy
basic_string::data
basic_string::difference_type
basic_string::empty
basic_string::end
basic_string::erase
basic_string::find
basic_string::find_first_not_of
basic_string::find_first_of
basic_string::find_last_not_of
basic_string::find_last_of
basic_string::get_allocator
basic_string::insert
basic_string::iterator
basic_string::length
basic_string::max_size
basic_string::npos
basic_string::operator+=
basic_string::operator=
basic_string::operator[]
basic_string::pointer
basic_string::push_back
basic_string::rbegin
basic_string::reference
basic_string::rend
basic_string::replace
basic_string::reserve
basic_string::resize
basic_string::reverse_iterator
basic_string::rfind
basic_string::size
basic_string::size_type
basic_string::substr
basic_string::swap
basic_string::traits_type
basic_string::value_type
char_traits
char_traits::assign
char_traits::char_type
char_traits::compare
char_traits::copy
char_traits::eof
char_traits::eq
char_traits::eq_int_type
char_traits::find
char_traits::int_type
char_traits::length
char_traits::lt
char_traits::move
char_traits::not_eof
char_traits::off_type
char_traits::pos_type
char_traits::state_type
char_traits::to_char_type
char_traits::to_int_type
char_traits<char>
char_traits<wchar_t>
getline
operator+
operator!=
operator==
operator<
operator<<
operator<=
operator>
operator>=
operator>>
string
swap
wstring
<strstream>
strstreambuf
strstreambuf::freeze
strstreambuf::pcount
strstreambuf::overflow
strstreambuf::pbackfail
strstreambuf::seekoff
strstreambuf::seekpos
strstreambuf::str
strstreambuf::strstreambuf
strstreambuf::underflow
istrstream
istrstream::istrstream
istrstream::rdbuf
istrstream::str
ostrstream
ostrstream::freeze
ostrstream::ostrstream
ostrstream::pcount
ostrstream::rdbuf
ostrstream::str
strstream
strstream::freeze
strstream::pcount
strstream::strstream
strstream::rdbuf
strstream::str
<typeinfo>
bad_cast
bad_typeid
type_info
type_info::before
type_info::name
<utility>
make_pair
operator!=
operator==
operator<
operator<=
operator>
operator>=
pair
<valarray>
abs
acos
asin
atan
atan2
cos
cosh
exp
gslice
gslice::gslice
gslice::size
gslice::start
gslice::stride
gslice_array
indirect_array
log
log10
mask_array
operator!=
operator%
operator&
operator&&
operator>
operator>>
operator>=
operator<
operator<<
operator<=
operator*
operator+
operator-
operator/
operator==
operator^
operator OR
operator OR OR
pow
sin
sinh
slice
slice::slice
slice::size
slice::start
slice::stride
slice_array
sqrt
tan
tanh
valarray
valarray::apply
valarray::cshift
valarray::max
valarray::min
valarray::operator!
valarray::operator%=
valarray::operator&=
valarray::operator>>=
valarray::operator<<=
valarray::operator*=
valarray::operator+
valarray::operator+=
valarray::operator-
valarray::operator-=
valarray::operator/=
valarray::operator=
valarray::operator[]
valarray::operator^=
valarray::operator OR=
valarray::operator~
valarray::resize
valarray::shift
valarray::size
valarray::sum
valarray::valarray
valarray::value_type
valarray<bool>
<vector>
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
vector
vector::allocator_type
vector::assign
vector::at
vector::back
vector::begin
vector::capacity
vector::clear
vector::const_iterator
vector::const_pointer
vector::const_reference
vector::const_reverse_iterator
vector::difference_type
vector::empty
vector::end
vector::erase
vector::front
vector::get_allocator
vector::insert
vector::iterator
vector::max_size
vector::operator[]
vector::pointer
vector::pop_back
vector::push_back
vector::rbegin
vector::reference
vector::rend
vector::reserve
vector::resize
vector::reverse_iterator
vector::size
vector::size_type
vector::swap
vector::value_type
vector::vector
<cassert>
<cctype>
<cerrno>
<cfloat>
<ciso646>
<climits>
<clocale>
<cmath>
<csetjmp>
<csignal>
<cstdarg>
<cstddef>
<cstdio>
<cstdlib>
<cstring>
<ctime>
<cwchar>
<cwctype>
<assert.h>
assert
<ctype.h>
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
tolower
toupper
<errno.h>
EDOM
EILSEQ
ERANGE
errno
<float.h>
DBL_DIG
DBL_EPSILON
DBL_MANT_DIG
DBL_MAX
DBL_MAX_10_EXP
DBL_MAX_EXP
DBL_MIN
DBL_MIN_10_EXP
DBL_MIN_EXP
FLT_DIG
FLT_EPSILON
FLT_MANT_DIG
FLT_MAX
FLT_MAX_10_EXP
FLT_MAX_EXP
FLT_MIN
FLT_MIN_10_EXP
FLT_MIN_EXP
FLT_RADIX
FLT_ROUNDS
LDBL_DIG
LDBL_EPSILON
LDBL_MANT_DIG
LDBL_MAX
LDBL_MAX_10_EXP
LDBL_MAX_EXP
LDBL_MIN
LDBL_MIN_10_EXP
LDBL_MIN_EXP
<iso646.h>
and
and_eq
bitand
bitor
compl
not
not_eq
or
or_eq
xor
xor_eq
<limits.h>
CHAR_BIT
CHAR_MAX
CHAR_MIN
INT_MAX
INT_MIN
LONG_MAX
LONG_MIN
MB_LEN_MAX
SCHAR_MAX
SCHAR_MIN
SHRT_MAX
SHRT_MIN
UCHAR_MAX
UINT_MAX
ULONG_MAX
USHRT_MAX
<locale.h>
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MONETARY
LC_NUMERIC
LC_TIME
lconv
localeconv
NULL
setlocale
<math.h>
HUGE_VAL
<setjmp.h>
jmp_buf
longjmp
setjmp
<signal.h>
raise
sig_atomic_t
SIGABRT
SIGFPE
SIGILL
SIGINT
signal
SIGSEGV
SIGTERM
SIG_DFL
SIG_ERR
SIG_IGN
<stdarg.h>
va_arg
va_end
va_list
va_start
<stddef.h>
NULL
offsetof
ptrdiff_t
size_t
wchar_t
<stdio.h>
BUFSIZ
clearerr
EOF
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
FILE
FILENAME_MAX
fopen
FOPEN_MAX
fpos_t
fprintf
fputc
fputs
fread
freopen
fscanf
fseek
fsetpos
ftell
fwrite
getc
getchar
gets
_IOFBF
_IOLBF
_IONBF
L_tmpnam
NULL
perror
printf
putc
putchar
puts
remove
rename
rewind
scanf
SEEK_CUR
SEEK_END
SEEK_SET
setbuf
setvbuf
size_t
sprintf
sscanf
stderr
stdin
stdout
tmpfile
TMP_MAX
tmpnam
ungetc
vfprintf
vprintf
vsprintf
<stdlib.h>
abort
abs
atexit
atof
atoi
atol
bsearch
calloc
div
div_t
exit
EXIT_FAILURE
EXIT_SUCCESS
free
getenv
labs
ldiv
ldiv_t
malloc
MB_CUR_MAX
mblen
mbstowcs
mbtowc
NULL
qsort
rand
RAND_MAX
realloc
size_t
srand
strtod
strtol
strtoul
system
wchar_t
wcstombs
wctomb
<string.h>
memchr
memcmp
memcpy
memmove
memset
NULL
size_t
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strerror
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtok
strxfrm
<time.h>
asctime
clock
CLOCKS_PER_SEC
clock_t
ctime
difftime
gmtime
localtime
mktime
NULL
size_t
strftime
time
time_t
tm
<wchar.h>
btowc
fgetwc
fgetws
fputwc
fputws
fwide
fwprintf
fwscanf
getwc
getwchar
mbrlen
mbrtowc
mbsinit
mbsrtowcs
mbstate_t
NULL
putwc
putwchar
size_t
swprintf
swscanf
tm
ungetwc
vfwprintf
vswprintf
vwprintf
WCHAR_MAX
WCHAR_MIN
wchar_t
wcrtomb
wcscat
wcschr
wcscmp
wcscoll
wcscpy
wcscspn
wcsftime
wcslen
wcsncat
wcsncmp
wcsncpy
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstok
wcstol
wcstoul
wcsxfrm
wctob
WEOF
wint_t
wmemchr
wmemcmp
wmemcpy
wmemmove
wmemset
wprintf
wscanf
<wctype.h>
WEOF
iswalnum
iswalpha
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
towctrans
towlower
towupper
wctrans
wctrans_t
wctype
wctype_t
wint_t
<fstream.h>
<iomanip.h>
<iostream.h>
<new.h>
<stl.h>
C++ Library Overview
Using C++ Library Headers
C++ Library Conventions
Iostreams Conventions
C Library Overview
Using Standard C Headers
C Library Conventions
Characters
Character Sets
Escape Sequences
Trigraphs
Multibyte Characters
Files and Streams
Text and Binary Streams
Byte and Wide Streams
Controlling Streams
Stream States
Formatted Output
Print Formats
Print Functions
Formatted Input
Scan Formats
Scan Functions
Scan Conversion Specifiers
STL Conventions
Iterator Conventions
Algorithm Conventions
Containers
Container
Container::begin
Container::clear
Container::const_iterator
Container::const_reference
Container::const_reverse_iterator
Container::difference_type
Container::empty
Container::end
Container::erase
Container::iterator
Container::max_size
Container::rbegin
Container::reference
Container::rend
Container::reverse_iterator
Container::size
Container::size_type
Container::swap
Container::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
Preprocessing
Expressions
Functions
Index
Dinkum C99 Library
Dinkum C99 Library
Table of Contents
<assert.h>
assert
<complex.h>
acos, cacos, cacosf, cacosl
acosh, cacosh, cacoshf, cacoshl
arg, carg, cargf, cargl
asin, casin, casinf, casinl
asinh, casinh, casinhf, casinhl
atan, catan, catanf, catanl
atanh, catanh, catanhf, catanhl
complex
_Complex_I
conj, conjf, conjl
cos, ccos, ccosf, ccosl
cosh, ccosh, ccoshf, ccoshl
cproj, cprojf, cprojl
exp, cexp, cexpf, cexpl
I
imag, cimag, cimagf, cimagl
imaginary
_Imaginary_I
log, clog, clogf, clogl
pow, cpow, cpowf, cpowl
real, creal, crealf, creall
sin, csin, csinf, csinl
sinh, csinh, csinhf, csinhl
sqrt, csqrt, csqrtf, csqrtl
tan, ctan, ctanf, ctanl
tanh, ctanh, ctanhf, ctanhl
<ctype.h>
isalnum
isalpha
isblank
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
tolower
toupper
<errno.h>
EDOM
EILSEQ
ERANGE
errno
<fenv.h>
FE_ALL_EXCEPT
FE_DFL_ENV
FE_DIVBYZERO
FE_DOWNWARD
FE_INEXACT
FE_INVALID
FE_TONEAREST
FE_TOWARDZERO
FE_OVERFLOW
FE_UNDERFLOW
FE_UPWARD
fenv_t
feclearexcept
fegettrapenable
fegetenv
fegetexceptflag
fegetround
feholdexcept
feraiseexcept
fesettrapenable
fesetenv
fesetexceptflag
fesetround
fetestexcept
feupdateenv
fexcept_t
<float.h>
DBL_DIG
DBL_EPSILON
DBL_MANT_DIG
DBL_MAX
DBL_MAX_10_EXP
DBL_MAX_EXP
DBL_MIN
DBL_MIN_10_EXP
DBL_MIN_EXP
DECIMAL_DIG
FLT_DIG
FLT_EPSILON
FLT_EVAL_METHOD
FLT_MANT_DIG
FLT_MAX
FLT_MAX_10_EXP
FLT_MAX_EXP
FLT_MIN
FLT_MIN_10_EXP
FLT_MIN_EXP
FLT_RADIX
FLT_ROUNDS
LDBL_DIG
LDBL_EPSILON
LDBL_MANT_DIG
LDBL_MAX
LDBL_MAX_10_EXP
LDBL_MAX_EXP
LDBL_MIN
LDBL_MIN_10_EXP
LDBL_MIN_EXP
<inttypes.h>
imaxabs, abs
imaxdiv, div
imaxdiv_t
PRId8, PRId16, PRId32, PRId64
PRIdFAST8, PRIdFAST16, PRIdFAST32, PRIdFAST64
PRIdLEAST8, PRIdLEAST16, PRIdLEAST32, PRIdLEAST64
PRIdMAX
PRIdPTR
PRIi8, PRIi16, PRIi32, PRIi64
PRIiFAST8, PRIiFAST16, PRIiFAST32, PRIiFAST64
PRIiLEAST8, PRIiLEAST16, PRIiLEAST32, PRIiLEAST64
PRIiMAX
PRIiPTR
PRIo8, PRIo16, PRIo32, PRIo64
PRIoFAST8, PRIoFAST16, PRIoFAST32, PRIoFAST64
PRIoLEAST8, PRIoLEAST16, PRIoLEAST32, PRIoLEAST64
PRIoMAX
PRIoPTR
PRIu8, PRIu16, PRIu32, PRIu64
PRIuFAST8, PRIuFAST16, PRIuFAST32, PRIuFAST64
PRIuLEAST8, PRIuLEAST16, PRIuLEAST32, PRIuLEAST64
PRIuMAX
PRIuPTR
PRIx8, PRIx16, PRIx32, PRIx64
PRIxFAST8, PRIxFAST16, PRIxFAST32, PRIxFAST64
PRIxLEAST8, PRIxLEAST16, PRIxLEAST32, PRIxLEAST64
PRIxMAX
PRIxPTR
PRIX8, PRIX16, PRIX32, PRIX64
PRIXFAST8, PRIXFAST16, PRIXFAST32, PRIXFAST64
PRIXLEAST8, PRIXLEAST16, PRIXLEAST32, PRIXLEAST64
PRIXMAX
PRIXPTR
SCNd8, SCNd16, SCNd32, SCNd64
SCNdFAST8, SCNdFAST16, SCNdFAST32, SCNdFAST64
SCNdLEAST8, SCNdLEAST16, SCNdLEAST32, SCNdLEAST64
SCNdMAX
SCNdPTR
SCNi8, SCNi16, SCNi32, SCNi64
SCNiFAST8, SCNiFAST16, SCNiFAST32, SCNiFAST64
SCNiLEAST8, SCNiLEAST16, SCNiLEAST32, SCNiLEAST64
SCNiMAX
SCNiPTR
SCNo8, SCNo16, SCNo32, SCNo64
SCNoFAST8, SCNoFAST16, SCNoFAST32, SCNoFAST64
SCNoLEAST8, SCNoLEAST16, SCNoLEAST32, SCNoLEAST64
SCNoMAX
SCNoPTR
SCNu8, SCNu16, SCNu32, SCNu64
SCNuFAST8, SCNuFAST16, SCNuFAST32, SCNuFAST64
SCNuLEAST8, SCNuLEAST16, SCNuLEAST32, SCNuLEAST64
SCNuMAX
SCNuPTR
SCNx8, SCNx16, SCNx32, SCNx64
SCNxFAST8, SCNxFAST16, SCNxFAST32, SCNxFAST64
SCNxLEAST8, SCNxLEAST16, SCNxLEAST32, SCNxLEAST64
SCNxMAX
SCNxPTR
SCNX8, SCNX16, SCNX32, SCNX64
SCNXFAST8, SCNXFAST16, SCNXFAST32, SCNXFAST64
SCNXLEAST8, SCNXLEAST16, SCNXLEAST32, SCNXLEAST64
SCNXMAX
SCNXPTR
strtoimax
strtoumax
wcstoimax
wcstoumax
<iohw.h>
<iso646.h>
and
and_eq
bitand
bitor
compl
not
not_eq
or
or_eq
xor
xor_eq
<limits.h>
CHAR_BIT
CHAR_MAX
CHAR_MIN
INT_MAX
INT_MIN
LLONG_MAX
LLONG_MIN
LONG_MAX
LONG_MIN
MB_LEN_MAX
SCHAR_MAX
SCHAR_MIN
SHRT_MAX
SHRT_MIN
UCHAR_MAX
UINT_MAX
ULLONG_MAX
ULONG_MAX
USHRT_MAX
<locale.h>
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MONETARY
LC_NUMERIC
LC_TIME
lconv
localeconv
NULL
setlocale
<math.h>
abs, fabs, fabsf, fabsl
acos, acosf, acosl
acosh, acoshf, acoshl
asin, asinf, asinl
asinh, asinhf, asinhl
atan, atanf, atanl
atan2, atan2f, atan2l
atanh, atanhf, atanhl
cbrt, cbrtf, cbrtl
ceil, ceilf, ceill
copysign, copysignf, copysignl
cos, cosf, cosl
cosh, coshf, coshl
double_t
erf, erff, erfl
erfc, erfcf, erfcl
exp, expf, expl
exp2, exp2f, exp2l
expm1, expm1f, expm1l
fdim, fdimf, fdiml
float_t
floor, floorf, floorl
fma, fmaf, fmal
fmax, fmaxf, fmaxl
fmin, fminf, fminl
fmod, fmodf, fmodl
fpclassify
FP_FAST_FMA
FP_FAST_FMAF
FP_FAST_FMAL
FP_ILOGB0
FP_ILOGBNAN
FP_INFINITE
FP_NAN
FP_NORMAL
FP_SUBNORMAL
FP_ZERO
frexp, frexpf, frexpl
HUGE_VAL
HUGE_VALF
HUGE_VALL
hypot, hypotf, hypotl
ilogb, ilogbf, ilogbl
INFINITY
isfinite
isgreater
isgreaterequal
isinf
isless
islessequal
islessgreater
isnan
isnormal
isunordered
ldexp, ldexpf, ldexpl
lgamma, lgammaf, lgammal
llrint, llrintf, llrintl
llround, llroundf, llroundl
log, logf, logl
log10, log10f, log10l
log1p, log1pf, log1pl
log2, log2f, log2l
logb, logbf, logbl
lrint, lrintf, lrintl
lround, lroundf, lroundl
MATH_ERRNO
MATH_ERREXCEPT
math_errhandling
modf, modff, modfl
NAN
nan, nanf, nanl
nearbyint, nearbyintf, nearbyintl
nextafter, nextafterf, nextafterl
nexttoward, nexttowardf, nexttowardl
pow, powf, powl
remainder, remainderf, remainderl
remquo, remquof, remquol
rint, rintf, rintl
round, roundf, roundl
scalbln, scalblnf, scalblnl
scalbn, scalbnf, scalbnl
signbit
sin, sinf, sinl
sinh, sinhf, sinhl
sqrt, sqrtf, sqrtl
tan, tanf, tanl
tanh, tanhf, tanhl
tgamma, tgammaf, tgammal
trunc, truncf, truncl
<setjmp.h>
jmp_buf
longjmp
setjmp
<signal.h>
raise
sig_atomic_t
SIGABRT
SIGFPE
SIGILL
SIGINT
signal
SIGSEGV
SIGTERM
SIG_DFL
SIG_ERR
SIG_IGN
<stdarg.h>
va_arg
va_copy
va_end
va_list
va_start
<stdbool.h>
__bool_true_false_are_defined
bool
false
true
<stddef.h>
NULL
offsetof
ptrdiff_t
size_t
wchar_t
<stdint.h>
INT8_C, INT16_C, INT32_C, INT64_C
INT8_MAX, INT16_MAX, INT32_MAX, INT64_MAX
INT8_MIN, INT16_MIN, INT32_MIN, INT64_MIN
int8_t, int16_t, int32_t, int64_t
INT_FAST8_MAX, INT_FAST16_MAX, INT_FAST32_MAX, INT_FAST64_MAX
INT_FAST8_MIN, INT_FAST16_MIN, INT_FAST32_MIN, INT_FAST64_MIN
int_fast8_t, int_fast16_t, int_fast32_t, int_fast64_t
INT_LEAST8_MAX, INT_LEAST16_MAX, INT_LEAST32_MAX, INT_LEAST64_MAX
INT_LEAST8_MIN, INT_LEAST16_MIN, INT_LEAST32_MIN, INT_LEAST64_MIN
int_least8_t, int_least16_t, int_least32_t, int_least64_t
INTMAX_C
INTMAX_MAX
INTMAX_MIN
intmax_t
INTPTR_MAX
INTPTR_MIN
intptr_t
PTRDIFF_MAX
PTRDIFF_MIN
SIG_ATOMIC_MAX
SIG_ATOMIC_MIN
SIZE_MAX
UINT8_C, UINT16_C, UINT32_C, UINT64_C
UINT8_MAX, UINT16_MAX, UINT32_MAX, UINT64_MAX
uint8_t, uint16_t, uint32_t, uint64_t
UINT_FAST8_MAX, UINT_FAST16_MAX, UINT_FAST32_MAX, UINT_FAST64_MAX
uint_fast8_t, uint_fast16_t, uint_fast32_t, uint_fast64_t
UINT_LEAST8_MAX, UINT_LEAST16_MAX, UINT_LEAST32_MAX, UINT_LEAST64_MAX
uint_least8_t, uint_least16_t, uint_least32_t, uint_least64_t
UINTMAX_C
UINTMAX_MAX
uintmax_t
UINTPTR_MAX
uintptr_t
WCHAR_MAX
WCHAR_MIN
WINT_MAX
WINT_MIN
<stdio.h>
BUFSIZ
clearerr
EOF
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
FILE
FILENAME_MAX
fopen
FOPEN_MAX
fpos_t
fprintf
fputc
fputs
fread
freopen
fscanf
fseek
fsetpos
ftell
fwrite
getc
getchar
gets
_IOFBF
_IOLBF
_IONBF
L_tmpnam
NULL
perror
printf
putc
putchar
puts
remove
rename
rewind
scanf
SEEK_CUR
SEEK_END
SEEK_SET
setbuf
setvbuf
size_t
snprintf
sprintf
sscanf
stderr
stdin
stdout
tmpfile
TMP_MAX
tmpnam
ungetc
vfprintf
vfscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
<stdlib.h>
abort
abs
atexit
atof
atoi
atol
atoll
bsearch
calloc
div
div_t
exit
_Exit
EXIT_FAILURE
EXIT_SUCCESS
free
getenv
labs
llabs
ldiv
lldiv
ldiv_t
lldiv_t
malloc
MB_CUR_MAX
mblen
mbstowcs
mbtowc
NULL
qsort
rand
RAND_MAX
realloc
size_t
srand
strtod
strtof
strtol
strtold
strtoll
strtoul
strtoull
system
wchar_t
wcstombs
wctomb
<string.h>
memchr
memcmp
memcpy
memmove
memset
NULL
size_t
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strerror
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtok
strxfrm
<tgmath.h>
acos
acosh
carg
asin
asinh
atan
atan2
atanh
cbrt
ceil
cimag
conj
copysign
cos
cosh
cproj
creal
erf
erfc
exp
exp2
expm1
fabs
fdim
floor
fma
fmax
fmin
fmod
frexp
hypot
ilogb
ldexp
lgamma
llrint
llround
log
log10
log1p
log2
logb
lrint
lround
modf
nearbyint
nextafter
nexttoward
pow
remainder
remquo
rint
round
scalbln
scalbn
sin
sinh
sqrt
tan
tanh
tgamma
trunc
<time.h>
asctime
clock
CLOCKS_PER_SEC
clock_t
ctime
difftime
gmtime
localtime
mktime
NULL
size_t
strftime
time
time_t
tm
<uchar.h>
c16rtomb
c32rtomb
char16_t
char32_t
mbrtoc16
mbrtoc32
mbstate_t
NULL
size_t
__STDC_UTF_16__
__STDC_UTF_32__
<wchar.h>
btowc
fgetwc
fgetws
fputwc
fputws
fwide
fwprintf
fwscanf
getwc
getwchar
mbrlen
mbrtowc
mbsinit
mbsrtowcs
mbstate_t
NULL
putwc
putwchar
size_t
swprintf
swscanf
tm
ungetwc
vfwprintf
vfwscanf
vswprintf
vswscanf
vwprintf
vwscanf
WCHAR_MAX
WCHAR_MIN
wchar_t
wcrtomb
wcscat
wcschr
wcscmp
wcscoll
wcscpy
wcscspn
wcsftime
wcslen
wcsncat
wcsncmp
wcsncpy
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstok
wcstol
wcstold
wcstoll
wcstoul
wcstoull
wcsxfrm
wctob
WEOF
wint_t
wmemchr
wmemcmp
wmemcpy
wmemmove
wmemset
wprintf
wscanf
<wctype.h>
WEOF
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
towctrans
towlower
towupper
wctrans
wctrans_t
wctype
wctype_t
wint_t
C Library Overview
Using Standard C Headers
C Library Conventions
Characters
Character Sets
Escape Sequences
Trigraphs
Multibyte Characters
Text and Binary Streams
Byte and Wide Streams
Controlling Streams
Stream States
Formatted Output
Print Formats
Print Functions
Scan Formats
Scan Functions
Scan Conversion Specifiers
Preprocessing
Expressions
Functions
Index
Dinkum EC++ Library
Dinkum EC++ Library
Table of Contents
<complex>
abs
arg
complex
complex::complex
complex::imag
complex::operator*=
complex::operator+=
complex::operator-=
complex::operator/=
complex::operator=
complex::real
complex::value_type
conj
cos
cosh
double_complex
exp
float_complex
imag
log
log10
norm
operator!=
operator*
operator+
operator-
operator/
operator<<
operator==
operator>>
polar
pow
real
sin
sinh
sqrt
__STD_COMPLEX
tan
tanh
<exception>
bad_exception
exception
set_terminate
set_unexpected
terminate
terminate_handler
uncaught_exception
unexpected
unexpected_handler
<fstream>
filebuf
filebuf::filebuf
filebuf::char_type
filebuf::close
filebuf::int_type
filebuf::is_open
filebuf::off_type
filebuf::open
filebuf::overflow
filebuf::pbackfail
filebuf::pos_type
filebuf::seekoff
filebuf::seekpos
filebuf::setbuf
filebuf::sync
filebuf::traits_type
filebuf::underflow
ifstream
ifstream::ifstream
ifstream::close
ifstream::is_open
ifstream::open
ifstream::rdbuf
ofstream
ofstream::ofstream
ofstream::close
ofstream::is_open
ofstream::open
ofstream::rdbuf
<iomanip>
resetiosflags
setbase
setfill
setiosflags
setprecision
setw
<ios>
ios
ios::bad
ios::ios
ios::char_type
ios::clear
ios::copyfmt
ios::eof
ios::exceptions
ios::fail
ios::fill
ios::good
ios::imbue
ios::init
ios::int_type
ios::narrow
ios::off_type
ios::operator void *
ios::operator!
ios::pos_type
ios::rdbuf
ios::rdstate
ios::setstate
ios::tie
ios::traits_type
ios::widen
boolalpha
dec
fixed
fpos
fpos::fpos
fpos::operator!=
fpos::operator+
fpos::operator+=
fpos::operator-
fpos::operator-=
fpos::operator==
fpos::operator streamoff
fpos::state
hex
internal
ios_base
ios_base::event
ios_base::failure
ios_base::flags
ios_base::fmtflags
ios_base::getloc
ios_base::imbue
ios_base::Init
ios_base::ios_base
ios_base::iostate
ios_base::iword
ios_base::openmode
ios_base::operator=
ios_base::precision
ios_base::pword
ios_base::seekdir
ios_base::setf
ios_base::streamoff
ios_base::streampos
ios_base::sync_with_stdio
ios_base::unsetf
ios_base::width
ios_base::xalloc
left
locale
mbstate_t
noboolalpha
noshowbase
noshowpoint
noshowpos
noskipws
nounitbuf
nouppercase
oct
right
scientific
showbase
showpoint
showpos
skipws
streamoff
streampos
streamsize
unitbuf
uppercase
<iosfwd>
<iostream>
cin
cout
<istream>
istream
istream::istream
istream::gcount
istream::get
istream::getline
istream::ignore
istream::operator>>
istream::peek
istream::putback
istream::read
istream::readsome
istream::seekg
istream::sentry
istream::sync
istream::tellg
istream::unget
operator>>
ws
<new>
bad_alloc
new_handler
nothrow
nothrow_t
operator delete
operator delete[]
operator new
operator new[]
set_new_handler
<ostream>
ostream
ostream::ostream
ostream::flush
ostream::operator<<
ostream::put
ostream::seekp
ostream::sentry
ostream::tellp
ostream::write
endl
ends
flush
operator<<
<sstream>
stringbuf
stringbuf::allocator_type
stringbuf::stringbuf
stringbuf::char_type
stringbuf::int_type
stringbuf::off_type
stringbuf::overflow
stringbuf::pbackfail
stringbuf::pos_type
stringbuf::seekoff
stringbuf::seekpos
stringbuf::str
stringbuf::traits_type
stringbuf::underflow
istringstream
istringstream::allocator_type
istringstream::istringstream
istringstream::rdbuf
istringstream::str
ostringstream
ostringstream::allocator_type
ostringstream::ostringstream
ostringstream::rdbuf
ostringstream::str
<stdexcept>
domain_error
invalid_argument
length_error
logic_error
out_of_range
overflow_error
range_error
runtime_error
underflow_error
<streambuf>
streambuf
streambuf::streambuf
streambuf::char_type
streambuf::eback
streambuf::egptr
streambuf::epptr
streambuf::gbump
streambuf::getloc
streambuf::gptr
streambuf::imbue
streambuf::in_avail
streambuf::int_type
streambuf::off_type
streambuf::overflow
streambuf::pbackfail
streambuf::pbase
streambuf::pbump
streambuf::pos_type
streambuf::pptr
streambuf::pubimbue
streambuf::pubseekoff
streambuf::pubseekpos
streambuf::pubsetbuf
streambuf::pubsync
streambuf::sbumpc
streambuf::seekoff
streambuf::seekpos
streambuf::setbuf
streambuf::setg
streambuf::setp
streambuf::sgetc
streambuf::sgetn
streambuf::showmanyc
streambuf::snextc
streambuf::sputbackc
streambuf::sputc
streambuf::sputn
streambuf::stossc
streambuf::sungetc
streambuf::sync
streambuf::traits_type
streambuf::uflow
streambuf::underflow
streambuf::xsgetn
streambuf::xsputn
<string>
string
string::allocator_type
string::append
string::assign
string::at
string::string
string::begin
string::c_str
string::capacity
string::clear
string::compare
string::const_iterator
string::const_pointer
string::const_reference
string::const_reverse_iterator
string::copy
string::data
string::difference_type
string::empty
string::end
string::erase
string::find
string::find_first_not_of
string::find_first_of
string::find_last_not_of
string::find_last_of
string::get_allocator
string::insert
string::iterator
string::length
string::max_size
string::npos
string::operator+=
string::operator=
string::operator[]
string::pointer
string::push_back
string::rbegin
string::reference
string::rend
string::replace
string::reserve
string::resize
string::reverse_iterator
string::rfind
string::size
string::size_type
string::substr
string::swap
string::traits_type
string::value_type
char_allocator
char_allocator::operator==
char_traits
char_traits::assign
char_traits::char_type
char_traits::compare
char_traits::copy
char_traits::eof
char_traits::eq
char_traits::eq_int_type
char_traits::find
char_traits::int_type
char_traits::length
char_traits::lt
char_traits::move
char_traits::not_eof
char_traits::off_type
char_traits::pos_type
char_traits::state_type
char_traits::to_char_type
char_traits::to_int_type
getline
operator+
operator!=
operator==
operator<
operator<<
operator<=
operator>
operator>=
operator>>
swap
<strstream>
strstreambuf
strstreambuf::freeze
strstreambuf::pcount
strstreambuf::overflow
strstreambuf::pbackfail
strstreambuf::seekoff
strstreambuf::seekpos
strstreambuf::str
strstreambuf::strstreambuf
strstreambuf::underflow
istrstream
istrstream::istrstream
istrstream::rdbuf
istrstream::str
ostrstream
ostrstream::freeze
ostrstream::ostrstream
ostrstream::pcount
ostrstream::rdbuf
ostrstream::str
<cassert>
<cctype>
<cerrno>
<cfloat>
<climits>
<clocale>
<cmath>
<csetjmp>
<csignal>
<cstdarg>
<cstddef>
<cstdio>
<cstdlib>
<cstring>
<ctime>
<assert.h>
assert
<ctype.h>
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
tolower
toupper
<errno.h>
EDOM
EILSEQ
ERANGE
errno
<float.h>
DBL_DIG
DBL_EPSILON
DBL_MANT_DIG
DBL_MAX
DBL_MAX_10_EXP
DBL_MAX_EXP
DBL_MIN
DBL_MIN_10_EXP
DBL_MIN_EXP
FLT_DIG
FLT_EPSILON
FLT_MANT_DIG
FLT_MAX
FLT_MAX_10_EXP
FLT_MAX_EXP
FLT_MIN
FLT_MIN_10_EXP
FLT_MIN_EXP
FLT_RADIX
FLT_ROUNDS
LDBL_DIG
LDBL_EPSILON
LDBL_MANT_DIG
LDBL_MAX
LDBL_MAX_10_EXP
LDBL_MAX_EXP
LDBL_MIN
LDBL_MIN_10_EXP
LDBL_MIN_EXP
<limits.h>
CHAR_BIT
CHAR_MAX
CHAR_MIN
INT_MAX
INT_MIN
LONG_MAX
LONG_MIN
MB_LEN_MAX
SCHAR_MAX
SCHAR_MIN
SHRT_MAX
SHRT_MIN
UCHAR_MAX
UINT_MAX
ULONG_MAX
USHRT_MAX
<locale.h>
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MONETARY
LC_NUMERIC
LC_TIME
lconv
localeconv
NULL
setlocale
<math.h>
HUGE_VAL
<setjmp.h>
jmp_buf
longjmp
setjmp
<signal.h>
raise
sig_atomic_t
SIGABRT
SIGFPE
SIGILL
SIGINT
signal
SIGSEGV
SIGTERM
SIG_DFL
SIG_ERR
SIG_IGN
<stdarg.h>
va_arg
va_end
va_list
va_start
<stddef.h>
NULL
offsetof
ptrdiff_t
size_t
wchar_t
<stdio.h>
BUFSIZ
clearerr
EOF
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
FILE
FILENAME_MAX
fopen
FOPEN_MAX
fpos_t
fprintf
fputc
fputs
fread
freopen
fscanf
fseek
fsetpos
ftell
fwrite
getc
getchar
gets
_IOFBF
_IOLBF
_IONBF
L_tmpnam
NULL
perror
printf
putc
putchar
puts
remove
rename
rewind
scanf
SEEK_CUR
SEEK_END
SEEK_SET
setbuf
setvbuf
size_t
sprintf
sscanf
stderr
stdin
stdout
tmpfile
TMP_MAX
tmpnam
ungetc
vfprintf
vprintf
vsprintf
<stdlib.h>
abort
abs
atexit
atof
atoi
atol
bsearch
calloc
div
div_t
exit
EXIT_FAILURE
EXIT_SUCCESS
free
getenv
labs
ldiv
ldiv_t
malloc
MB_CUR_MAX
mblen
mbstowcs
mbtowc
NULL
qsort
rand
RAND_MAX
realloc
size_t
srand
strtod
strtol
strtoul
system
wchar_t
wcstombs
wctomb
<string.h>
memchr
memcmp
memcpy
memmove
memset
NULL
size_t
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strerror
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtok
strxfrm
<time.h>
asctime
clock
CLOCKS_PER_SEC
clock_t
ctime
difftime
gmtime
localtime
mktime
NULL
size_t
strftime
time
time_t
tm
<fstream.h>
<iomanip.h>
<iostream.h>
<new.h>
C++ Library Overview
Using C++ Library Headers
C++ Library Conventions
Iostreams Conventions
Exceptions
C Library Overview
Using Standard C Headers
C Library Conventions
Characters
Character Sets
Escape Sequences
Trigraphs
Multibyte Characters
Files and Streams
Text and Binary Streams
Controlling Streams
Stream States
Formatted Output
Print Formats
Print Functions
Formatted Input
Scan Formats
Scan Functions
Scan Conversion Specifiers
Preprocessing
Expressions
Functions
Index
Dinkum C++ Library
Dinkum C++ Library
Table of Contents
<algorithm>
adjacent_find
binary_search
copy
copy_backward
count
count_if
equal
equal_range
fill
fill_n
find
find_end
find_first_of
find_if
for_each
generate
generate_n
includes
inplace_merge
iter_swap
lexicographical_compare
lower_bound
make_heap
max
max_element
merge
min
min_element
mismatch
next_permutation
nth_element
partial_sort
partial_sort_copy
partition
pop_heap
prev_permutation
push_heap
random_shuffle
remove
remove_copy
remove_copy_if
remove_if
replace
replace_copy
replace_copy_if
replace_if
reverse
reverse_copy
rotate
rotate_copy
search
search_n
set_difference
set_intersection
set_symmetric_difference
set_union
sort
sort_heap
stable_partition
stable_sort
swap
swap_ranges
transform
unique
unique_copy
upper_bound
<bitset>
bitset
bitset::any
bitset::bitset
bitset::count
bitset::element_type
bitset::flip
bitset::none
bitset::operator!=
bitset::operator&=
bitset::operator<<
bitset::operator<<=
bitset::operator==
bitset::operator>>
bitset::operator>>=
bitset::operator[]
bitset::operator^=
bitset::operator OR=
bitset::operator~
bitset::reference
bitset::reset
bitset::set
bitset::size
bitset::test
bitset::to_string
bitset::to_ulong
operator&
operator OR
operator^
operator<<
operator>>
<complex>
abs
arg
complex
complex::complex
complex::imag
complex::operator*=
complex::operator+=
complex::operator-=
complex::operator/=
complex::operator=
complex::real
complex::value_type
complex<double>
complex<float>
complex<long double>
conj
cos
cosh
exp
imag
log
log10
norm
operator!=
operator*
operator+
operator-
operator/
operator<<
operator==
operator>>
polar
pow
real
sin
sinh
sqrt
__STD_COMPLEX
tan
tanh
<deque>
deque
deque::allocator_type
deque::assign
deque::at
deque::back
deque::begin
deque::clear
deque::const_iterator
deque::const_pointer
deque::const_reference
deque::const_reverse_iterator
deque::deque
deque::difference_type
deque::empty
deque::end
deque::erase
deque::front
deque::get_allocator
deque::insert
deque::iterator
deque::max_size
deque::operator[]
deque::pointer
deque::pop_back
deque::pop_front
deque::push_back
deque::push_front
deque::rbegin
deque::reference
deque::rend
deque::resize
deque::reverse_iterator
deque::size
deque::size_type
deque::swap
deque::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<exception>
bad_exception
exception
set_terminate
set_unexpected
terminate
terminate_handler
uncaught_exception
unexpected
unexpected_handler
<fstream>
basic_filebuf
basic_filebuf::basic_filebuf
basic_filebuf::char_type
basic_filebuf::close
basic_filebuf::int_type
basic_filebuf::is_open
basic_filebuf::off_type
basic_filebuf::open
basic_filebuf::overflow
basic_filebuf::pbackfail
basic_filebuf::pos_type
basic_filebuf::seekoff
basic_filebuf::seekpos
basic_filebuf::setbuf
basic_filebuf::sync
basic_filebuf::traits_type
basic_filebuf::underflow
basic_fstream
basic_fstream::basic_fstream
basic_fstream::close
basic_fstream::is_open
basic_fstream::open
basic_fstream::rdbuf
basic_ifstream
basic_ifstream::basic_ifstream
basic_ifstream::close
basic_ifstream::is_open
basic_ifstream::open
basic_ifstream::rdbuf
basic_ofstream
basic_ofstream::basic_ofstream
basic_ofstream::close
basic_ofstream::is_open
basic_ofstream::open
basic_ofstream::rdbuf
filebuf
fstream
ifstream
ofstream
wfstream
wifstream
wofstream
wfilebuf
<functional>
binary_function
binary_negate
bind1st
bind2nd
binder1st
binder2nd
const_mem_fun_t
const_mem_fun_ref_t
const_mem_fun1_t
const_mem_fun1_ref_t
divides
equal_to
greater
greater_equal
less
less_equal
logical_and
logical_not
logical_or
mem_fun
mem_fun_ref
mem_fun_t
mem_fun_ref_t
mem_fun1_t
mem_fun1_ref_t
minus
modulus
multiplies
negate
not1
not2
not_equal_to
plus
ptr_fun
unary_function
unary_negate
<hash_map>
hash_compare
hash_map
hash_map::allocator_type
hash_map::begin
hash_map::clear
hash_map::const_iterator
hash_map::const_pointer
hash_map::const_reference
hash_map::const_reverse_iterator
hash_map::count
hash_map::difference_type
hash_map::empty
hash_map::end
hash_map::equal_range
hash_map::erase
hash_map::find
hash_map::get_allocator
hash_map::hash_map
hash_map::insert
hash_map::iterator
hash_map::key_comp
hash_map::key_compare
hash_map::key_type
hash_map::lower_bound
hash_map::mapped_type
hash_map::max_size
hash_map::operator[]
hash_map::pointer
hash_map::rbegin
hash_map::reference
hash_map::rend
hash_map::reverse_iterator
hash_map::size
hash_map::size_type
hash_map::swap
hash_map::upper_bound
hash_map::value_comp
hash_map::value_compare
hash_map::value_type
hash_multimap
hash_multimap::allocator_type
hash_multimap::begin
hash_multimap::clear
hash_multimap::const_iterator
hash_multimap::const_pointer
hash_multimap::const_reference
hash_multimap::const_reverse_iterator
hash_multimap::count
hash_multimap::difference_type
hash_multimap::empty
hash_multimap::end
hash_multimap::equal_range
hash_multimap::erase
hash_multimap::find
hash_multimap::get_allocator
hash_multimap::hash_multimap
hash_multimap::insert
hash_multimap::iterator
hash_multimap::key_comp
hash_multimap::key_compare
hash_multimap::key_type
hash_multimap::lower_bound
hash_multimap::mapped_type
hash_multimap::max_size
hash_multimap::pointer
hash_multimap::rbegin
hash_multimap::reference
hash_multimap::rend
hash_multimap::reverse_iterator
hash_multimap::size
hash_multimap::size_type
hash_multimap::swap
hash_multimap::upper_bound
hash_multimap::value_comp
hash_multimap::value_compare
hash_multimap::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<hash_set>
hash_multiset
hash_multiset::allocator_type
hash_multiset::begin
hash_multiset::clear
hash_multiset::const_iterator
hash_multiset::const_pointer
hash_multiset::const_reference
hash_multiset::const_reverse_iterator
hash_multiset::count
hash_multiset::difference_type
hash_multiset::empty
hash_multiset::end
hash_multiset::equal_range
hash_multiset::erase
hash_multiset::find
hash_multiset::get_allocator
hash_multiset::hash_multiset
hash_multiset::insert
hash_multiset::iterator
hash_multiset::key_comp
hash_multiset::key_compare
hash_multiset::key_type
hash_multiset::lower_bound
hash_multiset::max_size
hash_multiset::pointer
hash_multiset::rbegin
hash_multiset::reference
hash_multiset::rend
hash_multiset::reverse_iterator
hash_multiset::size
hash_multiset::size_type
hash_multiset::swap
hash_multiset::upper_bound
hash_multiset::value_comp
hash_multiset::value_compare
hash_multiset::value_type
hash_set
hash_set::allocator_type
hash_set::begin
hash_set::clear
hash_set::const_iterator
hash_set::const_pointer
hash_set::const_reference
hash_set::const_reverse_iterator
hash_set::count
hash_set::difference_type
hash_set::empty
hash_set::end
hash_set::equal_range
hash_set::erase
hash_set::find
hash_set::get_allocator
hash_set::hash_set
hash_set::insert
hash_set::iterator
hash_set::key_comp
hash_set::key_compare
hash_set::key_type
hash_set::lower_bound
hash_set::max_size
hash_set::pointer
hash_set::rbegin
hash_set::reference
hash_set::rend
hash_set::reverse_iterator
hash_set::size
hash_set::size_type
hash_set::swap
hash_set::upper_bound
hash_set::value_comp
hash_set::value_compare
hash_set::value_type
swap
operator!=
operator==
operator<
operator<=
operator>
operator>=
<iomanip>
resetiosflags
setbase
setfill
setiosflags
setprecision
setw
<ios>
basic_ios
basic_ios::bad
basic_ios::basic_ios
basic_ios::char_type
basic_ios::clear
basic_ios::copyfmt
basic_ios::eof
basic_ios::exceptions
basic_ios::fail
basic_ios::fill
basic_ios::good
basic_ios::imbue
basic_ios::init
basic_ios::int_type
basic_ios::narrow
basic_ios::off_type
basic_ios::operator void *
basic_ios::operator!
basic_ios::pos_type
basic_ios::rdbuf
basic_ios::rdstate
basic_ios::setstate
basic_ios::tie
basic_ios::traits_type
basic_ios::widen
boolalpha
dec
fixed
fpos
fpos::fpos
fpos::operator!=
fpos::operator+
fpos::operator+=
fpos::operator-
fpos::operator-=
fpos::operator==
fpos::operator streamoff
fpos::state
hex
internal
ios
ios_base
ios_base::event
ios_base::failure
ios_base::flags
ios_base::fmtflags
ios_base::getloc
ios_base::imbue
ios_base::Init
ios_base::ios_base
ios_base::iostate
ios_base::iword
ios_base::openmode
ios_base::operator=
ios_base::precision
ios_base::pword
ios_base::seekdir
ios_base::setf
ios_base::streamoff
ios_base::streampos
ios_base::sync_with_stdio
ios_base::unsetf
ios_base::width
ios_base::xalloc
left
noboolalpha
noshowbase
noshowpoint
noshowpos
noskipws
nounitbuf
nouppercase
oct
right
scientific
showbase
showpoint
showpos
skipws
streamoff
streampos
streamsize
unitbuf
uppercase
wios
wstreampos
<iosfwd>
<iostream>
cerr
cin
clog
cout
wcerr
wcin
wclog
wcout
<istream>
basic_iostream
basic_istream
basic_istream::basic_istream
basic_istream::gcount
basic_istream::get
basic_istream::getline
basic_istream::ignore
basic_istream::operator>>
basic_istream::peek
basic_istream::putback
basic_istream::read
basic_istream::readsome
basic_istream::seekg
basic_istream::sentry
basic_istream::sync
basic_istream::tellg
basic_istream::unget
iostream
istream
operator>>
wiostream
wistream
ws
<iterator>
advance
back_insert_iterator
back_insert_iterator::back_insert_iterator
back_insert_iterator::operator*
back_insert_iterator::operator++
back_insert_iterator::operator=
back_inserter
bidirectional_iterator_tag
distance
forward_iterator_tag
front_insert_iterator
front_insert_iterator::front_insert_iterator
front_insert_iterator::operator*
front_insert_iterator::operator++
front_insert_iterator::operator=
front_inserter
input_iterator_tag
insert_iterator
insert_iterator::insert_iterator
insert_iterator::operator*
insert_iterator::operator++
insert_iterator::operator=
inserter
istream_iterator
istream_iterator::char_type
istream_iterator::istream_iterator
istream_iterator::istream_type
istream_iterator::operator*
istream_iterator::operator++
istream_iterator::traits_type
istreambuf_iterator
istreambuf_iterator::char_type
istreambuf_iterator::equal
istreambuf_iterator::int_type
istreambuf_iterator::istream_type
istreambuf_iterator::istreambuf_iterator
istreambuf_iterator::operator*
istreambuf_iterator::operator++
istreambuf_iterator::streambuf_type
istreambuf_iterator::traits_type
iterator
iterator_traits
operator!=
operator==
operator<
operator<=
operator>
operator>=
operator+
operator-
ostream_iterator
ostream_iterator::char_type
ostream_iterator::operator*
ostream_iterator::operator++
ostream_iterator::operator=
ostream_iterator::ostream_iterator
ostream_iterator::ostream_type
ostream_iterator::traits_type
ostreambuf_iterator
ostreambuf_iterator::char_type
ostreambuf_iterator::failed
ostreambuf_iterator::operator*
ostreambuf_iterator::operator++
ostreambuf_iterator::operator=
ostreambuf_iterator::ostream_type
ostreambuf_iterator::ostreambuf_iterator
ostreambuf_iterator::streambuf_type
ostreambuf_iterator::traits_type
output_iterator_tag
random_access_iterator_tag
reverse_iterator
reverse_iterator::base
reverse_iterator::operator*
reverse_iterator::operator+
reverse_iterator::operator++
reverse_iterator::operator+=
reverse_iterator::operator-
reverse_iterator::operator--
reverse_iterator::operator-=
reverse_iterator::operator->
reverse_iterator::operator[]
<limits>
float_denorm_style
float_round_style
numeric_limits
<list>
list
list::allocator_type
list::assign
list::back
list::begin
list::clear
list::const_iterator
list::const_pointer
list::const_reference
list::const_reverse_iterator
list::difference_type
list::empty
list::end
list::erase
list::front
list::get_allocator
list::insert
list::iterator
list::list
list::max_size
list::merge
list::pointer
list::pop_back
list::pop_front
list::push_back
list::push_front
list::rbegin
list::reference
list::remove
list::remove_if
list::rend
list::resize
list::reverse
list::reverse_iterator
list::size
list::size_type
list::sort
list::splice
list::swap
list::unique
list::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<locale>
codecvt
codecvt::always_noconv
codecvt::codecvt
codecvt::do_always_noconv
codecvt::do_encoding
codecvt::do_in
codecvt::do_length
codecvt::do_max_length
codecvt::do_out
codecvt::do_unshift
codecvt::extern_type
codecvt::in
codecvt::intern_type
codecvt::length
codecvt::encoding
codecvt::max_length
codecvt::out
codecvt::state_type
codecvt::unshift
codecvt_base
codecvt_byname
collate
collate::char_type
collate::collate
collate::compare
collate::do_compare
collate::do_hash
collate::do_transform
collate::hash
collate::string_type
collate::transform
collate_byname
ctype
ctype::char_type
ctype::ctype
ctype::do_is
ctype::do_narrow
ctype::do_scan_is
ctype::do_scan_not
ctype::do_tolower
ctype::do_toupper
ctype::do_widen
ctype::is
ctype::narrow
ctype::scan_is
ctype::scan_not
ctype::tolower
ctype::toupper
ctype::widen
ctype<char>
ctype_base
ctype_byname
has_facet
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
locale
locale::category
locale::classic
locale::combine
locale::facet
locale::global
locale::id
locale::locale
locale::name
locale::operator!=
locale::operator()
locale::operator==
messages
messages::char_type
messages::close
messages::do_close
messages::do_get
messages::do_open
messages::get
messages::messages
messages::open
messages::string_type
messages_base
messages_byname
money_base
money_get
money_get::char_type
money_get::do_get
money_get::get
money_get::iter_type
money_get::money_get
money_get::string_type
money_put
money_put::char_type
money_put::do_put
money_put::put
money_put::iter_type
money_put::money_put
money_put::string_type
moneypunct
moneypunct::char_type
moneypunct::curr_symbol
moneypunct::decimal_point
moneypunct::do_curr_symbol
moneypunct::do_decimal_point
moneypunct::do_frac_digits
moneypunct::do_grouping
moneypunct::do_neg_format
moneypunct::do_negative_sign
moneypunct::do_pos_format
moneypunct::do_positive_sign
moneypunct::do_thousands_sep
moneypunct::frac_digits
moneypunct::grouping
moneypunct::moneypunct
moneypunct::neg_format
moneypunct::negative_sign
moneypunct::pos_format
moneypunct::positive_sign
moneypunct::string_type
moneypunct::thousands_sep
moneypunct_byname
num_get
num_get::char_type
num_get::do_get
num_get::get
num_get::iter_type
num_get::num_get
num_put
num_put::char_type
num_put::do_put
num_put::put
num_put::iter_type
num_put::num_put
numpunct
numpunct::char_type
numpunct::decimal_point
numpunct::do_decimal_point
numpunct::do_falsename
numpunct::do_grouping
numpunct::do_thousands_sep
numpunct::do_truename
numpunct::falsename
numpunct::grouping
numpunct::numpunct
numpunct::string_type
numpunct::thousands_sep
numpunct::truename
numpunct_byname
time_base
time_get
time_get::char_type
time_get::date_order
time_get::do_date_order
time_get::do_get_date
time_get::do_get_month
time_get::do_get_time
time_get::do_get_weekday
time_get::do_get_year
time_get::get_date
time_get::get_month
time_get::get_time
time_get::get_weekday
time_get::get_year
time_get::iter_type
time_get::time_get
time_get_byname
time_put
time_put::char_type
time_put::do_put
time_put::put
time_put::iter_type
time_put::time_put
time_put_byname
tolower
toupper
use_facet
<map>
map
map::allocator_type
map::begin
map::clear
map::const_iterator
map::const_pointer
map::const_reference
map::const_reverse_iterator
map::count
map::difference_type
map::empty
map::end
map::equal_range
map::erase
map::find
map::get_allocator
map::insert
map::iterator
map::key_comp
map::key_compare
map::key_type
map::lower_bound
map::map
map::mapped_type
map::max_size
map::operator[]
map::pointer
map::rbegin
map::reference
map::rend
map::reverse_iterator
map::size
map::size_type
map::swap
map::upper_bound
map::value_comp
map::value_compare
map::value_type
multimap
multimap::allocator_type
multimap::begin
multimap::clear
multimap::const_iterator
multimap::const_pointer
multimap::const_reference
multimap::const_reverse_iterator
multimap::count
multimap::difference_type
multimap::empty
multimap::end
multimap::equal_range
multimap::erase
multimap::find
multimap::get_allocator
multimap::insert
multimap::iterator
multimap::key_comp
multimap::key_compare
multimap::key_type
multimap::lower_bound
multimap::mapped_type
multimap::max_size
multimap::multimap
multimap::pointer
multimap::rbegin
multimap::reference
multimap::rend
multimap::reverse_iterator
multimap::size
multimap::size_type
multimap::swap
multimap::upper_bound
multimap::value_comp
multimap::value_compare
multimap::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
<memory>
allocator
allocator::const_reference
allocator::construct
allocator::destroy
allocator::pointer
allocator::rebind
allocator::reference
allocator::value_type
allocator<void>
auto_ptr
auto_ptr::auto_ptr
auto_ptr::~auto_ptr
auto_ptr::element_type
auto_ptr::get
auto_ptr::operator=
auto_ptr::operator*
auto_ptr::operator->
auto_ptr::operator auto_ptr<Other>
auto_ptr::operator auto_ptr_ref<Other>
auto_ptr::release
auto_ptr::reset
auto_ptr_ref
get_temporary_buffer
operator!=
operator==
uninitialized_copy
uninitialized_fill
uninitialized_fill_n
<new>
bad_alloc
new_handler
nothrow
nothrow_t
operator delete
operator delete[]
operator new
operator new[]
set_new_handler
<numeric>
accumulate
adjacent_difference
inner_product
partial_sum
<ostream>
basic_ostream
basic_ostream::basic_ostream
basic_ostream::flush
basic_ostream::operator<<
basic_ostream::put
basic_ostream::seekp
basic_ostream::sentry
basic_ostream::tellp
basic_ostream::write
endl
ends
flush
operator<<
ostream
wostream
<queue>
operator!=
operator==
operator<
operator<=
operator>
operator>=
priority_queue
priority_queue::container_type
priority_queue::empty
priority_queue::pop
priority_queue::priority_queue
priority_queue::push
priority_queue::size
priority_queue::size_type
priority_queue::top
priority_queue::value_type
queue
queue::back
queue::container_type
queue::empty
queue::front
queue::pop
queue::push
queue::queue
queue::size
queue::size_type
queue::value_type
<set>
multiset
multiset::allocator_type
multiset::begin
multiset::clear
multiset::const_iterator
multiset::const_pointer
multiset::const_reference
multiset::const_reverse_iterator
multiset::count
multiset::difference_type
multiset::empty
multiset::end
multiset::equal_range
multiset::erase
multiset::find
multiset::get_allocator
multiset::insert
multiset::iterator
multiset::key_comp
multiset::key_compare
multiset::key_type
multiset::lower_bound
multiset::multiset
multiset::max_size
multiset::pointer
multiset::rbegin
multiset::reference
multiset::rend
multiset::reverse_iterator
multiset::size
multiset::size_type
multiset::swap
multiset::upper_bound
multiset::value_comp
multiset::value_compare
multiset::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
set
set::allocator_type
set::begin
set::clear
set::const_iterator
set::const_pointer
set::const_reference
set::const_reverse_iterator
set::count
set::difference_type
set::empty
set::end
set::equal_range
set::erase
set::find
set::get_allocator
set::insert
set::iterator
set::key_comp
set::key_compare
set::key_type
set::lower_bound
set::max_size
set::pointer
set::rbegin
set::reference
set::rend
set::reverse_iterator
set::set
set::size
set::size_type
set::swap
set::upper_bound
set::value_comp
set::value_compare
set::value_type
swap
<slist>
operator!=
operator==
operator<
operator<=
operator>
operator>=
slist
slist::allocator_type
slist::assign
slist::back
slist::begin
slist::clear
slist::const_iterator
slist::const_pointer
slist::const_reference
slist::difference_type
slist::empty
slist::end
slist::erase
slist::front
slist::get_allocator
slist::insert
slist::iterator
slist::max_size
slist::merge
slist::pointer
slist::pop_back
slist::pop_front
slist::previous
slist::push_back
slist::push_front
slist::reference
slist::remove
slist::remove_if
slist::resize
slist::reverse
slist::size
slist::size_type
slist::slist
slist::sort
slist::splice
slist::swap
slist::unique
slist::value_type
swap
<sstream>
basic_stringbuf
basic_stringbuf::allocator_type
basic_stringbuf::basic_stringbuf
basic_stringbuf::char_type
basic_stringbuf::int_type
basic_stringbuf::off_type
basic_stringbuf::overflow
basic_stringbuf::pbackfail
basic_stringbuf::pos_type
basic_stringbuf::seekoff
basic_stringbuf::seekpos
basic_stringbuf::str
basic_stringbuf::traits_type
basic_stringbuf::underflow
basic_istringstream
basic_istringstream::allocator_type
basic_istringstream::basic_istringstream
basic_istringstream::rdbuf
basic_istringstream::str
basic_ostringstream
basic_ostringstream::allocator_type
basic_ostringstream::basic_ostringstream
basic_ostringstream::rdbuf
basic_ostringstream::str
basic_stringstream
basic_stringstream::allocator_type
basic_stringstream::basic_stringstream
basic_stringstream::rdbuf
basic_stringstream::str
istringstream
ostringstream
stringbuf
stringstream
wistringstream
wostringstream
wstringbuf
wstringstream
<stack>
operator!=
operator==
operator<
operator<=
operator>
operator>=
stack
stack::container_type
stack::empty
stack::pop
stack::push
stack::size
stack::size_type
stack::stack
stack::top
stack::value_type
<stdexcept>
domain_error
invalid_argument
length_error
logic_error
out_of_range
overflow_error
range_error
runtime_error
underflow_error
<streambuf>
basic_streambuf
basic_streambuf::basic_streambuf
basic_streambuf::char_type
basic_streambuf::eback
basic_streambuf::egptr
basic_streambuf::epptr
basic_streambuf::gbump
basic_streambuf::getloc
basic_streambuf::gptr
basic_streambuf::imbue
basic_streambuf::in_avail
basic_streambuf::int_type
basic_streambuf::off_type
basic_streambuf::overflow
basic_streambuf::pbackfail
basic_streambuf::pbase
basic_streambuf::pbump
basic_streambuf::pos_type
basic_streambuf::pptr
basic_streambuf::pubimbue
basic_streambuf::pubseekoff
basic_streambuf::pubseekpos
basic_streambuf::pubsetbuf
basic_streambuf::pubsync
basic_streambuf::sbumpc
basic_streambuf::seekoff
basic_streambuf::seekpos
basic_streambuf::setbuf
basic_streambuf::setg
basic_streambuf::setp
basic_streambuf::sgetc
basic_streambuf::sgetn
basic_streambuf::showmanyc
basic_streambuf::snextc
basic_streambuf::sputbackc
basic_streambuf::sputc
basic_streambuf::sputn
basic_streambuf::stossc
basic_streambuf::sungetc
basic_streambuf::sync
basic_streambuf::traits_type
basic_streambuf::uflow
basic_streambuf::underflow
basic_streambuf::xsgetn
basic_streambuf::xsputn
streambuf
wstreambuf
<string>
basic_string
basic_string::allocator_type
basic_string::append
basic_string::assign
basic_string::at
basic_string::basic_string
basic_string::begin
basic_string::c_str
basic_string::capacity
basic_string::clear
basic_string::compare
basic_string::const_iterator
basic_string::const_pointer
basic_string::const_reference
basic_string::const_reverse_iterator
basic_string::copy
basic_string::data
basic_string::difference_type
basic_string::empty
basic_string::end
basic_string::erase
basic_string::find
basic_string::find_first_not_of
basic_string::find_first_of
basic_string::find_last_not_of
basic_string::find_last_of
basic_string::get_allocator
basic_string::insert
basic_string::iterator
basic_string::length
basic_string::max_size
basic_string::npos
basic_string::operator+=
basic_string::operator=
basic_string::operator[]
basic_string::pointer
basic_string::push_back
basic_string::rbegin
basic_string::reference
basic_string::rend
basic_string::replace
basic_string::reserve
basic_string::resize
basic_string::reverse_iterator
basic_string::rfind
basic_string::size
basic_string::size_type
basic_string::substr
basic_string::swap
basic_string::traits_type
basic_string::value_type
char_traits
char_traits::assign
char_traits::char_type
char_traits::compare
char_traits::copy
char_traits::eof
char_traits::eq
char_traits::eq_int_type
char_traits::find
char_traits::int_type
char_traits::length
char_traits::lt
char_traits::move
char_traits::not_eof
char_traits::off_type
char_traits::pos_type
char_traits::state_type
char_traits::to_char_type
char_traits::to_int_type
char_traits<char>
char_traits<wchar_t>
getline
operator+
operator!=
operator==
operator<
operator<<
operator<=
operator>
operator>=
operator>>
string
swap
wstring
<strstream>
strstreambuf
strstreambuf::freeze
strstreambuf::pcount
strstreambuf::overflow
strstreambuf::pbackfail
strstreambuf::seekoff
strstreambuf::seekpos
strstreambuf::str
strstreambuf::strstreambuf
strstreambuf::underflow
istrstream
istrstream::istrstream
istrstream::rdbuf
istrstream::str
ostrstream
ostrstream::freeze
ostrstream::ostrstream
ostrstream::pcount
ostrstream::rdbuf
ostrstream::str
strstream
strstream::freeze
strstream::pcount
strstream::strstream
strstream::rdbuf
strstream::str
<typeinfo>
bad_cast
bad_typeid
type_info
type_info::before
type_info::name
<utility>
make_pair
operator!=
operator==
operator<
operator<=
operator>
operator>=
pair
<valarray>
abs
acos
asin
atan
atan2
cos
cosh
exp
gslice
gslice::gslice
gslice::size
gslice::start
gslice::stride
gslice_array
indirect_array
log
log10
mask_array
operator!=
operator%
operator&
operator&&
operator>
operator>>
operator>=
operator<
operator<<
operator<=
operator*
operator+
operator-
operator/
operator==
operator^
operator OR
operator OR OR
pow
sin
sinh
slice
slice::slice
slice::size
slice::start
slice::stride
slice_array
sqrt
tan
tanh
valarray
valarray::apply
valarray::cshift
valarray::max
valarray::min
valarray::operator!
valarray::operator%=
valarray::operator&=
valarray::operator>>=
valarray::operator<<=
valarray::operator*=
valarray::operator+
valarray::operator+=
valarray::operator-
valarray::operator-=
valarray::operator/=
valarray::operator=
valarray::operator[]
valarray::operator^=
valarray::operator OR=
valarray::operator~
valarray::resize
valarray::shift
valarray::size
valarray::sum
valarray::valarray
valarray::value_type
valarray<bool>
<vector>
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
vector
vector::allocator_type
vector::assign
vector::at
vector::back
vector::begin
vector::capacity
vector::clear
vector::const_iterator
vector::const_pointer
vector::const_reference
vector::const_reverse_iterator
vector::difference_type
vector::empty
vector::end
vector::erase
vector::front
vector::get_allocator
vector::insert
vector::iterator
vector::max_size
vector::operator[]
vector::pointer
vector::pop_back
vector::push_back
vector::rbegin
vector::reference
vector::rend
vector::reserve
vector::resize
vector::reverse_iterator
vector::size
vector::size_type
vector::swap
vector::value_type
vector::vector
<cassert>
<cctype>
<cerrno>
<cfloat>
<ciso646>
<climits>
<clocale>
<cmath>
<csetjmp>
<csignal>
<cstdarg>
<cstddef>
<cstdio>
<cstdlib>
<cstring>
<ctime>
<cwchar>
<cwctype>
<assert.h>
assert
<ctype.h>
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
tolower
toupper
<errno.h>
EDOM
EILSEQ
ERANGE
errno
<float.h>
DBL_DIG
DBL_EPSILON
DBL_MANT_DIG
DBL_MAX
DBL_MAX_10_EXP
DBL_MAX_EXP
DBL_MIN
DBL_MIN_10_EXP
DBL_MIN_EXP
FLT_DIG
FLT_EPSILON
FLT_MANT_DIG
FLT_MAX
FLT_MAX_10_EXP
FLT_MAX_EXP
FLT_MIN
FLT_MIN_10_EXP
FLT_MIN_EXP
FLT_RADIX
FLT_ROUNDS
LDBL_DIG
LDBL_EPSILON
LDBL_MANT_DIG
LDBL_MAX
LDBL_MAX_10_EXP
LDBL_MAX_EXP
LDBL_MIN
LDBL_MIN_10_EXP
LDBL_MIN_EXP
<iso646.h>
and
and_eq
bitand
bitor
compl
not
not_eq
or
or_eq
xor
xor_eq
<limits.h>
CHAR_BIT
CHAR_MAX
CHAR_MIN
INT_MAX
INT_MIN
LONG_MAX
LONG_MIN
MB_LEN_MAX
SCHAR_MAX
SCHAR_MIN
SHRT_MAX
SHRT_MIN
UCHAR_MAX
UINT_MAX
ULONG_MAX
USHRT_MAX
<locale.h>
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MONETARY
LC_NUMERIC
LC_TIME
lconv
localeconv
NULL
setlocale
<math.h>
HUGE_VAL
<setjmp.h>
jmp_buf
longjmp
setjmp
<signal.h>
raise
sig_atomic_t
SIGABRT
SIGFPE
SIGILL
SIGINT
signal
SIGSEGV
SIGTERM
SIG_DFL
SIG_ERR
SIG_IGN
<stdarg.h>
va_arg
va_end
va_list
va_start
<stddef.h>
NULL
offsetof
ptrdiff_t
size_t
wchar_t
<stdio.h>
BUFSIZ
clearerr
EOF
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
FILE
FILENAME_MAX
fopen
FOPEN_MAX
fpos_t
fprintf
fputc
fputs
fread
freopen
fscanf
fseek
fsetpos
ftell
fwrite
getc
getchar
gets
_IOFBF
_IOLBF
_IONBF
L_tmpnam
NULL
perror
printf
putc
putchar
puts
remove
rename
rewind
scanf
SEEK_CUR
SEEK_END
SEEK_SET
setbuf
setvbuf
size_t
sprintf
sscanf
stderr
stdin
stdout
tmpfile
TMP_MAX
tmpnam
ungetc
vfprintf
vprintf
vsprintf
<stdlib.h>
abort
abs
atexit
atof
atoi
atol
bsearch
calloc
div
div_t
exit
EXIT_FAILURE
EXIT_SUCCESS
free
getenv
labs
ldiv
ldiv_t
malloc
MB_CUR_MAX
mblen
mbstowcs
mbtowc
NULL
qsort
rand
RAND_MAX
realloc
size_t
srand
strtod
strtol
strtoul
system
wchar_t
wcstombs
wctomb
<string.h>
memchr
memcmp
memcpy
memmove
memset
NULL
size_t
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strerror
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtok
strxfrm
<time.h>
asctime
clock
CLOCKS_PER_SEC
clock_t
ctime
difftime
gmtime
localtime
mktime
NULL
size_t
strftime
time
time_t
tm
<wchar.h>
btowc
fgetwc
fgetws
fputwc
fputws
fwide
fwprintf
fwscanf
getwc
getwchar
mbrlen
mbrtowc
mbsinit
mbsrtowcs
mbstate_t
NULL
putwc
putwchar
size_t
swprintf
swscanf
tm
ungetwc
vfwprintf
vswprintf
vwprintf
WCHAR_MAX
WCHAR_MIN
wchar_t
wcrtomb
wcscat
wcschr
wcscmp
wcscoll
wcscpy
wcscspn
wcsftime
wcslen
wcsncat
wcsncmp
wcsncpy
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstok
wcstol
wcstoul
wcsxfrm
wctob
WEOF
wint_t
wmemchr
wmemcmp
wmemcpy
wmemmove
wmemset
wprintf
wscanf
<wctype.h>
WEOF
iswalnum
iswalpha
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
towctrans
towlower
towupper
wctrans
wctrans_t
wctype
wctype_t
wint_t
<fstream.h>
<iomanip.h>
<iostream.h>
<new.h>
<stl.h>
C++ Library Overview
Using C++ Library Headers
C++ Library Conventions
Iostreams Conventions
C Library Overview
Using Standard C Headers
C Library Conventions
Characters
Character Sets
Escape Sequences
Trigraphs
Multibyte Characters
Files and Streams
Text and Binary Streams
Byte and Wide Streams
Controlling Streams
Stream States
Formatted Output
Print Formats
Print Functions
Formatted Input
Scan Formats
Scan Functions
Scan Conversion Specifiers
STL Conventions
Iterator Conventions
Algorithm Conventions
Containers
Container
Container::begin
Container::clear
Container::const_iterator
Container::const_reference
Container::const_reverse_iterator
Container::difference_type
Container::empty
Container::end
Container::erase
Container::iterator
Container::max_size
Container::rbegin
Container::reference
Container::rend
Container::reverse_iterator
Container::size
Container::size_type
Container::swap
Container::value_type
operator!=
operator==
operator<
operator<=
operator>
operator>=
swap
Preprocessing
Expressions
Functions
Index
Dinkum C99 Library
Dinkum C99 Library
Table of Contents
<assert.h>
assert
<complex.h>
acos, cacos, cacosf, cacosl
acosh, cacosh, cacoshf, cacoshl
arg, carg, cargf, cargl
asin, casin, casinf, casinl
asinh, casinh, casinhf, casinhl
atan, catan, catanf, catanl
atanh, catanh, catanhf, catanhl
complex
_Complex_I
conj, conjf, conjl
cos, ccos, ccosf, ccosl
cosh, ccosh, ccoshf, ccoshl
cproj, cprojf, cprojl
exp, cexp, cexpf, cexpl
I
imag, cimag, cimagf, cimagl
imaginary
_Imaginary_I
log, clog, clogf, clogl
pow, cpow, cpowf, cpowl
real, creal, crealf, creall
sin, csin, csinf, csinl
sinh, csinh, csinhf, csinhl
sqrt, csqrt, csqrtf, csqrtl
tan, ctan, ctanf, ctanl
tanh, ctanh, ctanhf, ctanhl
<ctype.h>
isalnum
isalpha
isblank
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
tolower
toupper
<errno.h>
EDOM
EILSEQ
ERANGE
errno
<fenv.h>
FE_ALL_EXCEPT
FE_DFL_ENV
FE_DIVBYZERO
FE_DOWNWARD
FE_INEXACT
FE_INVALID
FE_TONEAREST
FE_TOWARDZERO
FE_OVERFLOW
FE_UNDERFLOW
FE_UPWARD
fenv_t
feclearexcept
fegettrapenable
fegetenv
fegetexceptflag
fegetround
feholdexcept
feraiseexcept
fesettrapenable
fesetenv
fesetexceptflag
fesetround
fetestexcept
feupdateenv
fexcept_t
<float.h>
DBL_DIG
DBL_EPSILON
DBL_MANT_DIG
DBL_MAX
DBL_MAX_10_EXP
DBL_MAX_EXP
DBL_MIN
DBL_MIN_10_EXP
DBL_MIN_EXP
DECIMAL_DIG
FLT_DIG
FLT_EPSILON
FLT_EVAL_METHOD
FLT_MANT_DIG
FLT_MAX
FLT_MAX_10_EXP
FLT_MAX_EXP
FLT_MIN
FLT_MIN_10_EXP
FLT_MIN_EXP
FLT_RADIX
FLT_ROUNDS
LDBL_DIG
LDBL_EPSILON
LDBL_MANT_DIG
LDBL_MAX
LDBL_MAX_10_EXP
LDBL_MAX_EXP
LDBL_MIN
LDBL_MIN_10_EXP
LDBL_MIN_EXP
<inttypes.h>
imaxabs, abs
imaxdiv, div
imaxdiv_t
PRId8, PRId16, PRId32, PRId64
PRIdFAST8, PRIdFAST16, PRIdFAST32, PRIdFAST64
PRIdLEAST8, PRIdLEAST16, PRIdLEAST32, PRIdLEAST64
PRIdMAX
PRIdPTR
PRIi8, PRIi16, PRIi32, PRIi64
PRIiFAST8, PRIiFAST16, PRIiFAST32, PRIiFAST64
PRIiLEAST8, PRIiLEAST16, PRIiLEAST32, PRIiLEAST64
PRIiMAX
PRIiPTR
PRIo8, PRIo16, PRIo32, PRIo64
PRIoFAST8, PRIoFAST16, PRIoFAST32, PRIoFAST64
PRIoLEAST8, PRIoLEAST16, PRIoLEAST32, PRIoLEAST64
PRIoMAX
PRIoPTR
PRIu8, PRIu16, PRIu32, PRIu64
PRIuFAST8, PRIuFAST16, PRIuFAST32, PRIuFAST64
PRIuLEAST8, PRIuLEAST16, PRIuLEAST32, PRIuLEAST64
PRIuMAX
PRIuPTR
PRIx8, PRIx16, PRIx32, PRIx64
PRIxFAST8, PRIxFAST16, PRIxFAST32, PRIxFAST64
PRIxLEAST8, PRIxLEAST16, PRIxLEAST32, PRIxLEAST64
PRIxMAX
PRIxPTR
PRIX8, PRIX16, PRIX32, PRIX64
PRIXFAST8, PRIXFAST16, PRIXFAST32, PRIXFAST64
PRIXLEAST8, PRIXLEAST16, PRIXLEAST32, PRIXLEAST64
PRIXMAX
PRIXPTR
SCNd8, SCNd16, SCNd32, SCNd64
SCNdFAST8, SCNdFAST16, SCNdFAST32, SCNdFAST64
SCNdLEAST8, SCNdLEAST16, SCNdLEAST32, SCNdLEAST64
SCNdMAX
SCNdPTR
SCNi8, SCNi16, SCNi32, SCNi64
SCNiFAST8, SCNiFAST16, SCNiFAST32, SCNiFAST64
SCNiLEAST8, SCNiLEAST16, SCNiLEAST32, SCNiLEAST64
SCNiMAX
SCNiPTR
SCNo8, SCNo16, SCNo32, SCNo64
SCNoFAST8, SCNoFAST16, SCNoFAST32, SCNoFAST64
SCNoLEAST8, SCNoLEAST16, SCNoLEAST32, SCNoLEAST64
SCNoMAX
SCNoPTR
SCNu8, SCNu16, SCNu32, SCNu64
SCNuFAST8, SCNuFAST16, SCNuFAST32, SCNuFAST64
SCNuLEAST8, SCNuLEAST16, SCNuLEAST32, SCNuLEAST64
SCNuMAX
SCNuPTR
SCNx8, SCNx16, SCNx32, SCNx64
SCNxFAST8, SCNxFAST16, SCNxFAST32, SCNxFAST64
SCNxLEAST8, SCNxLEAST16, SCNxLEAST32, SCNxLEAST64
SCNxMAX
SCNxPTR
SCNX8, SCNX16, SCNX32, SCNX64
SCNXFAST8, SCNXFAST16, SCNXFAST32, SCNXFAST64
SCNXLEAST8, SCNXLEAST16, SCNXLEAST32, SCNXLEAST64
SCNXMAX
SCNXPTR
strtoimax
strtoumax
wcstoimax
wcstoumax
<iohw.h>
<iso646.h>
and
and_eq
bitand
bitor
compl
not
not_eq
or
or_eq
xor
xor_eq
<limits.h>
CHAR_BIT
CHAR_MAX
CHAR_MIN
INT_MAX
INT_MIN
LLONG_MAX
LLONG_MIN
LONG_MAX
LONG_MIN
MB_LEN_MAX
SCHAR_MAX
SCHAR_MIN
SHRT_MAX
SHRT_MIN
UCHAR_MAX
UINT_MAX
ULLONG_MAX
ULONG_MAX
USHRT_MAX
<locale.h>
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MONETARY
LC_NUMERIC
LC_TIME
lconv
localeconv
NULL
setlocale
<math.h>
abs, fabs, fabsf, fabsl
acos, acosf, acosl
acosh, acoshf, acoshl
asin, asinf, asinl
asinh, asinhf, asinhl
atan, atanf, atanl
atan2, atan2f, atan2l
atanh, atanhf, atanhl
cbrt, cbrtf, cbrtl
ceil, ceilf, ceill
copysign, copysignf, copysignl
cos, cosf, cosl
cosh, coshf, coshl
double_t
erf, erff, erfl
erfc, erfcf, erfcl
exp, expf, expl
exp2, exp2f, exp2l
expm1, expm1f, expm1l
fdim, fdimf, fdiml
float_t
floor, floorf, floorl
fma, fmaf, fmal
fmax, fmaxf, fmaxl
fmin, fminf, fminl
fmod, fmodf, fmodl
fpclassify
FP_FAST_FMA
FP_FAST_FMAF
FP_FAST_FMAL
FP_ILOGB0
FP_ILOGBNAN
FP_INFINITE
FP_NAN
FP_NORMAL
FP_SUBNORMAL
FP_ZERO
frexp, frexpf, frexpl
HUGE_VAL
HUGE_VALF
HUGE_VALL
hypot, hypotf, hypotl
ilogb, ilogbf, ilogbl
INFINITY
isfinite
isgreater
isgreaterequal
isinf
isless
islessequal
islessgreater
isnan
isnormal
isunordered
ldexp, ldexpf, ldexpl
lgamma, lgammaf, lgammal
llrint, llrintf, llrintl
llround, llroundf, llroundl
log, logf, logl
log10, log10f, log10l
log1p, log1pf, log1pl
log2, log2f, log2l
logb, logbf, logbl
lrint, lrintf, lrintl
lround, lroundf, lroundl
MATH_ERRNO
MATH_ERREXCEPT
math_errhandling
modf, modff, modfl
NAN
nan, nanf, nanl
nearbyint, nearbyintf, nearbyintl
nextafter, nextafterf, nextafterl
nexttoward, nexttowardf, nexttowardl
pow, powf, powl
remainder, remainderf, remainderl
remquo, remquof, remquol
rint, rintf, rintl
round, roundf, roundl
scalbln, scalblnf, scalblnl
scalbn, scalbnf, scalbnl
signbit
sin, sinf, sinl
sinh, sinhf, sinhl
sqrt, sqrtf, sqrtl
tan, tanf, tanl
tanh, tanhf, tanhl
tgamma, tgammaf, tgammal
trunc, truncf, truncl
<setjmp.h>
jmp_buf
longjmp
setjmp
<signal.h>
raise
sig_atomic_t
SIGABRT
SIGFPE
SIGILL
SIGINT
signal
SIGSEGV
SIGTERM
SIG_DFL
SIG_ERR
SIG_IGN
<stdarg.h>
va_arg
va_copy
va_end
va_list
va_start
<stdbool.h>
__bool_true_false_are_defined
bool
false
true
<stddef.h>
NULL
offsetof
ptrdiff_t
size_t
wchar_t
<stdint.h>
INT8_C, INT16_C, INT32_C, INT64_C
INT8_MAX, INT16_MAX, INT32_MAX, INT64_MAX
INT8_MIN, INT16_MIN, INT32_MIN, INT64_MIN
int8_t, int16_t, int32_t, int64_t
INT_FAST8_MAX, INT_FAST16_MAX, INT_FAST32_MAX, INT_FAST64_MAX
INT_FAST8_MIN, INT_FAST16_MIN, INT_FAST32_MIN, INT_FAST64_MIN
int_fast8_t, int_fast16_t, int_fast32_t, int_fast64_t
INT_LEAST8_MAX, INT_LEAST16_MAX, INT_LEAST32_MAX, INT_LEAST64_MAX
INT_LEAST8_MIN, INT_LEAST16_MIN, INT_LEAST32_MIN, INT_LEAST64_MIN
int_least8_t, int_least16_t, int_least32_t, int_least64_t
INTMAX_C
INTMAX_MAX
INTMAX_MIN
intmax_t
INTPTR_MAX
INTPTR_MIN
intptr_t
PTRDIFF_MAX
PTRDIFF_MIN
SIG_ATOMIC_MAX
SIG_ATOMIC_MIN
SIZE_MAX
UINT8_C, UINT16_C, UINT32_C, UINT64_C
UINT8_MAX, UINT16_MAX, UINT32_MAX, UINT64_MAX
uint8_t, uint16_t, uint32_t, uint64_t
UINT_FAST8_MAX, UINT_FAST16_MAX, UINT_FAST32_MAX, UINT_FAST64_MAX
uint_fast8_t, uint_fast16_t, uint_fast32_t, uint_fast64_t
UINT_LEAST8_MAX, UINT_LEAST16_MAX, UINT_LEAST32_MAX, UINT_LEAST64_MAX
uint_least8_t, uint_least16_t, uint_least32_t, uint_least64_t
UINTMAX_C
UINTMAX_MAX
uintmax_t
UINTPTR_MAX
uintptr_t
WCHAR_MAX
WCHAR_MIN
WINT_MAX
WINT_MIN
<stdio.h>
BUFSIZ
clearerr
EOF
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
FILE
FILENAME_MAX
fopen
FOPEN_MAX
fpos_t
fprintf
fputc
fputs
fread
freopen
fscanf
fseek
fsetpos
ftell
fwrite
getc
getchar
gets
_IOFBF
_IOLBF
_IONBF
L_tmpnam
NULL
perror
printf
putc
putchar
puts
remove
rename
rewind
scanf
SEEK_CUR
SEEK_END
SEEK_SET
setbuf
setvbuf
size_t
snprintf
sprintf
sscanf
stderr
stdin
stdout
tmpfile
TMP_MAX
tmpnam
ungetc
vfprintf
vfscanf
vprintf
vscanf
vsnprintf
vsprintf
vsscanf
<stdlib.h>
abort
abs
atexit
atof
atoi
atol
atoll
bsearch
calloc
div
div_t
exit
_Exit
EXIT_FAILURE
EXIT_SUCCESS
free
getenv
labs
llabs
ldiv
lldiv
ldiv_t
lldiv_t
malloc
MB_CUR_MAX
mblen
mbstowcs
mbtowc
NULL
qsort
rand
RAND_MAX
realloc
size_t
srand
strtod
strtof
strtol
strtold
strtoll
strtoul
strtoull
system
wchar_t
wcstombs
wctomb
<string.h>
memchr
memcmp
memcpy
memmove
memset
NULL
size_t
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strerror
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtok
strxfrm
<tgmath.h>
acos
acosh
carg
asin
asinh
atan
atan2
atanh
cbrt
ceil
cimag
conj
copysign
cos
cosh
cproj
creal
erf
erfc
exp
exp2
expm1
fabs
fdim
floor
fma
fmax
fmin
fmod
frexp
hypot
ilogb
ldexp
lgamma
llrint
llround
log
log10
log1p
log2
logb
lrint
lround
modf
nearbyint
nextafter
nexttoward
pow
remainder
remquo
rint
round
scalbln
scalbn
sin
sinh
sqrt
tan
tanh
tgamma
trunc
<time.h>
asctime
clock
CLOCKS_PER_SEC
clock_t
ctime
difftime
gmtime
localtime
mktime
NULL
size_t
strftime
time
time_t
tm
<uchar.h>
c16rtomb
c32rtomb
char16_t
char32_t
mbrtoc16
mbrtoc32
mbstate_t
NULL
size_t
__STDC_UTF_16__
__STDC_UTF_32__
<wchar.h>
btowc
fgetwc
fgetws
fputwc
fputws
fwide
fwprintf
fwscanf
getwc
getwchar
mbrlen
mbrtowc
mbsinit
mbsrtowcs
mbstate_t
NULL
putwc
putwchar
size_t
swprintf
swscanf
tm
ungetwc
vfwprintf
vfwscanf
vswprintf
vswscanf
vwprintf
vwscanf
WCHAR_MAX
WCHAR_MIN
wchar_t
wcrtomb
wcscat
wcschr
wcscmp
wcscoll
wcscpy
wcscspn
wcsftime
wcslen
wcsncat
wcsncmp
wcsncpy
wcspbrk
wcsrchr
wcsrtombs
wcsspn
wcsstr
wcstod
wcstof
wcstok
wcstol
wcstold
wcstoll
wcstoul
wcstoull
wcsxfrm
wctob
WEOF
wint_t
wmemchr
wmemcmp
wmemcpy
wmemmove
wmemset
wprintf
wscanf
<wctype.h>
WEOF
iswalnum
iswalpha
iswblank
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
towctrans
towlower
towupper
wctrans
wctrans_t
wctype
wctype_t
wint_t
C Library Overview
Using Standard C Headers
C Library Conventions
Characters
Character Sets
Escape Sequences
Trigraphs
Multibyte Characters
Text and Binary Streams
Byte and Wide Streams
Controlling Streams
Stream States
Formatted Output
Print Formats
Print Functions
Scan Formats
Scan Functions
Scan Conversion Specifiers
Preprocessing
Expressions
Functions
Index
Dinkum EC++ Library
Dinkum EC++ Library
Table of Contents
<complex>
abs
arg
complex
complex::complex
complex::imag
complex::operator*=
complex::operator+=
complex::operator-=
complex::operator/=
complex::operator=
complex::real
complex::value_type
conj
cos
cosh
double_complex
exp
float_complex
imag
log
log10
norm
operator!=
operator*
operator+
operator-
operator/
operator<<
operator==
operator>>
polar
pow
real
sin
sinh
sqrt
__STD_COMPLEX
tan
tanh
<exception>
bad_exception
exception
set_terminate
set_unexpected
terminate
terminate_handler
uncaught_exception
unexpected
unexpected_handler
<fstream>
filebuf
filebuf::filebuf
filebuf::char_type
filebuf::close
filebuf::int_type
filebuf::is_open
filebuf::off_type
filebuf::open
filebuf::overflow
filebuf::pbackfail
filebuf::pos_type
filebuf::seekoff
filebuf::seekpos
filebuf::setbuf
filebuf::sync
filebuf::traits_type
filebuf::underflow
ifstream
ifstream::ifstream
ifstream::close
ifstream::is_open
ifstream::open
ifstream::rdbuf
ofstream
ofstream::ofstream
ofstream::close
ofstream::is_open
ofstream::open
ofstream::rdbuf
<iomanip>
resetiosflags
setbase
setfill
setiosflags
setprecision
setw
<ios>
ios
ios::bad
ios::ios
ios::char_type
ios::clear
ios::copyfmt
ios::eof
ios::exceptions
ios::fail
ios::fill
ios::good
ios::imbue
ios::init
ios::int_type
ios::narrow
ios::off_type
ios::operator void *
ios::operator!
ios::pos_type
ios::rdbuf
ios::rdstate
ios::setstate
ios::tie
ios::traits_type
ios::widen
boolalpha
dec
fixed
fpos
fpos::fpos
fpos::operator!=
fpos::operator+
fpos::operator+=
fpos::operator-
fpos::operator-=
fpos::operator==
fpos::operator streamoff
fpos::state
hex
internal
ios_base
ios_base::event
ios_base::failure
ios_base::flags
ios_base::fmtflags
ios_base::getloc
ios_base::imbue
ios_base::Init
ios_base::ios_base
ios_base::iostate
ios_base::iword
ios_base::openmode
ios_base::operator=
ios_base::precision
ios_base::pword
ios_base::seekdir
ios_base::setf
ios_base::streamoff
ios_base::streampos
ios_base::sync_with_stdio
ios_base::unsetf
ios_base::width
ios_base::xalloc
left
locale
mbstate_t
noboolalpha
noshowbase
noshowpoint
noshowpos
noskipws
nounitbuf
nouppercase
oct
right
scientific
showbase
showpoint
showpos
skipws
streamoff
streampos
streamsize
unitbuf
uppercase
<iosfwd>
<iostream>
cin
cout
<istream>
istream
istream::istream
istream::gcount
istream::get
istream::getline
istream::ignore
istream::operator>>
istream::peek
istream::putback
istream::read
istream::readsome
istream::seekg
istream::sentry
istream::sync
istream::tellg
istream::unget
operator>>
ws
<new>
bad_alloc
new_handler
nothrow
nothrow_t
operator delete
operator delete[]
operator new
operator new[]
set_new_handler
<ostream>
ostream
ostream::ostream
ostream::flush
ostream::operator<<
ostream::put
ostream::seekp
ostream::sentry
ostream::tellp
ostream::write
endl
ends
flush
operator<<
<sstream>
stringbuf
stringbuf::allocator_type
stringbuf::stringbuf
stringbuf::char_type
stringbuf::int_type
stringbuf::off_type
stringbuf::overflow
stringbuf::pbackfail
stringbuf::pos_type
stringbuf::seekoff
stringbuf::seekpos
stringbuf::str
stringbuf::traits_type
stringbuf::underflow
istringstream
istringstream::allocator_type
istringstream::istringstream
istringstream::rdbuf
istringstream::str
ostringstream
ostringstream::allocator_type
ostringstream::ostringstream
ostringstream::rdbuf
ostringstream::str
<stdexcept>
domain_error
invalid_argument
length_error
logic_error
out_of_range
overflow_error
range_error
runtime_error
underflow_error
<streambuf>
streambuf
streambuf::streambuf
streambuf::char_type
streambuf::eback
streambuf::egptr
streambuf::epptr
streambuf::gbump
streambuf::getloc
streambuf::gptr
streambuf::imbue
streambuf::in_avail
streambuf::int_type
streambuf::off_type
streambuf::overflow
streambuf::pbackfail
streambuf::pbase
streambuf::pbump
streambuf::pos_type
streambuf::pptr
streambuf::pubimbue
streambuf::pubseekoff
streambuf::pubseekpos
streambuf::pubsetbuf
streambuf::pubsync
streambuf::sbumpc
streambuf::seekoff
streambuf::seekpos
streambuf::setbuf
streambuf::setg
streambuf::setp
streambuf::sgetc
streambuf::sgetn
streambuf::showmanyc
streambuf::snextc
streambuf::sputbackc
streambuf::sputc
streambuf::sputn
streambuf::stossc
streambuf::sungetc
streambuf::sync
streambuf::traits_type
streambuf::uflow
streambuf::underflow
streambuf::xsgetn
streambuf::xsputn
<string>
string
string::allocator_type
string::append
string::assign
string::at
string::string
string::begin
string::c_str
string::capacity
string::clear
string::compare
string::const_iterator
string::const_pointer
string::const_reference
string::const_reverse_iterator
string::copy
string::data
string::difference_type
string::empty
string::end
string::erase
string::find
string::find_first_not_of
string::find_first_of
string::find_last_not_of
string::find_last_of
string::get_allocator
string::insert
string::iterator
string::length
string::max_size
string::npos
string::operator+=
string::operator=
string::operator[]
string::pointer
string::push_back
string::rbegin
string::reference
string::rend
string::replace
string::reserve
string::resize
string::reverse_iterator
string::rfind
string::size
string::size_type
string::substr
string::swap
string::traits_type
string::value_type
char_allocator
char_allocator::operator==
char_traits
char_traits::assign
char_traits::char_type
char_traits::compare
char_traits::copy
char_traits::eof
char_traits::eq
char_traits::eq_int_type
char_traits::find
char_traits::int_type
char_traits::length
char_traits::lt
char_traits::move
char_traits::not_eof
char_traits::off_type
char_traits::pos_type
char_traits::state_type
char_traits::to_char_type
char_traits::to_int_type
getline
operator+
operator!=
operator==
operator<
operator<<
operator<=
operator>
operator>=
operator>>
swap
<strstream>
strstreambuf
strstreambuf::freeze
strstreambuf::pcount
strstreambuf::overflow
strstreambuf::pbackfail
strstreambuf::seekoff
strstreambuf::seekpos
strstreambuf::str
strstreambuf::strstreambuf
strstreambuf::underflow
istrstream
istrstream::istrstream
istrstream::rdbuf
istrstream::str
ostrstream
ostrstream::freeze
ostrstream::ostrstream
ostrstream::pcount
ostrstream::rdbuf
ostrstream::str
<cassert>
<cctype>
<cerrno>
<cfloat>
<climits>
<clocale>
<cmath>
<csetjmp>
<csignal>
<cstdarg>
<cstddef>
<cstdio>
<cstdlib>
<cstring>
<ctime>
<assert.h>
assert
<ctype.h>
isalnum
isalpha
iscntrl
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit
tolower
toupper
<errno.h>
EDOM
EILSEQ
ERANGE
errno
<float.h>
DBL_DIG
DBL_EPSILON
DBL_MANT_DIG
DBL_MAX
DBL_MAX_10_EXP
DBL_MAX_EXP
DBL_MIN
DBL_MIN_10_EXP
DBL_MIN_EXP
FLT_DIG
FLT_EPSILON
FLT_MANT_DIG
FLT_MAX
FLT_MAX_10_EXP
FLT_MAX_EXP
FLT_MIN
FLT_MIN_10_EXP
FLT_MIN_EXP
FLT_RADIX
FLT_ROUNDS
LDBL_DIG
LDBL_EPSILON
LDBL_MANT_DIG
LDBL_MAX
LDBL_MAX_10_EXP
LDBL_MAX_EXP
LDBL_MIN
LDBL_MIN_10_EXP
LDBL_MIN_EXP
<limits.h>
CHAR_BIT
CHAR_MAX
CHAR_MIN
INT_MAX
INT_MIN
LONG_MAX
LONG_MIN
MB_LEN_MAX
SCHAR_MAX
SCHAR_MIN
SHRT_MAX
SHRT_MIN
UCHAR_MAX
UINT_MAX
ULONG_MAX
USHRT_MAX
<locale.h>
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MONETARY
LC_NUMERIC
LC_TIME
lconv
localeconv
NULL
setlocale
<math.h>
HUGE_VAL
<setjmp.h>
jmp_buf
longjmp
setjmp
<signal.h>
raise
sig_atomic_t
SIGABRT
SIGFPE
SIGILL
SIGINT
signal
SIGSEGV
SIGTERM
SIG_DFL
SIG_ERR
SIG_IGN
<stdarg.h>
va_arg
va_end
va_list
va_start
<stddef.h>
NULL
offsetof
ptrdiff_t
size_t
wchar_t
<stdio.h>
BUFSIZ
clearerr
EOF
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
FILE
FILENAME_MAX
fopen
FOPEN_MAX
fpos_t
fprintf
fputc
fputs
fread
freopen
fscanf
fseek
fsetpos
ftell
fwrite
getc
getchar
gets
_IOFBF
_IOLBF
_IONBF
L_tmpnam
NULL
perror
printf
putc
putchar
puts
remove
rename
rewind
scanf
SEEK_CUR
SEEK_END
SEEK_SET
setbuf
setvbuf
size_t
sprintf
sscanf
stderr
stdin
stdout
tmpfile
TMP_MAX
tmpnam
ungetc
vfprintf
vprintf
vsprintf
<stdlib.h>
abort
abs
atexit
atof
atoi
atol
bsearch
calloc
div
div_t
exit
EXIT_FAILURE
EXIT_SUCCESS
free
getenv
labs
ldiv
ldiv_t
malloc
MB_CUR_MAX
mblen
mbstowcs
mbtowc
NULL
qsort
rand
RAND_MAX
realloc
size_t
srand
strtod
strtol
strtoul
system
wchar_t
wcstombs
wctomb
<string.h>
memchr
memcmp
memcpy
memmove
memset
NULL
size_t
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strerror
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtok
strxfrm
<time.h>
asctime
clock
CLOCKS_PER_SEC
clock_t
ctime
difftime
gmtime
localtime
mktime
NULL
size_t
strftime
time
time_t
tm
<fstream.h>
<iomanip.h>
<iostream.h>
<new.h>
C++ Library Overview
Using C++ Library Headers
C++ Library Conventions
Iostreams Conventions
Exceptions
C Library Overview
Using Standard C Headers
C Library Conventions
Characters
Character Sets
Escape Sequences
Trigraphs
Multibyte Characters
Files and Streams
Text and Binary Streams
Controlling Streams
Stream States
Formatted Output
Print Formats
Print Functions
Formatted Input
Scan Formats
Scan Functions
Scan Conversion Specifiers
Preprocessing
Expressions
Functions
Index
QNX Database for QNX Neutrino
Developer's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
Starting QDB
Database directory
Schema files
Starting the QDB server
Temporary storage filesystem
Auto-attaching databases
Incorrect
Correct
Correct
Database integrity testing
Testing SQL statements
The configuration file
Sharing connections between clients
Shared caching
Advantages of shared caching
Database recovery
Busy timeout
Handling corrupt databases
Sample script
Maintenance Commands
The QDB Client qdbc
Description
QDB Administration
Backing up and restoring databases
QDB Examples
Connecting to the database
Executing a Statement
Getting the result of a query
Using a result
Disconnecting from the Server
Example
Datatypes in QDB
Storage classes
Column affinity
Determination of column affinity
Column affinity example
Comparison expressions
A comparison example
Operators
Sorting, grouping and compound SELECTs
Other affinity modes
User-defined collation sequences
Assigning Collation Sequences from SQL
Collation Sequences Example
QDB Virtual Machine Opcodes
Viewing programs generated by QDB
The opcodes
Writing User-Defined Functions
User scalar/aggregate functions
User collation routines
Example
SQLite C/C++ API
sqlite3_result_*
sqlite3_value_*
sqlite3_user_data
QDB Client API Reference
Functions
qdb_backup
Description:
qdb_bkcancel
Description:
qdb_cell
Description:
qdb_cell_length
Description:
qdb_cell_type
Description:
qdb_collation
Description:
qdb_column_index
Description:
qdb_column_name
Description:
qdb_columns
Description:
qdb_connect
Description:
Using asynchronous mode
qdb_data_source
Description:
qdb_disconnect
Description:
qdb_freeresult
Description:
qdb_getdbsize
Description:
qdb_geterrmsg
Description:
qdb_getoption
Description:
qdb_getresult
Description:
qdb_gettransstate
Description:
qdb_last_insert_rowid
Description:
qdb_mprintf
Description:
qdb_parameters
Description:
qdb_printmsg
Description:
qdb_query
Description:
qdb_rowchanges
Description:
qdb_rows
Description:
qdb_setbusytimeout
Description:
qdb_setoption
Description:
qdb_snprintf
Description:
qdb_statement
Description:
qdb_stmt_exec
Description:
The qdb_binding_t structure
Examples:
qdb_stmt_free
Description:
Examples:
qdb_stmt_init
Description:
Examples:
qdb_vacuum
Description:
qdb_vmprintf
Description:
QDB SQL Reference
General
Statements
Row ID and Autoincrement
Description:
The AUTOINCREMENT Keyword
Comment
Description:
expressions
Description:
Literal values
Parameters
LIKE
GLOB
Column Names
SELECT statements
CAST
Functions
Core Functions
Aggregate Functions
QDB Keywords
Description:
Special names
ALTER TABLE
Description:
ANALYZE
Description:
ATTACH DATABASE
Description:
CREATE INDEX
Description:
CREATE TABLE
Description:
CREATE TRIGGER
Description:
CREATE VIEW
Description:
DELETE
Description:
DETACH DATABASE
Description:
DROP INDEX
Description:
DROP TABLE
Description:
DROP TRIGGER
Description:
DROP VIEW
Description:
EXPLAIN
Description:
INSERT
Description:
ON CONFLICT
Description:
PRAGMA
Description:
Auto vacuum
Cache size
Case sensitivity
Count changes
Default cache size
Full column names
Legacy file format
Page size
Short column names
Synchronous
Temp store
Foreign key list
Index info
Index list
Table info
Schema and user version
Integrity check
REINDEX
Description:
REPLACE
Description:
SELECT
Description:
DISTINCT keyword
WHERE clause
GROUP BY clauses
ORDER BY clauses
LIMIT clauses
Compund SELECT statements
TRANSACTION
Description:
Locks
UPDATE
Description:
VACUUM
Description:
Developer's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
Starting QDB
Database directory
Schema files
Starting the QDB server
Temporary storage filesystem
Auto-attaching databases
Incorrect
Correct
Correct
Database integrity testing
Testing SQL statements
The configuration file
Sharing connections between clients
Shared caching
Advantages of shared caching
Database recovery
Busy timeout
Handling corrupt databases
Sample script
Maintenance Commands
The QDB Client qdbc
Description
QDB Administration
Backing up and restoring databases
QDB Examples
Connecting to the database
Executing a Statement
Getting the result of a query
Using a result
Disconnecting from the Server
Example
Datatypes in QDB
Storage classes
Column affinity
Determination of column affinity
Column affinity example
Comparison expressions
A comparison example
Operators
Sorting, grouping and compound SELECTs
Other affinity modes
User-defined collation sequences
Assigning Collation Sequences from SQL
Collation Sequences Example
QDB Virtual Machine Opcodes
Viewing programs generated by QDB
The opcodes
Writing User-Defined Functions
User scalar/aggregate functions
User collation routines
Example
SQLite C/C++ API
sqlite3_result_*
sqlite3_value_*
sqlite3_user_data
QDB Client API Reference
Functions
qdb_backup
Description:
qdb_bkcancel
Description:
qdb_cell
Description:
qdb_cell_length
Description:
qdb_cell_type
Description:
qdb_collation
Description:
qdb_column_index
Description:
qdb_column_name
Description:
qdb_columns
Description:
qdb_connect
Description:
Using asynchronous mode
qdb_data_source
Description:
qdb_disconnect
Description:
qdb_freeresult
Description:
qdb_getdbsize
Description:
qdb_geterrmsg
Description:
qdb_getoption
Description:
qdb_getresult
Description:
qdb_gettransstate
Description:
qdb_last_insert_rowid
Description:
qdb_mprintf
Description:
qdb_parameters
Description:
qdb_printmsg
Description:
qdb_query
Description:
qdb_rowchanges
Description:
qdb_rows
Description:
qdb_setbusytimeout
Description:
qdb_setoption
Description:
qdb_snprintf
Description:
qdb_statement
Description:
qdb_stmt_exec
Description:
The qdb_binding_t structure
Examples:
qdb_stmt_free
Description:
Examples:
qdb_stmt_init
Description:
Examples:
qdb_vacuum
Description:
qdb_vmprintf
Description:
QDB SQL Reference
General
Statements
Row ID and Autoincrement
Description:
The AUTOINCREMENT Keyword
Comment
Description:
expressions
Description:
Literal values
Parameters
LIKE
GLOB
Column Names
SELECT statements
CAST
Functions
Core Functions
Aggregate Functions
QDB Keywords
Description:
Special names
ALTER TABLE
Description:
ANALYZE
Description:
ATTACH DATABASE
Description:
CREATE INDEX
Description:
CREATE TABLE
Description:
CREATE TRIGGER
Description:
CREATE VIEW
Description:
DELETE
Description:
DETACH DATABASE
Description:
DROP INDEX
Description:
DROP TABLE
Description:
DROP TRIGGER
Description:
DROP VIEW
Description:
EXPLAIN
Description:
INSERT
Description:
ON CONFLICT
Description:
PRAGMA
Description:
Auto vacuum
Cache size
Case sensitivity
Count changes
Default cache size
Full column names
Legacy file format
Page size
Short column names
Synchronous
Temp store
Foreign key list
Index info
Index list
Table info
Schema and user version
Integrity check
REINDEX
Description:
REPLACE
Description:
SELECT
Description:
DISTINCT keyword
WHERE clause
GROUP BY clauses
ORDER BY clauses
LIMIT clauses
Compund SELECT statements
TRANSACTION
Description:
Locks
UPDATE
Description:
VACUUM
Description:
QNX Momentics IDE User's Guide
Assumptions
How to use this guide
IDE Concepts
What is an IDE?
Building embedded systems using the IDE
Perspectives
Views
Editors
Using alternate editors
Changing editors
Refreshing the resources
Disabling automatic syntax annotation highlighting
Preferences
Importing preferences
Exporting preferences
Setting export options for a BSP
Projects in the IDE
Considerations for project development
How the IDE characterizes projects using natures
The IDE Workspace
Specifying a workspace location
Host and target machines
Target agent (the qconn daemon)
Launcher
Resources
Wizards
Keyboard shortcuts
Version coexistence
Environment variables
Coexistence and PhAB
Specifying which OS version to build for
Getting Started
Starting the IDE
The IDE welcomes you
Starting the IDE for the first time
Starting the IDE from the command line
Using the workbench
Using the QNX help system
Opening the online help from the IDE
Navigating the online help
Creating help bookmarks
Tips and Tricks
Creating a project
Creating a simple project
Creating a C/C++ project
How to create a C/C++ project
Creating a C Makefile project
Creating a make project
Creating a make project that can be launched outside the IDE
Creating a target system project
Converting projects
Converting a QNX project to a managed make C/C++ project
Converting a regular project to a managed make C/C++ project
Converting to a QNX project
Completing the conversion of a project to a different type
Post-build actions
Adding a post-build action
Importing projects
Importing an existing container project into a workspace
Importing an existing project into a workspace
Importing external features
Importing external plugins and fragments
Importing a file system
Importing GCC coverage data from a project
Importing a QNX Source Package
Importing a QNX mkifs Buildfile
Importing a QNX source package
Importing a team project set
Importing an archive file
Breakpoints
Launch configurations
Renaming a project
Troubleshooting in the IDE
Project and Wizard Properties Reference
Introduction
Wizard properties
Options tab
Build Variants tab
General tab
Library tab
Compiler tab
Linker tab
General options
Extra library paths
Extra libraries
Extra object files
Make Builder tab
Error Parsers tab
Project properties
Projects tab
Resource options
Builders options panel
C/C++ Build panel
Behaviour tab
Discovery options tab
Environment tab
Settings panel
Tool settings tab
Build steps tab
Build artifact tab
Binary Parser tab
Error parsers tab
Indexer tab
Preparing Your Target
Host-target communications
IP communications
Serial communications
Configuring a target for serial communication
qconn over Qnet
Installing the qconn update
Copying a new version of qconn to a target system.
Networking QNX Neutrino using PPP
Verifying a serial connection
Preparing an embedded system for a Windows target
QNX Networking
Linking an embedded system running QNX Neutrino to a Windows network connection
Verifying a network connection
Connecting with Phindows
Starting a remote Photon session
Running a Photon program in a remote Photon session
Developing C/C++ Programs
The C/C++ perspective
Understanding projects in the IDE
The IDE project model
Supported project types in the IDE
Container project
Scenarios for creating a project for the first time
Checking out a partial source tree
Sharing projects
Checking out existing projects
Setting build properties for a project
Developing projects in the IDE
Creating a simple project
Creating a make project
Managed make projects
Creating a Makefile to build outside of the IDE
Choosing an indexer
Working with projects
Opening files
Creating files from scratch
Filtering files
Opening projects
Closing projects
Viewing outlines of source and binary files
Writing code
C/C++ editor layout
Finishing function names
Accessing source files for functions
Using code templates
Inserting code templates
Creating a custom template
Editing a code template
Adding include directives
Using hover help
Adding and removing comments in code
Customizing the C/C++ editor
Changing fonts, background color, or the visibility of line numbers
Changing tabs into spaces, highlighting, and folding options
Setting Content Assist options
Using other editors
Using an external editor outside of the IDE
Using another editor within the IDE
Building projects
Enabling the autobuild feature for QNX C/C++ projects
Enabling the autobuild feature for non QNX C/C++ projects
Configuring automated builds
Example #1: the Makefile is in the root
Building all projects
Configuring the project build order
Building a single project
Building selected projects
Building from the command line
Cleaning and rebuilding all projects
Cleaning selected projects
Autosave before building
Creating custom options
Building a project with a custom make target
Removing a make target
Adding a use message
Adding a usage message when using a QNX C/C++ Project
Adding a usage message when using a Standard Project
Creating a QNX target system Project
Creating a launch configuration
Running binaries for a project
Deleting a project
More development features
Tracking remaining work
Error markers
Jumping to errors
Filtering errors
Tracking tasks
Setting reminders
Associating tasks with resources
Removing a task
Code synopsis
Toolbar icons
Outline view icons
Filtering and grouping in the Outline view
Using Working Sets
Checking your build
Customizing the Console view
Opening headers
Setting the include paths and define directives (C/C++ Make project)
Navigating: Go To Type
Managing Source Code
SVN and the IDE
CVS and the IDE
Local history feature
Project files (.project and .cproject)
Using the core Eclipse source control documentation in the IDE
SVN documentation
CVS documentation
Importing existing source code into the IDE
Projects within projects
Step 1: Creating a project for your source code
Step 2: Creating a new project for each existing project or component in your source code tree
Step 3: Linking the projects to a directory in the source tree
Step 4: Building the component project in the linked folder
Filesystem drag-and-drop
Importing code into the IDE
Importing a C/C++ project from CVS
Importing C/C++ code that doesn't have the project metadata in CVS
Importing C/C++ code from CVS into an existing project
Importing a C/C++ Project from SVN
Importing C/C++ code that doesn't have the project metadata for SVN
Importing C/C++ code from SVN into an existing project
Import wizard
Adding linked resources
Using container projects
Creating a container project
Setting up a build configuration
Editing existing configurations
Editing via project properties
Editing via the Build Container Configuration item
Building a container project
Importing a BSP or other QNX source packages
QNX BSP perspective
Importing a BSP package from Foundry27
Checking out BSP packages directly from the SVN Repositories view
Exporting projects
Using the Export command
Launch Configurations Reference
What is a launch configuration?
Types of launch configurations
Launch Group type
Running and debugging for the first time
Debugging a program the first time
Running and debugging subsequent times
Launching a selected program (fast)
Launching from a list of favorites (faster)
Launching the last-launched program (fastest)
Setting execution options
Main tab
Arguments tab
Environment tab
Upload tab
Debugger tab
Source tab
Common tab
Tools tab
Debugging in the IDE
Debugging your program (building an executable for debugging)
Debugging a child process
Controlling your debug session
Debug view
Debug view icons
Using the controls
Toolbar icons
Using hotkeys
Controlling your debug session
From the Debug view
From the C/C++ editor
Disassembly mode
Debug launch controls
Jumping to a memory address in the Disassembly view
More debugging features
Inspecting variables
Changing variable values
Controlling the display of variables
Changing variable to a different type
Viewing variables in memory
Using breakpoints and watchpoints
Adding breakpoints
Adding watchpoints
Setting an action for the breakpoint
Adding event breakpoints
Setting properties of breakpoints and watchpoints
Disabling/enabling breakpoints and watchpoints
Removing breakpoints and watchpoints
Evaluating your expressions
Inspecting your registers
Toolbar icons
Menu commands
Modifying registers
Changing the number system for register values
Inspecting a process's memory
Viewing memory
Inspecting memory
Configuring output format
Changing memory
Menu commands
Monitors pane menu commands
Rendering pane menu commands
Inspecting shared-library usage
Loading a Library's symbol
Monitoring signal handling
Changing how the debugger handles signals
Sending a signal to a suspended program
Viewing your output
Interacting with GDB
Enabling the QNX GDB Console view
Using the QNX GDB Console view
Using JTAG debugging
JTAG: Using the Abatron BDI2000 JTAG Debugger with a QNX Neutrino kernel image
Prerequisites
Connecting the Abatron BDI2000 JTAG Debugger to your host
Updating the Abatron firmware
Connecting the Abatron BDI2000 Debugger to your target
Building a system image
Creating a launch configuration
Debugging the startup binary
JTAG: Using the Lauterbach Trace32 In-Circuit Debugger with a QNX Neutrino kernel image
Prerequisites
Installing the Lauterbach Trace32 In-Circuit Debugger software
Installing the Lauterbach Trace32 Eclipse plug-in software
Connecting the Lauterbach Trace32 In-Circuit Debugger
Configuring the Lauterbach Trace32 In-Circuit Debugger
Creating a launch configuration for the target hardware
Creating a startup script for the Lauterbach Trace32 In-Circuit software
Creating multicore launch configurations
Using the debugger
JTAG: Using the Macraigor Usb2Demon Debugger with a QNX Neutrino kernel image
Prerequisites
Installing the Macraigor hardware support package
Connecting the Macraigor Usb2Demon Debugger to your host
Connecting the Macraigor Usb2Demon Debugger to your target
Starting the OCDremote
Building a system image
Creating a launch configuration
Debugging a startup binary
Building OS and Flash Images
Introducing the QNX System Builder
Toolbar buttons
Binary Inspector
Boot script files
Overview of images
Components of an image, in order of booting
Types of images you can create
BSP filename conventions
OS image (.ifs file)
Flash filesystem image (.efs file)
Combined image
Padding after the IPL
Project layout
Workflow of image creation
Creating a new QNX System Builder project for an OS image
Creating a project for a flash filesystem image (an .efs file)
Building an OS image
Creating a new image
Combining images
Adding an IPL to the start of your image
Adding an EFS to your image
Setting the final format of your OS image
Downloading an image to your target
Downloading
Opening a terminal
Communicating with your target
Using the QNX Send File button
Downloading using TFTP
Transferring a file
Transferring files that aren't in Images
Transferring an image
Settings for the TFTP server
Setting font and color preferences
Downloading using other methods
Configuring your QNX System Builder projects
Managing your images
Determining the shared libraries and DLLs are required for an executable
Adding files to your image
Deleting files
Adding directories
Deleting directories
Configuring image properties
Image properties
Directories
General
System (.ifs)
System (.efs)
Item properties
General
Combine
Memory
Permissions
Configuring project properties
Search Paths
Managing your search paths
Search path variables
Optimizing your system
Optimizing all libraries in your image
Optimizing a single library
Restoring a slimmed-down library
Moving files between the host and target
Moving files to the target
Moving files from the target to the host
Exporting a System Builder project to a Mkxfs build file(s)
Developing Photon Applications
What is PhAB?
PhAB and the IDE
Using PhAB
Creating a QNX Photon Appbuilder project
Closing PhAB
Reopening PhAB
Editing code
Building a QNX Photon Appbuilder project
Importing an existing standalone QNX Photon Appbuilder project
Checking out an existing PhAB project from CVS
Starting Photon applications
Profiling an Application
Types of profiling
Statistical sample profiling (sampling)
Function Instrumentation profiling
Sampling and Call Count instrumentation profiling
Postmortem profiling for Call Count and Function Instrumentation profiling
Profiling your programs
Building a program for profiling
Building with profiling enabled
Running and profiling a process
Profiling a running process
Postmortem profiling for Call Count and sampling
Application Profiler tab
Controlling your profiling sessions
Understanding your profiling data
Profiler Sessions view
Toolbar options
Pausing and resuming a profiling session
Taking a snapshot of a profile session
Creating a sample profile session
Exporting a profiler session
Debug view
Execution Time view
Column descriptions
Interpreting Tree mode column information by profiling type
Toolbar options
Context menu navigation options
Take Snapshot and Watch Difference
Show Threads Tree
Show Table mode
Show Calls
Show Reverse Calls
Show Call Graphs
Show Source
Duplicating the view
Viewing history
Grouping
Setting preferences
Copying to the clipboard
Filtering
Searching
Annotated source editor
Using the Application Profiler
Using Function Instrumentation with the Application Profiler
Using Sampling and Call Count instrumentation mode
Using Function Instrumentation mode for a single application
Using Function Instrumentation in the System Profiler
Creating an Application Profiler session
Creating a profiler session by importing profiler data
Profiling a single-threaded application
Profiling a running process for an existing project
Using postmortem profiling for Call Count and Sampling
Postmortem profiling
Running an instrumented binary with profiling from a command prompt (Function Instrumentation mode)
Taking a snapshot of a profiling session
Comparing profiles
Using Code Coverage
Types of code coverage in the IDE
How the coverage tool works
Enabling code coverage
Enabling code coverage for make projects
Starting a coverage-enabled program
Importing gcc code coverage data from a project
Associated views
Code Coverage Sessions view
Combining Code Coverage sessions
Examining data line-by-line
Code Coverage Properties view
Code Coverage Report view
Analyzing Memory Usage and Finding Errors
Memory management in QNX Neutrino
Virtual memory
Memory optimization
Process memory
Inspecting your process memory distribution
Performance of heap allocations
Preparing for a memory profiling session
Analyzing allocation patterns
Optimizing heap memory
Memory leaks
Enabling memory leak detection
Inspecting outstanding allocations
Types of allocation overhead
Estimating the average allocation size
Tuning the allocator
Optimizing static and stack memory
Finding memory errors and leaks
Testing an application for memory leaks using the System Information Tool
Using Memory Analysis tooling
Memory leaks
Enabling leak detection
Detecting leaks on demand during program execution
Interpreting leaks
Memory errors
Configuring the IDE for error analysis
Changing error detection options at runtime
Interpreting memory errors
Using Mudflap
Configuring Mudflap to find errors
Options for Mudflap
Mudflap Violations view
Interpreting Mudflap output
The Memory Analysis tool
Advanced topics
Analyzing a running program
Memory analysis of shared objects
GUI interface options and environment variables for the Memory Analysis Tool
Launching your program with Memory Analysis
Launching from the command line with Memory Analysis enabled
Performing a postmortem memory analysis
Attaching to a running process
The Memory Analysis tooling API
Viewing Memory Analysis data
Memory Analysis editor
Selecting data
Controlling the page layout
Controlling the overview
Controlling the detail pane
Allocations tab
Bins tab
Bands tab
Usage tab
Settings tab
Memory Problems view
Memory Problems Filter
Memory Problems Preferences
Viewing statistics for memory problems
Memory Events view
Memory Events Filter
Memory Events Preferences
Viewing statistics for memory events
Memory Backtrace view
Inspecting outstanding allocations
Interpreting errors during memory analysis
Illegal deallocation of memory
NULL pointer dereference
Buffer overflow
Using freed memory
Reading uninitialized memory
Resource (memory) leaks
Functions checked for memory errors during memory analysis
Summary of error messages for Memory Analysis
Managing Memory Analysis sessions: The Session view
Opening a session
Deleting a session
Closing a session
Exporting session data
Filtering information for a session
Importing session information
Showing information about a session
Renaming a session
Importing memory analysis data
Importing session information from an XML file
Importing event information
Exporting memory analysis data
Exporting memory analysis session data
Memory result formats
Getting System Information
Introduction
What the System Information perspective reveals
Logging system information
Associated views
Controlling your system information session
Sending a signal
Examining your target system's attributes
System Specifications pane
System Memory pane
Processes panes
Watching your processes
Thread Details pane
Environment Variables pane
Process Properties pane
Examining your target system's memory (inspecting virtual address space)
Tracking heap usage
Observing changes in memory usage (allocations and deallocations)
Outstanding allocations
Allocation deltas
Deallocation deltas
Outstanding allocation deltas
Examining process signals
Getting channel information
Tracking file descriptors
Tracking resource usage
Tracking the use of adaptive partitioning
Associated views
Analyzing Your System with Kernel Tracing
Introducing the QNX System Profiler
Before you begin
Configuring a target for system profiling
Launching the Log Configuration dialog
Address translation
Configuring your kernel event trace
Capturing instrumentation data in event log files
Viewing and interpreting the captured data
System Profiler editor
Timeline view
Timeline State Colors view
Zooming
Filtering profile data
Raw Event Data view
Trace Event Log view
Properties view
Tracking down events
Trace Search
Bookmarks view
Gathering statistics from trace data
General Statistics view
Event Owner Statistics view
Client/Server CPU Statistics view
Overview view
Condition Statistics view
Thread Call Stack view
Determining thread state behavior
Thread State Snapshot view
Why Running? view
Analyzing multiprocessor systems
CPU Migration pane
Analyzing systems with AP scheduling
Partition Summary pane
Using Function Instrumentation mode with the System Profiler
Importing part of a kernel trace into the Application Profiler
System Profiler use cases
Locating sources of high CPU usage
Mapping and isolating client CPU load from server CPU load
Examining interrupt latency
Locating Events of Interest
Tutorials
Before you start
Tutorial 1: Creating a C/C++ project
Tutorial 2: Creating a QNX C/C++ project
Tutorial 3: Importing an existing project into the IDE
Tutorial 4: Importing a QNX BSP into the IDE
Where Files Are Stored?
Utilities used by the IDE
What's New
What's New in IDE 4.7
Eclipse 3.5 and CDT 6.0 integration
Changes made to IDE 4.7
Compiler and Tools
What's New in IDE 4.6
Eclipse 3.4 and CDT 5.0.2 integration
Mudflap integration
Integration with Foundry27 and importing BSPs
System Profiler
Compiler and Tools
What's New in IDE 4.5
Eclipse 3.3 and CDT 4.0 integration
C and C++ development
System information and target management
Application Profiler
System Profiler
System Builder
Memory Analysis
Debugger
Code Coverage
Compiler and Tools
Migrating from Earlier Releases
Migration issues
General migration considerations
Coexistence
Compiler issues
Binary compatibility
CDT impact on the IDE
Creating a make project
Creating a make project that can be launched outside the IDE
IDE location
Old launch configurations don't switch perspectives automatically
Missing features in context menus
System Builder Console doesn't come to front
Reverting to an older version of the IDE
Importing into an older IDE
Migrating from 6.4.1 (IDE 4.6) to 6.5.0 (IDE 4.7)
Migrating your workspace
Migrating your projects
Migrating from 6.4.0 (IDE 4.5) to 6.5.0 (IDE 4.7)
Migrating your workspace
Migrating your projects
Migrating from 6.3.2 (IDE 4.0.1) to 6.5.0 (IDE 4.7)
Migrating your workspace
Migrating your projects
IDE Administration
Updating the IDE using the Software Updates Manager
Running the IDE in administrative mode
Installing new software
Using older toolchains with the IDE
Copying a new version of qconn to a target system
Updating qconn on a development system
Glossary
Assumptions
How to use this guide
IDE Concepts
What is an IDE?
Building embedded systems using the IDE
Perspectives
Views
Editors
Using alternate editors
Changing editors
Refreshing the resources
Disabling automatic syntax annotation highlighting
Preferences
Importing preferences
Exporting preferences
Setting export options for a BSP
Projects in the IDE
Considerations for project development
How the IDE characterizes projects using natures
The IDE Workspace
Specifying a workspace location
Host and target machines
Target agent (the qconn daemon)
Launcher
Resources
Wizards
Keyboard shortcuts
Version coexistence
Environment variables
Coexistence and PhAB
Specifying which OS version to build for
Getting Started
Starting the IDE
The IDE welcomes you
Starting the IDE for the first time
Starting the IDE from the command line
Using the workbench
Using the QNX help system
Opening the online help from the IDE
Navigating the online help
Creating help bookmarks
Tips and Tricks
Creating a project
Creating a simple project
Creating a C/C++ project
How to create a C/C++ project
Creating a C Makefile project
Creating a make project
Creating a make project that can be launched outside the IDE
Creating a target system project
Converting projects
Converting a QNX project to a managed make C/C++ project
Converting a regular project to a managed make C/C++ project
Converting to a QNX project
Completing the conversion of a project to a different type
Post-build actions
Adding a post-build action
Importing projects
Importing an existing container project into a workspace
Importing an existing project into a workspace
Importing external features
Importing external plugins and fragments
Importing a file system
Importing GCC coverage data from a project
Importing a QNX Source Package
Importing a QNX mkifs Buildfile
Importing a QNX source package
Importing a team project set
Importing an archive file
Breakpoints
Launch configurations
Renaming a project
Troubleshooting in the IDE
Project and Wizard Properties Reference
Introduction
Wizard properties
Options tab
Build Variants tab
General tab
Library tab
Compiler tab
Linker tab
General options
Extra library paths
Extra libraries
Extra object files
Make Builder tab
Error Parsers tab
Project properties
Projects tab
Resource options
Builders options panel
C/C++ Build panel
Behaviour tab
Discovery options tab
Environment tab
Settings panel
Tool settings tab
Build steps tab
Build artifact tab
Binary Parser tab
Error parsers tab
Indexer tab
Preparing Your Target
Host-target communications
IP communications
Serial communications
Configuring a target for serial communication
qconn over Qnet
Installing the qconn update
Copying a new version of qconn to a target system.
Networking QNX Neutrino using PPP
Verifying a serial connection
Preparing an embedded system for a Windows target
QNX Networking
Linking an embedded system running QNX Neutrino to a Windows network connection
Verifying a network connection
Connecting with Phindows
Starting a remote Photon session
Running a Photon program in a remote Photon session
Developing C/C++ Programs
The C/C++ perspective
Understanding projects in the IDE
The IDE project model
Supported project types in the IDE
Container project
Scenarios for creating a project for the first time
Checking out a partial source tree
Sharing projects
Checking out existing projects
Setting build properties for a project
Developing projects in the IDE
Creating a simple project
Creating a make project
Managed make projects
Creating a Makefile to build outside of the IDE
Choosing an indexer
Working with projects
Opening files
Creating files from scratch
Filtering files
Opening projects
Closing projects
Viewing outlines of source and binary files
Writing code
C/C++ editor layout
Finishing function names
Accessing source files for functions
Using code templates
Inserting code templates
Creating a custom template
Editing a code template
Adding include directives
Using hover help
Adding and removing comments in code
Customizing the C/C++ editor
Changing fonts, background color, or the visibility of line numbers
Changing tabs into spaces, highlighting, and folding options
Setting Content Assist options
Using other editors
Using an external editor outside of the IDE
Using another editor within the IDE
Building projects
Enabling the autobuild feature for QNX C/C++ projects
Enabling the autobuild feature for non QNX C/C++ projects
Configuring automated builds
Example #1: the Makefile is in the root
Building all projects
Configuring the project build order
Building a single project
Building selected projects
Building from the command line
Cleaning and rebuilding all projects
Cleaning selected projects
Autosave before building
Creating custom options
Building a project with a custom make target
Removing a make target
Adding a use message
Adding a usage message when using a QNX C/C++ Project
Adding a usage message when using a Standard Project
Creating a QNX target system Project
Creating a launch configuration
Running binaries for a project
Deleting a project
More development features
Tracking remaining work
Error markers
Jumping to errors
Filtering errors
Tracking tasks
Setting reminders
Associating tasks with resources
Removing a task
Code synopsis
Toolbar icons
Outline view icons
Filtering and grouping in the Outline view
Using Working Sets
Checking your build
Customizing the Console view
Opening headers
Setting the include paths and define directives (C/C++ Make project)
Navigating: Go To Type
Managing Source Code
SVN and the IDE
CVS and the IDE
Local history feature
Project files (.project and .cproject)
Using the core Eclipse source control documentation in the IDE
SVN documentation
CVS documentation
Importing existing source code into the IDE
Projects within projects
Step 1: Creating a project for your source code
Step 2: Creating a new project for each existing project or component in your source code tree
Step 3: Linking the projects to a directory in the source tree
Step 4: Building the component project in the linked folder
Filesystem drag-and-drop
Importing code into the IDE
Importing a C/C++ project from CVS
Importing C/C++ code that doesn't have the project metadata in CVS
Importing C/C++ code from CVS into an existing project
Importing a C/C++ Project from SVN
Importing C/C++ code that doesn't have the project metadata for SVN
Importing C/C++ code from SVN into an existing project
Import wizard
Adding linked resources
Using container projects
Creating a container project
Setting up a build configuration
Editing existing configurations
Editing via project properties
Editing via the Build Container Configuration item
Building a container project
Importing a BSP or other QNX source packages
QNX BSP perspective
Importing a BSP package from Foundry27
Checking out BSP packages directly from the SVN Repositories view
Exporting projects
Using the Export command
Launch Configurations Reference
What is a launch configuration?
Types of launch configurations
Launch Group type
Running and debugging for the first time
Debugging a program the first time
Running and debugging subsequent times
Launching a selected program (fast)
Launching from a list of favorites (faster)
Launching the last-launched program (fastest)
Setting execution options
Main tab
Arguments tab
Environment tab
Upload tab
Debugger tab
Source tab
Common tab
Tools tab
Debugging in the IDE
Debugging your program (building an executable for debugging)
Debugging a child process
Controlling your debug session
Debug view
Debug view icons
Using the controls
Toolbar icons
Using hotkeys
Controlling your debug session
From the Debug view
From the C/C++ editor
Disassembly mode
Debug launch controls
Jumping to a memory address in the Disassembly view
More debugging features
Inspecting variables
Changing variable values
Controlling the display of variables
Changing variable to a different type
Viewing variables in memory
Using breakpoints and watchpoints
Adding breakpoints
Adding watchpoints
Setting an action for the breakpoint
Adding event breakpoints
Setting properties of breakpoints and watchpoints
Disabling/enabling breakpoints and watchpoints
Removing breakpoints and watchpoints
Evaluating your expressions
Inspecting your registers
Toolbar icons
Menu commands
Modifying registers
Changing the number system for register values
Inspecting a process's memory
Viewing memory
Inspecting memory
Configuring output format
Changing memory
Menu commands
Monitors pane menu commands
Rendering pane menu commands
Inspecting shared-library usage
Loading a Library's symbol
Monitoring signal handling
Changing how the debugger handles signals
Sending a signal to a suspended program
Viewing your output
Interacting with GDB
Enabling the QNX GDB Console view
Using the QNX GDB Console view
Using JTAG debugging
JTAG: Using the Abatron BDI2000 JTAG Debugger with a QNX Neutrino kernel image
Prerequisites
Connecting the Abatron BDI2000 JTAG Debugger to your host
Updating the Abatron firmware
Connecting the Abatron BDI2000 Debugger to your target
Building a system image
Creating a launch configuration
Debugging the startup binary
JTAG: Using the Lauterbach Trace32 In-Circuit Debugger with a QNX Neutrino kernel image
Prerequisites
Installing the Lauterbach Trace32 In-Circuit Debugger software
Installing the Lauterbach Trace32 Eclipse plug-in software
Connecting the Lauterbach Trace32 In-Circuit Debugger
Configuring the Lauterbach Trace32 In-Circuit Debugger
Creating a launch configuration for the target hardware
Creating a startup script for the Lauterbach Trace32 In-Circuit software
Creating multicore launch configurations
Using the debugger
JTAG: Using the Macraigor Usb2Demon Debugger with a QNX Neutrino kernel image
Prerequisites
Installing the Macraigor hardware support package
Connecting the Macraigor Usb2Demon Debugger to your host
Connecting the Macraigor Usb2Demon Debugger to your target
Starting the OCDremote
Building a system image
Creating a launch configuration
Debugging a startup binary
Building OS and Flash Images
Introducing the QNX System Builder
Toolbar buttons
Binary Inspector
Boot script files
Overview of images
Components of an image, in order of booting
Types of images you can create
BSP filename conventions
OS image (.ifs file)
Flash filesystem image (.efs file)
Combined image
Padding after the IPL
Project layout
Workflow of image creation
Creating a new QNX System Builder project for an OS image
Creating a project for a flash filesystem image (an .efs file)
Building an OS image
Creating a new image
Combining images
Adding an IPL to the start of your image
Adding an EFS to your image
Setting the final format of your OS image
Downloading an image to your target
Downloading
Opening a terminal
Communicating with your target
Using the QNX Send File button
Downloading using TFTP
Transferring a file
Transferring files that aren't in Images
Transferring an image
Settings for the TFTP server
Setting font and color preferences
Downloading using other methods
Configuring your QNX System Builder projects
Managing your images
Determining the shared libraries and DLLs are required for an executable
Adding files to your image
Deleting files
Adding directories
Deleting directories
Configuring image properties
Image properties
Directories
General
System (.ifs)
System (.efs)
Item properties
General
Combine
Memory
Permissions
Configuring project properties
Search Paths
Managing your search paths
Search path variables
Optimizing your system
Optimizing all libraries in your image
Optimizing a single library
Restoring a slimmed-down library
Moving files between the host and target
Moving files to the target
Moving files from the target to the host
Exporting a System Builder project to a Mkxfs build file(s)
Developing Photon Applications
What is PhAB?
PhAB and the IDE
Using PhAB
Creating a QNX Photon Appbuilder project
Closing PhAB
Reopening PhAB
Editing code
Building a QNX Photon Appbuilder project
Importing an existing standalone QNX Photon Appbuilder project
Checking out an existing PhAB project from CVS
Starting Photon applications
Profiling an Application
Types of profiling
Statistical sample profiling (sampling)
Function Instrumentation profiling
Sampling and Call Count instrumentation profiling
Postmortem profiling for Call Count and Function Instrumentation profiling
Profiling your programs
Building a program for profiling
Building with profiling enabled
Running and profiling a process
Profiling a running process
Postmortem profiling for Call Count and sampling
Application Profiler tab
Controlling your profiling sessions
Understanding your profiling data
Profiler Sessions view
Toolbar options
Pausing and resuming a profiling session
Taking a snapshot of a profile session
Creating a sample profile session
Exporting a profiler session
Debug view
Execution Time view
Column descriptions
Interpreting Tree mode column information by profiling type
Toolbar options
Context menu navigation options
Take Snapshot and Watch Difference
Show Threads Tree
Show Table mode
Show Calls
Show Reverse Calls
Show Call Graphs
Show Source
Duplicating the view
Viewing history
Grouping
Setting preferences
Copying to the clipboard
Filtering
Searching
Annotated source editor
Using the Application Profiler
Using Function Instrumentation with the Application Profiler
Using Sampling and Call Count instrumentation mode
Using Function Instrumentation mode for a single application
Using Function Instrumentation in the System Profiler
Creating an Application Profiler session
Creating a profiler session by importing profiler data
Profiling a single-threaded application
Profiling a running process for an existing project
Using postmortem profiling for Call Count and Sampling
Postmortem profiling
Running an instrumented binary with profiling from a command prompt (Function Instrumentation mode)
Taking a snapshot of a profiling session
Comparing profiles
Using Code Coverage
Types of code coverage in the IDE
How the coverage tool works
Enabling code coverage
Enabling code coverage for make projects
Starting a coverage-enabled program
Importing gcc code coverage data from a project
Associated views
Code Coverage Sessions view
Combining Code Coverage sessions
Examining data line-by-line
Code Coverage Properties view
Code Coverage Report view
Analyzing Memory Usage and Finding Errors
Memory management in QNX Neutrino
Virtual memory
Memory optimization
Process memory
Inspecting your process memory distribution
Performance of heap allocations
Preparing for a memory profiling session
Analyzing allocation patterns
Optimizing heap memory
Memory leaks
Enabling memory leak detection
Inspecting outstanding allocations
Types of allocation overhead
Estimating the average allocation size
Tuning the allocator
Optimizing static and stack memory
Finding memory errors and leaks
Testing an application for memory leaks using the System Information Tool
Using Memory Analysis tooling
Memory leaks
Enabling leak detection
Detecting leaks on demand during program execution
Interpreting leaks
Memory errors
Configuring the IDE for error analysis
Changing error detection options at runtime
Interpreting memory errors
Using Mudflap
Configuring Mudflap to find errors
Options for Mudflap
Mudflap Violations view
Interpreting Mudflap output
The Memory Analysis tool
Advanced topics
Analyzing a running program
Memory analysis of shared objects
GUI interface options and environment variables for the Memory Analysis Tool
Launching your program with Memory Analysis
Launching from the command line with Memory Analysis enabled
Performing a postmortem memory analysis
Attaching to a running process
The Memory Analysis tooling API
Viewing Memory Analysis data
Memory Analysis editor
Selecting data
Controlling the page layout
Controlling the overview
Controlling the detail pane
Allocations tab
Bins tab
Bands tab
Usage tab
Settings tab
Memory Problems view
Memory Problems Filter
Memory Problems Preferences
Viewing statistics for memory problems
Memory Events view
Memory Events Filter
Memory Events Preferences
Viewing statistics for memory events
Memory Backtrace view
Inspecting outstanding allocations
Interpreting errors during memory analysis
Illegal deallocation of memory
NULL pointer dereference
Buffer overflow
Using freed memory
Reading uninitialized memory
Resource (memory) leaks
Functions checked for memory errors during memory analysis
Summary of error messages for Memory Analysis
Managing Memory Analysis sessions: The Session view
Opening a session
Deleting a session
Closing a session
Exporting session data
Filtering information for a session
Importing session information
Showing information about a session
Renaming a session
Importing memory analysis data
Importing session information from an XML file
Importing event information
Exporting memory analysis data
Exporting memory analysis session data
Memory result formats
Getting System Information
Introduction
What the System Information perspective reveals
Logging system information
Associated views
Controlling your system information session
Sending a signal
Examining your target system's attributes
System Specifications pane
System Memory pane
Processes panes
Watching your processes
Thread Details pane
Environment Variables pane
Process Properties pane
Examining your target system's memory (inspecting virtual address space)
Tracking heap usage
Observing changes in memory usage (allocations and deallocations)
Outstanding allocations
Allocation deltas
Deallocation deltas
Outstanding allocation deltas
Examining process signals
Getting channel information
Tracking file descriptors
Tracking resource usage
Tracking the use of adaptive partitioning
Associated views
Analyzing Your System with Kernel Tracing
Introducing the QNX System Profiler
Before you begin
Configuring a target for system profiling
Launching the Log Configuration dialog
Address translation
Configuring your kernel event trace
Capturing instrumentation data in event log files
Viewing and interpreting the captured data
System Profiler editor
Timeline view
Timeline State Colors view
Zooming
Filtering profile data
Raw Event Data view
Trace Event Log view
Properties view
Tracking down events
Trace Search
Bookmarks view
Gathering statistics from trace data
General Statistics view
Event Owner Statistics view
Client/Server CPU Statistics view
Overview view
Condition Statistics view
Thread Call Stack view
Determining thread state behavior
Thread State Snapshot view
Why Running? view
Analyzing multiprocessor systems
CPU Migration pane
Analyzing systems with AP scheduling
Partition Summary pane
Using Function Instrumentation mode with the System Profiler
Importing part of a kernel trace into the Application Profiler
System Profiler use cases
Locating sources of high CPU usage
Mapping and isolating client CPU load from server CPU load
Examining interrupt latency
Locating Events of Interest
Tutorials
Before you start
Tutorial 1: Creating a C/C++ project
Tutorial 2: Creating a QNX C/C++ project
Tutorial 3: Importing an existing project into the IDE
Tutorial 4: Importing a QNX BSP into the IDE
Where Files Are Stored?
Utilities used by the IDE
What's New
What's New in IDE 4.7
Eclipse 3.5 and CDT 6.0 integration
Changes made to IDE 4.7
Compiler and Tools
What's New in IDE 4.6
Eclipse 3.4 and CDT 5.0.2 integration
Mudflap integration
Integration with Foundry27 and importing BSPs
System Profiler
Compiler and Tools
What's New in IDE 4.5
Eclipse 3.3 and CDT 4.0 integration
C and C++ development
System information and target management
Application Profiler
System Profiler
System Builder
Memory Analysis
Debugger
Code Coverage
Compiler and Tools
Migrating from Earlier Releases
Migration issues
General migration considerations
Coexistence
Compiler issues
Binary compatibility
CDT impact on the IDE
Creating a make project
Creating a make project that can be launched outside the IDE
IDE location
Old launch configurations don't switch perspectives automatically
Missing features in context menus
System Builder Console doesn't come to front
Reverting to an older version of the IDE
Importing into an older IDE
Migrating from 6.4.1 (IDE 4.6) to 6.5.0 (IDE 4.7)
Migrating your workspace
Migrating your projects
Migrating from 6.4.0 (IDE 4.5) to 6.5.0 (IDE 4.7)
Migrating your workspace
Migrating your projects
Migrating from 6.3.2 (IDE 4.0.1) to 6.5.0 (IDE 4.7)
Migrating your workspace
Migrating your projects
IDE Administration
Updating the IDE using the Software Updates Manager
Running the IDE in administrative mode
Installing new software
Using older toolchains with the IDE
Copying a new version of qconn to a target system
Updating qconn on a development system
Glossary
QNX Momentics Phindows Connectivity Tool User's Guide
How to Use This Guide
Getting started with Phindows
Starting Phindows
Configuring Phindows for TCP/IP use
Data-compression options
Data-caching options
Using Windows fonts
Using snapshot or PgReadScreen()
Using the command line options
Command-line options
Dittoing remote QNX Photon sessions
Connecting to a remote Photon session
Starting Photon sessions on other QNX nodes
Spanning a single Photon session across multiple screens
Sharing a Photon session (workgroup computing)
Enabling offscreen context support
Using predefined Photon services
Configuring Phindows
Configuring Phindows environment variables
Setting up an embedded target
How to Use This Guide
Getting started with Phindows
Starting Phindows
Configuring Phindows for TCP/IP use
Data-compression options
Data-caching options
Using Windows fonts
Using snapshot or PgReadScreen()
Using the command line options
Command-line options
Dittoing remote QNX Photon sessions
Connecting to a remote Photon session
Starting Photon sessions on other QNX nodes
Spanning a single Photon session across multiple screens
Sharing a Photon session (workgroup computing)
Enabling offscreen context support
Using predefined Photon services
Configuring Phindows
Configuring Phindows environment variables
Setting up an embedded target
QNX Neutrino Adaptive Partitioning
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What is Adaptive Partitioning?
What are partitions and what is adaptive partitioning?
Because adaptive partitions are not boxes what are they?
System and user requirements
The thread scheduler
Controlling Resources Using the Thread Scheduler
Overview
Quickstart: Adaptive Partitioning Thread Scheduler
Using the Thread Scheduler
Introduction
Keeping track of CPU time
How is CPU time divided between partitions?
Underload
Free time
Full Load
Summary of scheduling behavior
Partition inheritance
What about any threads or processes that the server creates? Which partition do they run in?
Critical threads
Bankruptcy
Adaptive partitioning thread scheduler and other thread schedulers
A caveat about FIFO scheduling
Using the thread scheduler and multicore together
Scheduler partitions and BMP
Setting Up and Using the Adaptive Partitioning Thread Scheduler
Building an image
Creating scheduler partitions
In a buildfile
From the command line
From a program
Launching a process in a partition
In a buildfile
From the command line
From a program
Viewing partition use
Considerations for the Thread Scheduler
Determining the number of scheduler partitions and their contents
Choosing the percentage of CPU for each partition
Setting budgets to zero
When is it useful to set the budget of a partition to zero?
Setting budgets for resource managers
Choosing the window size
Accuracy
Delays compared to priority scheduling
Case 1
Case 2
Approximating the delays
Practical limits
Uncontrolled interactions between scheduler partitions
Security for Scheduler Partitions
Managing security for the thread scheduler
Security and critical threads
Testing and Debugging
Instrumented kernel trace events
Using the QNX IDE (trace events)
Using other methods
Emergency access to the system
Frequently Asked Questions: Adaptive Partitioning Thread Scheduler
Scheduling behavior
How does the thread scheduler guarantee a partition's minimum CPU budget?
When does the scheduler guarantee that a partition gets its budget?
Does a 100-ms window mean a CPU time-averaging occurs only once in every 100 ms?
How often does the algorithm enforce partition budgets?
What system assumptions does the design of thread scheduler make?
When does the thread scheduler calculate percentage CPU usage?
How often does the thread scheduler compute CPU usage?
When is the scheduler's behavior realtime?
What is free-time mode?
What is free time?
Do you have to repay free time?
How does the thread scheduler behave on HyperThreaded (HT) processors?
How long can a round-robin thread run with the thread scheduler?
How long can a FIFO thread run with the thread scheduler?
How long can a sporadic (SS) thread run with the thread scheduler?
How often does the thread scheduler algorithm run?
How often does the thread scheduler enforce budgets?
How do power-saving modes affect scheduling?
How does changing the clock period (using ClockPeriod) affect scheduling?
Microbilling
How does microbilling work?
How often does thread scheduler microbill?
How does ClockCycles work?
How accurate is microbilling?
How accurate is ClockCycles?
What is the resolution of thread timing?
Averaging window
How does the averaging window work?
What is the window-rotation algorithm?
Can I change the window size?
How does changing the window size affect scheduling?
How do maximum latencies relate to the averaging window size?
Scheduling algorithm
How does the thread scheduler pick a thread to run?
How does the scheduling algorithm work?
How does the scheduler find the highest-priority thread in a partition?
How are RFFs (relative fraction free) computed?
How does the scheduler algorithm avoid division and floating-point mathematics?
How does the scheduler algorithm determine if a thread that's allowed to run as critical, should actually run as critical?
How does the scheduler algorithm decide when to bill critical time?
What are the algorithm's size limitations?
What are the algorithm's accuracy limitations?
When is the scheduling algorithm approximated?
Overhead
Which partition is the overhead associated with scheduling charged to?
Which partition is the overhead for processing interrupts charged to?
What is the CPU overhead with the thread scheduler?
What is the memory overhead with the thread scheduler?
What factors increase the overhead for the thread scheduler?
Critical threads and bankruptcy
How does the scheduler mark a thread as critical?
How does the thread scheduler know that a thread is critical?
Do critical threads expose security?
When does the scheduler check for bankruptcy?
How does the scheduler detect bankruptcy?
Inheritance
What is partition inheritance?
When does partition inheritance occur?
How does mutex partition and inheritance work?
How fast is partition inheritance?
Why is partition inheritance for message passing secure?
Budgets
Can I change the budgets dynamically?
How does a budget change affect scheduling?
How quickly does a budget change take effect?
When does a change in budgets take effect?
What is a partition with zero budget?
How does the scheduler guarantee that the sum of all partitions' budgets is 100%?
How does the scheduler prevent an untrusted thread from increasing its partition's budget?
How can I cheat to exceed my partition's budget?
Joining a partition
How does joining a thread to a partition work?
How fast is joining a thread to a partition?
QNX system considerations
Why doesn't Neutrino allow a partition to be deleted?
How does the thread scheduler plug into procnto?
Is the classic scheduler still present when the thread scheduler is active?
Does the thread scheduler inhibit I/O interrupts?
Is there a performance limitation on how often I can call SchedCtl(SCHED_APS_PARTITION_STATS,...) to get statistics?
Glossary
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What is Adaptive Partitioning?
What are partitions and what is adaptive partitioning?
Because adaptive partitions are not boxes what are they?
System and user requirements
The thread scheduler
Controlling Resources Using the Thread Scheduler
Overview
Quickstart: Adaptive Partitioning Thread Scheduler
Using the Thread Scheduler
Introduction
Keeping track of CPU time
How is CPU time divided between partitions?
Underload
Free time
Full Load
Summary of scheduling behavior
Partition inheritance
What about any threads or processes that the server creates? Which partition do they run in?
Critical threads
Bankruptcy
Adaptive partitioning thread scheduler and other thread schedulers
A caveat about FIFO scheduling
Using the thread scheduler and multicore together
Scheduler partitions and BMP
Setting Up and Using the Adaptive Partitioning Thread Scheduler
Building an image
Creating scheduler partitions
In a buildfile
From the command line
From a program
Launching a process in a partition
In a buildfile
From the command line
From a program
Viewing partition use
Considerations for the Thread Scheduler
Determining the number of scheduler partitions and their contents
Choosing the percentage of CPU for each partition
Setting budgets to zero
When is it useful to set the budget of a partition to zero?
Setting budgets for resource managers
Choosing the window size
Accuracy
Delays compared to priority scheduling
Case 1
Case 2
Approximating the delays
Practical limits
Uncontrolled interactions between scheduler partitions
Security for Scheduler Partitions
Managing security for the thread scheduler
Security and critical threads
Testing and Debugging
Instrumented kernel trace events
Using the QNX IDE (trace events)
Using other methods
Emergency access to the system
Frequently Asked Questions: Adaptive Partitioning Thread Scheduler
Scheduling behavior
How does the thread scheduler guarantee a partition's minimum CPU budget?
When does the scheduler guarantee that a partition gets its budget?
Does a 100-ms window mean a CPU time-averaging occurs only once in every 100 ms?
How often does the algorithm enforce partition budgets?
What system assumptions does the design of thread scheduler make?
When does the thread scheduler calculate percentage CPU usage?
How often does the thread scheduler compute CPU usage?
When is the scheduler's behavior realtime?
What is free-time mode?
What is free time?
Do you have to repay free time?
How does the thread scheduler behave on HyperThreaded (HT) processors?
How long can a round-robin thread run with the thread scheduler?
How long can a FIFO thread run with the thread scheduler?
How long can a sporadic (SS) thread run with the thread scheduler?
How often does the thread scheduler algorithm run?
How often does the thread scheduler enforce budgets?
How do power-saving modes affect scheduling?
How does changing the clock period (using ClockPeriod) affect scheduling?
Microbilling
How does microbilling work?
How often does thread scheduler microbill?
How does ClockCycles work?
How accurate is microbilling?
How accurate is ClockCycles?
What is the resolution of thread timing?
Averaging window
How does the averaging window work?
What is the window-rotation algorithm?
Can I change the window size?
How does changing the window size affect scheduling?
How do maximum latencies relate to the averaging window size?
Scheduling algorithm
How does the thread scheduler pick a thread to run?
How does the scheduling algorithm work?
How does the scheduler find the highest-priority thread in a partition?
How are RFFs (relative fraction free) computed?
How does the scheduler algorithm avoid division and floating-point mathematics?
How does the scheduler algorithm determine if a thread that's allowed to run as critical, should actually run as critical?
How does the scheduler algorithm decide when to bill critical time?
What are the algorithm's size limitations?
What are the algorithm's accuracy limitations?
When is the scheduling algorithm approximated?
Overhead
Which partition is the overhead associated with scheduling charged to?
Which partition is the overhead for processing interrupts charged to?
What is the CPU overhead with the thread scheduler?
What is the memory overhead with the thread scheduler?
What factors increase the overhead for the thread scheduler?
Critical threads and bankruptcy
How does the scheduler mark a thread as critical?
How does the thread scheduler know that a thread is critical?
Do critical threads expose security?
When does the scheduler check for bankruptcy?
How does the scheduler detect bankruptcy?
Inheritance
What is partition inheritance?
When does partition inheritance occur?
How does mutex partition and inheritance work?
How fast is partition inheritance?
Why is partition inheritance for message passing secure?
Budgets
Can I change the budgets dynamically?
How does a budget change affect scheduling?
How quickly does a budget change take effect?
When does a change in budgets take effect?
What is a partition with zero budget?
How does the scheduler guarantee that the sum of all partitions' budgets is 100%?
How does the scheduler prevent an untrusted thread from increasing its partition's budget?
How can I cheat to exceed my partition's budget?
Joining a partition
How does joining a thread to a partition work?
How fast is joining a thread to a partition?
QNX system considerations
Why doesn't Neutrino allow a partition to be deleted?
How does the thread scheduler plug into procnto?
Is the classic scheduler still present when the thread scheduler is active?
Does the thread scheduler inhibit I/O interrupts?
Is there a performance limitation on how often I can call SchedCtl(SCHED_APS_PARTITION_STATS,...) to get statistics?
Glossary
QNX Neutrino Advanced Graphics
Developer's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
Overview of the QNX Graphics Framework (GF) architecture
GF components
GF compared to Photon
Basic Drawing
Setting up GF
Attaching to a device and display
Attaching to display layers
Create and set surfaces
Create a draw context
Using draw coordinates
Drawing rectangles
Drawing lines and polygons
Bitmaps
Blitting
Multithreaded applications
Debugging
Working with Images
Attaching to the image library
Loading the image
Attaching to a surface
Blitting the image
Cleaning up
Working with Layers, Surfaces, and Contexts
Using layers
Layer visibility
Layer brightness, contrast, saturation, and hue
Viewports
Layer blending and chroma
Using surfaces
Using contexts
Context Alpha Blending
Chroma Keying
Setting foreground and background colors
Setting line attributes
Clipping
Raster operations
Anti-aliasing polylines
Transform matrices and translations
Using OpenGL ES
Using OpenGL ES
Creating surfaces
Window surfaces
Pixmap surfaces
pbuffer surfaces
Using Vertex Buffer Objects
Using the Video-Capture API
Video capture
An example
Embedding 2D and 3D Applications
Assumptions
Building the image
2D example: vsync
Font example: font-cache
Image example: img_decode_simple
OpenGL ES: Gears
Hardware Capabilities
Fujitsu Carmine
OpenGL ES Hardware Acceleration
Supported Chipset
OpenGL ES Lighting
Intel Extreme2
Fujitsu Coral
Hardware Acceleration
Summary of Entries
3D rendering
Contexts
Cursors
Devices and displays
Drawing
Layers
Surfaces
Video Capture
QNX Graphics Framework Library Reference
Functions
Structures and types
gf_3d_target_create
Description:
gf_3d_target_free
Description:
gf_3d_query_config
Description:
gf_alpha_t
Description:
Alpha mode flags
gf_chroma_t
Description:
gf_context_create
Description:
gf_context_disable_alpha
Description:
gf_context_disable_antialias
Description:
gf_context_disable_chroma
Description:
gf_context_disable_clipping
Description:
gf_context_disable_linedash
Description:
gf_context_disable_pattern
Description:
gf_context_disable_planemask
Description:
gf_context_disable_transform
Description:
gf_context_disable_translation
Description:
gf_context_free
Description:
gf_context_get_surface
Description:
gf_context_init
Description:
gf_context_set_alpha
Description:
gf_context_set_antialias
Description:
gf_context_set_bgcolor
Description:
gf_context_set_bgcolor_native
Description:
gf_context_set_capstyle
Description:
gf_context_set_chroma
Description:
gf_context_set_clipping
Description:
gf_context_set_fgcolor
Description:
gf_context_set_fgcolor_native
Description:
gf_context_set_filter
Description:
gf_context_set_hw_polygon
Description:
gf_context_set_linedash
Description:
gf_context_set_linejoin
Description:
gf_context_set_pattern
Description:
gf_context_set_penwidth
Description:
gf_context_set_planemask
Description:
gf_context_set_polyfill
Description:
gf_context_set_rop
Description:
Raster Operation Defines
gf_context_set_surface
Description:
gf_context_set_surface_3d
Description:
gf_context_set_transform
Description:
gf_context_set_translation
Description:
gf_context_unset_surface
Description:
gf_cursor_disable
Description:
gf_cursor_enable
Description:
gf_cursor_set
Description:
gf_cursor_set_pos
Description:
gf_dev_attach
Description:
Examples:
gf_dev_detach
Description:
gf_dev_get_error
Description:
gf_dev_get_meminfo
Description:
gf_dev_register_thread
Description:
gf_dim_t
Description:
gf_display_attach
Description:
gf_display_info_t
Examples:
gf_display_detach
Description:
gf_display_query
Description:
gf_display_query_mode
Description:
gf_display_set_dpms
Description:
gf_display_set_external_chroma
Description:
gf_display_set_layer_order
Description:
gf_display_set_mode
Description:
gf_display_snapshot
Description:
gf_display_wait_vsync
Description:
gf_draw_begin
Description:
gf_draw_bitmap
Description:
gf_draw_blit1
Description:
gf_draw_blit2
Description:
gf_draw_blitscaled
Description:
gf_draw_end
Description:
gf_draw_finish
Description:
gf_draw_flush
Description:
gf_draw_image
Description:
gf_draw_poly_fill
Description:
gf_draw_polyline
Description:
gf_draw_rect
Description:
gf_draw_span
Description:
gf_draw_spanlist
Description:
gf_format_t
Description:
Endianness
gf_i2c_read
Description:
gf_i2c_write
Description:
gf_i2c_writeread
Description:
gf_layer_attach
Description:
gf_layer_choose_format
Description:
gf_layer_detach
Description:
gf_layer_disable
Description:
gf_layer_enable
Description:
gf_layer_query
Description:
Examples:
gf_layer_set_blending
Description:
gf_layer_set_brightness
Description:
gf_layer_set_chroma
Description:
gf_layer_set_contrast
Description:
gf_layer_set_dst_viewport
Description:
gf_layer_set_edge
Description:
gf_layer_set_filter
Description:
gf_layer_set_hue
Description:
gf_layer_set_outputs
Description:
gf_layer_set_saturation
Description:
gf_layer_set_src_viewport
Description:
gf_layer_set_surfaces
Description:
gf_layer_update
Description:
gf_layer_update_multi
Description:
gf_palette_t
Description:
The gf_color_t Type
gf_point_t
Description:
gf_surface_attach
Description:
gf_surface_attach_by_sid
Description:
gf_surface_create
Description:
gf_surface_create_layer
Description:
gf_surface_free
Description:
gf_surface_get_dev
Description:
gf_surface_get_info
Description:
gf_surface_reattach
Description:
gf_vcap_attach
Description:
gf_vcap_bind_to_layer
Description:
gf_vcap_detach
Description:
gf_vcap_disable
Description:
gf_vcap_enable
Description:
gf_vcap_set_brightness
Description:
gf_vcap_set_contrast
Description:
gf_vcap_set_flags
Description:
gf_vcap_set_input_dimensions
Description:
gf_vcap_set_input_source
Description:
gf_vcap_set_input_viewport
Description:
gf_vcap_set_output_dimensions
Description:
gf_vcap_set_saturation
Description:
gf_vcap_set_sync_values
Description:
gf_vcap_update
Description:
QNX Image Library Reference
Functions
Macros
Structures
img_cfg_read
Description:
img_codec_get_criteria
Description:
Examples:
img_codec_list
Description:
img_codec_list_byext
Description:
img_codec_list_bymime
Description:
img_convert_data
Description:
The img_format_t type
img_convert_getfunc
Description:
img_crop
Description:
img_decode_begin
Description:
img_decode_callouts_t
Description:
img_decode_choose_format_f *choose_format_f
img_decode_setup_f* setup_f
img_decode_abort_f* abort_f
img_decode_scanline_f* scanline_f
img_decode_set_transparency_f* set_transparency_f
img_decode_set_palette_f* set_palette_f
img_decode_frame_f* frame_f
img_decode_set_value_f* set_value_f
uintptrt_t data
img_decode_finish
Description:
img_decode_frame
Description:
img_decode_validate
Description:
img_dtransform
Description:
img_dtransform_apply
Description:
img_dtransform_create
Description:
img_dtransform_free
Description:
img_encode_begin
Description:
img_encode_callouts_t
Description:
img_encode_choose_format_f *choose_format_f
img_encode_setup_f* setup_f
img_encode_abort_f* abort_f
img_encode_scanline_f* scanline_f
img_encode_get_transparency_f* get_transparency_f
img_encode_get_palette_f* get_palette_f
img_encode_frame_f* frame_f
uintptrt_t data
img_encode_finish
Description:
img_encode_frame
Description:
img_expand_getfunc
Description:
IMG_FMT_BPL
Description:
IMG_FMT_BPP
Description:
img_lib_attach
Description:
The img.conf Configuration File
img_lib_detach
Description:
img_load
Description:
img_load_file
Description:
img_load_resize_file
Description:
img_resize_fs
Description:
img_rotate_ortho
Description:
img_t
Description:
img_write_file
Description:
img_write
Description:
io_close
Description:
io_open
Description:
What's New
What's new in QNX Neutrino Core Graphics for 6.5.0
What's new in QNX Neutrino Core Graphics for 6.4.1
What's new in QNX Neutrino Core Graphics for 6.4.0
What's new in QNX Advanced Graphics 2.1
What's new in QNX Advanced Graphics 2.0
Glossary
Developer's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
Overview of the QNX Graphics Framework (GF) architecture
GF components
GF compared to Photon
Basic Drawing
Setting up GF
Attaching to a device and display
Attaching to display layers
Create and set surfaces
Create a draw context
Using draw coordinates
Drawing rectangles
Drawing lines and polygons
Bitmaps
Blitting
Multithreaded applications
Debugging
Working with Images
Attaching to the image library
Loading the image
Attaching to a surface
Blitting the image
Cleaning up
Working with Layers, Surfaces, and Contexts
Using layers
Layer visibility
Layer brightness, contrast, saturation, and hue
Viewports
Layer blending and chroma
Using surfaces
Using contexts
Context Alpha Blending
Chroma Keying
Setting foreground and background colors
Setting line attributes
Clipping
Raster operations
Anti-aliasing polylines
Transform matrices and translations
Using OpenGL ES
Using OpenGL ES
Creating surfaces
Window surfaces
Pixmap surfaces
pbuffer surfaces
Using Vertex Buffer Objects
Using the Video-Capture API
Video capture
An example
Embedding 2D and 3D Applications
Assumptions
Building the image
2D example: vsync
Font example: font-cache
Image example: img_decode_simple
OpenGL ES: Gears
Hardware Capabilities
Fujitsu Carmine
OpenGL ES Hardware Acceleration
Supported Chipset
OpenGL ES Lighting
Intel Extreme2
Fujitsu Coral
Hardware Acceleration
Summary of Entries
3D rendering
Contexts
Cursors
Devices and displays
Drawing
Layers
Surfaces
Video Capture
QNX Graphics Framework Library Reference
Functions
Structures and types
gf_3d_target_create
Description:
gf_3d_target_free
Description:
gf_3d_query_config
Description:
gf_alpha_t
Description:
Alpha mode flags
gf_chroma_t
Description:
gf_context_create
Description:
gf_context_disable_alpha
Description:
gf_context_disable_antialias
Description:
gf_context_disable_chroma
Description:
gf_context_disable_clipping
Description:
gf_context_disable_linedash
Description:
gf_context_disable_pattern
Description:
gf_context_disable_planemask
Description:
gf_context_disable_transform
Description:
gf_context_disable_translation
Description:
gf_context_free
Description:
gf_context_get_surface
Description:
gf_context_init
Description:
gf_context_set_alpha
Description:
gf_context_set_antialias
Description:
gf_context_set_bgcolor
Description:
gf_context_set_bgcolor_native
Description:
gf_context_set_capstyle
Description:
gf_context_set_chroma
Description:
gf_context_set_clipping
Description:
gf_context_set_fgcolor
Description:
gf_context_set_fgcolor_native
Description:
gf_context_set_filter
Description:
gf_context_set_hw_polygon
Description:
gf_context_set_linedash
Description:
gf_context_set_linejoin
Description:
gf_context_set_pattern
Description:
gf_context_set_penwidth
Description:
gf_context_set_planemask
Description:
gf_context_set_polyfill
Description:
gf_context_set_rop
Description:
Raster Operation Defines
gf_context_set_surface
Description:
gf_context_set_surface_3d
Description:
gf_context_set_transform
Description:
gf_context_set_translation
Description:
gf_context_unset_surface
Description:
gf_cursor_disable
Description:
gf_cursor_enable
Description:
gf_cursor_set
Description:
gf_cursor_set_pos
Description:
gf_dev_attach
Description:
Examples:
gf_dev_detach
Description:
gf_dev_get_error
Description:
gf_dev_get_meminfo
Description:
gf_dev_register_thread
Description:
gf_dim_t
Description:
gf_display_attach
Description:
gf_display_info_t
Examples:
gf_display_detach
Description:
gf_display_query
Description:
gf_display_query_mode
Description:
gf_display_set_dpms
Description:
gf_display_set_external_chroma
Description:
gf_display_set_layer_order
Description:
gf_display_set_mode
Description:
gf_display_snapshot
Description:
gf_display_wait_vsync
Description:
gf_draw_begin
Description:
gf_draw_bitmap
Description:
gf_draw_blit1
Description:
gf_draw_blit2
Description:
gf_draw_blitscaled
Description:
gf_draw_end
Description:
gf_draw_finish
Description:
gf_draw_flush
Description:
gf_draw_image
Description:
gf_draw_poly_fill
Description:
gf_draw_polyline
Description:
gf_draw_rect
Description:
gf_draw_span
Description:
gf_draw_spanlist
Description:
gf_format_t
Description:
Endianness
gf_i2c_read
Description:
gf_i2c_write
Description:
gf_i2c_writeread
Description:
gf_layer_attach
Description:
gf_layer_choose_format
Description:
gf_layer_detach
Description:
gf_layer_disable
Description:
gf_layer_enable
Description:
gf_layer_query
Description:
Examples:
gf_layer_set_blending
Description:
gf_layer_set_brightness
Description:
gf_layer_set_chroma
Description:
gf_layer_set_contrast
Description:
gf_layer_set_dst_viewport
Description:
gf_layer_set_edge
Description:
gf_layer_set_filter
Description:
gf_layer_set_hue
Description:
gf_layer_set_outputs
Description:
gf_layer_set_saturation
Description:
gf_layer_set_src_viewport
Description:
gf_layer_set_surfaces
Description:
gf_layer_update
Description:
gf_layer_update_multi
Description:
gf_palette_t
Description:
The gf_color_t Type
gf_point_t
Description:
gf_surface_attach
Description:
gf_surface_attach_by_sid
Description:
gf_surface_create
Description:
gf_surface_create_layer
Description:
gf_surface_free
Description:
gf_surface_get_dev
Description:
gf_surface_get_info
Description:
gf_surface_reattach
Description:
gf_vcap_attach
Description:
gf_vcap_bind_to_layer
Description:
gf_vcap_detach
Description:
gf_vcap_disable
Description:
gf_vcap_enable
Description:
gf_vcap_set_brightness
Description:
gf_vcap_set_contrast
Description:
gf_vcap_set_flags
Description:
gf_vcap_set_input_dimensions
Description:
gf_vcap_set_input_source
Description:
gf_vcap_set_input_viewport
Description:
gf_vcap_set_output_dimensions
Description:
gf_vcap_set_saturation
Description:
gf_vcap_set_sync_values
Description:
gf_vcap_update
Description:
QNX Image Library Reference
Functions
Macros
Structures
img_cfg_read
Description:
img_codec_get_criteria
Description:
Examples:
img_codec_list
Description:
img_codec_list_byext
Description:
img_codec_list_bymime
Description:
img_convert_data
Description:
The img_format_t type
img_convert_getfunc
Description:
img_crop
Description:
img_decode_begin
Description:
img_decode_callouts_t
Description:
img_decode_choose_format_f *choose_format_f
img_decode_setup_f* setup_f
img_decode_abort_f* abort_f
img_decode_scanline_f* scanline_f
img_decode_set_transparency_f* set_transparency_f
img_decode_set_palette_f* set_palette_f
img_decode_frame_f* frame_f
img_decode_set_value_f* set_value_f
uintptrt_t data
img_decode_finish
Description:
img_decode_frame
Description:
img_decode_validate
Description:
img_dtransform
Description:
img_dtransform_apply
Description:
img_dtransform_create
Description:
img_dtransform_free
Description:
img_encode_begin
Description:
img_encode_callouts_t
Description:
img_encode_choose_format_f *choose_format_f
img_encode_setup_f* setup_f
img_encode_abort_f* abort_f
img_encode_scanline_f* scanline_f
img_encode_get_transparency_f* get_transparency_f
img_encode_get_palette_f* get_palette_f
img_encode_frame_f* frame_f
uintptrt_t data
img_encode_finish
Description:
img_encode_frame
Description:
img_expand_getfunc
Description:
IMG_FMT_BPL
Description:
IMG_FMT_BPP
Description:
img_lib_attach
Description:
The img.conf Configuration File
img_lib_detach
Description:
img_load
Description:
img_load_file
Description:
img_load_resize_file
Description:
img_resize_fs
Description:
img_rotate_ortho
Description:
img_t
Description:
img_write_file
Description:
img_write
Description:
io_close
Description:
io_open
Description:
What's New
What's new in QNX Neutrino Core Graphics for 6.5.0
What's new in QNX Neutrino Core Graphics for 6.4.1
What's new in QNX Neutrino Core Graphics for 6.4.0
What's new in QNX Advanced Graphics 2.1
What's new in QNX Advanced Graphics 2.0
Glossary
QNX Neutrino Composition Manager
Developer's Guide
About This Guide
What's in this guide?
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview of the Composition Manager
Communicating with applications
Handling composition
Enabling the HMI
Why use Composition Manager?
Advantages of using multiple processes
Is Composition Manager right for you?
Understanding Composition
Hardware level composition
Advantages:
Disadvantages:
Composited frame-buffer
Advantages:
Disadvantages:
Layers, WFD pipelines and EGL levels
Composition Modules
Cursors
io-winmgr
Description:
Examples:
Configuring io-winmgr
Global settings
Display settings
Window class settings
Configuring Composition Manager
Configuration 1:
Configuration 2:
Configuration 3:
Configuration 4:
Working with External APIs
OpenKODE
OpenKODE 1.0.2 header files on QNX Neutrino ( /usr/include/KD )
OpenKODE 1.0.2 libraries on QNX Neutrino
OpenKODE 1.0.2 Core Entry Points
EGL
EGL 1.4 header files on QNX Neutrino ( /usr/include/EGL )
EGL 1.4 libraries on QNX Neutrino ( /usr/lib )
OpenGL ES
OpenGL ES 1.0 Header Files on QNX Neutrino ( /usr/include/GLES )
OpenGL ES 1.0 Libraries on QNX Neutrino ( /usr/lib )
Using the Tutorials and Demos
Demos
Notes:
Tutorials
Community
Composition Manager Extensions
KD_QNX_window
Description:
Functions:
kdPostWindowEventQNX( )
KDint32 kdSetWindowOrderQNX( )
Properties:
Events:
KD_QNX_input
Description:
Functions:
kdOutputSetpQNX()
Events:
I/O groups and items
KD_IOGROUP_KEYBOARD_QNX
I/O items
KD_QNX_IOGROUP_DISP_GROUP
I/O items
KD_QNX_IOGROUP_ASSIGN_GROUP
I/O items
What's New
What's new in Composition Manager for 6.5.0
Developer's Guide
About This Guide
What's in this guide?
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview of the Composition Manager
Communicating with applications
Handling composition
Enabling the HMI
Why use Composition Manager?
Advantages of using multiple processes
Is Composition Manager right for you?
Understanding Composition
Hardware level composition
Advantages:
Disadvantages:
Composited frame-buffer
Advantages:
Disadvantages:
Layers, WFD pipelines and EGL levels
Composition Modules
Cursors
io-winmgr
Description:
Examples:
Configuring io-winmgr
Global settings
Display settings
Window class settings
Configuring Composition Manager
Configuration 1:
Configuration 2:
Configuration 3:
Configuration 4:
Working with External APIs
OpenKODE
OpenKODE 1.0.2 header files on QNX Neutrino ( /usr/include/KD )
OpenKODE 1.0.2 libraries on QNX Neutrino
OpenKODE 1.0.2 Core Entry Points
EGL
EGL 1.4 header files on QNX Neutrino ( /usr/include/EGL )
EGL 1.4 libraries on QNX Neutrino ( /usr/lib )
OpenGL ES
OpenGL ES 1.0 Header Files on QNX Neutrino ( /usr/include/GLES )
OpenGL ES 1.0 Libraries on QNX Neutrino ( /usr/lib )
Using the Tutorials and Demos
Demos
Notes:
Tutorials
Community
Composition Manager Extensions
KD_QNX_window
Description:
Functions:
kdPostWindowEventQNX( )
KDint32 kdSetWindowOrderQNX( )
Properties:
Events:
KD_QNX_input
Description:
Functions:
kdOutputSetpQNX()
Events:
I/O groups and items
KD_IOGROUP_KEYBOARD_QNX
I/O items
KD_QNX_IOGROUP_DISP_GROUP
I/O items
KD_QNX_IOGROUP_ASSIGN_GROUP
I/O items
What's New
What's new in Composition Manager for 6.5.0
QNX Neutrino Core Networking Stack
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
What's new in the networking stack?
Architecture of io-pkt
Threading model
Threading priorities
Components of core networking
Getting the source code
Packet Filtering
Packet Filters
Packet Filter interface
Packet Filter (pf) module: firewalls and NAT
Berkeley Packet Filter
IP Security and Hardware Encryption
Setting up an IPsec connection: examples
Between two boxes manually
With authentication using the preshared-key method
IPsec tools
OpenSSL support
Hardware-accelerated crypto
Supported hardware crypto engines
WiFi Configuration Using WPA and WEP
802.11 a/b/g Wi-Fi Support
NetBSD 802.11 layer
Device management
Nodes
Crypto support
Using Wi-Fi with io-pkt
Connecting to a wireless network
Using no encryption
Using WEP (Wired Equivalent Privacy) for authentication and encryption
Using WPA/WPA2 for authentication and encryption
Background on WPA
WPA utilities
Connecting with WPA or WPA2
Personal-level authentication and Enterprise-level authentication
Using wpa_supplicant to manage your wireless network connections
Using a Wireless Access Point (WAP)
Creating A WAP
Acting as a gateway
Acting as a bridge
WEP access point
WPA access point
TCP/IP configuration in a wireless network
Client in infrastructure or ad hoc mode
DHCP server on WAP acting as a gateway
Launching the DHCP server on your gateway
DHCP server configuration file
Launching the DHCP relay agent on your gateway
Configuring an access point as a router
Transparent Distributed Processing
TDP and io-pkt
Using TDP over IP
Network Drivers
Types of network drivers
Differences between ported NetBSD drivers and native drivers
Differences between io-net drivers and other drivers
Loading and unloading a driver
Troubleshooting a driver
Problems with shared interrupts
Writing a new driver
Debugging a driver using gdb
Dumping 802.11 debugging information
Jumbo packets and hardware checksumming
Padding Ethernet packets
Transmit Segmentation Offload (TSO)
Utilities, Managers, and Configuration Files
Migrating from io-net
Overview
Compatibility between io-net and io-pkt
Compatibility issues
Behavioral differences
Simultaneous support
Discontinued features
Using pfil hooks to implement an io-net filter
Glossary
Porting Drivers from io-net to io-pkt
Porting an io-net driver to io-pkt
Terminology
Shim and io-net drivers
Differences between an io-net driver and an io-pkt driver
Initialization
Transmit
Receive
Link State Change Handling
Control (e.g. devctl and ioctl)
Shutdown
Threading
Mutexing
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
What's new in the networking stack?
Architecture of io-pkt
Threading model
Threading priorities
Components of core networking
Getting the source code
Packet Filtering
Packet Filters
Packet Filter interface
Packet Filter (pf) module: firewalls and NAT
Berkeley Packet Filter
IP Security and Hardware Encryption
Setting up an IPsec connection: examples
Between two boxes manually
With authentication using the preshared-key method
IPsec tools
OpenSSL support
Hardware-accelerated crypto
Supported hardware crypto engines
WiFi Configuration Using WPA and WEP
802.11 a/b/g Wi-Fi Support
NetBSD 802.11 layer
Device management
Nodes
Crypto support
Using Wi-Fi with io-pkt
Connecting to a wireless network
Using no encryption
Using WEP (Wired Equivalent Privacy) for authentication and encryption
Using WPA/WPA2 for authentication and encryption
Background on WPA
WPA utilities
Connecting with WPA or WPA2
Personal-level authentication and Enterprise-level authentication
Using wpa_supplicant to manage your wireless network connections
Using a Wireless Access Point (WAP)
Creating A WAP
Acting as a gateway
Acting as a bridge
WEP access point
WPA access point
TCP/IP configuration in a wireless network
Client in infrastructure or ad hoc mode
DHCP server on WAP acting as a gateway
Launching the DHCP server on your gateway
DHCP server configuration file
Launching the DHCP relay agent on your gateway
Configuring an access point as a router
Transparent Distributed Processing
TDP and io-pkt
Using TDP over IP
Network Drivers
Types of network drivers
Differences between ported NetBSD drivers and native drivers
Differences between io-net drivers and other drivers
Loading and unloading a driver
Troubleshooting a driver
Problems with shared interrupts
Writing a new driver
Debugging a driver using gdb
Dumping 802.11 debugging information
Jumbo packets and hardware checksumming
Padding Ethernet packets
Transmit Segmentation Offload (TSO)
Utilities, Managers, and Configuration Files
Migrating from io-net
Overview
Compatibility between io-net and io-pkt
Compatibility issues
Behavioral differences
Simultaneous support
Discontinued features
Using pfil hooks to implement an io-net filter
Glossary
Porting Drivers from io-net to io-pkt
Porting an io-net driver to io-pkt
Terminology
Shim and io-net drivers
Differences between an io-net driver and an io-pkt driver
Initialization
Transmit
Receive
Link State Change Handling
Control (e.g. devctl and ioctl)
Shutdown
Threading
Mutexing
QNX Neutrino Driver Development Kits (DDKs)
Audio Devices
About the Audio DDK
What you'll find in this guide
Supported features
Assumptions
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Evaluating Your Card
Organization of a Driver
The QNX audio system and driver
DDK source code
Writing an Audio HW DLL
Opaque data types
Custom data types
ctrl_init
ctrl_destroy
Debugging an audio driver
Handling Analog Audio Data
Writing an analog mixer
Mixer elements and routes
Supported element types
Mixer groups
Designing mixer groups
Coding the mixer
Initialization
Building the mixer
Using a standard mixer DLL
Initialization
Testing the code
Handling PCM Audio Data
In this chapter...
What's a PCM device?
Creating a PCM device
ado_pcm_create
How does the PCM stream operate?
API Reference
ado_attach_interrupt
Description:
ado_calloc
Description:
ado_card_set_longname
Description:
ado_card_set_shortname
Description:
ado_debug
Description:
ado_device_mmap
Description:
ado_device_munmap
Description:
ado_error
Description:
ado_free
Description:
ado_malloc
Description:
ado_memory_dump
Description:
ado_mixer_capture_group_create
Description:
ado_mixer_create
Description:
ado_mixer_dll
Description:
ado_mixer_element_accu1
Description:
ado_mixer_element_accu2
Description:
ado_mixer_element_accu3
Description:
ado_mixer_element_io
Description:
ado_mixer_element_mux1
Description:
ado_mixer_element_mux2
Description:
ado_mixer_element_notify
Description:
ado_mixer_element_pcm1
Description:
ado_mixer_element_pcm2
Description:
ado_mixer_element_route_add
Description:
ado_mixer_element_sw1
Description:
ado_mixer_element_sw2
Description:
ado_mixer_element_sw3
Description:
ado_mixer_element_vol_range_max
Description:
ado_mixer_element_vol_range_min
Description:
ado_mixer_element_volume1
Description:
ado_mixer_find_element
Description:
ado_mixer_find_group
Description:
ado_mixer_get_context
Description:
ado_mixer_get_element_instance_data
Description:
ado_mixer_lock
Description:
ado_mixer_playback_group_create
Description:
ado_mixer_set_destroy_func
Description:
ado_mixer_set_name
Description:
ado_mixer_set_reset_func
Description:
ado_mixer_switch_new
Description:
ado_mixer_unlock
Description:
ado_mutex_destroy
Description:
ado_mutex_init
Description:
ado_mutex_lock
Description:
ado_mutex_unlock
Description:
ado_pci
Description:
ado_pci_device
Description:
ado_pci_release
Description:
ado_pcm_cap_t
Description:
ado_pcm_config_t
Description:
ado_pcm_chn_mixer
Description:
ado_pcm_create
Description:
ado_pcm_dma_int_size
Description:
ado_pcm_format_bit_width
Description:
ado_pcm_hw_t
Description:
aquire
release
prepare
trigger
position
reconstitute
capabilities
ado_pcm_subchn_caps
Description:
ado_pcm_subchn_is_channel
Description:
ado_pcm_subchn_mixer
Description:
ado_pcm_subchn_mixer_create
Description:
ado_pcm_subchn_mixer_config_t structure
Examples:
ado_pcm_subchn_mixer_destroy
Description:
ado_pcm_sw_mix
Description:
ado_realloc
Description:
ado_rwlock_destroy
Description:
ado_rwlock_init
Description:
ado_rwlock_rdlock
Description:
ado_rwlock_unlock
Description:
ado_rwlock_wrlock
Description:
ado_shm_alloc
Description:
ado_shm_free
Description:
ado_shm_mmap
Description:
ado_strdup
Description:
dma_interrupt
Description:
Supported Codecs
Audio Codec 97 (AC97)
DLL Name
Header File
Parameter Structure
Supported Device Controls
References
AK4531
DLL Name
Header File
Parameter Structure
Supported Device Controls
Reference
Sample Mixer Source
Glossary
Character Devices
About the Character DDK
What you'll find in this guide
Assumptions
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Character I/O Architecture
Overview
DDK source code
8250 Serial Driver
Creating a serial driver
Registers
Source code
Interrupts
Functions
create_device
enable_device
options
query_default_device
ser_intr
ser_stty
set_port
sys_ttyinit
tto
Character I/O Library
iochar_regdrv_power
Description:
iochar_send_event
Description:
kick
Description:
timer_queue
Description:
timer_remove
Description:
ttc
Description:
tti
Description:
tti2
Description:
tto_checkclients
Description:
tto_getchar
Description:
TTYCTRL
Description:
TTYDEV
Description:
TTYINIT
Description:
tx_inject
Description:
wait_add
Description:
wait_remove_rcvid
Description:
Graphics Devices
About the Graphics DDK
What you'll find in this guide
Assumptions
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction to Graphics Drivers
Graphics drivers
GF-Based graphics system
Photon-based graphics system
Writing a Graphics Driver
Overview
Getting the source code
Sample drivers
The modules
Modeswitching and enumeration
2D drawing
Graphics memory manager
Layer control
Viewports
Binding your driver to the graphics framework
Address spaces and calling rules
Calling sequence
Conventions
Colors
Coordinate system
Order
Inclusiveness
Core vs. context 2D functions
Context information
Supplying draw functions and software fallback
Clipping
Patterns
Pixel formats
Byte order
Pixel formats for layers
Updating a Graphics Driver
In this chapter...
Overview
API changes
Debugging a Graphics Driver
In this chapter...
Overview
The setup
Compiling shared objects
Shipping modified libs with your product
Setting the LD_LIBRARY_PATH environment variable
The display.conf file
Making a debug version of a driver
Running the debug driver and setting a breakpoint
Graphics Driver API
devg_get_contextfuncs
Description:
devg_get_corefuncs
Description:
devg_get_memfuncs
Description:
devg_get_miscfuncs
Description:
devg_get_modefuncs
Description:
devg_get_rendfuncs
Description:
devg_get_vcapfuncs
Description:
disp_2d_caps_t
Description:
disp_adapter_t
Description:
Callbacks
DISP_ADD_FUNC
Description:
Examples:
disp_crtc_settings_t
Description:
disp_draw_context_t
Description:
Chroma mode bits
Alpha mode bits (alpha_mode)
Alpha mode blending (source) operation
Alpha mode blending (destination) operation
disp_draw_contextfuncs_t
Description:
draw_span
draw_span_list
draw_rect
blit
update_general
update_color
update_rop3
update_chroma
update_alpha
scaled_blit
update_planemask
draw_line
fill_poly
draw_polyline
update_line
blend_pixels
disp_draw_corefuncs_t
Description:
wait_idle
draw_span
draw_span_list
draw_solid_rect
draw_line_pat8x1
draw_line_trans8x1
draw_rect_pat8x8
draw_rect_trans8x8
blit1
blit2
draw_bitmap
update_draw_surface
update_pattern
scaled_blit
draw_line
fill_poly
get_bresenham_params
update_transform
update_clipping
disp_draw_miscfuncs_t
Description:
init
fini
module_info
set_palette
flushrect
get_2d_caps
get_corefuncs_sw
get_contextfuncs_sw
end_of_draw
attach_external
detach_external
recover
wait_idle
disp_layer_query_t
Description:
disp_memfuncs_t
Description:
init
fini
module_info
reset
alloc_surface
alloc_layer_surface
free_surface
mem_avail
query_apertures
query_surface
get_alloc_info
get_alloc_layer_info
disp_mode_info_t
Description:
disp_modefuncs_t
Description:
init
fini
module_info
get_modeinfo
get_modelist
set_mode
wait_vsync
set_dpms_mode
set_display_offset
set_palette
layer_query
layer_enable
layer_disable
layer_set_surface
layer_set_source_viewport
layer_set_dest_viewport
layer_set_blending
layer_set_chromakey
layer_set_brightness
layer_set_saturation
layer_set_contrast
layer_set_hue
layer_set_alpha_map
layer_set_flags
layer_update_begin
layer_update_end
layer_reset
layer_set_order
set_hw_cursor
enable_hw_cursor
disable_hw_cursor
set_hw_cursor_pos
i2c_read
i2c_write
i2c_writeread
disp_module_info_t
Description:
disp_surface_t
Description:
Relationship of stride, height, and width
flags
disp_vcap_props_t
Description:
disp_vcapfuncs_t
Description:
init
fini
module_info
set_props
set_adjustments
bind_layer
set_enabled
wait_vsync
Libraries
DISPUTIL library --- utility functions
Miscellaneous display driver functions
disp_register_adapter
disp_unregister_adapter
disp_crtc_calc
disp_mode_get_entry
disp_acquire_vga_resources
disp_release_vga_resources
disp_perror
disp_printf
disp_usecspin
disp_delay
disp_get_rom_image
disp_vga_save_state
disp_vga_restore_state
disp_vga_state_t
PCI configuration access functions
disp_pci_init
disp_pci_shutdown
disp_pci_read_config
disp_pci_write_config
disp_pci_dev_find
disp_pci_dev_read_config
disp_pci_dev_write_config
disp_pci_info
Memory manager functions
disp_mmap_device_memory
disp_mmap_device_io
disp_munmap_device_memory
disp_munmap_device_io
disp_phys_addr
disp_getmem
disp_freemem
Video memory management functions
disp_vm_create_pool
disp_vm_destroy_pool
disp_vm_alloc_surface
disp_vm_free_surface
disp_vm_mem_avail
disp_vm_alloc_surface_external
disp_vm_free_surface_external
Video BIOS services (x86 only)
vbios_register
vbios_unregister
vbios_int
vbios_call
vbios_dowarmboot
vbios_get_realptr
vbios_context_t
FFB library --- 2D software fallback routines
ffb_get_corefuncs
ffb_get_contextfuncs
ffb_color_translate
Glossary
Input Devices
About the Input DDK
What you'll find in this guide
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
In this chapter...
DDK source code
Inside an input driver
Types of event bus lines
How modules are linked
Interface to the system
Source file organization for devi-*
Writing an Input Device Driver
In this chapter...
Creating an input module
input_module_t data type
In the sample directory
Data format
Keyboard devices
Absolute devices
Calibration file format
Relative devices
Callbacks in your module
Which callbacks are required?
Callback sequence
Writing a combination device/protocol module
A note about reentrancy
Testing and Debugging Your Driver
Debugging a keyboard/mouse driver
PS/2 mouse
Keyboard filter module
Module Functions
devctrl
Description:
init
Description:
Examples:
input
Description:
Examples:
output
Description:
Examples:
parm
Description:
pulse
Description:
Examples:
reset
Description:
Examples:
shutdown
Description:
Examples:
Input API Reference
begin
Description:
buff_append
Description:
buff_create
Description:
buff_delete
Description:
buff_flush
Description:
buff_getc
Description:
buff_putc
Description:
buff_waiting
Description:
clk_get
Description:
devi_enqueue_packet
Description:
devi_register_interrupt
Description:
devi_register_pulse
Description:
devi_register_timer
Description:
devi_request_iorange
Description:
Universal Serial Bus (USB) Devices
About the USB DDK
What you'll find in this guide
Assumptions
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Before You Begin
System requirements
For QNX Neutrino
For QNX_4
USB devices supported
Known limitations
EHCI
Photon and text mode
Overview
The USB stack and library
Host Controller Interface (HCI) types
Data buffers
USB enumerator
How a class driver works
USB Utilities
USB Library Reference
Functions arranged by category
Connection functions
Memory-management functions
I/O functions
Pipe-management functions
Configuration and interface functions
Miscellaneous and convenience functions
usbd_abort_pipe
Description:
usbd_alloc
Description:
usbd_alloc_urb
Description:
usbd_args_lookup
Description:
usbd_attach
Description:
Looping
usbd_close_pipe
Description:
usbd_configuration_descriptor
Description:
usbd_connect
Description:
Data structures
Examples:
usbd_descriptor
Description:
usbd_detach
Description:
usbd_device_descriptor
Description:
usbd_device_extra
Description:
usbd_device_lookup
Description:
usbd_disconnect
Description:
usbd_endpoint_descriptor
Description:
usbd_feature
Description:
usbd_free
Description:
usbd_free_urb
Description:
usbd_get_frame
Description:
usbd_hcd_ext_info, usbd_hcd_info
Description:
usbd_hub_descriptor
Description:
usbd_interface_descriptor
Description:
usbd_io
Description:
usbd_languages_descriptor
Description:
usbd_mphys
Description:
usbd_open_pipe
Description:
usbd_parse_descriptors
Description:
usbd_pipe_device
Description:
usbd_pipe_endpoint
Description:
usbd_reset_device
Description:
usbd_reset_pipe
Description:
usbd_select_config
Description:
usbd_select_interface
Description:
usbd_setup_bulk
Description:
usbd_setup_control
Description:
usbd_setup_interrupt
Description:
usbd_setup_isochronous
Description:
usbd_setup_vendor
Description:
usbd_status
Description:
usbd_string
Description:
usbd_topology, usbd_topology_ext
Description:
usbd_urb_status
Description:
Completion status
Audio Devices
About the Audio DDK
What you'll find in this guide
Supported features
Assumptions
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Evaluating Your Card
Organization of a Driver
The QNX audio system and driver
DDK source code
Writing an Audio HW DLL
Opaque data types
Custom data types
ctrl_init
ctrl_destroy
Debugging an audio driver
Handling Analog Audio Data
Writing an analog mixer
Mixer elements and routes
Supported element types
Mixer groups
Designing mixer groups
Coding the mixer
Initialization
Building the mixer
Using a standard mixer DLL
Initialization
Testing the code
Handling PCM Audio Data
In this chapter...
What's a PCM device?
Creating a PCM device
ado_pcm_create
How does the PCM stream operate?
API Reference
ado_attach_interrupt
Description:
ado_calloc
Description:
ado_card_set_longname
Description:
ado_card_set_shortname
Description:
ado_debug
Description:
ado_device_mmap
Description:
ado_device_munmap
Description:
ado_error
Description:
ado_free
Description:
ado_malloc
Description:
ado_memory_dump
Description:
ado_mixer_capture_group_create
Description:
ado_mixer_create
Description:
ado_mixer_dll
Description:
ado_mixer_element_accu1
Description:
ado_mixer_element_accu2
Description:
ado_mixer_element_accu3
Description:
ado_mixer_element_io
Description:
ado_mixer_element_mux1
Description:
ado_mixer_element_mux2
Description:
ado_mixer_element_notify
Description:
ado_mixer_element_pcm1
Description:
ado_mixer_element_pcm2
Description:
ado_mixer_element_route_add
Description:
ado_mixer_element_sw1
Description:
ado_mixer_element_sw2
Description:
ado_mixer_element_sw3
Description:
ado_mixer_element_vol_range_max
Description:
ado_mixer_element_vol_range_min
Description:
ado_mixer_element_volume1
Description:
ado_mixer_find_element
Description:
ado_mixer_find_group
Description:
ado_mixer_get_context
Description:
ado_mixer_get_element_instance_data
Description:
ado_mixer_lock
Description:
ado_mixer_playback_group_create
Description:
ado_mixer_set_destroy_func
Description:
ado_mixer_set_name
Description:
ado_mixer_set_reset_func
Description:
ado_mixer_switch_new
Description:
ado_mixer_unlock
Description:
ado_mutex_destroy
Description:
ado_mutex_init
Description:
ado_mutex_lock
Description:
ado_mutex_unlock
Description:
ado_pci
Description:
ado_pci_device
Description:
ado_pci_release
Description:
ado_pcm_cap_t
Description:
ado_pcm_config_t
Description:
ado_pcm_chn_mixer
Description:
ado_pcm_create
Description:
ado_pcm_dma_int_size
Description:
ado_pcm_format_bit_width
Description:
ado_pcm_hw_t
Description:
aquire
release
prepare
trigger
position
reconstitute
capabilities
ado_pcm_subchn_caps
Description:
ado_pcm_subchn_is_channel
Description:
ado_pcm_subchn_mixer
Description:
ado_pcm_subchn_mixer_create
Description:
ado_pcm_subchn_mixer_config_t structure
Examples:
ado_pcm_subchn_mixer_destroy
Description:
ado_pcm_sw_mix
Description:
ado_realloc
Description:
ado_rwlock_destroy
Description:
ado_rwlock_init
Description:
ado_rwlock_rdlock
Description:
ado_rwlock_unlock
Description:
ado_rwlock_wrlock
Description:
ado_shm_alloc
Description:
ado_shm_free
Description:
ado_shm_mmap
Description:
ado_strdup
Description:
dma_interrupt
Description:
Supported Codecs
Audio Codec 97 (AC97)
DLL Name
Header File
Parameter Structure
Supported Device Controls
References
AK4531
DLL Name
Header File
Parameter Structure
Supported Device Controls
Reference
Sample Mixer Source
Glossary
Character Devices
About the Character DDK
What you'll find in this guide
Assumptions
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Character I/O Architecture
Overview
DDK source code
8250 Serial Driver
Creating a serial driver
Registers
Source code
Interrupts
Functions
create_device
enable_device
options
query_default_device
ser_intr
ser_stty
set_port
sys_ttyinit
tto
Character I/O Library
iochar_regdrv_power
Description:
iochar_send_event
Description:
kick
Description:
timer_queue
Description:
timer_remove
Description:
ttc
Description:
tti
Description:
tti2
Description:
tto_checkclients
Description:
tto_getchar
Description:
TTYCTRL
Description:
TTYDEV
Description:
TTYINIT
Description:
tx_inject
Description:
wait_add
Description:
wait_remove_rcvid
Description:
Graphics Devices
About the Graphics DDK
What you'll find in this guide
Assumptions
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction to Graphics Drivers
Graphics drivers
GF-Based graphics system
Photon-based graphics system
Writing a Graphics Driver
Overview
Getting the source code
Sample drivers
The modules
Modeswitching and enumeration
2D drawing
Graphics memory manager
Layer control
Viewports
Binding your driver to the graphics framework
Address spaces and calling rules
Calling sequence
Conventions
Colors
Coordinate system
Order
Inclusiveness
Core vs. context 2D functions
Context information
Supplying draw functions and software fallback
Clipping
Patterns
Pixel formats
Byte order
Pixel formats for layers
Updating a Graphics Driver
In this chapter...
Overview
API changes
Debugging a Graphics Driver
In this chapter...
Overview
The setup
Compiling shared objects
Shipping modified libs with your product
Setting the LD_LIBRARY_PATH environment variable
The display.conf file
Making a debug version of a driver
Running the debug driver and setting a breakpoint
Graphics Driver API
devg_get_contextfuncs
Description:
devg_get_corefuncs
Description:
devg_get_memfuncs
Description:
devg_get_miscfuncs
Description:
devg_get_modefuncs
Description:
devg_get_rendfuncs
Description:
devg_get_vcapfuncs
Description:
disp_2d_caps_t
Description:
disp_adapter_t
Description:
Callbacks
DISP_ADD_FUNC
Description:
Examples:
disp_crtc_settings_t
Description:
disp_draw_context_t
Description:
Chroma mode bits
Alpha mode bits (alpha_mode)
Alpha mode blending (source) operation
Alpha mode blending (destination) operation
disp_draw_contextfuncs_t
Description:
draw_span
draw_span_list
draw_rect
blit
update_general
update_color
update_rop3
update_chroma
update_alpha
scaled_blit
update_planemask
draw_line
fill_poly
draw_polyline
update_line
blend_pixels
disp_draw_corefuncs_t
Description:
wait_idle
draw_span
draw_span_list
draw_solid_rect
draw_line_pat8x1
draw_line_trans8x1
draw_rect_pat8x8
draw_rect_trans8x8
blit1
blit2
draw_bitmap
update_draw_surface
update_pattern
scaled_blit
draw_line
fill_poly
get_bresenham_params
update_transform
update_clipping
disp_draw_miscfuncs_t
Description:
init
fini
module_info
set_palette
flushrect
get_2d_caps
get_corefuncs_sw
get_contextfuncs_sw
end_of_draw
attach_external
detach_external
recover
wait_idle
disp_layer_query_t
Description:
disp_memfuncs_t
Description:
init
fini
module_info
reset
alloc_surface
alloc_layer_surface
free_surface
mem_avail
query_apertures
query_surface
get_alloc_info
get_alloc_layer_info
disp_mode_info_t
Description:
disp_modefuncs_t
Description:
init
fini
module_info
get_modeinfo
get_modelist
set_mode
wait_vsync
set_dpms_mode
set_display_offset
set_palette
layer_query
layer_enable
layer_disable
layer_set_surface
layer_set_source_viewport
layer_set_dest_viewport
layer_set_blending
layer_set_chromakey
layer_set_brightness
layer_set_saturation
layer_set_contrast
layer_set_hue
layer_set_alpha_map
layer_set_flags
layer_update_begin
layer_update_end
layer_reset
layer_set_order
set_hw_cursor
enable_hw_cursor
disable_hw_cursor
set_hw_cursor_pos
i2c_read
i2c_write
i2c_writeread
disp_module_info_t
Description:
disp_surface_t
Description:
Relationship of stride, height, and width
flags
disp_vcap_props_t
Description:
disp_vcapfuncs_t
Description:
init
fini
module_info
set_props
set_adjustments
bind_layer
set_enabled
wait_vsync
Libraries
DISPUTIL library --- utility functions
Miscellaneous display driver functions
disp_register_adapter
disp_unregister_adapter
disp_crtc_calc
disp_mode_get_entry
disp_acquire_vga_resources
disp_release_vga_resources
disp_perror
disp_printf
disp_usecspin
disp_delay
disp_get_rom_image
disp_vga_save_state
disp_vga_restore_state
disp_vga_state_t
PCI configuration access functions
disp_pci_init
disp_pci_shutdown
disp_pci_read_config
disp_pci_write_config
disp_pci_dev_find
disp_pci_dev_read_config
disp_pci_dev_write_config
disp_pci_info
Memory manager functions
disp_mmap_device_memory
disp_mmap_device_io
disp_munmap_device_memory
disp_munmap_device_io
disp_phys_addr
disp_getmem
disp_freemem
Video memory management functions
disp_vm_create_pool
disp_vm_destroy_pool
disp_vm_alloc_surface
disp_vm_free_surface
disp_vm_mem_avail
disp_vm_alloc_surface_external
disp_vm_free_surface_external
Video BIOS services (x86 only)
vbios_register
vbios_unregister
vbios_int
vbios_call
vbios_dowarmboot
vbios_get_realptr
vbios_context_t
FFB library --- 2D software fallback routines
ffb_get_corefuncs
ffb_get_contextfuncs
ffb_color_translate
Glossary
Input Devices
About the Input DDK
What you'll find in this guide
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
In this chapter...
DDK source code
Inside an input driver
Types of event bus lines
How modules are linked
Interface to the system
Source file organization for devi-*
Writing an Input Device Driver
In this chapter...
Creating an input module
input_module_t data type
In the sample directory
Data format
Keyboard devices
Absolute devices
Calibration file format
Relative devices
Callbacks in your module
Which callbacks are required?
Callback sequence
Writing a combination device/protocol module
A note about reentrancy
Testing and Debugging Your Driver
Debugging a keyboard/mouse driver
PS/2 mouse
Keyboard filter module
Module Functions
devctrl
Description:
init
Description:
Examples:
input
Description:
Examples:
output
Description:
Examples:
parm
Description:
pulse
Description:
Examples:
reset
Description:
Examples:
shutdown
Description:
Examples:
Input API Reference
begin
Description:
buff_append
Description:
buff_create
Description:
buff_delete
Description:
buff_flush
Description:
buff_getc
Description:
buff_putc
Description:
buff_waiting
Description:
clk_get
Description:
devi_enqueue_packet
Description:
devi_register_interrupt
Description:
devi_register_pulse
Description:
devi_register_timer
Description:
devi_request_iorange
Description:
Universal Serial Bus (USB) Devices
About the USB DDK
What you'll find in this guide
Assumptions
Building DDKs
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Before You Begin
System requirements
For QNX Neutrino
For QNX_4
USB devices supported
Known limitations
EHCI
Photon and text mode
Overview
The USB stack and library
Host Controller Interface (HCI) types
Data buffers
USB enumerator
How a class driver works
USB Utilities
USB Library Reference
Functions arranged by category
Connection functions
Memory-management functions
I/O functions
Pipe-management functions
Configuration and interface functions
Miscellaneous and convenience functions
usbd_abort_pipe
Description:
usbd_alloc
Description:
usbd_alloc_urb
Description:
usbd_args_lookup
Description:
usbd_attach
Description:
Looping
usbd_close_pipe
Description:
usbd_configuration_descriptor
Description:
usbd_connect
Description:
Data structures
Examples:
usbd_descriptor
Description:
usbd_detach
Description:
usbd_device_descriptor
Description:
usbd_device_extra
Description:
usbd_device_lookup
Description:
usbd_disconnect
Description:
usbd_endpoint_descriptor
Description:
usbd_feature
Description:
usbd_free
Description:
usbd_free_urb
Description:
usbd_get_frame
Description:
usbd_hcd_ext_info, usbd_hcd_info
Description:
usbd_hub_descriptor
Description:
usbd_interface_descriptor
Description:
usbd_io
Description:
usbd_languages_descriptor
Description:
usbd_mphys
Description:
usbd_open_pipe
Description:
usbd_parse_descriptors
Description:
usbd_pipe_device
Description:
usbd_pipe_endpoint
Description:
usbd_reset_device
Description:
usbd_reset_pipe
Description:
usbd_select_config
Description:
usbd_select_interface
Description:
usbd_setup_bulk
Description:
usbd_setup_control
Description:
usbd_setup_interrupt
Description:
usbd_setup_isochronous
Description:
usbd_setup_vendor
Description:
usbd_status
Description:
usbd_string
Description:
usbd_topology, usbd_topology_ext
Description:
usbd_urb_status
Description:
Completion status
QNX Neutrino High Availability Framework
Developer's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
In this chapter...
Where's the problem?
A software foundation for HA
What's in the High Availability Framework?
In this chapter...
What you get
The QNX Approach to HA
In this chapter...
The reset solution
Traditional RTOS architecture
Modularity means granularity
Intrinsic HA
Using the High Availability Manager
In this chapter...
Introduction
HAM hierarchy
Entities
Conditions
Actions
Action Fail actions
Multistaged recovery
State of the HAM
Example of the view shown in /proc/ham
HAM API
Connect/disconnect functions
Attach/detach functions
For self-attached entities
Code snippet using self-attach/detach calls
For attaching/detaching all other entities
Code snippet using attach/detach calls
Entity functions
Condition functions
Condition types
Condition flags
Action functions
Action fail functions
Example to monitor inetd
Example to monitor fs-nfs2
Functions to operate on handles
A client example
Starting and stopping a HAM
Stopping a HAM
Control functions
Verbosity control
Publishing autonomously detected conditions
Publish state transitions
Publish other conditions
Subscribing to autonomously published conditions
Trigger based on state transitions
Trigger based on specific published condition
Using the Client Recovery Library
In this chapter...
Introduction
MsgSend* functions
Other covers and convenience functions
HA-awareness functions
I/O covers
Convenience functions
A simple example
State-reconstruction example
HAM API Reference
ham_action_control
Description:
Flags
ham_action_execute
Description:
ham_action_fail_execute
Description:
ham_action_fail_log
Description:
ham_action_fail_notify_pulse, ham_action_fail_notify_pulse_node
Description:
ham_action_fail_notify_signal, ham_action_fail_notify_signal_node
Description:
ham_action_fail_waitfor
Description:
ham_action_handle, ham_action_handle_node
Description:
ham_action_handle_free
Description:
ham_action_heartbeat_healthy
Description:
ham_action_log
Description:
ham_action_notify_pulse, ham_action_notify_pulse_node
Description:
ham_action_notify_signal, ham_action_notify_signal_node
Description:
ham_action_remove
Description:
ham_action_restart
Description:
ham_action_waitfor
Description:
ham_attach, ham_attach_node
Description:
ham_attach_self
Description:
ham_condition
Description:
ham_entity_control
Description:
Flags
ham_condition_handle, ham_condition_handle_node
Description:
ham_condition_handle_free
Description:
ham_condition_raise
Description:
ham_condition_remove
Description:
ham_condition_state
Description:
Flags
ham_connect, ham_connect_nd, ham_connect_node
Description:
ham_detach
Description:
ham_detach_name, ham_detach_name_node
Description:
ham_detach_self
Description:
ham_disconnect, ham_disconnect_nd, ham_disconnect_node
Description:
ham_entity, ham_entity_node
Description:
ham_entity_condition_raise
Description:
ham_entity_condition_state
Description:
ham_entity_control
Description:
Flags
ham_entity_handle, ham_entity_handle_node
Description:
ham_entity_handle_free
Description:
ham_heartbeat
Description:
ham_stop, ham_stop_nd, ham_stop_node
Description:
ham__verbose
Description:
Client Recovery Library Reference
ha_attach
Description:
ha_close
Description:
ha_connection_ctrl
Description:
ha_ConnectAttach, ha_ConnectAttach_r
Description:
ha_ConnectDetach, ha_ConnectDetach_r
Description:
ha_creat, ha_creat64
Description:
ha_detach
Description:
ha_dup
Description:
ha_fclose
Description:
ha_fopen
Description:
ha_open, ha_open64
Description:
ha_ReConnectAttach
Description:
ha_reopen
Description:
Examples
In this appendix...
Simple restart
Compound restart
Death/condition notification
Heartbeating clients (liveness detection)
The process is made to heartbeat
Process starvation
Thread 2 is made to heartbeat
Glossary
Developer's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
In this chapter...
Where's the problem?
A software foundation for HA
What's in the High Availability Framework?
In this chapter...
What you get
The QNX Approach to HA
In this chapter...
The reset solution
Traditional RTOS architecture
Modularity means granularity
Intrinsic HA
Using the High Availability Manager
In this chapter...
Introduction
HAM hierarchy
Entities
Conditions
Actions
Action Fail actions
Multistaged recovery
State of the HAM
Example of the view shown in /proc/ham
HAM API
Connect/disconnect functions
Attach/detach functions
For self-attached entities
Code snippet using self-attach/detach calls
For attaching/detaching all other entities
Code snippet using attach/detach calls
Entity functions
Condition functions
Condition types
Condition flags
Action functions
Action fail functions
Example to monitor inetd
Example to monitor fs-nfs2
Functions to operate on handles
A client example
Starting and stopping a HAM
Stopping a HAM
Control functions
Verbosity control
Publishing autonomously detected conditions
Publish state transitions
Publish other conditions
Subscribing to autonomously published conditions
Trigger based on state transitions
Trigger based on specific published condition
Using the Client Recovery Library
In this chapter...
Introduction
MsgSend* functions
Other covers and convenience functions
HA-awareness functions
I/O covers
Convenience functions
A simple example
State-reconstruction example
HAM API Reference
ham_action_control
Description:
Flags
ham_action_execute
Description:
ham_action_fail_execute
Description:
ham_action_fail_log
Description:
ham_action_fail_notify_pulse, ham_action_fail_notify_pulse_node
Description:
ham_action_fail_notify_signal, ham_action_fail_notify_signal_node
Description:
ham_action_fail_waitfor
Description:
ham_action_handle, ham_action_handle_node
Description:
ham_action_handle_free
Description:
ham_action_heartbeat_healthy
Description:
ham_action_log
Description:
ham_action_notify_pulse, ham_action_notify_pulse_node
Description:
ham_action_notify_signal, ham_action_notify_signal_node
Description:
ham_action_remove
Description:
ham_action_restart
Description:
ham_action_waitfor
Description:
ham_attach, ham_attach_node
Description:
ham_attach_self
Description:
ham_condition
Description:
ham_entity_control
Description:
Flags
ham_condition_handle, ham_condition_handle_node
Description:
ham_condition_handle_free
Description:
ham_condition_raise
Description:
ham_condition_remove
Description:
ham_condition_state
Description:
Flags
ham_connect, ham_connect_nd, ham_connect_node
Description:
ham_detach
Description:
ham_detach_name, ham_detach_name_node
Description:
ham_detach_self
Description:
ham_disconnect, ham_disconnect_nd, ham_disconnect_node
Description:
ham_entity, ham_entity_node
Description:
ham_entity_condition_raise
Description:
ham_entity_condition_state
Description:
ham_entity_control
Description:
Flags
ham_entity_handle, ham_entity_handle_node
Description:
ham_entity_handle_free
Description:
ham_heartbeat
Description:
ham_stop, ham_stop_nd, ham_stop_node
Description:
ham__verbose
Description:
Client Recovery Library Reference
ha_attach
Description:
ha_close
Description:
ha_connection_ctrl
Description:
ha_ConnectAttach, ha_ConnectAttach_r
Description:
ha_ConnectDetach, ha_ConnectDetach_r
Description:
ha_creat, ha_creat64
Description:
ha_detach
Description:
ha_dup
Description:
ha_fclose
Description:
ha_fopen
Description:
ha_open, ha_open64
Description:
ha_ReConnectAttach
Description:
ha_reopen
Description:
Examples
In this appendix...
Simple restart
Compound restart
Death/condition notification
Heartbeating clients (liveness detection)
The process is made to heartbeat
Process starvation
Thread 2 is made to heartbeat
Glossary
QNX Neutrino Instant Device Activation
User's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Using Minidrivers for Instant Device Activation
The minidriver basics
The minidriver architecture
How does the minidriver work?
Seamless transition
Running multiple handler functions
Writing a minidriver
Hardware platform
Timing requirements
Data storage
Hardware initialization
Hardware Access
Transition to full driver
Sample minidriver
Implementation notes
The minidriver handler function
Adding your minidriver to the system
Build startup
Test application: mini-peeker.c
Transition from minidriver to full driver
Minidriver implementation notes
Customizing the startup program that contains your minidriver code
Making a boot image that includes your minidriver
Debugging from within the minidriver
Displaying information about minidriver status (after the kernel boots)
Making the transition to the real driver
APIs and Datatypes
mdriver_add
Description:
mdriver_handler
mdriver_max
Description:
mdriver_entry
Description:
Sample Drivers for Instant Device Activation
FreeScale Media5200b sample minidriver
The minidriver handler function
Adding your minidriver to the system
Build startup
Testing your minidriver
Sample timings
Renesas Biscayne minidriver
The minidriver handler function
Adding your minidriver to the system
Build startup
Testing your minidriver
Sample Timings
OMAP minidriver
Adding your minidriver to the system
Build startup
Testing your minidriver
Sample timings
Hardware Interaction within the Minidriver
User's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Using Minidrivers for Instant Device Activation
The minidriver basics
The minidriver architecture
How does the minidriver work?
Seamless transition
Running multiple handler functions
Writing a minidriver
Hardware platform
Timing requirements
Data storage
Hardware initialization
Hardware Access
Transition to full driver
Sample minidriver
Implementation notes
The minidriver handler function
Adding your minidriver to the system
Build startup
Test application: mini-peeker.c
Transition from minidriver to full driver
Minidriver implementation notes
Customizing the startup program that contains your minidriver code
Making a boot image that includes your minidriver
Debugging from within the minidriver
Displaying information about minidriver status (after the kernel boots)
Making the transition to the real driver
APIs and Datatypes
mdriver_add
Description:
mdriver_handler
mdriver_max
Description:
mdriver_entry
Description:
Sample Drivers for Instant Device Activation
FreeScale Media5200b sample minidriver
The minidriver handler function
Adding your minidriver to the system
Build startup
Testing your minidriver
Sample timings
Renesas Biscayne minidriver
The minidriver handler function
Adding your minidriver to the system
Build startup
Testing your minidriver
Sample Timings
OMAP minidriver
Adding your minidriver to the system
Build startup
Testing your minidriver
Sample timings
Hardware Interaction within the Minidriver
QNX Neutrino Multicore Processing
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What is Multicore Processing?
A Quick Introduction to Multicore Processing
Setting up the OS image
Trying symmetric multiprocessing
Trying bound multiprocessing
Developing Multicore Systems
Building a multicore image
The impact of multicore
To multicore or not to multicore
Thread affinity
Multicore and synchronization primitives
Multicore and FIFO scheduling
Multicore and interrupts
Multicore and atomic operations
Adaptive partitioning
Designing with multiprocessing in mind
Use the multicore primitives
Assume that threads really do run concurrently
Break the problem down
Glossary
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What is Multicore Processing?
A Quick Introduction to Multicore Processing
Setting up the OS image
Trying symmetric multiprocessing
Trying bound multiprocessing
Developing Multicore Systems
Building a multicore image
The impact of multicore
To multicore or not to multicore
Thread affinity
Multicore and synchronization primitives
Multicore and FIFO scheduling
Multicore and interrupts
Multicore and atomic operations
Adaptive partitioning
Designing with multiprocessing in mind
Use the multicore primitives
Assume that threads really do run concurrently
Break the problem down
Glossary
QNX Neutrino Realtime Operating System
Addon Interfaces Library Reference
About This Reference
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
An Example
Library components
Addon Interfaces Library Reference
AOI Structures
AOI Functions
AOICtrl_t
Description:
AOInterface_t
Description:
AoAdd
Description:
AoAddDirectory
Description:
AoAddStatic
Description:
AoAddUnloadSignal
Description:
AoGetInterface
Description:
AoHold
Description:
AoIterate
Description:
AoIterateHoldGet
Description:
AoRelease
Description:
AoRemove
Description:
AoFindExt
Description:
AoFindFormats
Description:
AoFindMime
Description:
AoFindName
Description:
Examples:
AoFindStreams
Description:
AoOpenFilespec
Description:
Implemented Interfaces
Built-in Interfaces
AODeConstructor
Create
Synopsis
Arguments
Description
Returns
Destroy
Synopsis
Arguments
Description
Returns
AOExtInspector
RateExtension
Synopsis
Arguments
Description
Returns
AOFormatInspector
RateFormat
Synopsis
Arguments
Description
Returns
AOMimetypeInspector
RateMimetype
Synopsis
Arguments
Description
Returns
AOStreamer
Open
Synopsis
Arguments
Description
Returns
Close
Synopsis
Arguments
Description
Returns
Sniff
Synopsis
Arguments
Description
Returns
Read
Synopsis
Arguments
Description
Returns
Write
Synopsis
Arguments
Description
Returns
Seek
Synopsis
Arguments
Description
Returns
Tell
Synopsis
Arguments
Description
Returns
Length
Synopsis
Arguments
Description
Returns
SideInfo
Synopsis
Arguments
Description
Returns
AOStreamInspector
RateStream
Synopsis
Arguments
Description
Returns
AOResourceAccess
GetResources
Synopsis
Arguments
Description
Returns
SetResource
Synopsis
Arguments
Description
Returns
Built-in interfaces
Unloading and InitializeInterface
Name
Using Addon Resources
An Example
Using addon resources in your application
Defined Structures
AOIStream_t
Description:
AOMimeInfo_t
Description:
AOResource_t
Description:
AOAudioFormat_t
Description:
ImageFormat_t
Description:
MediaFormat_t
Description:
VideoFormat_t
Description:
Audio Developer's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What's new in QNX Neutrino 6.5.0
What's new in QNX Neutrino 6.4
What's new in QNX Neutrino 6.3
What's new in QNX Neutrino 6.2
What's new in QNX Neutrino 6.1
Changed content
Audio Architecture
QNX Sound Architecture
Cards and devices
Control device
Mixer devices
Pulse Code Modulation (PCM) devices
Data formats
PCM state machine
Software PCM mixing
PCM plugin converters
Playing and Capturing Audio Data
Handling PCM devices
Opening your PCM device
Configuring the PCM device
Controlling voice conversion
Preparing the PCM subchannel
Closing the PCM subchannel
Playing audio data
Playback states
Sending data to the PCM subchannel
If the PCM subchannel stops during playback
Stopping the playback
Synchronizing with the PCM subchannel
Capturing audio data
Selecting what to capture
Capture states
Receiving data from the PCM subchannel
If the PCM subchannel stops during capture
Stopping the capture
Synchronizing with the PCM subchannel
Mixer Architecture
Opening the mixer device
Controlling a mixer group
The best mixer group with respect to your PCM subchannel
Finding all mixer groups
Mixer event notification
Closing the mixer device
Audio Library
snd_card_get_longname
Description:
snd_card_get_name
Description:
snd_card_name
Description:
snd_cards
Description:
snd_cards_list
Description:
snd_ctl_callbacks_t
Description:
rebuild callback
xswitch callback
snd_ctl_close
Description:
snd_ctl_file_descriptor
Description:
snd_ctl_hw_info
Description:
snd_ctl_hw_info_t
Description:
snd_ctl_mixer_switch_list
Description:
snd_ctl_mixer_switch_read
Description:
snd_ctl_mixer_switch_write
Description:
snd_ctl_open
Description:
snd_ctl_pcm_channel_info
Description:
snd_ctl_pcm_info
Description:
snd_ctl_read
Description:
snd_mixer_callbacks_t
Description:
rebuild callback
element callback
group callback
Examples:
snd_mixer_close
Description:
snd_mixer_eid_t
Description:
snd_mixer_element_read
Description:
snd_mixer_element_t
Description:
snd_mixer_element_write
Description:
snd_mixer_elements
Description:
snd_mixer_elements_t
Description:
snd_mixer_file_descriptor
Description:
snd_mixer_filter_t
Description:
snd_mixer_get_bit
Description:
snd_mixer_get_filter
Description:
snd_mixer_gid_t
Description:
snd_mixer_group_read
Description:
snd_mixer_group_t
Description:
snd_mixer_group_write
Description:
snd_mixer_groups
Description:
snd_mixer_groups_t
Description:
snd_mixer_info
Description:
snd_mixer_info_t
Description:
snd_mixer_open
Description:
snd_mixer_open_name
Description:
snd_mixer_read
Description:
snd_mixer_routes
Description:
snd_mixer_routes_t
Description:
snd_mixer_set_bit
Description:
snd_mixer_set_filter
Description:
snd_mixer_sort_eid_table
Description:
snd_mixer_sort_gid_table
Description:
snd_mixer_weight_entry_t
Description:
snd_pcm_build_linear_format
Description:
snd_pcm_capture_flush
Description:
snd_pcm_capture_prepare
Description:
snd_pcm_channel_flush
Description:
snd_pcm_channel_info
Description:
snd_pcm_channel_info_t
Description:
snd_pcm_channel_params
Description:
snd_pcm_channel_params_t
Description:
snd_pcm_channel_prepare
Description:
snd_pcm_channel_setup
Description:
snd_pcm_channel_setup_t
Description:
snd_pcm_channel_status
Description:
snd_pcm_channel_status_t
Description:
snd_pcm_close
Description:
snd_pcm_file_descriptor
Description:
snd_pcm_find
Description:
snd_pcm_format_big_endian
Description:
snd_pcm_format_linear
Description:
snd_pcm_format_little_endian
Description:
snd_pcm_format_signed
Description:
snd_pcm_format_size
Description:
snd_pcm_format_t
Description:
snd_pcm_format_unsigned
Description:
snd_pcm_format_width
Description:
snd_pcm_get_format_name
Description:
snd_pcm_info
Description:
snd_pcm_info_t
Description:
snd_pcm_nonblock_mode
Description:
snd_pcm_open
Description:
Examples:
snd_pcm_open_name
Description:
Examples:
snd_pcm_open_preferred
Description:
Examples:
snd_pcm_playback_drain
Description:
snd_pcm_playback_flush
Description:
snd_pcm_playback_prepare
Description:
snd_pcm_plugin_flush
Description:
Examples:
snd_pcm_plugin_get_voice_conversion
Description:
snd_pcm_plugin_info
Description:
Examples:
snd_pcm_plugin_params
Description:
Examples:
snd_pcm_plugin_playback_drain
Description:
snd_pcm_plugin_prepare
Description:
Examples:
snd_pcm_plugin_read
Description:
snd_pcm_plugin_set_disable
Description:
Examples:
snd_pcm_plugin_set_src_mode
Description:
snd_pcm_plugin_set_voice_conversion
Description:
snd_pcm_plugin_setup
Description:
Examples:
snd_pcm_plugin_set_src_mode
Description:
snd_pcm_plugin_status
Description:
Examples:
snd_pcm_plugin_set_src_mode
Description:
snd_pcm_plugin_write
Description:
Examples:
snd_pcm_read
Description:
snd_pcm_voice_conversion_t
Description:
snd_pcm_write
Description:
snd_strerror
Description:
Examples:
snd_switch_t
Description:
wave.c example
waverec.c example
mixer_ctl.c example
LGPL License Agreement
Glossary
Building Embedded Systems
About This Book
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview of Building Embedded Systems
Introduction
The role of the IPL
Warm-start and cold-start IPL
The role of the startup program
Startup's responsibilities
Copying and decompressing the image
Configuring the hardware
Determining system configuration
Establishing callouts
Starting the OS
The startup library
The role of Neutrino
Hardware aspects
Choice of processor
Source of initialization and configuration
Choice of filesystems
No additional storage required
Additional read-only storage required
Additional read/write nonpersistent storage required
Additional read/write persistent storage required
Flash filesystems and media
Rotating media and filesystems
Network media and filesystems
I/O devices
Character I/O devices
Special/custom devices
Getting started
Hardware design
Customizing the software
Customizing the source
Working with a BSP
In this chapter...
BSP Overview
Using BSPs in the IDE
Using BSPs on the command line
Structure of a BSP
prebuilt subdirectory
install subdirectory
src subdirectory
Building source from the command line
Supporting additional devices
Transferring an OS image onto your board
Transferring an OS image
Working with a flash filesystem
Raw partitions
Flash filesystem partitions
Flash filesystem source
How do I create a partition?
Testing Neutrino on your board
Getting Photon on your board
Where do I go from here?
Filename conventions
Making an OS Image
Images, images, images
What is an OS image?
The OS image as a filesystem
Configuring an OS image
A simple buildfile
Inline files
The bootstrap file
Compressing the image
The script file
Bound multiprocessing attributes
The script file on the target
Plain ordinary lists of files
Including files from different places
Modifying the search path
Specifying the pathname explicitly
Creating the contents of the file in line
Specifying file ownership and permissions
Including a whole whack of files
Generating the image
Listing the contents of an image
Building a flash filesystem image
Using mkefs
mkefs buildfile
Block size
Spare blocks
Compressing files
Abstraction layer
Two sizes
Compression rules
The exception
Embedding an image
Combining image files using mkimage
Combining image files using the IDE
Converting images using mkrec
Transferring an image to flash
System configuration
Establishing an output device
A simple desktop example
Running drivers/filesystems
Disk drivers
Flash filesystems
Network drivers
Network filesystems
Running applications
Debugging an embedded system
pdebug software debugging agent
Hardware debuggers and Neutrino
Producing debug symbol information for IPL and startup
Generating IPL debug symbols
Generating startup debug symbols
Writing an IPL Program
Initial program loader (IPL)
Responsibilities of the IPL
Linearly mapped images
Bank-switched images
Processors & configurations
Booting from a bank-switched device
Booting from a linear device
Warm vs cold start
Warm-start IPL
Cold-start IPL
Loading the image
If the source is a linearly mapped device
If the source is a bank-switched device
ROM devices
Network boot
Using a BOOTP server
Serial port
Traditional disk
None of the above?
Transferring control to the startup program
Customizing IPLs
Initialize hardware
Loading the image into RAM
Structure of the boot header
signature
version
flags1 and flags2
header_size
machine
startup_vaddr
paddr_bias
image_paddr
ram_paddr
ram_size
startup_size
stored_size
imagefs_paddr
imagefs_size
preboot_size
zero and zero0
info
struct startup_info_skip
struct startup_info_mem and startup_info_mem_extended
struct startup_info_disk
struct startup_info_time
struct startup_info_box
Relationship of struct startup_header fields
Linear ROM execute-in-place boot image
Linear ROM compressed boot image
ROM non-XIP image
Disk/network image (x86 BIOS)
Disk/network compressed image
IPL structure
IPL source directory structure
IPL code structure
An example
Creating a new IPL
The IPL library
enable_cache
image_download_8250
image_scan
image_scan_ext
image_setup
image_setup_ext
image_start
image_start_ext
int15_copy
print_byte
print_char
print_long
print_sl
print_string
print_var
print_word
protected_mode
uart_hex8
uart_hex16
uart_hex32
uart_init
uart_put
uart_string
uart32_hex8
uart32_hex16
uart32_hex32
uart32_init
uart32_put
uart32_string
Customizing Image Startup Programs
In this chapter...
Introduction
Initialize hardware
Initialize system page
Initialize callouts
Anatomy of a startup program
Structure of a startup program
Creating a new startup program
Structure of the system page
size
total_size
type
num_cpu
system_private
asinfo
The attr field
Address space trees
hwinfo
Tags
Items
Device trees
Building the section
Other functions
Defaults
Predefined items and tags
Group item
Bus item
Device item
location tag
irq tag
diskgeometry tag
pad tag
cpuinfo
syspage_entry cacheattr
syspage_entry qtime
callout
callin
typed_strings
strings
intrinfo
The cpu_intr_base member
The flags member
config return values
syspage_entry union un
un.x86
un.x86.smpinfo (deprecated)
un.ppc (deprecated)
un.ppc.kerinfo
un.mips
un.arm
un.sh
smp
pminfo
Callout information
Debug interface
Clock/timer interface
Interrupt controller interface
Cache controller interface
System reset callout
Power management callout
The startup library
add_cache
add_callout
add_callout_array
add_interrupt
add_interrupt_array
add_ram
add_string
add_typed_string
alloc_qtime
alloc_ram
as_add
as_add_containing
as_default
as_find
as_find_containing
as_info2off
as_off2info
as_set_checker
as_set_priority
avoid_ram
calc_time_t
calloc_ram
callout_io_map, callout_io_map_indirect
callout_memory_map, callout_memory_map_indirect
callout_register_data
chip_access
chip_done
chip_read8
chip_read16
chip_read32
chip_write8
chip_write16
chip_write32
copy_memory
del_typed_string
falcon_init_l2_cache
falcon_init_raminfo
falcon_system_clock
find_startup_info
find_typed_string
handle_common_option
hwi_add_device
hwi_add_inputclk
hwi_add_irq
hwi_add_location
hwi_add_nicaddr
hwi_add_rtc
hwi_alloc_item
hwi_alloc_tag
hwi_find_as
hwi_find_item
hwi_find_tag
hwi_off2tag
hwi_tag2off
init_asinfo
init_cacheattr
init_cpuinfo
init_hwinfo
init_intrinfo
init_mmu
init_pminfo
init_qtime
init_qtime_sa1100
init_raminfo
init_smp
init_syspage_memory (deprecated)
init_system_private
jtag_reserve_memory
kprintf
mips41xx_set_clock_freqs
openbios_init_raminfo
pcnet_reset
ppc400_pit_init_qtime
ppc405_set_clock_freqs
ppc600_set_clock_freqs
ppc700_init_l2_cache
ppc800_pit_init_qtime
ppc800_set_clock_freqs
ppc_dec_init_qtime
print_syspage
rtc_time
startup_io_map
startup_io_unmap
startup_memory_map
startup_memory_unmap
tulip_reset
uncompress
x86_cpuid_string
x86_cputype
x86_enable_a20
x86_fputype
x86_init_pcbios
x86_pcbios_shadow_rom
x86_scanmem
Writing your own kernel callout
Find out who's gone before
Why are they in assembly language?
Starting off
Patching the callout code
Getting some R/W storage
The exception that proves the rule
PPC chips support
Adding a new CPU to the startup library
Customizing the Flash Filesystem
Introduction
Driver structure
resmgr and iofunc layers
Flash filesystem component
Socket services component
Flash services component
Probe routine component
Building your flash filesystem driver
The source tree
The Makefile
Making the driver
The main function
f3s_init
f3s_start
Socket services interface
f3s_open
f3s_page
f3s_status
f3s_close
Options parsing
f3s_socket_option
f3s_socket_syspage
Flash services interface
f3s_ident
f3s_reset
f3s_v2read
f3s_v2write
f3s_v2erase
f3s_v2suspend
f3s_v2resume
f3s_v2sync
f3s_v2islock
f3s_v2lock
f3s_v2unlock
f3s_v2unlockall
Choosing the right routines
Example: The devf-ram driver
main
f3s_ram_open
f3s_ram_page
System Design Considerations
Introduction
Before you design your system
Processor speed
Memory requirements
Peripherals
Debugging
Field upgrades
Other design considerations
EPROM/Flash filesystem considerations
IPL location
Graphics cards
A20 gate
External ISA bus slots
PCI bus slots
External clocks
Interrupts & controllers
Serial and parallel ports
Parallel port considerations
NMI
Design do's and don'ts
Do:
Don't:
Sample Buildfiles
Introduction
Generic examples
Shared libraries
Running executables more than once
Multiple consoles
Starting other programs on consoles
Redirection
/tmp
Complete example --- minimal configuration
Complete example --- flash filesystem
Complete example --- disk filesystem
Complete example --- TCP/IP with network filesystem
Processor-specific notes
Specifying the processor
Examples
Specifying the startup program
Specifying the serial device
Glossary
Getting Started with QNX Neutrino: A Guide for Realtime Programmers
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Foreword to the First Edition by Peter van der Veen
Preface to the First Edition by Rob Krten
A little history
Who this book is for
What's in this book?
Processes and Threads
Message Passing
Clocks, Timers, and Getting a Kick Every So Often
Interrupts
Resource Managers
QNX 4 to QNX Neutrino
Calling 911
Glossary
Other references
About Rob Krten
Acknowledgments
Processes and Threads
Process and thread fundamentals
A process as a house
The occupants as threads
Single threaded
Multi threaded
Back to processes and threads
Mutual exclusion
Priorities
Semaphores
A semaphore with a count of 1
A semaphore with a count greater than 1
A semaphore as a mutex
The kernel's role
Single CPU
Multiple CPU (SMP)
The kernel as arbiter
Prioritization
Scheduling policies
FIFO
Round Robin
The rules
Kernel states
RUNNING
READY
The blocked states
Kernel states, the complete list
Threads and processes
Why processes?
Starting a process
Starting a process from the command line
Starting a process from within a program
Starting a process with the system call
Starting a process with the exec and spawn calls
Starting a process with the fork call
Starting a process with the vfork call
Process creation and threads
So what should you use?
Starting a thread
The thread attributes structure
Thread attribute administration
The flags thread attribute
The stack thread attributes
The scheduling thread attributes
A few examples
Where a thread is a good idea
Threads in mathematical operations
Coding for SMP or single processor
Synchronizing to the termination of a thread
Joining
Using a barrier
Multiple threads on a single CPU
Things to watch out for when using SMP
Threads in independent situations
Multiple processes
Multiple processes with shared memory
Multiple threads
Comparisons
More on synchronization
Readers/writer locks
Sleepon locks
Condition variables
Signal versus broadcast
Sleepons versus condvars
Additional Neutrino services
Pools of threads
Controlling the number of threads
The thread pool functions
Scheduling and the real world
Rescheduling --- hardware interrupts
Rescheduling --- kernel calls
Rescheduling --- exceptions
Summary
Message Passing
Messaging fundamentals
A small microkernel and message passing
Message passing and client/server
Network-distributed message passing
What it means for you
The philosophy of Neutrino
Multiple threads
Server/subserver
Some examples
Send-driven (client/server)
Reply-driven (server/subserver)
An important subtlety
Multi-threaded server
Using message passing
Architecture & structure
The client
Establishing a connection
Sending messages
The server
Creating the channel
Message handling
Server framework
The send-hierarchy
Receive IDs, channels, and other parameters
More about channels
Who sent the message?
The receive ID (a.k.a. the client cookie)
Replying to the client
Not replying to the client
Replying with no data, or an errno
Finding the server's ND/PID/CHID
What about priorities?
Reading and writing data
Multipart messages
What about the other versions?
Implementation
Pulses
Receiving a pulse message
What's in a pulse?
The MsgReceivePulse function
The MsgDeliverEvent function
Channel flags
_NTO_CHF_UNBLOCK
Synchronization problem
Using the _NTO_MI_UNBLOCK_REQ
Message passing over a network
Networked message passing differences
Longer delays
Impact on ConnectAttach
Impact on MsgDeliverEvent
Impact on MsgReply, MsgRead, and MsgWrite
Impact on MsgReceive
Some notes on NDs
Priority inheritance
So what's the trick?
Summary
Clocks, Timers, and Getting a Kick Every So Often
Clocks and timers
Operating periodically
Clock interrupt sources
Base timing resolution
Getting more precision
Timing jitter
Types of timers
Notification schemes
How to fill in the struct sigevent
Pulse notification
Signal notification
Thread notification
General tricks for notification
Pulse notification
Signal notification
Using timers
Creating a timer
Signal, pulse, or thread?
What kind of timer?
A server with periodic pulses
Server-maintained timeouts
Declarations
main
setupPulseAndTimer
gotAPulse
gotAMessage
Notes
Periodic server maintenance cycles
Timers delivering signals
Timers creating threads
Getting and setting the realtime clock and more
Getting and setting
Adjusting the timebase
An accurate timestamp
Advanced topics
Other clock sources
CLOCK_MONOTONIC
So what does CLOCK_SOFTTIME do?
Using different clock sources
Kernel timeouts
Kernel timeouts with pthread_join
Kernel timeouts with message passing
Summary
Interrupts
Neutrino and interrupts
Interrupt service routine
Clearing the interrupt source
Telling a thread to do something
Level-sensitivity versus edge-sensitivity
Writing interrupt handlers
Attaching an interrupt handler
Attaching with InterruptAttachEvent
Attaching with InterruptAttach
Now that you've attached an interrupt
Detaching an interrupt handler
The flags parameter
The interrupt service routine
Using InterruptAttach
Using InterruptAttachEvent
InterruptAttach versus InterruptAttachEvent
The trade-offs
ISR functions
Summary
Resource Managers
What is a resource manager?
Examples of resource managers
Serial port
Filesystem
Characteristics of resource managers
The client's view
Finding the server
Finding the process manager
Handling directories
Union'd filesystems
Client summary
The resource manager's view
Registering a pathname
Handling messages
Connect messages
I/O messages
Three groups, really
The resource manager library
The library really does what we just talked about
Behind the scenes at the library
The base layer
The POSIX layer
Writing a resource manager
Data structures
resmgr_attr_t control structure
The other_func message handler
The data structure sizing parameters
The flags parameter
resmgr_connect_funcs_t connect table
resmgr_io_funcs_t I/O table
The resmgr_context_t internal context block
Resource manager structure
The resmgr_attach function and its parameters
Putting in your own functions
The general flow of a resource manager
Messages that should be connect messages but aren't
Combine messages
POSIX-layer data structures
The iofunc_ocb_t OCB structure
The strange case of the offset member
The iofunc_attr_t attributes structure
The iofunc_mount_t mount structure
Of device numbers, inodes, and our friend rdev
Handler routines
General notes
Locking, unlocking, and combine message handling
Connect functions notes
Internal use part
End-user parameter part
Alphabetical listing of connect and I/O functions
io_chmod
io_chown
io_close_dup
io_close_ocb
io_devctl
io_dup
io_fdinfo
io_link
io_lock
io_lock_ocb
io_lseek
io_mknod
io_mmap
io_mount
io_msg
io_notify
io_open
io_openfd
io_pathconf
io_power
io_read
io_readlink
io_rename
io_shutdown
io_space
io_stat
io_sync
io_unblock [CONNECT]
io_unblock [I/O]
io_unlink
io_unlock_ocb
io_utime
io_write
Examples
The basic skeleton of a resource manager
Step 1
Step 2
Step 3
A simple io_read example
Data area size considerations
Handling of EOF case
Maintenance of context information
Updating POSIX information
The code
Step 1
Step 2
Steps 3 & 4
Step 5
Step 6
Step 7
Step 8
Step 9
Effective use of other messaging functions
A simple io_write example
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
Step 7
Step 8
A simple io_devctl example
Step 1
Step 2
Step 3
Step 4
An io_devctl example that deals with data
Step 1
Step 2
Step 3
Step 4
Step 5
Important note
Advanced topics
Extending the OCB
OCB monitor
More efficient allocation
Extending the attributes structure
Blocking within the resource manager
Returning directory entries
Generally speaking ...
The struct dirent structure and friends
Offsets
Contents
Example
main and declarations
my_open
my_read
my_read_dir
my_read_file
dirent_size
dirent_fill
Summary
QNX 4 to Neutrino
QNX 4 and Neutrino
Similarities
Improvements
Embeddability
Thread support
Message passing
Pulses and events
Device driver model
MIPS, PPC, SH4, and ARM support
SMP support
Porting philosophy
Message passing considerations
Client/server using the global namespace
Translating messages to standard file-descriptor-based POSIX calls
Translating messages to devctl or _IO_MSG
Client/Server using an I/O manager
Proxies
Proxies for their IDs
Proxies for their contents
Interrupt service routines
Summary
Calling 911
Seeking professional help
So you've got a problem...
RTFM
Building Embedded Systems
Library Reference
System Architecture
Technotes
User's Guide
Utilities Reference
Programmer's Guide
Contact technical support
Describe the problem
Precise information
Versions
If you're using a beta...
Reproduce the problem
Narrow it down
Training
Sample Programs
atoz.c
time1.c
tp1.c
tt1.c
Glossary
Library Reference
About This Reference
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What's in a Function Description?
Description:
Examples:
Function safety:
Manifests
QNX Neutrino Functions and Macros
A
abort
Description:
Examples:
abs
Description:
Examples:
accept
Description:
access
Description:
Examples:
acos, acosf, acosl
Description:
Examples:
acosh, acoshf, acoshl
Description:
Examples:
addrinfo
Description:
aio_cancel
Description:
aio_error
Description:
aio_fsync
Description:
aio_read
Description:
aio_return
Description:
aio_suspend
Description:
aio_write
Description:
aiocb
Description:
alarm
Description:
Examples:
alloca
Description:
Examples:
alphasort
Description:
_amblksiz
Description:
_argc
Description:
_argv
Description:
asctime, asctime_r
Description:
asin, asinf, asinl
Description:
Examples:
asinh, asinhf, asinhl
Description:
Examples:
assert
Description:
Examples:
asyncmsg_channel_create
Description:
Callback function
asyncmsg_channel_destroy
Description:
asyncmsg_connect_attach
Description:
asyncmsg_connect_attr
Description:
asyncmsg_connect_detach
Description:
_asyncmsg_connection_attr
Description:
asyncmsg_flush
Description:
asyncmsg_free
Description:
asyncmsg_get
Description:
_asyncmsg_get_header structure
asyncmsg_malloc
Description:
asyncmsg_put, asyncmsg_putv
Description:
atan, atanf, atanl
Description:
Examples:
atan2, atan2f
Description:
Examples:
atanh, atanhf, atanhl
Description:
Examples:
atexit
Description:
Examples:
atof
Description:
Examples:
atoh
Description:
Examples:
atoi
Description:
Examples:
atol, atoll
Description:
Examples:
atomic_add
Description:
Examples:
atomic_add_value
Description:
Examples:
atomic_clr
Description:
Examples:
atomic_clr_value
Description:
Examples:
atomic_set
Description:
Examples:
atomic_set_value
Description:
Examples:
atomic_sub
Description:
Examples:
atomic_sub_value
Description:
Examples:
atomic_toggle
Description:
Examples:
atomic_toggle_value
Description:
Examples:
_auxv
Description:
B
basename
Description:
Examples:
bcmp
Description:
Examples:
bcopy
Description:
Examples:
bind
Description:
bindresvport
Description:
brk
Description:
bsearch
Description:
Examples:
bt_get_backtrace
Description:
bt_init_accessor
Description:
bt_load_memmap
Description:
bt_release_accessor
Description:
bt_set_flags
Description:
bt_sprn_memmap
Description:
bt_sprnf_addrs
Description:
bt_translate_addrs
Description:
bt_unload_memmap
Description:
_btext
Description:
btowc
Description:
bzero
Description:
Examples:
C
cabs, cabsf
Description:
Examples:
cache_fini
Description:
CACHE_FLUSH
Description:
cache_init
Description:
Members of the cache_ctrl structure
Cache coherency
CACHE_INVAL
Description:
calloc
Description:
Examples:
cbrt, cbrtf
Description:
Examples:
ceil, ceilf
Description:
Examples:
cfgetispeed
Description:
Examples:
cfgetospeed
Description:
Examples:
cfgopen
Description:
Search condition flags
cfmakeraw
Description:
cfree
Description:
cfsetispeed
Description:
Examples:
cfsetospeed
Description:
Examples:
ChannelCreate, ChannelCreate_r
Description:
_NTO_CHF_COID_DISCONNECT
_NTO_CHF_DISCONNECT
_NTO_CHF_FIXED_PRIORITY
_NTO_CHF_NET_MSG
_NTO_CHF_REPLY_LEN
_NTO_CHF_SENDER_LEN
_NTO_CHF_THREAD_DEATH
_NTO_CHF_UNBLOCK
Blocking states
ChannelDestroy, ChannelDestroy_r
Description:
Blocking states
chdir
Description:
Examples:
chmod
Description:
Examples:
chown
Description:
Examples:
chroot
Description:
chsize
Description:
Examples:
clearenv
Description:
Examples:
clearerr
Description:
Examples:
clock
Description:
Examples:
clock_getcpuclockid
Description:
clock_getres
Description:
Examples:
clock_gettime
Description:
Examples:
clock_nanosleep
Description:
clock_settime
Description:
Examples:
ClockAdjust, ClockAdjust_r
Description:
Blocking states:
ClockCycles
Description:
Symmetric MultiProcessing systems
Blocking states:
Examples:
ClockId, ClockId_r
Description:
Blocking states:
Examples:
ClockPeriod, ClockPeriod_r
Description:
Blocking states
ClockTime, ClockTime_r
Description:
Blocking states
close
Description:
Examples:
closedir
Description:
Examples:
closelog
Description:
_cmdfd
Description:
_cmdname
Description:
Examples:
confstr
Description:
Examples:
connect
Description:
ConnectAttach, ConnectAttach_r
Description:
Blocking states
Node descriptors
ConnectClientInfo, ConnectClientInfo_r
Description:
_client_info structure
uint32_t nd
_cred_info structure
ConnectDetach, ConnectDetach_r
Description:
Blocking states
ConnectFlags, ConnectFlags_r
Description:
ConnectServerInfo, ConnectServerInfo_r
Description:
_server_info structure
copysign, copysignf
Description:
Examples:
cos, cosf, cosl
Description:
Examples:
cosh, coshf, coshl
Description:
Examples:
creat, creat64
Description:
Examples:
crypt
Description:
ctermid
Description:
Examples:
ctime, ctime_r
Description:
D
daemon
Description:
daylight
Description:
DebugBreak
Description:
Blocking states
DebugKDBreak
Description:
Blocking states
DebugKDOutput
Description:
Blocking states
delay
Description:
Examples:
devctl
Description:
Device-control commands
Examples:
Example 1: Setting RTS on a serial port
Example 2: Cycling through Caps Lock, Num Lock, and Scroll Lock
Example 3: Duration example
difftime
Description:
Examples:
dircntl
Description:
Flag values
Examples:
dirent
Description:
dirname
Description:
Examples:
dispatch_block
Description:
Examples:
dispatch_context_alloc
Description:
Examples:
dispatch_context_free
Description:
Examples:
dispatch_create
Description:
Examples:
dispatch_create_channel
Description:
dispatch_destroy
Description:
Examples:
dispatch_handler
Description:
Examples:
dispatch_timeout
Description:
Examples:
dispatch_unblock
Description:
Examples:
div
Description:
Examples:
dladdr
Description:
dlclose
Description:
dlerror
Description:
dlopen
Description:
The mode
Relocation
Visibility
Symbol scope
Other flags
Symbol resolution
dlsym
Description:
Examples:
dn_comp
Description:
dn_expand
Description:
drand48
Description:
ds_clear
Description:
Examples:
ds_create
Description:
Examples:
ds_deregister
Description:
Examples:
ds_flags
Description:
ds_get
Description:
ds_register
Description:
Examples:
ds_set
Description:
Examples:
dup
Description:
Examples:
dup2
Description:
Examples:
E
eaccess
Description:
_edata
Description:
encrypt
Description:
_end
Description:
endfsent
Description:
endgrent
Description:
endhostent
Description:
ENDIAN_BE16
Description:
Examples:
ENDIAN_BE32
Description:
Examples:
ENDIAN_BE64
Description:
Examples:
ENDIAN_LE16
Description:
Examples:
ENDIAN_LE32
Description:
Examples:
ENDIAN_LE64
Description:
Examples:
ENDIAN_RET16
Description:
Examples:
ENDIAN_RET32
Description:
Examples:
ENDIAN_RET64
Description:
Examples:
ENDIAN_SWAP16
Description:
Examples:
ENDIAN_SWAP32
Description:
Examples:
ENDIAN_SWAP64
Description:
Examples:
endnetent
Description:
endprotoent
Description:
endpwent
Description:
endservent
Description:
endspent
Description:
endutent
Description:
environ
Description:
eof
Description:
Examples:
erand48
Description:
erf, erff
Description:
erfc, erfcf, erfcl
Description:
err, errx
Description:
Examples:
errno
Description:
Changes to EALREADY
Examples:
_etext
Description:
execl
Description:
exec* summary
Examples:
execle
Description:
exec* summary
Examples:
execlp
Description:
exec* summary
execlpe
Description:
exec* summary
execv
Description:
exec* summary
Examples:
execve
Description:
exec* summary
execvp
Description:
exec* summary
execvpe
Description:
exec* summary
_exit
Description:
Examples:
exit
Description:
Examples:
exp, expf, expl
Description:
Examples:
expm1, expm1f
Description:
Examples:
F
fabs, fabsf
Description:
Examples:
fcfgopen
Description:
fchdir
Description:
fchmod
Description:
Examples:
fchown
Description:
Examples:
fclose
Description:
Examples:
fcloseall
Description:
Examples:
fcntl
Description:
flock structure
Examples:
fdatasync
Description:
fdopen
Description:
Examples:
feof
Description:
Examples:
ferror
Description:
Examples:
fflush
Description:
Examples:
ffs
Description:
fgetc
Description:
Examples:
fgetchar
Description:
Examples:
fgetpos
Description:
Examples:
fgets
Description:
Examples:
fgetspent
Description:
Examples:
fgetwc
Description:
fgetws
Description:
fileno
Description:
Examples:
flink
Description:
flock
Description:
flockfile
Description:
floor, floorf
Description:
Examples:
flushall
Description:
fmod, fmodf, fmodl
Description:
Examples:
fnmatch
Description:
Pattern Matching Special Characters
Examples:
fopen, fopen64
Description:
Examples:
fork
Description:
Examples:
forkpty
Description:
fp_exception_mask
Description:
Examples:
fp_exception_value
Description:
Examples:
fp_precision
Description:
Examples:
fp_rounding
Description:
Examples:
fp_setenv
Description:
Examples:
fpathconf
Description:
Examples:
fprintf
Description:
Examples:
fputc
Description:
Examples:
fputchar
Description:
Examples:
fputs
Description:
Examples:
fputwc
Description:
fputws
Description:
fread
Description:
Examples:
free
Description:
Examples:
freeaddrinfo
Description:
freeifaddrs
Description:
freopen, freopen64
Description:
Examples:
frexp, frexpf
Description:
Examples:
fscanf
Description:
Examples:
fseek, fseeko, fseeko64
Description:
Examples:
fsetpos
Description:
Examples:
fstat, fstat64
Description:
Examples:
fstatvfs, fstatvfs64
Description:
fsync
Description:
ftell, ftello, ftello64
Description:
Examples:
ftime
Description:
Examples:
ftruncate, ftruncate64
Description:
ftrylockfile
Description:
ftw, ftw64
Description:
funlockfile
Description:
futime
Description:
fwide
Description:
fwprintf
Description:
fwrite
Description:
Examples:
fwscanf
Description:
G
gai_strerror
Description:
gamma, gamma_r, gammaf, gammaf_r
Description:
getaddrinfo
Description:
Using the hints argument
Using the ai_flags argument in the hints structure
Pitfalls
Examples:
getc
Description:
Examples:
getc_unlocked
Description:
getchar
Description:
Examples:
getchar_unlocked
Description:
getcwd
Description:
Examples:
getdomainname
Description:
getdtablesize
Description:
getegid
Description:
Examples:
getenv
Description:
Examples:
geteuid
Description:
Examples:
getfsfile
Description:
getfsent
Description:
The fstab structure
getfsspec
Description:
getgid
Description:
Examples:
getgrent
Description:
Examples:
getgrgid
Description:
Examples:
getgrgid_r
Description:
getgrnam
Description:
Examples:
getgrnam_r
Description:
getgrouplist
Description:
Examples:
getgroups
Description:
Examples:
gethostbyaddr
Description:
Examples:
gethostbyaddr_r
Description:
gethostbyname, gethostbyname2
Description:
gethostbyname_r
Description:
gethostent
Description:
gethostent_r
Description:
gethostname
Description:
getifaddrs
Description:
GETIOVBASE
Description:
GETIOVLEN
Description:
getitimer
Description:
getlogin
Description:
getlogin_r
Description:
getnameinfo
Description:
Extension
Examples:
getnetbyaddr
Description:
getnetbyname
Description:
getnetent
Description:
getopt
Description:
Utility Syntax Guidelines
Examples:
getpagesize
Description:
getpagesizes, getpagesizes64
Description:
Examples:
getpass
Description:
getpeereid
Description:
getpeername
Description:
getpgid
Description:
getpgrp
Description:
Examples:
getpid
Description:
Examples:
getppid
Description:
Examples:
getprio
Description:
getprotobyname
Description:
getprotobynumber
Description:
getprotoent
Description:
getpwent
Description:
Examples:
getpwent_r
Description:
getpwnam
Description:
Examples:
getpwnam_r
Description:
getpwuid
Description:
Examples:
getpwuid_r
Description:
getrlimit, getrlimit64
Description:
Examples:
getrusage
Description:
gets
Description:
Examples:
getservbyname
Description:
getservbyport
Description:
getservent
Description:
getsid
Description:
getsockname
Description:
getsockopt
Description:
Manipulating socket options
Options
IP_HDRINCL
IP_TOS
SO_BINDTODEVICE
SO_BROADCAST
SO_DEBUG
SO_DONTROUTE
SO_ERROR
SO_KEEPALIVE
SO_LINGER
SO_OOBINLINE
SO_RCVBUF and SO_SNDBUF
SO_RCVLOWAT
SO_RCVTIMEO
SO_REUSEADDR
SO_REUSEPORT
SO_SNDLOWAT
SO_SNDTIMEO
SO_TIMESTAMP
SO_TYPE
SO_USELOOPBACK
TCP_KEEPALIVE
TCP_NODELAY
Keepalive timing
getspent, getspent_r
Description:
Examples:
getspnam, getspnam_r
Description:
Examples:
getsubopt
Description:
Examples:
gettimeofday
Description:
getuid
Description:
Examples:
getutent
Description:
getutid
Description:
getutline
Description:
getw
Description:
getwc
Description:
getwchar
Description:
getwd
Description:
glob
Description:
Examples:
globfree
Description:
gmtime
Description:
gmtime_r
Description:
H
h_errno
Description:
hcreate
Description:
Examples:
hdestroy
Description:
Examples:
herror
Description:
hostent
Description:
hsearch
Description:
Examples:
hstrerror
Description:
htonl
Description:
htons
Description:
hwi_find_item
Description:
Examples:
hwi_find_tag
Description:
hwi_off2tag
Description:
hwi_tag2off
Description:
hypot, hypotf
Description:
Examples:
I
ICMP
Description:
ICMP6
Description:
ICMP6 type/code filter
if_freenameindex
Description:
if_indextoname
Description:
if_nameindex
Description:
if_nametoindex
Description:
ifaddrs
Description:
ilogb, ilogbf
Description:
Examples:
in8
Description:
in8s
Description:
in16, inbe16, inle16
Description:
in16s
Description:
in32, inbe32, inle32
Description:
in32s
Description:
index
Description:
inet_addr
Description:
inet_aton
Description:
inet_lnaof
Description:
inet_makeaddr
Description:
inet_net_ntop
Description:
Network Numbers (IPv4 Internet addresses)
inet_netof
Description:
inet_net_pton
Description:
inet_network
Description:
inet_ntoa
Description:
inet_ntoa_r
Description:
inet_ntop
Description:
Examples:
inet_pton
Description:
AF_INET addresses
AF_INET6 addresses
Examples:
INET6
Description:
Protocols
Addressing
Interaction between IPv4/v6 sockets
inet6_option_alloc
Description:
inet6_option_append
Description:
inet6_option_find
Description:
inet6_option_init
Description:
inet6_option_next
Description:
inet6_option_space
Description:
inet6_rthdr_add
Description:
inet6_rthdr_getaddr
Description:
inet6_rthdr_getflags
Description:
inet6_rthdr_init
Description:
inet6_rthdr_lasthop
Description:
inet6_rthdr_reverse
Description:
inet6_rthdr_segments
Description:
inet6_rthdr_segments
inet6_rthdr_space
Description:
initgroups
Description:
initstate
Description:
Examples:
input_line
Description:
Examples:
insque
Description:
InterruptAttach, InterruptAttach_r
Description:
Interrupt vector numbers
Interrupts and startup code
Typical x86 Interrupt vector numbers
Interrupt handler function
Flags
_NTO_INTR_FLAGS_END
_NTO_INTR_FLAGS_PROCESS
_NTO_INTR_FLAGS_TRK_MSK
Blocking states
InterruptAttachEvent, InterruptAttachEvent_r
Description:
Flags
_NTO_INTR_FLAGS_END
_NTO_INTR_FLAGS_PROCESS
_NTO_INTR_FLAGS_TRK_MSK
Advantages & disadvantages
Blocking states
InterruptDetach, InterruptDetach_r
Description:
Blocking states
InterruptDisable
Description:
InterruptEnable
Description:
InterruptHookIdle
Description:
Flags
_NTO_INTR_FLAGS_END
_NTO_INTR_FLAGS_PROCESS
_NTO_INTR_FLAGS_TRK_MSK
Blocking states
InterruptHookTrace
Description:
_NTO_INTR_FLAGS_END
Blocking states
InterruptLock
Description:
InterruptMask
Description:
InterruptUnlock
Description:
InterruptUnmask
Description:
InterruptWait, InterruptWait_r
Description:
Blocking states
_intr_v86
Description:
Examples:
_io_connect
Description:
_io_connect_ftype_reply
Description:
_io_connect_link_reply
Description:
ioctl, ioctl_socket
Description:
How ioctl commands map to other commands
Commands with special handling in ioctl_socket
iofdinfo
Description:
iofunc_attr_init
Description:
iofunc_attr_lock
Description:
iofunc_attr_t
Description:
iofunc_attr_trylock
Description:
iofunc_attr_unlock
Description:
iofunc_check_access
Description:
iofunc_chmod
Description:
io_chmod_t structure
iofunc_chmod_default
Description:
iofunc_chown
Description:
io_chown_t structure
iofunc_chown_default
Description:
iofunc_client_info
Description:
iofunc_close_dup
Description:
io_close_t structure
iofunc_close_dup_default
Description:
iofunc_close_ocb
Description:
iofunc_close_ocb_default
Description:
iofunc_devctl
Description:
io_devctl_t structure
iofunc_devctl_default
Description:
iofunc_fdinfo
Description:
iofunc_fdinfo_default
Description:
io_fdinfo_t structure
iofunc_func_init
Description:
Examples:
iofunc_link
Description:
io_link_t structure
iofunc_lock
Description:
iofunc_lock_calloc
Description:
iofunc_lock_default
Description:
iofunc_lock_free
Description:
iofunc_lock_ocb_default
Description:
iofunc_lseek
Description:
io_lseek_t structure
iofunc_lseek_default
Description:
iofunc_mknod
Description:
io_mknod_t structure
iofunc_mmap
Description:
io_mmap_t structure
iofunc_mmap_default
Description:
iofunc_notify
Description:
io_notify_t structure
iofunc_notify_t structure
Examples:
iofunc_notify_remove
Description:
Examples:
iofunc_notify_trigger
Description:
Examples:
iofunc_ocb_attach
Description:
iofunc_ocb_calloc
Description:
Examples:
iofunc_ocb_detach
Description:
iofunc_ocb_free
Description:
Examples:
iofunc_ocb_t
Description:
iofunc_open
Description:
io_open_t structure
Examples:
iofunc_open_default
Description:
iofunc_openfd
Description:
io_openfd_t structure
iofunc_openfd_default
Description:
iofunc_pathconf
Description:
io_pathconf_t structure
iofunc_pathconf_default
Description:
iofunc_read_default
Description:
iofunc_read_verify
Description:
io_read_t structure
iofunc_readlink
Description:
io_readlink_t structure
iofunc_rename
Description:
io_rename_t structure
iofunc_space_verify
Description:
io_space_t structure
iofunc_stat
Description:
iofunc_stat_default
Description:
io_stat_t structure
iofunc_sync
Description:
iofunc_sync_default
Description:
iofunc_sync_verify
Description:
io_sync_t structure
iofunc_time_update
Description:
iofunc_unblock
Description:
iofunc_unblock_default
Description:
Examples:
iofunc_unlink
Description:
io_unlink_t structure
iofunc_unlock_ocb_default
Description:
iofunc_utime
Description:
io_utime_t structure
iofunc_utime_default
Description:
iofunc_write_default
Description:
iofunc_write_verify
Description:
io_write_t structure
ionotify
Description:
Flags
Actions
IP
Description:
Multicasting
Multicast Options
IPsec
Description:
Kernel interface
Policy management
Miscellaneous sysctl variables
Protocols
Setting the policy
Arguments for request
ipsec_dump_policy
Description:
Examples:
ipsec_get_policylen
Description:
Examples:
ipsec_set_policy
Description:
Examples:
ipsec_strerror
Description:
Examples:
IP6
Description:
Basic IP6 sockets API
Advanced IP6 sockets API
Advanced API and TCP sockets
Conflict resolution
Raw IP6 Sockets
iruserok, iruserok_sa
Description:
isalnum
Description:
Examples:
isalpha
Description:
Examples:
isascii
Description:
Examples:
isatty
Description:
Examples:
iscntrl
Description:
Examples:
isdigit
Description:
Examples:
isfdtype
Description:
isfinite
Description:
Examples:
isgraph
Description:
Examples:
isinf
Description:
Examples:
islower
Description:
Examples:
isnan
Description:
Examples:
isprint
Description:
Examples:
ispunct
Description:
Examples:
isspace
Description:
Examples:
isupper
Description:
Examples:
iswalnum
Description:
iswalpha
Description:
iswcntrl
Description:
iswctype
Description:
iswdigit
Description:
iswgraph
Description:
iswlower
Description:
iswprint
Description:
iswpunct
Description:
iswspace
Description:
iswupper
Description:
iswxdigit
Description:
isxdigit
Description:
Examples:
itoa
Description:
Examples:
J
j0, j0f
Description:
Examples:
j1, j1f
Description:
jn, jnf
Description:
Examples:
jrand48
Description:
K
kill
Description:
Examples:
killpg
Description:
Examples:
L
labs
Description:
Examples:
lchown
Description:
Examples:
lcong48
Description:
ldexp, ldexpf, ldexpl
Description:
Examples:
ldiv
Description:
Examples:
lfind
Description:
Examples:
lgamma, lgamma_r, lgammaf, lgammaf_r
Description:
Examples:
link
Description:
Examples:
lio_listio
Description:
listen
Description:
llabs
Description:
localeconv
Description:
Examples:
localtime
Description:
localtime_r
Description:
lockf
Description:
log, logf, logl
Description:
Examples:
log10, log10f, log10l
Description:
Examples:
log1p, log1pf, log1pl
Description:
logb, logbf
Description:
Examples:
login_tty
Description:
longjmp
Description:
Examples:
lrand48
Description:
lsearch
Description:
Examples:
lseek, lseek64
Description:
Examples:
lstat, lstat64
Description:
Examples:
ltoa, lltoa
Description:
Examples:
ltrunc
Description:
Examples:
M
main
Description:
Examples:
mallinfo
Description:
malloc
Description:
Examples:
Debugging
Reverting to the behavior of Neutrino 6.2
mallopt
Description:
Controlling memory allocation
Controlling extra checking
max
Description:
Examples:
mblen
Description:
Examples:
mbrlen
Description:
mbrtowc
Description:
mbsinit
Description:
mbsrtowcs
Description:
mbstowcs
Description:
Examples:
mbtowc
Description:
Examples:
mcheck
Description:
mem_offset, mem_offset64
Description:
QNX extension
Examples:
memalign
Description:
memccpy
Description:
Examples:
memchr
Description:
Examples:
memcmp
Description:
Examples:
memcpy
Description:
Examples:
memcpyv
Description:
Examples:
memicmp
Description:
Examples:
memmove
Description:
Examples:
memset
Description:
Examples:
message_attach
Description:
message_attr_t structure
Handler function
Examples:
message_connect
Description:
Examples:
message_detach
Description:
Examples:
min
Description:
Examples:
mkdir
Description:
Examples:
mkfifo
Description:
Examples:
mknod
Description:
Examples:
mkstemp
Description:
mktemp
Description:
mktime
Description:
Examples:
mlock
Description:
mlockall
Description:
mmap, mmap64
Description:
Examples:
mmap_device_io
Description:
mmap_device_memory
Description:
Examples:
modem_open
Description:
Examples:
modem_read
Description:
modem_script
Description:
State 1
State 2
State 3
State 4
State 5
modem_write
Description:
modf, modff
Description:
Examples:
mount
Description:
mount_parse_generic_args
Description:
Examples:
mprobe
Description:
mprotect
Description:
mq_close
Description:
mq_getattr
Description:
mq_notify
Description:
mq_open
Description:
mq_receive
Description:
mq_send
Description:
mq_setattr
Description:
mq_timedreceive, mq_timedreceive_monotonic
Description:
Examples:
mq_timedsend, mq_timedsend_monotonic
Description:
Examples:
mq_unlink
Description:
mrand48
Description:
_msg_info
Description:
Node descriptors
MsgCurrent, MsgCurrent_r
Description:
Blocking states
MsgDeliverEvent, MsgDeliverEvent_r
Description:
Blocking states
Native networking
Examples:
MsgError, MsgError_r
Description:
Blocking states
Native networking
MsgInfo, MsgInfo_r
Description:
Blocking states
MsgKeyData, MsgKeyData_r
Description:
Blocking states
Examples:
MsgRead, MsgRead_r
Description:
Blocking states
Native networking
MsgReadv, MsgReadv_r
Description:
Blocking states
MsgReceive, MsgReceive_r
Description:
Blocking states
Native networking
MsgReceivePulse, MsgReceivePulse_r
Description:
Blocking states
MsgReceivePulsev, MsgReceivePulsev_r
Description:
Blocking states
MsgReceivev, MsgReceivev_r
Description:
Blocking states
MsgReply, MsgReply_r
Description:
Blocking states
Native networking
MsgReplyv, MsgReplyv_r
Description:
Blocking states
MsgSend, MsgSend_r
Description:
Blocking states
Native networking
MsgSendnc, MsgSendnc_r
Description:
Blocking states
MsgSendPulse, MsgSendPulse_r
Description:
Blocking states
Native networking
MsgSendsv, MsgSendsv_r
Description:
Blocking states
MsgSendsvnc, MsgSendsvnc_r
Description:
Blocking states
MsgSendv, MsgSendv_r
Description:
Blocking states
MsgSendvnc, MsgSendvnc_r
Description:
Blocking states
MsgSendvs, MsgSendvs_r
Description:
Blocking states
MsgSendvsnc, MsgSendvsnc_r
Description:
Blocking states
MsgVerifyEvent, MsgVerifyEvent_r
Description:
Blocking states
MsgWrite, MsgWrite_r
Description:
Blocking states
Native networking
MsgWritev, MsgWritev_r
Description:
Blocking states
msync
Description:
Examples:
munlock
Description:
munlockall
Description:
munmap
Description:
munmap_device_io
Description:
munmap_device_memory
Description:
munmap_flags
Description:
N
name_attach
Description:
name_attach_t
Examples:
name_close
Description:
Examples:
name_detach
Description:
Examples:
name_open
Description:
Examples:
nanosleep
Description:
nanospin
Description:
nanospin_calibrate
Description:
Examples:
nanospin_count
Description:
Examples:
nanospin_ns
Description:
nanospin_ns_to_count
Description:
Examples:
nap
Description:
napms
Description:
nbaconnect
Description:
nbaconnect_result
Description:
ncurses
Description:
ND_NODE_CMP
Description:
Examples:
netent
Description:
netmgr_ndtostr
Description:
Examples:
netmgr_remote_nd
Description:
Examples:
netmgr_strtond
Description:
Examples:
nextafter, nextafterf
Description:
Examples:
nftw, nftw64
Description:
nice
Description:
nrand48
Description:
nsec2timespec
Description:
ntohl
Description:
ntohs
Description:
O
offsetof
Description:
Examples:
open, open64
Description:
Examples:
opendir
Description:
Examples:
openfd
Description:
Examples:
openlog
Description:
Examples:
openpty
Description:
out8
Description:
out8s
Description:
out16, outbe16, outle16
Description:
out16s
Description:
out32, outbe32, outle32
Description:
out32s
Description:
P
pathconf
Description:
Examples:
pathfind, pathfind_r
Description:
Examples:
pathmgr_symlink
Description:
Examples:
pathmgr_unlink
Description:
Examples:
pause
Description:
Examples:
pccard_arm
Description:
Examples:
pccard_attach
Description:
Examples:
pccard_detach
Description:
Examples:
pccard_info
Description:
_pccard_info structure
Examples:
pccard_lock
Description:
Examples:
pccard_raw_read
Description:
Examples:
pccard_unlock
Description:
Examples:
pci_attach
Description:
pci_attach_device
Description:
pci_dev_info structure
Flags
Testing and converting addresses
Examples:
pci_detach
Description:
pci_detach_device
Description:
pci_find_class
Description:
pci_find_device
Description:
pci_irq_routing_options
Description:
Examples:
pci_map_irq
Description:
pci_present
Description:
pci_read_config
Description:
pci_read_config8
Description:
pci_read_config16
Description:
pci_read_config32
Description:
pci_rescan_bus
Description:
pci_write_config
Description:
pci_write_config8
Description:
pci_write_config16
Description:
pci_write_config32
Description:
pclose
Description:
Examples:
perror
Description:
Examples:
pipe
Description:
poll
Description:
Examples:
popen
Description:
Examples:
posix_mem_offset, posix_mem_offset64
Description:
posix_memalign
Description:
posix_spawn
Description:
posix_spawn_file_actions_addclose
Description:
posix_spawn_file_actions_adddup2
Description:
posix_spawn_file_actions_addopen
Description:
posix_spawn_file_actions_destroy
Description:
posix_spawn_file_actions_init
Description:
posix_spawnattr_addpartid
Description:
posix_spawnattr_addpartition
Description:
posix_spawnattr_destroy
Description:
posix_spawnattr_getcred
Description:
posix_spawnattr_getflags
Description:
posix_spawnattr_getnode
Description:
posix_spawnattr_getpartid
Description:
posix_spawnattr_getpgroup
Description:
posix_spawnattr_getrunmask
Description:
posix_spawnattr_getschedparam
Description:
posix_spawnattr_getschedpolicy
Description:
posix_spawnattr_getsigdefault
Description:
posix_spawnattr_getsigignore
Description:
posix_spawnattr_getsigmask
Description:
posix_spawnattr_getstackmax
Description:
posix_spawnattr_getxflags
Description:
posix_spawnattr_init
Description:
posix_spawnattr_setcred
Description:
posix_spawnattr_setflags
Description:
posix_spawnattr_setnode
Description:
posix_spawnattr_setpgroup
Description:
posix_spawnattr_setrunmask
Description:
posix_spawnattr_setschedparam
Description:
posix_spawnattr_setschedpolicy
Description:
posix_spawnattr_setsigdefault
Description:
posix_spawnattr_setsigignore
Description:
posix_spawnattr_setsigmask
Description:
posix_spawnattr_setstackmax
Description:
posix_spawnattr_setxflags
Description:
posix_spawnp
Description:
posix_typed_mem_get_info
Description:
posix_typed_mem_open
Description:
pow, powf, powl
Description:
Examples:
pread, pread64
Description:
printf
Description:
Format Arguments
Format control string
Format control flags
Field width
Precision specifier
Type length specifier
Conversion type specifiers
Examples:
procmgr_daemon
Description:
procmgr_event_notify
Description:
Event types
Examples:
procmgr_event_trigger
Description:
Examples:
procmgr_guardian
Description:
Examples:
procmgr_session
Description:
__progname
Description:
protoent
Description:
pthread_abort
Description:
pthread_atfork
Description:
pthread_attr_destroy
Description:
pthread_attr_getdetachstate
Description:
pthread_attr_getguardsize
Description:
pthread_attr_getinheritsched
Description:
pthread_attr_getschedparam
Description:
pthread_attr_getschedpolicy
Description:
pthread_attr_getscope
Description:
pthread_attr_getstackaddr
Description:
pthread_attr_getstacklazy
Description:
pthread_attr_getstackprealloc
Description:
pthread_attr_getstacksize
Description:
pthread_attr_init
Description:
pthread_attr_setdetachstate
Description:
pthread_attr_setguardsize
Description:
pthread_attr_setinheritsched
Description:
pthread_attr_setschedparam
Description:
Examples:
pthread_attr_setschedpolicy
Description:
pthread_attr_setscope
Description:
pthread_attr_setstackaddr
Description:
pthread_attr_setstacklazy
Description:
pthread_attr_setstackprealloc
Description:
pthread_attr_setstacksize
Description:
pthread_barrier_destroy
Description:
pthread_barrier_init
Description:
pthread_barrier_wait
Description:
pthread_barrierattr_destroy
Description:
pthread_barrierattr_getpshared
Description:
pthread_barrierattr_init
Description:
pthread_barrierattr_setpshared
Description:
pthread_cancel
Description:
pthread_cleanup_pop
Description:
Examples:
pthread_cleanup_push
Description:
Examples:
pthread_cond_broadcast
Description:
pthread_cond_destroy
Description:
pthread_cond_init
Description:
pthread_cond_signal
Description:
pthread_cond_timedwait
Description:
Examples:
pthread_cond_wait
Description:
Examples:
pthread_condattr_destroy
Description:
pthread_condattr_getclock
Description:
pthread_condattr_getpshared
Description:
pthread_condattr_init
Description:
pthread_condattr_setclock
Description:
pthread_condattr_setpshared
Description:
pthread_create
Description:
QNX extensions
Examples:
pthread_detach
Description:
pthread_equal
Description:
pthread_exit
Description:
pthread_getconcurrency
Description:
pthread_getcpuclockid
Description:
pthread_getname_np
Description:
pthread_getschedparam
Description:
pthread_getspecific
Description:
Examples:
pthread_join
Description:
pthread_key_create
Description:
Examples:
pthread_key_delete
Description:
pthread_kill
Description:
pthread_mutex_destroy
Description:
pthread_mutex_getprioceiling
Description:
pthread_mutex_init
Description:
pthread_mutex_lock
Description:
Examples:
pthread_mutex_setprioceiling
Description:
pthread_mutex_timedlock, pthread_mutex_timedlock_monotonic
Description:
pthread_mutex_trylock
Description:
pthread_mutex_unlock
Description:
pthread_mutex_wakeup_np
Description:
pthread_mutexattr_destroy
Description:
pthread_mutexattr_getprioceiling
Description:
pthread_mutexattr_getprotocol
Description:
pthread_mutexattr_getpshared
Description:
pthread_mutexattr_getrecursive
Description:
pthread_mutexattr_gettype
Description:
pthread_mutexattr_getwakeup_np
Description:
pthread_mutexattr_init
Description:
pthread_mutexattr_setprioceiling
Description:
pthread_mutexattr_setprotocol
Description:
pthread_mutexattr_setpshared
Description:
pthread_mutexattr_setrecursive
Description:
pthread_mutexattr_settype
Description:
pthread_mutexattr_setwakeup_np
Description:
pthread_once
Description:
Examples:
pthread_rwlock_destroy
Description:
pthread_rwlock_init
Description:
pthread_rwlock_rdlock
Description:
pthread_rwlock_timedrdlock
Description:
pthread_rwlock_timedwrlock
Description:
pthread_rwlock_tryrdlock
Description:
pthread_rwlock_trywrlock
Description:
pthread_rwlock_unlock
Description:
pthread_rwlock_wrlock
Description:
pthread_rwlockattr_destroy
Description:
pthread_rwlockattr_getpshared
Description:
pthread_rwlockattr_init
Description:
pthread_rwlockattr_setpshared
Description:
pthread_self
Description:
pthread_setcancelstate
Description:
pthread_setcanceltype
Description:
pthread_setconcurrency
Description:
pthread_setname_np
Description:
pthread_setschedparam
Description:
pthread_setschedprio
Description:
pthread_setspecific
Description:
Examples:
pthread_sigmask
Description:
pthread_sleepon_broadcast
Description:
pthread_sleepon_lock
Description:
pthread_sleepon_signal
Description:
pthread_sleepon_timedwait
Description:
pthread_sleepon_unlock
Description:
pthread_sleepon_wait
Description:
pthread_spin_destroy
Description:
pthread_spin_init
Description:
pthread_spin_lock
Description:
pthread_spin_trylock
Description:
pthread_spin_unlock
Description:
pthread_testcancel
Description:
pthread_timedjoin, pthread_timedjoin_monotonic
Description:
_pulse
Description:
pulse_attach
Description:
Examples:
pulse_detach
Description:
Examples:
putc
Description:
Examples:
putc_unlocked
Description:
putchar
Description:
Examples:
putchar_unlocked
Description:
putenv
Description:
Examples:
puts
Description:
Examples:
putspent
Description:
Examples:
pututline
Description:
putw
Description:
putwc
Description:
putwchar
Description:
pwrite, pwrite64
Description:
Q
qnx_crypt
Description:
Examples:
qsort
Description:
Examples:
R
Raccept
Description:
raise
Description:
Examples:
rand
Description:
Examples:
rand_r
Description:
random
Description:
Examples:
Rbind
Description:
rcmd, rcmd_af
Description:
Rconnect
Description:
rdchk
Description:
re_comp
Description:
re_exec
Description:
read
Description:
Examples:
read_main_config_file
Description:
readblock
Description:
readcond
Description:
MIN
TIME
TIMEOUT
FORWARD
readdir
Description:
Examples:
readdir_r
Description:
readlink
Description:
Examples:
readv
Description:
realloc
Description:
Examples:
realpath
Description:
recv
Description:
recvfrom
Description:
recvmsg
Description:
regcomp
Description:
Basic Regular Expressions
Extended Regular Expressions
Examples:
Contributing author:
regerror
Description:
Examples:
Contributing author:
regexec
Description:
Examples:
Contributing author:
regfree
Description:
Examples:
Contributing author:
remainder, remainderf, remainderl
Description:
remove
Description:
Examples:
remque
Description:
rename
Description:
Examples:
res_init
Description:
Resolver configuration
res_mkquery
Description:
res_query
Description:
res_querydomain
Description:
res_search
Description:
res_send
Description:
resmgr_attach
Description:
resmgr_attr_t structure
The flags argument
Examples:
resmgr_block
Description:
Examples:
resmgr_connect_funcs_t
Description:
resmgr_context_alloc
Description:
Examples:
resmgr_context_free
Description:
Examples:
resmgr_context_t
Description:
resmgr_detach
Description:
Blocking states
Examples:
resmgr_devino
Description:
Examples:
resmgr_handle_grow
Description:
resmgr_handle_tune
Description:
resmgr_handler
Description:
Examples:
resmgr_io_funcs_t
Description:
resmgr_iofuncs
Description:
resmgr_msg_again
Description:
resmgr_msgread
Description:
resmgr_msgreadv
Description:
resmgr_msgreply
Description:
Blocking states
resmgr_msgreplyv
Description:
Blocking states
resmgr_msgwrite
Description:
resmgr_msgwritev
Description:
_RESMGR_NPARTS
Description:
resmgr_ocb
Description:
resmgr_open_bind
Description:
resmgr_pathname
Description:
_RESMGR_PTR
Description:
_RESMGR_STATUS
Description:
resmgr_unbind
Description:
rewind
Description:
Examples:
rewinddir
Description:
Examples:
Rgetsockname
Description:
rindex
Description:
rint, rintf, rintl
Description:
Examples:
Rlisten
Description:
rmdir
Description:
Examples:
ROUTE
Description:
Routing database entries
Routing packets
Routing control messages
Examples:
Rrcmd
Description:
rresvport, rresvport_af
Description:
Rselect
Description:
rsrcdbmgr_attach
Description:
rsrc_request_t structure
Examples:
Example 1
Example 2
Example 3
Example 4
rsrcdbmgr_create
Description:
rsrc_alloc_t structure
Examples:
rsrcdbmgr_destroy
Description:
Examples:
rsrcdbmgr_detach
Description:
Examples:
rsrcdbmgr_devno_attach
Description:
Class names
Examples:
rsrcdbmgr_devno_detach
Description:
Examples:
rsrcdbmgr_query_name
Description:
Examples:
ruserok
Description:
S
sbrk
Description:
Examples:
scalb
Description:
Examples:
scalbn, scalbnf
Description:
Examples:
_scalloc
Description:
scandir
Description:
scanf
Description:
Format control string
Conversion specifiers
Type length specifiers
Conversion type specifiers
Examples:
sched_getparam
Description:
Examples:
sched_get_priority_adjust
Description:
sched_get_priority_max
Description:
Examples:
sched_get_priority_min
Description:
sched_getscheduler
Description:
sched_param
Description:
Examples:
sched_rr_get_interval
Description:
sched_setparam
Description:
sched_setscheduler
Description:
Examples:
sched_yield
Description:
Examples:
SchedCtl, SchedCtl_r
Description:
SCHED_APS_QUERY_PARMS
Scheduling policies
Handling bankruptcy
SCHED_APS_SET_PARMS
SCHED_APS_CREATE_PARTITION
SCHED_APS_QUERY_PARTITION
SCHED_APS_LOOKUP
SCHED_APS_JOIN_PARTITION
SCHED_APS_MODIFY_PARTITION
SCHED_APS_PARTITION_STATS
SCHED_APS_OVERALL_STATS
SCHED_APS_MARK_CRITICAL
SCHED_APS_CLEAR_CRITICAL
SCHED_APS_QUERY_THREAD
SCHED_APS_ATTACH_EVENTS
SCHED_APS_ADD_SECURITY
Security
SCHED_APS_QUERY_PROCESS
Blocking states
Examples:
SchedGet, SchedGet_r
Description:
Blocking states
SchedInfo, SchedInfo_r
Description:
SchedSet, SchedSet_r
Description:
Blocking states
SchedYield, SchedYield_r
Description:
Blocking states
searchenv
Description:
Examples:
seed48
Description:
seekdir
Description:
select
Description:
Manipulating file-descriptor sets
Examples:
select_attach
Description:
Flags
Function
Examples:
select_detach
Description:
Examples:
select_query
Description:
Examples:
sem_close
Description:
sem_destroy
Description:
sem_getvalue
Description:
sem_init
Description:
sem_open
Description:
sem_post
Description:
sem_timedwait, sem_timedwait_monotonic
Description:
Examples:
sem_trywait
Description:
sem_unlink
Description:
sem_wait
Description:
send
Description:
sendmsg
Description:
sendto
Description:
servent
Description:
setbuf
Description:
Examples:
setbuffer
Description:
setdomainname
Description:
setegid
Description:
Examples:
setenv
Description:
Examples:
seteuid
Description:
Examples:
setgid
Description:
Examples:
setfsent
Description:
setgrent
Description:
setgroups
Description:
sethostent
Description:
sethostname
Description:
SETIOV
Description:
setitimer
Description:
setjmp
Description:
Examples:
setkey
Description:
setlinebuf
Description:
setlocale
Description:
setlogmask
Description:
Examples:
setnetent
Description:
setpgid
Description:
Examples:
setpgrp
Description:
setprio
Description:
setprotoent
Description:
setpwent
Description:
setregid
Description:
setreuid
Description:
setrlimit, setrlimit64
Description:
setservent
Description:
setsid
Description:
Examples:
setsockopt
Description:
setspent
Description:
setstate
Description:
Examples:
settimeofday
Description:
setuid
Description:
Examples:
setutent
Description:
setvbuf
Description:
Examples:
_sfree
Description:
shm_ctl
Description:
Flags for ARM processors
Examples:
shm_ctl_special
Description:
ARM-specific flags
PPC-specific flags
SH4-specific flags
shm_open
Description:
Examples:
shm_unlink
Description:
Examples:
shutdown
Description:
shutdown_system
Description:
shutdown_classify callout
shutdown_display callout
shutdown_done callout
shutdown_error callout
shutdown_process callout
shutdown_progress callout
shutdown_prompt callout
Examples:
sigaction
Description:
Examples:
sigaddset
Description:
Examples:
sigblock
Description:
sigdelset
Description:
Examples:
sigemptyset
Description:
Examples:
sigevent
Description:
SIGEV_INTR
SIGEV_NONE
SIGEV_PULSE
SIGEV_SIGNAL
SIGEV_SIGNAL_CODE
SIGEV_SIGNAL_THREAD
SIGEV_THREAD
SIGEV_UNBLOCK
Critical threads
sigfillset
Description:
Examples:
sigismember
Description:
Examples:
siglongjmp
Description:
Examples:
sigmask
Description:
signal
Description:
func is a function
func is SIG_DFL
func is SIG_IGN
Handling a condition
Examples:
SignalAction, SignalAction_r
Description:
POSIX signals
QNX Neutrino signals
Signal actions
Blocking states
SignalKill, SignalKill_r
Description:
Blocking states
SignalProcmask, SignalProcmask_r
Description:
Blocking states
SignalSuspend, SignalSuspend_r
Description:
Blocking states
SignalWaitinfo, SignalWaitinfo_r
Description:
Blocking states
sigpause
Description:
sigpending
Description:
Examples:
sigprocmask
Description:
Examples:
sigqueue
Description:
sigsetjmp
Description:
Examples:
sigsetmask
Description:
sigsuspend
Description:
Examples:
sigtimedwait
Description:
sigunblock
Description:
sigwait
Description:
sigwaitinfo
Description:
sin, sinf, sinl
Description:
Examples:
sinh, sinhf, sinhl
Description:
Examples:
sleep
Description:
Examples:
_sleepon_broadcast
Description:
_sleepon_destroy
Description:
_sleepon_init
Description:
_sleepon_lock
Description:
_sleepon_signal
Description:
_sleepon_unlock
Description:
_sleepon_wait
Description:
slogb
Description:
Examples:
slogf
Description:
Severity levels
Examples:
slogi
Description:
Examples:
_smalloc
Description:
snmp_close
Description:
snmp_free_pdu
Description:
snmp_open
Description:
snmp_pdu
Description:
snmp_pdu_create
Description:
snmp_read
Description:
snmp_select_info
Description:
Asynchronous SNMP transactions:
snmp_send
Description:
snmp_session
Description:
snmp_timeout
Description:
snprintf
Description:
Examples:
sockatmark
Description:
socket
Description:
SOCK_STREAM sockets
SOCK_DGRAM and SOCK_RAW sockets
Using the ioctl call
Socket-level options
socketpair
Description:
Examples:
SOCKSinit
Description:
sopen
Description:
Examples:
sopenfd
Description:
spawn
Description:
Mapping file descriptors
inheritance structure
spawnl
Description:
Examples:
spawnle
Description:
Examples:
spawnlp
Description:
spawnlpe
Description:
spawnp
Description:
spawnv
Description:
Examples:
spawnve
Description:
spawnvp
Description:
spawnvpe
Description:
sprintf
Description:
Examples:
sqrt, sqrtf, sqrtl
Description:
Examples:
srand
Description:
Examples:
srand48
Description:
srandom
Description:
_srealloc
Description:
sscanf
Description:
Examples:
stat, stat64
Description:
stat structure
Access permissions
st_mode bits
Macros
Examples:
statvfs, statvfs64
Description:
stderr
Description:
stdin
Description:
stdout
Description:
straddstr
Description:
strcasecmp
Description:
Examples:
strcat
Description:
Examples:
strchr
Description:
Examples:
strcmp
Description:
Examples:
strcmpi
Description:
Examples:
strcoll
Description:
Examples:
strcpy
Description:
Examples:
strcspn
Description:
Examples:
strdup
Description:
Examples:
strerror
Description:
Examples:
strerror_r
Description:
Examples:
strftime
Description:
Formats
Examples:
stricmp
Description:
Examples:
strlcat, strlcpy
Description:
Examples:
Contributing author:
strlen
Description:
Examples:
strlwr
Description:
Examples:
strncasecmp
Description:
Examples:
strncat
Description:
Examples:
strncmp
Description:
Examples:
strncpy
Description:
Examples:
strnicmp
Description:
Examples:
strnset
Description:
Examples:
strpbrk
Description:
Examples:
strptime
Description:
Formats
Modified conversion specifiers
Examples:
strrchr
Description:
Examples:
strrev
Description:
Examples:
strsep
Description:
Examples:
strset
Description:
Examples:
strsignal
Description:
strspn
Description:
Examples:
strstr
Description:
Examples:
strtod, strtof, strtold
Description:
Examples:
strtoimax, strtoumax
Description:
strtok
Description:
Examples:
strtok_r
Description:
strtol, strtoll
Description:
Examples:
strtoul, strtoull
Description:
Examples:
strupr
Description:
Examples:
strxfrm
Description:
Examples:
swab
Description:
swprintf
Description:
swscanf
Description:
symlink
Description:
Examples:
sync
Description:
SyncCondvarSignal, SyncCondvarSignal_r
Description:
Blocking states
SyncCondvarWait, SyncCondvarWait_r
Description:
Blocking states
SyncCtl, SyncCtl_r
Description:
SyncDestroy, SyncDestroy_r
Description:
Blocking states
SyncMutexEvent, SyncMutexEvent_r
Description:
SyncMutexLock, SyncMutexLock_r
Description:
Blocking states
SyncMutexRevive, SyncMutexRevive_r
Description:
SyncMutexUnlock, SyncMutexUnlock_r
Description:
Blocking states
SyncSemPost, SyncSemPost_r
Description:
SyncSemWait, SyncSemWait_r
Description:
SyncTypeCreate, SyncTypeCreate_r
Description:
Blocking states
sysconf
Description:
Examples:
sysctl
Description:
Examples:
syslog
Description:
Message levels
Examples:
sysmgr_reboot
Description:
SYSPAGE_CPU_ENTRY
Description:
Examples:
SYSPAGE_ENTRY
Description:
Examples:
_syspage_ptr
Description:
system
Description:
Examples:
T
tan, tanf, tanl
Description:
Examples:
tanh, tanhf, tanhl
Description:
Examples:
tcdrain
Description:
Examples:
tcdropline
Description:
Examples:
tcflow
Description:
Examples:
tcflush
Description:
Examples:
tcgetattr
Description:
Examples:
tcgetpgrp
Description:
Examples:
tcgetsid
Description:
tcgetsize
Description:
tcinject
Description:
Examples:
tcischars
Description:
TCP
Description:
tcsendbreak
Description:
Examples:
tcsetattr
Description:
Examples:
tcsetpgrp
Description:
Examples:
tcsetsid
Description:
tcsetsize
Description:
tell, tell64
Description:
Examples:
telldir
Description:
tempnam
Description:
termios
Description:
thread_pool_control
Description:
thread_pool_create
Description:
How it works
Thread-pool attributes
Examples:
thread_pool_destroy
Description:
Examples:
thread_pool_limits
Description:
thread_pool_start
Description:
Examples:
ThreadCancel, ThreadCancel_r
Description:
Blocking states
ThreadCreate, ThreadCreate_r
Description:
Thread attributes
Signal state
Local storage for private data
Blocking states
ThreadCtl, ThreadCtl_r
Description:
_NTO_TCTL_ALIGN_FAULT
_NTO_TCTL_IO
_NTO_TCTL_NAME
_NTO_TCTL_ONE_THREAD_CONT
_NTO_TCTL_ONE_THREAD_HOLD
_NTO_TCTL_RUNMASK
_NTO_TCTL_RUNMASK_GET_AND_SET
_NTO_TCTL_RUNMASK_GET_AND_SET_INHERIT
_NTO_TCTL_THREADS_CONT
_NTO_TCTL_THREADS_HOLD
Blocking states
ThreadDestroy, ThreadDestroy_r
Description:
Blocking states
ThreadDetach, ThreadDetach_r
Description:
Blocking states
ThreadJoin, ThreadJoin_r
Description:
Blocking states
time
Description:
Examples:
timer_create
Description:
Examples:
timer_delete
Description:
timer_getexpstatus
Description:
timer_getoverrun
Description:
timer_gettime
Description:
timer_settime
Description:
Examples:
timer_timeout, timer_timeout_r
Description:
Blocking states
TimerAlarm, TimerAlarm_r
Description:
Blocking states
TimerCreate, TimerCreate_r
Description:
Blocking states
TimerDestroy, TimerDestroy_r
Description:
Blocking states
TimerInfo, TimerInfo_r
Description:
struct _timer_info
Blocking states
TimerSettime, TimerSettime_r
Description:
Expiration date
Blocking states
TimerTimeout, TimerTimeout_r
Description:
Timeout states
Event types
The timeout
Blocking states
times
Description:
Examples:
timespec
Description:
timespec2nsec
Description:
timezone
Description:
tm
Description:
tmpfile, tmpfile64
Description:
Examples:
tmpnam
Description:
Examples:
tolower
Description:
Examples:
toupper
Description:
Examples:
towctrans
Description:
towlower
Description:
towupper
Description:
trace_func_enter
Description:
trace_func_exit
Description:
trace_here
Description:
Examples:
trace_logb
Description:
Examples:
trace_logbc
Description:
trace_logf
Description:
trace_logi
Description:
trace_nlogf
Description:
Examples:
trace_vnlogf
Description:
Examples:
TraceEvent
Description:
Buffer and execution control
_NTO_TRACE_ALLOCBUFFER, _NTO_TRACE_DEALLOCBUFFER
_NTO_TRACE_FLUSHBUFFER
_NTO_TRACE_QUERYEVENTS
_NTO_TRACE_START, _NTO_TRACE_STARTNOSTATE, _NTO_TRACE_STOP
_NTO_TRACE_SETRINGMODE
_NTO_TRACE_SETLINEARMODE
Fast/wide mode configuration
_NTO_TRACE_SETALLCLASSESFAST, _NTO_TRACE_SETALLCLASSESWIDE
_NTO_TRACE_SETCLASSFAST, _NTO_TRACE_SETCLASSWIDE
_NTO_TRACE_SETEVENTFAST, _NTO_TRACE_SETEVENTWIDE
Static rules filter configuration
_NTO_TRACE_ADDALLCLASSES, _NTO_TRACE_DELALLCLASSES
_NTO_TRACE_ADDCLASS, _NTO_TRACE_DELCLASS
_NTO_TRACE_ADDEVENT, _NTO_TRACE_DELEVENT
_NTO_TRACE_SETCLASSPID, _NTO_TRACE_CLRCLASSPID, _NTO_TRACE_SETCLASSTID, _NTO_TRACE_CLRCLASSTID
_NTO_TRACE_SETEVENTPID, _NTO_TRACE_CLREVENTPID, _NTO_TRACE_SETEVENTTID, _NTO_TRACE_CLREVENTTID
Dynamic rules filter configuration
Accessing data in the event handler
Macros for use with the event header
_NTO_TRACE_ADDEVENTHANDLER, _NTO_TRACE_DELEVENTHANDLER
_NTO_TRACE_ADDCLASSEVHANDLER, _NTO_TRACE_DELCLASSEVHANDLER
User-generated trace events
_NTO_TRACE_INSERTEVENT
_NTO_TRACE_INSERTSUSEREVENT, _NTO_TRACE_INSERTCUSEREVENT, _NTO_TRACE_INSERTUSRSTREVENT
Examples:
traceparser
Description:
traceparser_cs
Description:
Callback function
traceparser_cs_range
Description:
traceparser_debug
Description:
traceparser_destroy
Description:
traceparser_get_info
Description:
User info modes for info_modes
Other valid user info modes
traceparser_init
Description:
truncate
Description:
ttyname
Description:
Examples:
ttyname_r
Description:
tzname
Description:
tzset
Description:
Examples:
U
ualarm
Description:
Examples:
UDP
Description:
ultoa, ulltoa
Description:
Examples:
umask
Description:
Examples:
umount
Description:
UNALIGNED_PUT16
Description:
UNALIGNED_PUT32
Description:
UNALIGNED_PUT64
Description:
UNALIGNED_RET16
Description:
UNALIGNED_RET32
Description:
UNALIGNED_RET64
Description:
uname
Description:
Examples:
ungetc
Description:
Examples:
ungetwc
Description:
UNIX
Description:
Addressing
Protocols
LOCAL_CREDS
unlink
Description:
Examples:
unsetenv
Description:
usleep
Description:
Examples:
utime
Description:
Examples:
utimes
Description:
utmp
Description:
utmpname
Description:
utoa
Description:
Examples:
V
va_arg
Description:
Varargs and coercion
Examples:
va_copy
Description:
Examples:
va_end
Description:
va_start
Description:
Examples:
valloc
Description:
verr, verrx
Description:
vfork
Description:
vfprintf
Description:
Examples:
vfscanf
Description:
Examples:
vfwprintf
Description:
vfwscanf
Description:
vprintf
Description:
Examples:
vscanf
Description:
Examples:
vslogf
Description:
vsnprintf
Description:
Examples:
vsprintf
Description:
Examples:
vsscanf
Description:
Examples:
vswprintf
Description:
vswscanf
Description:
vsyslog
Description:
vwarn, vwarnx
Description:
vwprintf
Description:
vwscanf
Description:
W
wait
Description:
Status macros
wait3
Description:
wait4
Description:
waitid
Description:
waitpid
Description:
warn, warnx
Description:
Examples:
wcrtomb
Description:
wcscat
Description:
wcschr
Description:
wcscmp
Description:
wcscoll
Description:
wcscpy
Description:
wcscspn
Description:
wcsftime
Description:
wcslen
Description:
wcsncat
Description:
wcsncmp
Description:
wcsncpy
Description:
wcspbrk
Description:
wcsrchr
Description:
wcsrtombs
Description:
wcsspn
Description:
wcsstr
Description:
wcstod, wcstof, wcstold
Description:
wcstoimax, wcstoumax
Description:
wcstok
Description:
wcstol, wcstoll
Description:
wcstombs
Description:
Examples:
wcstoul, wcstoull
Description:
wcscxfrm
Description:
wctob
Description:
wctomb
Description:
Examples:
wctrans
Description:
wctype
Description:
wmemchr
Description:
wmemcmp
Description:
wmemcpy
Description:
wmemmove
Description:
wmemset
Description:
wordexp
Description:
wordfree
Description:
wprintf
Description:
write
Description:
Examples:
writeblock
Description:
writev
Description:
wscanf
Description:
X
Y
y0, y0f
Description:
y1, y1f
Description:
Examples:
yn, ynf
Description:
Z
SOCKS --- A Basic Firewall
About SOCKS
How to SOCKSify a client
What SOCKS expects
Summary of Safety Information
Cancellation points
Interrupt handlers
Signal handlers
Multithreaded programs
Full Safety Information
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
Y
What's New in this Reference?
What's new in QNX Neutrino 6.5.0?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.4.1?
New entries
Deprecated content
Changed content
Errata
What's new in QNX Neutrino 6.4.0?
New entries
Deprecated content
Changed content
Errata
What's new in QNX Neutrino 6.3.2?
Errata
What's new in the QNX Neutrino Core OS 6.3.2?
New entries
Changed content
What's new in QNX Neutrino 6.3.0 Service Pack 2?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.3.0 Service Pack 1?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.3.0?
New entries
Deprecated content
What's new in QNX Neutrino 6.2.1?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.2?
New entries
Deprecated content
Errata
What's new in QNX Neutrino 6.1.0?
New entries
Deprecated content
Glossary
QNX Persistent Publish/Subscribe Developer's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support options
QNX PPS Service
Running PPS
Objects and their Attributes
Object files
Object and directory sizes
Special objects
Object syntax
Objects in filesystem listings
Change notification
Responding to an object deletion
Attributes
Persistence
Persistent storage
Persistence and filesystem limitations
Saving objects
Loading objects
Publishing
Creating, modifying and deleting
Multiple publishers
Subscribing
Blocking and non-blocking reads
Setting PPS to block
Clearing O_NONBLOCK
io_notify functionality
Getting notifications of data on a file descriptor
Subscription Modes
Full mode
Delta mode
Delta mode queues
Changes to multiple attributes
Server objects
Subscribing to multiple objects
Subscribe to all objects in a directory
Notification groups
Creating notification groups
Using notification groups
Notification of closed file descriptors for objects
Options and Qualifiers
Pathname open options
Critical option
Duplicate file descriptors
Critical file descriptors
Server file descriptors
Object and attribute qualifiers
Setting qualifiers
No-persistence qualifier
Item qualifier
Adding and deleting set items
Incorrect item syntax
Examples
Example 1: Duplicate items
Example 2: Null items
Example 3: Delete an item
ppsparse
Description:
pps_attrib_t
pps_attrib_flags_t
pps_options_t
pps_status_t
Examples:
Programmer's Guide
About This Book
What you'll find in this guide
Recommended reading
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Compiling and Debugging
Choosing the version of the OS
Making your code more portable
Conforming to standards
Including QNX- or Neutrino-specific code
Header files in /usr/include
Self-hosted or cross-development
A simple example
Self-hosted
Cross-development with network filesystem
Cross-development with debugger
Download/upload facility
Cross-development, deeply embedded
Step 1: Build a Neutrino system image.
Step 2: Transfer the system image to the target.
Step 3: Boot the target.
Using libraries
Static linking
Dynamic linking
Runtime loading
Static and dynamic libraries
Static libraries
Dynamic libraries
dlopen
Platform-specific library locations
Linking your modules
Creating shared objects
Specifying an internal name
Optimizing the runtime linker
Lazy binding
RTLD_LAZY
Lazy loading
Diagnostics and debugging
Environment variables
Debugging
Debugging in a self-hosted environment
Debugging in a cross-development environment
The GNU debugger (gdb)
Starting gdb
The process-level debug agent
Serial connection
TCP/IP connection
TCP/IP static port connection
TCP/IP dynamic port connection
Sample buildfile for dynamic port sessions
A simple debug session
Configure the target
Compile for debugging
Start the debug session
Get help
Sample boot image
Debugging using libmudflap
Programming Overview
Process model
An application as a set of processes
Processes and threads
Some definitions
Priorities and scheduling
Priority range
BLOCKED and READY states
The ready queue
Suspending a running thread
When the thread is blocked
When the thread is preempted
When the thread yields
Scheduling policies
FIFO scheduling
Round-robin scheduling
Sporadic scheduling
Why threads?
Summary
Processes
Starting processes --- two methods
Process creation
Concurrency
Using fork and forkpty
Inheriting file descriptors
Process termination
Normal process termination
Abnormal process termination
Effect of parent termination
Detecting process termination
Using the High Availability Framework
Detecting termination from a starter process
Sample parent process using wait
Sample parent process using sigwaitinfo
Detecting dumped processes
Detecting the termination of daemons
Detecting client termination
Controlling processes via the /proc filesystem
Establishing a connection
Reading and writing the process's address space
Determining the offset
Determining accessibility
Manipulating a process or thread
Selecting a thread for further operations
Starting/stopping processes and threads
Setting breakpoints
Examining process and thread attributes
Thread information
DCMD_PROC_BREAK
DCMD_PROC_CHANNELS
DCMD_PROC_CLEAR_FLAG
DCMD_PROC_CURTHREAD
DCMD_PROC_EVENT
DCMD_PROC_FREEZETHREAD
DCMD_PROC_GETALTREG
DCMD_PROC_GETFPREG
DCMD_PROC_GETGREG
DCMD_PROC_GETREGSET
DCMD_PROC_GET_BREAKLIST
DCMD_PROC_INFO
DCMD_PROC_IRQS
DCMD_PROC_MAPDEBUG
DCMD_PROC_MAPDEBUG_BASE
DCMD_PROC_MAPINFO
DCMD_PROC_PAGEDATA
DCMD_PROC_RUN
DCMD_PROC_SETALTREG
DCMD_PROC_SETFPREG
DCMD_PROC_SETGREG
DCMD_PROC_SETREGSET
DCMD_PROC_SET_FLAG
DCMD_PROC_SIGNAL
DCMD_PROC_STATUS
DCMD_PROC_STOP
DCMD_PROC_SYSINFO
DCMD_PROC_THAWTHREAD
DCMD_PROC_THREADCTL
DCMD_PROC_TIDSTATUS
DCMD_PROC_TIMERS
DCMD_PROC_WAITSTOP
Tick, Tock: Understanding the Neutrino Microkernel's Concept of Time
What's a tick?
Oversleeping: errors in delays
Delaying for a second: inaccurate code
Timer quantization error
The tick and the hardware timer
Delaying for a second: better code
Another hiccup with hardware timers
Where's the catch?
What time is it?
Transparent Distributed Processing Using Qnet
What is Qnet?
Benefits of Qnet
What works best
What type of application is well-suited for Qnet?
Qnet drivers
How does it work?
Locating services using GNS
Different modes of gns
Server
Client
Registering a service
GNS path namespace
Deploying the gns processes
Quality of Service (QoS) and multiple paths
QoS policies
loadbalance
preferred
exclusive
Specifying QoS policies
Symbolic links
Designing a system using Qnet
The product
Developing your distributed system
Configuring the data cards
Configuring the controller card
Enhancing reliability via multiple transport buses
Redundancy and scalability using multiple controller cards
Redundancy
Scalability
Autodiscovery vs static
When should you use Qnet, TCP/IP, or NFS?
Writing a driver for Qnet
Writing an Interrupt Handler
What's an interrupt?
Interrupts on multicore systems
Attaching and detaching interrupts
Interrupt Service Routine (ISR)
Determining the source of the interrupt
Edge-triggered IRQ
Level-sensitive IRQ
Servicing the hardware
Safe functions
Updating common data structures
Signalling the application code
Using InterruptAttach
Using InterruptAttachEvent
Running out of interrupt events
Problems with shared interrupts
Advanced topics
Interrupt environment
Ordering of shared interrupts
Interrupt latency
Atomic operations
Heap Analysis: Making Memory Errors a Thing of the Past
Introduction
Dynamic memory management
Arena allocations
Small block configuration
Heap corruption
Contiguous memory blocks
Multithreaded programs
Allocation strategy
Common sources
Overrun and underrun errors
Releasing memory
Using uninitialized or stale pointers
Detecting and reporting errors
Using the malloc debug library
What's checked?
Allocating memory
Reallocating memory
Releasing memory
Controlling the level of checking
Description of optional checks
Forcing verification
Specifying an error handler
Other environment variables
Caveats
Manual checking (bounds checking)
Getting pointer information
Memory leaks
Tracing
Causing a trace and giving results
Analyzing dumps
Compiler support
C++ issues
Clean C
C++ example
Freedom from Hardware and Platform Dependencies
Common problems
I/O space vs memory-mapped
Big-endian vs little-endian
Typecast mangling
Hardware access
Network transparency
Alignment and structure packing
Atomic operations
Solutions
Determining endianness
Swapping data if required
ENDIAN_LE16
ENDIAN_LE32
ENDIAN_LE64
ENDIAN_BE16
ENDIAN_BE32
ENDIAN_BE64
Accessing unaligned data
UNALIGNED_RET16
UNALIGNED_RET32
UNALIGNED_RET64
UNALIGNED_PUT16
UNALIGNED_PUT32
UNALIGNED_PUT64
Examples
Mixed-endian accesses
Accessing hardware with dual-ported memory
Accessing I/O ports
Conventions for Recursive Makefiles and Directories
Structure of a multiplatform source tree
Makefile structure
The recurse.mk file
Macros
The EARLY_DIRS and LATE_DIRS macros
The LIST macro
The MAKEFILE macro
The CHECKFORCE macro
Directory levels
Project level
Section level (optional)
OS level
CPU level
Variant level
Specifying options
The common.mk file
The variant-level makefile
Recognized variant names
Using the standard macros and include files
The qconfig.mk include file
Preset macros
Postset macros
qconfig.mk macros
The qrules.mk include file
The qtargets.mk include file
Advanced topics
Collapsing unnecessary directory levels
Performing partial builds
Performing parallel builds
More uses for LIST
GNU configure
hook_preconfigure
hook_postconfigure
hook_premake
hook_postmake
hook_pinfo
Examples of creating Makefiles
A single application
A library and an application
POSIX Conformance
Conformance statement
System interfaces: general attributes
Supported features
Optional features
Float, standard I/O, and limit values
Error conditions
Mathematical interfaces
File handling
Access control
Files and directories
Internationalized system interfaces
Coded character sets
Threads
Cancellation points
Realtime
Prioritized I/O
Realtime threads
Scheduling policies
Scheduling contention scope
Default scheduling contention scope
Scheduling allocation domain
C-language compilation environment
POSIX Conformance Document (PCD)
Base Definitions
3. Definitions
3.4. Additional File Access Control Mechanism
3.12. Alternate File Access Control Mechanism
3.19. Appropriate Privileges
3.97. Clock Tick
3.159. Extended Security Controls
3.387. System Trace Event
3.409. Trace Generation Version
4. General Concepts
4.3. Extended Security Controls
4.9. Measurement of Execution Time
4.11. Pathname Resolution
4.14. Seconds Since the Epoch
4.17. Tracing
4.18. Treatment of Error Conditions for Mathematical Functions
6. Character Set
6.4. Character Set Description File
7. Locale
7.1. General
7.2. POSIX Locale
7.3. Locale Definition
8. Environment Variables
8.2. Internationalization Variables
8.3. Other Environment Variables
13. Headers
fenv.h
float.h
limits.h
math.h
signal.h
stdint.h
sys/stat.h
time.h
System Interfaces
2.3. Error Numbers
2.4. Signal Concepts
2.4.2. Realtime Signal Generation and Delivery
2.4.3. Signal Actions
2.5. Standard I/O Streams
2.5.1. Interaction of File Descriptors and Standard I/O Streams
2.8. Realtime
2.8.3. Memory Management
2.8.4. Processing Scheduling
2.8.5. Clocks and Timers
2.9.4. Thread Scheduling
2.11. Tracing
3. System Interfaces
acos, acosf, and acosl
acosh, acoshf, acoshl
asin, asinf, asinl
atan, atanf, atanhl
calloc
clock_getres, clock_settime
cos, cosf, cosl
erfc, erfcf, erfcl
exp, expf, expl
exp2, exp2f, exp2l
fclose
fcntl
fdim, fdimf, fdiml
fegetexceptflag
feraiseexcept
fflush
fgetc
fma, fmaf, fmal
fmod, fmodf, fmodl
fpclassify
fprintf
fputc
freopen
fscanf
fseeko
fsetpos
fstat
fsync
kill
ldexp, ldexpf, ldexpl
log, logf, logl
log10, log10f, log10l
log1p, log1pf, log1pl
log2, log2f, log2l
lseek
malloc
mkdir
mlock
mlockall, munlockall
mmap
mq_open
mq_receive
mq_setattr
open
posix_trace_*
pow, powf, powl
pthread_attr_destroy
pthread_condattr_destroy, pthread_condattr_init
pthread_getschedparam, pthread_setschedparam
pthread_rwlock_rdlock
pthread_rwlock_unlock
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared
read
remainder, remainderf, remainderl
remquo, remquof, remquol
rint, rintf, rintl
scalbln, scalblnf, scalblnl, scalbn, scalbnf, scalbnl
sem_open
setlocale
shm_open
sigaction
signal
sigwait
sin, sinf, sinl
sqrt, sqrtf, sqrtl
stat
strtod, strtof, strtold
strtol, strtoll
strtoul, strtoull
tan, tanf, tanl
tgamma, tgammaf, tgammal
timer_create
tmpnam
tzset
uname
write
Non-POSIX functions with POSIX-sounding names
Using GDB
Neutrino-specific extensions
A quick overview of starting the debugger
GDB commands
Command syntax
Command completion
Getting help
Running programs under GDB
Compiling for debugging
Setting the target
Starting your program
Your program's arguments
Your program's environment
Your program's input and output
Debugging an already-running process
Killing the process being debugged
Debugging programs with multiple threads
Debugging programs with multiple processes
Stopping and continuing
Breakpoints, watchpoints, and exceptions
Setting breakpoints
Setting watchpoints
Breakpoints and exceptions
Deleting breakpoints
Disabling breakpoints
Break conditions
Breakpoint command lists
Breakpoint menus
Continuing and stepping
Signals
Stopping and starting multithreaded programs
Examining the stack
Stack frames
Backtraces
Selecting a frame
Information about a frame
MIPS machines and the function stack
Examining source files
Printing source lines
Searching source files
Specifying source directories
Source and machine code
Shared libraries
Examining data
Expressions
Program variables
Artificial arrays
Output formats
Examining memory
Automatic display
Print settings
Value history
Convenience variables
Registers
Floating point hardware
Examining the symbol table
Altering execution
Assignment to variables
Continuing at a different address
Giving your program a signal
Returning from a function
Calling program functions
Patching programs
ARM Memory Management
ARM-specific restrictions and issues
_NTO_TCTL_IO behavior
Implications of the ARM Cache Architecture
ARM-specific features
shm_ctl behavior
Advanced Qnet Topics
Low-level discussion of Qnet principles
Details of Qnet data communication
Node descriptors
The sys/netmgr.h header file
netmgr_strtond
netmgr_ndtostr
netmgr_remote_nd
Booting over the network
Overview
Creating directory and setting up configuration files
Building an OS image
Booting the client
Troubleshooting
What are the limitations ...
Glossary
QED - Fullscreen Editor
About the QED Manual
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Tutorial Guide
Getting Started
The Status Line
The Command Line
Text Area
Appending New Text (F1)
Appending or Inserting Lines (F1/F2)
Using the Del and Backspace keys
Inserting text using Ins
Other Cursor keys which Simplify Editing
Saving your Text
Exercise
More on the F1 and F2 keys
Deleting Lines (F3 key)
Filling Lines (F4 key)
Centering Lines (CtrlF4)
Splitting and Joining Lines (F5/F6 keys)
Tagging Blocks of Text (F7/F8 keys)
Line Tagging
Block Tagging
Insert Mode and Block Move and Copy
Re-setting the Last Tagged Lines or Block
Re-executing Commands (F9/F10 keys)
Tabs
Line Drawing Characters
Margins
Moving Your Margins (Shift F1 to F6)
Auto Fill and Your Right Margin
Auto Justify
Indenting and Your Left Margin
Line Flags
Overstrike Flag ( Alt o )
Continuation Flag ( Alt c )
Paragraph Flag ( Alt p )
Some Simple Editor Commands.
Learn Mode
Absolute Line Positioning
Simple Pattern Matching
File I/O Commands
The View Command
Executing System Commands
Epilogue
Using qed on non-QNX terminal types
Setting Your Terminal Type
Required Terminal Capabilities
Screen Output
Keyboard Input
Reference Manual
The Syntax of Editor Commands
Line Range
Command Specification Character
Right Arguments
Placing Multiple Commands On A Line
Special Characters
The Linefeed Character (hex 0A)
The NUL Character (hex 00)
The Meta Characters (@$^^&.*[)
The Backslash Character (\)
The Tab Character (hex 09)
The Command Character (hex FF)
The Recall Character (hex FE)
The Keyboard Input Character (hex FD)
The Macro Disable Character (hex A3)
The Condition Register
Delete Buffers
The Character Delete Buffer
The Line Delete Buffer
Break Handling
The Pattern Matcher
Some Pattern Examples
Command Reference:
Append (a)
Description:
Current line:
Condition register:
Branch (b)
Description:
Current line:
Condition register:
Change (c)
Description:
Current line:
Condition register:
Delete (d)
Description:
Current line:
Condition register:
Edit (e)
Description:
Current line:
Condition register:
File (f)
Description:
Current line:
Condition register:
Global (g)
Description:
Current line:
Condition register:
Insert (i)
Description:
Current line:
Condition register:
Join (j)
Description:
Current line:
Condition register:
Kopy (k)
Description:
Current line:
Condition register:
Learn (l)
Description:
Current line:
Condition register:
Move (m)
Description:
Current line:
Condition register:
Option (o)
Description:
Options
Current line:
Condition register:
Print (p)
Description:
Current line:
Condition register:
Quit (q)
Description:
Current line:
Condition register:
Read (r)
Description:
Current line:
Condition register:
Substitute (s)
Description:
Current line:
Condition register:
Translate (t)
Description:
Current line:
Condition register:
Until (u)
Description:
Current line:
Condition register:
View (v)
Description:
View screen options
Current line:
Condition register:
Write (w)
Description:
Current line:
Condition register:
Execute (x)
Description:
Current line:
Condition register:
Yut? (prompt) (y)
Description:
Current line:
Condition register:
Zap (z)
Description:
Current line:
Condition register:
Defining Your Own Macros
What is a Macro
Multi-line Macros
Macros Containing Branches
Suggestions
Appendix A - Error Messages
Quick Reference
Control Keys
Cursor Movement Keys
Character Editing Keys
Function Keys
Option Control
Margin Control
Line Flags
Special Characters
Editor Commands
Line Range range
Line Address line
Meta Characters Used in Patterns
File I/O Commands
Alphabetical List of All Editor Commands
Examples
Writing a Resource Manager
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
What is a resource manager?
Why write a resource manager?
The types of resource managers
Device resource managers
Filesystem resource managers
Communication via native IPC
Examples of resource managers
Transparent Distributed Processing (Qnet) statistics
Robot arm
GPS devices
Database example
I2C (Inter-Integrated Circuit) driver
When not to use a resource manager
The Bones of a Resource Manager
Under the covers
Under the client's covers
Under the resource manager's covers
Layers in a resource manager
The iofunc layer
The resmgr layer
The dispatch layer
The thread pool layer
Simple examples of device resource managers
Single-threaded device resource manager
Initialize the dispatch interface
Initialize the resource manager attributes
Initialize functions used to handle messages
Initialize the attribute structure used by the device
Put a name into the namespace
Allocate the context structure
Start the resource manager message loop
Multithreaded device resource manager
Define THREAD_POOL_PARAM_T
Initialize thread pool attributes
Allocate a thread pool handle
Start the threads
Using MsgSend and MsgReply
A bit of history
The server
The client
Fleshing Out the Skeleton
Message types
Connect messages
I/O messages
Default message handling
open, dup, and close
Setting resource manager attributes
Ways of adding functionality to the resource manager
Using the default functions
Using the helper functions
Writing the entire function yourself
POSIX-Layer Data Structures
The iofunc_ocb_t (Open Control Block) structure
The iofunc_attr_t (attribute) structure
The optional iofunc_mount_t (mount) structure
Handling Read and Write Messages
Handling the _IO_READ message
Sample code for handling _IO_READ messages
Handling the _IO_WRITE message
Sample code for handling _IO_WRITE messages
Methods of returning and replying
Returning with an error
Returning using an IOV array that points to your data
Returning with a single buffer containing data
Returning success but with no data
Getting the resource manager library to do the reply
Performing the reply in the server
Leaving the client blocked, replying later
Returning and telling the library to do the default action
Handling other read/write details
Handling the xtype member
If you aren't expecting extended types (xtype)
Handling pread* and pwrite*
Sample code for handling _IO_READ messages in pread*
Sample code for handling _IO_WRITE messages in pwrite*
Handling readcond
Updating the time for reads and writes
Combine Messages
Where combine messages are used
Atomic operations
Using a mutex
Per-thread files
The readblock function
Bandwidth considerations
The library's combine-message handling
Component responses
Component data access
Locking and unlocking the attribute structure
Connect message types
_IO_CONNECT_COMBINE_CLOSE
_IO_CONNECT_COMBINE
Extending the POSIX-Layer Data Structures
Overview
Extending the OCB and attribute structures
Extending the mount structure
Handling Other Messages
Custom messages
Handling devctl messages
Sample code for handling _IO_DEVCTL messages
Handling ionotify and select
Sample code for handling _IO_NOTIFY messages
Handling out-of-band (_IO_MSG) messages
Handling private messages and pulses
Handling open, dup, and close messages
Handling mount
mount function call
Mount in the resource manager
mount utility
Handling stat
Handling lseek
Signals, Timeouts, and Interrupts
Handling client unblocking due to signals or timeouts
Handling interrupts
Sample code for handling interrupts
Multithreaded Resource Managers
Multithreaded resource manager example
Thread pool attributes
Thread pool functions
Filesystem Resource Managers
Considerations for filesystem resource managers
Taking over more than one device
Handling directories
Matching at or below a mountpoint
The _IO_OPEN message for filesystems
Returning directory entries from _IO_READ
Returning information associated with a directory structure
Glossary
System Architecture
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
The Philosophy of QNX Neutrino
Design goals
An embeddable POSIX OS?
Product scaling
Why POSIX for embedded systems?
Multiple OS sources
Portability of development staff
Development environment: native and cross development
Why QNX Neutrino for embedded systems?
Microkernel architecture
The OS as a team of processes
A true kernel
System processes
System processes vs user-written processes
Device drivers
Interprocess communication
QNX Neutrino as a message-passing operating system
Network distribution of kernels
Single-computer model
Flexible networking
The QNX Neutrino Microkernel
Introduction
The implementation of QNX Neutrino
POSIX realtime and thread extensions
System services
Threads and processes
Thread attributes
Thread life cycle
Thread scheduling
When are scheduling decisions are made?
When is a thread blocked?
When is a thread preempted?
When is a thread yielded?
Scheduling priority
Scheduling policies
FIFO scheduling
Round-robin scheduling
Sporadic scheduling
Manipulating priority and scheduling policies
IPC issues
Thread complexity issues
Synchronization services
Mutexes: mutual exclusion locks
Priority inheritance and mutexes
Condvars: condition variables
Barriers
Sleepon locks
Reader/writer locks
Semaphores
Synchronization via scheduling policy
Synchronization via message passing
Synchronization via atomic operations
Synchronization services implementation
Clock and timer services
Time correction
Timers
Interrupt handling
Interrupt latency
Scheduling latency
Nested interrupts
Interrupt calls
Interprocess Communication (IPC)
Synchronous message passing
MsgReply vs MsgError
Message copying
Simple messages
Channels and connections
Pulses
Priority inheritance and messages
Message-passing API
Robust implementations with Send/Receive/Reply
Events
I/O notification
Signals
Special signals
Summary of signals
POSIX message queues
Why use POSIX message queues?
File-like interface
Message-queue functions
Shared memory
Shared memory with message passing
Creating a shared-memory object
mmap
Initializing allocated memory
Typed memory
Implementation-defined behavior
Seeding of typed memory regions
Naming of typed memory regions
Pathname space and typed memory
mmap allocation flags and typed memory objects
Permissions and typed memory objects
Object length and offset definitions
Interaction with other POSIX APIs
Practical examples
Allocating contiguous memory from system RAM
Defining packet memory and allocating from it
Defining a DMA-safe region
Pipes and FIFOs
Pipes
FIFOs
The Instrumented Microkernel
Introduction
Instrumentation at a glance
Event control
Modes of emission
Ring buffer
Data interpretation
System analysis with the IDE
Proactive tracing
Multicore Processing
Introduction
Asymmetric multiprocessing (AMP)
Symmetric multiprocessing (SMP)
Neutrino's microkernel approach
Booting an x86 SMP system
Booting a PowerPC or MIPS SMP system
How the SMP microkernel works
Scheduling
Kernel locking
Interprocessor interrupts (IPIs)
Critical sections
Bound multiprocessing (BMP)
A viable migration strategy
Choosing between AMP, SMP, and BMP
Process Manager
Introduction
Process management
Process primitives
posix_spawn
spawn
fork
vfork
exec*
Process loading
Memory management
Memory Management Units (MMUs)
Memory protection at run time
Software watchdog
Quality control
Full-protection model
Private virtual memory
Variable page size
Locking memory
Defragmenting physical memory
Automatically marking memory as unmovable
Pathname management
Domains of authority
Resolving pathnames
Ordering mountpoints
Single-device mountpoints
Unioned filesystem mountpoints
Why overlay mountpoints?
Symbolic prefixes
Creating special device names
Relative pathnames
A note about cd
File descriptor namespace
Open control blocks
Dynamic Linking
Shared objects
Statically linked
Dynamically linked
Augmenting code at runtime
How shared objects are used
ELF format
ELF without COFF
The process
Runtime linker
Loading a shared library at runtime
Symbol name resolution
Resource Managers
Introduction
What is a resource manager?
Why write a resource manager?
The types of resource managers
Device resource managers
Filesystem resource managers
Communication via native IPC
Resource manager architecture
Message types
The resource manager shared library
Automatic default message handling
open, dup, and close
Multiple thread handling
Dispatch functions
Combine messages
Second-level default message handling
Summary
Filesystems
Introduction
Filesystems and pathname resolution
Filesystem classes
Filesystems as shared libraries
io-blk
Builtin RAM disk
Partitions
Buffer cache
Filesystem limitations
Image filesystem
RAM filesystem
Embedded transaction filesystem (ETFS)
Inside a transaction
Types of storage media
Reliability features
Dynamic wear-leveling
Static wear-leveling
CRC error detection
ECC error correction
Read degradation monitoring with automatic refresh
Transaction rollback
Atomic file operations
Automatic file defragmentation
QNX 4 filesystem
Power-Safe filesystem
Problems with existing disk filesystems
Copy-on-write filesystem
Performance
DOS Filesystem
DOS version support
DOS text files
QNX-to-DOS filename mapping
Handling filenames
International filenames
DOS volume labels
DOS-QNX permission mapping
File ownership
CD-ROM filesystem
FFS3 filesystem
Customization
Organization
Raw partitions
Filesystem partitions
Mountpoints
Features
POSIX
Background reclaim
Fault recovery
Compression/decompression
Flash errors
Endian awareness
Utilities
System calls
NFS filesystem
CIFS filesystem
Linux Ext2 filesystem
Universal Disk Format (UDF) filesystem
Apple Macintosh HFS and HFS Plus
Windows NT filesystem
Virtual filesystems
PPS
Persistence
Behavior at startup
Behavior at shutdown
PPS objects
Object files
Change notification
Options and qualifiers
Pathname open options
Object and attribute qualifiers
Publishing
Multiple publishers
Subscribing
Subscription modes
Full mode
Delta mode
Subscribing to multiple objects
Notification groups
Character I/O
Introduction
Driver/io-char communication
Device control
QNX extensions
Input modes
Raw input mode
MIN
TIME
TIMEOUT
FORWARD
Edited input mode
Device subsystem performance
Console devices
Terminal emulation
Serial devices
Parallel devices
Pseudo terminal devices (ptys)
Networking Architecture
Introduction
Network manager (io-pkt*)
Threading model
Protocol module
Driver module
Loading and unloading a driver
Native Networking (Qnet)
QNX Neutrino distributed
Name resolution and lookup
File descriptor (connection ID)
Behind a simple open
Global Name Service (GNS)
Network naming
Resolvers
Redundant Qnet: Quality of Service (QoS) and multiple paths
QoS policies
loadbalance
preferred
exclusive
Specifying QoS policies
Symbolic links
Examples
Local networks
Remote networks
Custom device drivers
TCP/IP Networking
Introduction
Stack configurations
Structure of the TCP/IP manager
Socket API
Database routines
/etc/resolv.conf
/etc/protocols
/etc/services
Multiple stacks
IP filtering and NAT
NTP
Dynamic host configuration
AutoIP
PPP over Ethernet
/etc/autoconnect
Embedded web server
CGI method
SSI method
Data server method
High Availability
What is High Availability?
An OS for HA
Inherent HA
HA-specific modules
Custom hardware support
Client library
Recovery example
High Availability Manager
HAM and the Guardian
HAM hierarchy
Entities
Conditions
Actions
Alternate actions
Publishing autonomously detected conditions
State transitions
Other conditions
Subscribing to autonomously published conditions
Trigger based on state transition
Trigger based on specific published condition
HAM as a filesystem
Multistage recovery
HAM API
Adaptive Partitioning
What are partitions?
If adaptive partitions aren't boxes, what are they?
Why adaptive?
Benefits of adaptive partitioning
Engineering product performance
Partitioning
Partition inheritance
Dealing with design complexity
Providing security
Debugging
Adaptive partitioning thread scheduler
The Photon microGUI
A graphical microkernel
The Photon event space
Regions
Events
Graphics drivers
Multiple graphics drivers
Color model
Font support
Stroke-based fonts
Unicode multilingual support
UTF-8 encoding
Animation support
Video overlay
Layers
Printing support
The Photon Window Manager
Widget library
Fundamental widgets
Label widget (PtLabel)
Push-button widget (PtButton)
Text input widgets (PtText, PtMultiText)
Toggle-button widgets (PtToggleButton)
Graphical widgets (PtArc, PtPixel, PtRect, PtLine, PtPolygon, PtEllipse, PtBezier, PtGrid)
Scrollbar widget (PtScrollbar)
Separator widget (PtSeparator)
Slider widget (PtSlider)
Image widgets (PtLabel, PtButton)
Progress-bar widget (PtProgress)
Numeric widgets (PtNumericInteger, PtNumericFloat)
Container widgets
Window widget (PtWindow)
Group widget (PtGroup)
Panel group widget (PtPanelGroup)
Viewport widget (PtScrollContainer)
Background widget (PtBkgd)
Advanced widgets
Menu-related widgets (PtMenu, PtMenuBar, PtMenuButton)
Toolbar widgets (PtToolbar, PtToolbarGroup)
List widget (PtList)
Pulldown list widget (PtComboBox)
Tree widget (PtTree)
Terminal widgets (PtTty, PtTerminal)
Divider widget (PtDivider)
Trend graph widgets (PtTrend and PtMTrend)
Color-selection widgets (PtColorSel, PtColorPanel, PtColorPatch, PtColorSelGroup, PtColorWell)
Web client widget (PtWebClient)
Convenience functions
File-selection dialog (PtFileSelection)
Font-selection dialog (PtFontSelection)
Print-selection dialog (PtPrintSelection)
Alert dialog (PtAlert)
Notice dialog (PtNotice)
Prompt dialog (PtPrompt)
Driver development kits
Summary
Multimedia
Overview
MME functional areas
Mediastore access
Mediastore content management
Media playback and recording
The MME interface
Component-based architecture
The MME resource managers
Glossary
Technical Notes
About These Technotes
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
IP Tunneling (Generic Routing Encapsulation)
How do I use it?
A more typical example
Final tidbits
PPPOE and Path MTU Discovery
Making Multiple Images
What's a multiple image?
Restrictions on XIP image filesystems
Mounting an IFS
Using a second IFS
Example: mounting an IFS on the MGT5200 Total board
Sample buildfiles
os1.build
os2.build
Programming into flash
Putting the images together
Test program
See also
QNX Neutrino and QNX4 bootloader partitions
Encountering the .altboot message
Booting or rebooting using a partition bootloader
Resolving problems with bootloader partitions
Managing POSIX Message Queues
Choosing the Correct MTD Routine for the Flash Filesystem
Unusual flash configurations
MTD source code
Manufacturer
Choosing read callout
Choosing ident callout
Choosing write callout
Choosing erase callout
Choosing sync callout
Choosing suspend and resume callouts
Choosing islock, lock, unlock, unlockall callouts
Asynchronous Messaging
Overview
Asynchronous-messaging functions
Examples
Example 1: Sending one message
Example 2: Sending more than one message at a time
Example 3: Flushing
Example 4: Setting up an event that triggers the copy
Example 5: Using time as the trigger
Example 6: Client and server processes
Reading a Kernel Dump
I2C (Inter-Integrated Circuit) Framework
Overview
Hardware interface
Function table
version_info function
init function
fini function
send function
recv function
abort function
set_slave_addr function
set_bus_speed function
driver_info function
ctl function
Access function
Sample calls
Application interfaces
Shared-library interface
Resource manager interface
Supporting data types
DCMD_I2C_DRIVER_INFO
DCMD_I2C_SEND
DCMD_I2C_RECV
DCMD_I2C_SENDRECV
DCMD_I2C_SET_BUS_SPEED
DCMD_I2C_SET_SLAVE_ADDR (deprecated)
DCMD_I2C_MASTER_SEND (deprecated)
DCMD_I2C_MASTER_RECV (deprecated)
Resource manager design
SPI (Serial Peripheral Interface) Framework
Hardware interface
Function table
Low-level module handle structure
init function
fini function
drvinfo function
devinfo function
setcfg function
xfer function
dma_xfer function
API library
spi_open
spi_close
spi_setcfg
spi_getdevinfo
spi_getdrvinfo
spi_read
spi_write
spi_xchange
spi_cmdread
spi_dma_xchange
Fine-tuning your network drivers
High-performance NICs
Low-performance NICs
Tuning high-performance NIC drivers
PHY probing
Speed and duplex
Migrating to QNX Neutrino for ARMv6-Processor-Based Boards
Overview
BSP configuration
armv_chip
armv_cache
armv_pte
setup
Behavior of procnto-v6 shm_ctl
Using ARMv6 instructions
QNX Neutrino for ARMv7 Cortex A-8 and A-9 Processors
Contents
Overview
libstartup
armv_chip
armv_cache
armv_pte
setup
arm_chip_detect
Behavior of procnto-v6 shm_ctl
The procnto-v6 microkernel
CPU flags
Board startup for SMP
board_smp_num_cpu
board_smp_init
board_smp_start
board_smp_adjust_num
Using ARMv7 instructions
Compiling for the ARMv7 architecture
Using Makefiles
Using qcc
Using command-line compile options
Generating hardware floating point instructions
Optimizing source code
Vector Floating Point (VFP) math library
BSP configuration for VFP
Supporting Vector Floating Point Functionality for ARM Processors
Overview
Restrictions on VFP usage
BSP configuration
Using VFP instructions
How to create a Runtime Kit from the QNX Software Development Platform
Introduction
Organization of the Runtime Kit
Standard installation steps
Creating the archives
Creating the CD
Sample installation script
Backtraces
Overview
API
Examples
Obtaining and printing a memory map
Backtracing a thread in another process
Backtracing another thread within the same process
Backtracing the current thread
Doing a BT_SELF backtrace in a signal handler
Backtracing a collection of threads
QNX support for using Freescale e500 SPE
Overview
Configuring for floating point
Configuring for the command line
Reloadable Image Filesystems
Introduction
Command-line options
Kernel restoration
Secondary IFS restoration
Examples
Kernel restoration
Secondary IFS restoration
Power callout
Minidriver support
Performance measurements
Appendix
Sample program that uses sysmgr_cpumode to call the power callout
Manually mounting an IFS
Sample script to combine IPL with boot image for the EDOSK7780
Commands to burn a new IPL/Boot image for the EDOSK7780
Filesystems and Power Failures
Introduction
Guidelines for using hard drives in an environment subject to abrupt power failures
Recipe for creating hard drive corruption
How to limit the possible hard drive corruption
How to repair hard disk corruption
Power failures while writing
Process Performance State Manager (PPSM)
Overview
PPSM functions
ppsm_init
ppsm_fini
ppsm_sys_mode
ppsm_set_polling_interval
ppsm_set_threshold
ppsm_get_cpuload
ppsm_get_cpufreq
ppsm_speedstep_enable
ppsm_speedstep_disable
ppsm_set_policy
ppsm_set_notify_handler
Customizing language sort orders for libqdb_cldr.so
Standard language sort order files
Sort order algorithm
Contractions and expansions
Locale data files
Adding a new sort order locale
Converting CLDR POSIX files
Tailoring a sort order algorithm
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Getting to Know the OS
How QNX Neutrino compares to other operating systems
UNIX
Microsoft Windows
Limitations
How Neutrino is unique
Resource managers
Logging In, Logging Out, and Shutting Down
root or non-root?
Logging in
Photon mode
Text mode
Once you've logged in
Logging out
Photon mode
Text mode
Shutting down and rebooting
Managing User Accounts
What does a user account do?
User accounts vs user IDs: login, lookup, and permissions
What happens when you log in?
Account database
/etc/passwd
/etc/group
/etc/shadow
/etc/.pwlock
Managing your own account
Changing your password
Forgot your password?
Managing other accounts
Adding users
Removing accounts
Defining groups
Creating a new group
Modifying an existing group
Troubleshooting
Using the Command Line
Command line or GUI?
Processing a command
Character-device drivers
Input modes
Terminal support
Telnet
The keyboard at a glance
Physical and virtual consoles
Shell
Editing the command line
Command and filename completion
Reserved words
Entering multiple commands
Aliases
Substitutions
Directories --- tilde expansion
Parameters
Commands
Arithmetical expressions
Braces
Filename generation
Redirecting input and output
Pipes
Quoting special characters
History: recalling commands
Shell scripts
Utilities
Understanding command syntax
Displaying online usage messages
Executing commands on another node or tty
Priorities
Basic commands
International keyboards
Neutrino for MS-DOS users
DOS commands and their Neutrino equivalents
diskcomp
MS-DOS local command-interpreter variables
Troubleshooting
Using the Photon microGUI
Overview of Photon
Why is it called Photon?
Why is it called a microGUI?
Your workspace
Modifying the shelf
Modifying the Launch menu
Creating items and submenus
Target files
Controlling the order of items
Additional menu control
Troubleshooting
Modifying the Desktop menu
Starting applications automatically
Configuration tools
Browsing files with the File Manager
Getting help with the Helpviewer
Searching for a topic or keyword
Bookmarking a topic to view it again later
Navigating around help files
Viewing more than one topic at once
Surfing the web
Connecting to other systems
Phditto
Phindows
Configuring the Neutrino machine for TCP/IP use
Starting Phindows
Additional options
Hotkeys and shortcuts
pterm
Text field
Window
Workspace
Exiting Photon
Photon environment variables
Troubleshooting
Working with Files
Everything is a file
Types of files
Filenames and pathnames
Absolute and relative pathnames
Dot and dot-dot directories
A note about cd
No drive letters
Pathnames that begin with a dot
Extensions
Pathname-space mapping
Filename rules
Where everything is stored
/
/bin
/boot
/dev
/etc
/fs
/home
/lib
/proc
/root
/sbin
/tmp
/usr
/var
File ownership and permissions
Setuid and setgid
Sticky bit
Default file permissions
Filename extensions
Troubleshooting
Using Editors
Choosing an editor
Supported editors
vi
ped
Specifying the default editor
Controlling How Neutrino Starts
What happens when you boot?
Loading a Neutrino image
Power-Safe filesystem
QNX 4 filesystem
diskboot
.diskroot
/etc/system/sysinit
Device enumeration
oem file or directory
overrides file or directory
Host-specific enumerators
/etc/rc.d/rc.sysinit
rc.local
tinit
Updating disk drivers
Applying a driver update patch after you've installed QNX Neutrino
Troubleshooting
Configuring Your Environment
What happens when you log in?
Customizing your home
Configuring your shell
/etc/profile
$HOME/.profile
ksh's startup file
Environment variables
Setting PATH and LD_LIBRARY_PATH
Configuration strings
Setting the time zone
Caveats
Examples
Eastern time
Pacific time
Newfoundland time
Central European time
Japanese time
Programming with time zones
Customizing Photon
Starting applications automatically
The right fonts
Input methods
Terminal types
Troubleshooting
Writing Shell Scripts
What's a script?
Available shells
Running a shell script
The first line
Arguments to a ksh script
Arguments to a gawk script
Arguments to a perl script
Example of a Korn shell script
Efficiency
Caveat scriptor
Working with Filesystems
Introduction
Setting up, starting, and stopping a block filesystem
Mounting and unmounting filesystems
Image filesystem
Configuring an OS image
/dev/shmem RAM filesystem
QNX_4 filesystem
Extents
Filenames
Links and inodes
Removing links
Directory links
Symbolic links
Filesystem robustness
Power-Safe filesystem
Booting
Snapshots
DOS filesystem
CD-ROM filesystem
Linux Ext2 filesystem
Flash filesystems
CIFS filesystem
NFS filesystem
Setting up NFS
NFS server
NFS client
Universal Disk Format (UDF) filesystem
Apple Macintosh HFS and HFS Plus
Windows NT filesystem
Inflator filesystem
Troubleshooting
Using Qnet for Transparent Distributed Processing
What is Qnet?
When should you use Qnet?
Conventions for naming nodes
Software components for Qnet networking
Starting Qnet
Creating useqnet
Starting the network manager, protocols, and drivers
Checking out the neighborhood
Populating /net
Troubleshooting
Is Qnet running?
Are io-pkt* and the drivers running?
Is the network card functional?
How do I get diagnostic information?
Is the hostname unique?
Are the nodes in the same domain?
TCP/IP Networking
Overview of TCP/IP
Clients and servers
Hosts and gateways
Name servers
Routing
Software components for TCP/IP networking
Running the Internet daemons
Running multiple instances of the TCP/IP stack
Dynamically assigned TCP/IP parameters
Using PPPoE
Establishing a PPPoE session
Starting a point-to-point connection over PPPoE session
Using DHCP
Using AutoIP
Troubleshooting
Are io-pkt* and the drivers running?
What is the name server information?
How do I map hostnames to IP addresses?
How do I get the network status?
How do I make sure I'm connected to other hosts?
How do I display information about an interface controller?
Printing
Overview of printing
Printing with lpr
User interface
lpd --- printer daemon
lpr --- start a print job
lprq --- show printer queue
lprrm --- remove jobs from a queue
lprc --- printer-control program
Spooling directories
Access control
Network manager
Printer capabilities: /etc/printcap
A typical setup
Printers on serial lines
Remote printers
Filters
Some /etc/printcap examples
USB printer
Single printer
Multiple printers
Local and remote printers
Remote printing to a printer on another network
Remote printing to a TCP/IP-enabled printer using lpr
Printing with spooler
Setting up spooler
Printing on a USB printer
Remote printing over Qnet
Remote printing over TCP/IP
Troubleshooting
Understanding lpr error messages
lpr error messages
lprq error messages
lprrm error messages
lprc error messages
lpd error messages
Troubleshooting remote printing problems
Connecting Hardware
Introduction
PCI/AGP devices
CD-ROMs and DVDs
Floppy disks
Hard disks
EIDE
Troubleshooting for devb-eide
SCSI devices
SCSI RAID
LS-120
ORB
Zip and Jaz disks
Magnetic optical drives
RAM disks
Input devices
Mice and keyboards
Touchscreens
Audio cards
ISA cards
Non-PnP-based
PnP-based
PCI Cards
PCCARD and PCMCIA cards
USB devices
Printers
Mice and keyboards
Touchscreens
Ethernet adapters
Mass-storage devices
Troubleshooting
Character devices
General serial adapters
Multiport serial adapters
Parallel ports
Terminals
I/O attributes
Network adapters
Identify your NIC
Start the driver
Make sure the driver is communicating properly with the hardware
Physical Node ID
Current Physical Node ID
Current Operation Rate
Active Interface Type
Active PHY Address
Power Management State
Maximum Transmittable data Unit
Maximum Receivable data Unit
Receive Checksumming Enabled, Transmit Checksumming Enabled
Hardware Interrupt
DMA Channel
I/O Aperture
Memory Aperture
ROM Aperture
Promiscuous Mode
Multicast Support
Packets Transmitted OK
Bytes Transmitted OK
Total Packets Transmitted Bad
Broadcast Packets Transmitted OK
Multicast Packets Transmitted OK
Memory Allocation Failures on Transmit
Packets Received OK
Bytes Received OK
Single Collisions on Transmit
Multiple Collisions on Transmit
Deferred Transmits
Late Collision on Transmit errors
Transmits aborted (excessive collisions)
Transmits aborted (excessive deferrals)
Transmit Underruns
No Carrier on Transmit
Jabber detected
Receive Alignment errors
Received packets with CRC errors
Packets Dropped on receive
Ethernet Headers out of range
Oversized Packets received
Frames with Dribble Bits
Total Frames experiencing Collision(s)
Modems
Internal modems
ISA non-PnP
ISA PnP
PCI-based modems
External modems
Cable Modems / ISDN
Testing modems
Troubleshooting modems
Video cards
Changing video modes in Photon
Manually setting up your video card
Setting up multiple displays
GF
Photon
Configuring multiple displays with multiple video cards
Configuring multiple displays using a single video device
Setting Up an Embedded Web Server
Where should you put the files?
Running Slinger
Dynamic HTML
CGI method
SSI method
Syntax for SSI Commands
Data server method
Security precautions
Examples
Configuration
Script
rand_images.c
rand_images.pl
Using CVS
A crash course in CVS
CVS basics
Revisions
Basic operations
Repositories
Editors and CVS
Creating a repository
Getting files in and out of the repository
Putting changes back into the repository
Importing an existing source tree
Getting information on files
Changing files
More information on files: what changed and why
CVS and directory trees
Concurrent development: branching and merging
Branching
Merging
Removing and restoring files
Setting up a CVS server
Backing Up and Recovering Data
Introduction
Backup strategies
Choosing backup storage media and location
Choosing a backup format
Controlling your backup
Archiving your data
Creating an archive
Extracting from an archive
Compressing an archive
Decompressing the archive
Storage choices
CDs
Bootable CDs
Removable media
Backing up physical hard disks
Ghost Images
Remote backups
CVS
Remote filesystems
Other remote backups
QNX_4 disk structure
Partition components
Loader block
Root block
Bitmap blocks
Root directory
Directories
Links
Extent blocks
Files
File-maintenance utilities
fdisk
dinit
chkfsys
dcheck
zap
Recovering a zapped file
spatch
Recovering disks and files
Using chkfsys
When to run chkfsys
Using chkfsys on a live system
Recovering from a bad block in the middle of a file
What to do if your system will no longer boot
If the mount fails...
If the disk is unrecoverable
If the filesystem is intact
Securing Your System
General OS security
Remote and local attacks
Remote exploits
Local exploits
Effects of attacks
Viruses
Neutrino security in general
Neutrino-specific security issues
Message passing
pdebug
qconn
Qnet
IPSec
Setting up a firewall
Fine-Tuning Your System
Getting the system's status
Improving performance
Faster boot times
Filesystems and block I/O (devb-*) drivers
Performance and robustness
Metadata updates
Ordering the updates to metadata
Throughput
Configuration
Block I/O commit level
Record size
Double buffering
File descriptor vs standard I/O
Pregrowing a file
Fine-tuning USB storage devices
How small can you get?
Understanding System Limits
The limits on describing limits
Configurable limits
Filesystem limits
Querying filesystem limits
QNX 4 filesystem
Power-Safe (fs-qnx6.so) filesystem
Ext2 filesystem
DOS FAT12/16/32 filesystem
CD-ROM (ISO9660) filesystem
NFS2 and NFS3 filesystem
CIFS filesystem
Embedded (flash) filesystem
Embedded Transaction filesystem (ETFS)
UDF filesystem
Apple Macintosh HFS and HFS Plus
Windows NT filesystem
Other system limits
File descriptors
Synchronization primitives
TCP/IP limits
Shared memory
Message queues
Platform-specific limits
Technical Support
Examples
Buildfile for an NFS-mounting target
qnxbasedma.build
Buildfile that doesn't use diskboot
.profile
.kshrc
Configuration files for spooler
Using lpr
Using NCFTP
Using SAMBA
PPP with CHAP authentication between two Neutrino boxes
Glossary
Utilities Reference
About This Reference
What you'll find in this reference
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Utility Conventions
Syntax conventions
Interpreting utility syntax
Invoking utilities
File conventions
Signal conventions
Exit status conventions
Error conventions
Utilities
A
/etc/acl.conf
Description:
addr2line
Description:
Contributing author:
addvariant
Description:
Dealing with GNU projects
Creating the initial files
Creating the subdirectories and files
Squashing levels
Examples:
appbuilder
Description:
applypatch
Description:
aps
Description:
Examples:
ar
Description:
Contributing author:
arp
Description:
/etc/autoconnect
Description:
B
basename
Description:
Examples:
bc
Description:
Bases
Variables
Assignment operators
The if statement
Iteration statements
User-defined functions
Builtin variables and functions
Library functions
bdftophf2
Description:
Examples:
bindres
Description:
bison
Description:
Contributing author:
bkgdmgr
Description:
bootpd
Description:
/etc/bootptab
Description:
brconfig
Description:
Examples:
bunzip2
Description:
bz2cat
Description:
bzip2
Description:
C
c++filt
Description:
Contributing author:
calib
Description:
Examples:
cam-cdrom.so
Description:
cam-disk.so
Description:
cam-optical.so
Description:
cat
Description:
Examples:
CC, cc
Description:
Contributing author:
chat
Description:
Chat script
Abort strings
Report strings
Timeout
Sending EOT
Generating break
Escape sequences
chattr
Description:
Examples:
chgrp
Description:
Examples:
chkdosfs
Description:
Summary of filesystem commands
Examples:
Contributing author:
chkfsys
Description:
After a power failure
Summary of filesystem commands
Examples:
chkqnx6fs
Description:
Summary of filesystem commands
Examples:
chmod
Description:
Symbolic Modes
Some examples of symbolic modes:
Octal Modes
Setgid and setuid
chown
Description:
Examples:
cksum
Description:
clear
Description:
cmp
Description:
Examples:
/etc/context.conf
Description:
coreinfo
Description:
cp
Description:
General
Recursive copying
Examples:
cpio
Description:
Examples:
cron
Description:
crontab
Description:
Sample crontab entries
Examples:
ctags
Description:
Examples:
Contributing author:
cut
Description:
Examples:
cvs
Description:
add
admin
annotate
checkout
commit
diff
edit
editors
export
history
import
init
log
login
logout
rdiff
release
remove
rtag
status
tag
unedit
update
watch
watchers
Keyword substitution
Contributing author:
D
D entries before deva-*
deva-*
devb-*
devc-*
devf-*
devg-*
devh-*
devi-*
devn-*
devnp-*
devp-*
devu-*
D entries beyond devu-*
date
Description:
Displaying the date
Setting the date
Examples:
dcheck
Description:
Examples:
dd
Description:
Examples:
Contributing author:
deflate
Description:
Examples:
deva-ctrl-4dwave.so
Targets:
Description:
Examples:
deva-ctrl-audiopci.so
Targets:
Description:
Examples:
Contributing author:
deva-ctrl-cs4281.so
Targets:
Description:
Examples:
deva-ctrl-ess1938.so
Targets:
Description:
Examples:
deva-ctrl-geode.so
Targets:
Description:
Examples:
deva-ctrl-i8x0.so
Targets:
Description:
Examples:
deva-ctrl-intel_hda.so
Targets:
Description:
Examples:
deva-ctrl-nmg6.so
Targets:
Description:
Examples:
deva-ctrl-sb.so
Description:
deva-ctrl-via686.so
Targets:
Description:
Examples:
deva-ctrl-vortex.so
Targets:
Description:
Examples:
Contributing author:
deva-ctrl-ymfds1.so
Targets:
Description:
Examples:
Contributing author:
deva-mixer-ac97.so
Description:
deva-mixer-ak4531.so
Description:
deva-mixer-hda.so
Description:
deva-util-restore.so
Targets:
Description:
devb-adpu320
cam options
cdrom options
disk options
optical options
adpu320 options
blk options
Description:
Examples:
devb-aha8
cam options
cdrom options
disk options
optical options
aha8 options
blk options
Description:
Examples:
devb-ahci
cam options
ahci options
blk options
Description:
Examples:
devb-btmm
cam options
cdrom options
disk options
optical options
btmm options
blk options
Description:
Examples:
devb-eide
blk options
cam options
cdrom options
disk options
eide options
Interface-specific options:
Device-specific options:
Description:
Examples:
devb-fdc
Targets:
cam options
disk options
fdc options
blk options
Description:
Examples:
devb-loopback
loopback options
blk options
Description:
Driver support
Mounting
devb-mvSata
cam options
mvSata options
blk options
Description:
Examples:
devb-ram
cam options
disk options
ram options
blk options
Description:
Examples:
devb-umass
cam options
umass options
blk options
Description:
Examples:
devc-con, devc-con-hid
Targets:
Description:
Keyboard control
Character sets
Character set defaults
Character set example:
ANSI screen control codes
C0 control codes
ESC control sequences
C1 control characters (220+)
CSI control sequences
Graphic rendition
Color numbers
Modes
Mapping from QNX keyboard to ANSI keys
International keyboard layouts
Examples:
devc-par
Targets:
Description:
Examples:
devc-pty
Description:
Examples:
devc-ser8250
Targets:
Description:
Examples:
devc-serpci
Targets:
Description:
devc-serusb
Targets:
Description:
devc-serzscc
Targets:
Description:
Examples:
devf-generic
Targets:
Description:
Verbose output
Examples:
devf-ram
Targets:
Description:
Examples:
devg-ati_rage128.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-carmine.so
Targets:
Description:
Supported chipsets
2D Acceleration features
Other features
Resolution and refresh support
The carmine.conf file
Alpha layer support
devg-chips.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-coral.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
The coral.conf file and dual-head
devg-extreme2.so
Targets:
Description:
Supported chipsets
2D Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-flat.so
Targets:
Description:
devg-geode.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-gma9xx.so
Description:
Supported chipsets
2D Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-i810.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-i830.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-intelhd.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-matroxg.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-poulsbo.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-radeon.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-rage.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-s3_savage.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-sis630.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-smi5xx.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-smi7xx.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-soft3d.so
Targets:
Description:
Supported chipsets
Acceleration features
devg-soft3d-fixed.so
Targets:
Description:
Supported chipsets
Acceleration features
devg-svga.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-tnt.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-tvia.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-vesabios.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-vmware.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devh-egalax.so
Description:
Examples:
devh-microtouch.so
Description:
Examples:
devh-ps2ser.so
Description:
Examples:
devh-touchintl.so
Description:
Examples:
devh-usb.so
Description:
Examples:
devi-dyna
Description:
Examples:
devi-elo
Description:
Examples:
devi-hid
Targets:
Description:
Examples:
devi-hirun
protocol [protocol_opts...]
device [device_opts...]
filter [filter_opts...]
Description:
Examples:
devi-microtouch
Description:
Examples:
devi-semtech
Description:
Examples:
devi-zytronic
Description:
Examples:
devn-asix.so
Description:
Examples:
devn-crys8900.so
Description:
Examples:
devn-dm9102.so
Description:
Examples:
devn-el509.so
Description:
Examples:
devn-el900.so
Description:
Examples:
devn-epic.so
Description:
Examples:
devn-fd.so
Description:
Examples:
devn-i82544.so
Description:
Examples:
devn-micrel8841.so
Description:
Examples:
devn-ne2000.so
Description:
Examples:
devn-pcnet.so
Description:
Examples:
devn-pegasus.so
Description:
Examples:
devn-rtl.so
Description:
Examples:
devn-rtl8150.so
Description:
Examples:
devn-sis9.so
Description:
Examples:
devn-smc9000.so
Description:
Examples:
devn-speedo.so
Description:
Examples:
devn-tigon3.so
Description:
Examples:
devn-tulip.so
Description:
Examples:
devn-via-rhine.so
Description:
Examples:
devnp-ath.so
Description:
devnp-axe.so
Description:
devnp-bce.so
Description:
Examples:
devnp-bcm1250.so
Description:
Examples:
devnp-bcm43xx.so
Description:
Examples:
devnp-bge.so
Description:
Examples:
devnp-e1000.so
Description:
Examples:
devnp-i80579.so
Description:
Examples:
devnp-i82544.so
Description:
Examples:
devnp-mpcsec.so
Description:
Examples:
devnp-mpc85xx.so
Description:
Examples:
devnp-msk.so
Description:
devnp-ral.so, devnp-ural.so
Description:
devnp-rtl8169.so
Description:
Examples:
devnp-rum.so
Description:
devnp-shim.so
Description:
Examples:
devnp-speedo.so
Description:
Examples:
devp-pccard
Description:
Resources and Server Configuration Files
CardBus
Examples:
devu-ehci.so
Targets:
Description:
Examples:
devu-kbd
Description:
Examples:
devu-mouse
Description:
Examples:
devu-ohci.so
Targets:
Description:
Examples:
devu-prn
Targets:
Description:
Examples:
devu-uhci.so
Targets:
Description:
Examples:
df
Description:
Examples:
dhcp.client
Description:
/etc/dhcp/dhcp-up
/etc/dhcp/dhcp-options
dhcpd
Description:
OMAPI
Lease object
Host object
Control object
Failover-state object
Examples:
Contributing author:
/etc/dhcpd.conf
Description:
File format
Scope
host keyword
group keyword
subnet keyword
When a subnet becomes a shared network
For clients on more than one subnet
shared-network keyword
global keyword
Statements
Range statements
Permission statements
Parameter statements
DHCP option statements
Data types in DHCP options
Standard DHCP option statements
Troubleshooting
Related issues
Dynamic address allocation
Preventing IP address conflicts
Security
Examples:
/var/state/dhcp/dhcpd.leases
Description:
Examples:
dhcprelay
Description:
Relay agent information options
Specifying DHCP servers
Examples:
Contributing author:
diff
Description:
Contributing author:
diff3
Description:
Sample input files
Sample file #1 --- lao
Sample file #2 --- tzu
Sample file #3 --- tao
Detailed description of diff3 normal format
diff3 hunks
An example of diff3 normal format
Merging from a common ancestor
Selecting which changes to incorporate
Marking conflicts
Generating the merged output directly
How diff3 merges incomplete lines
Saving the changed file
Contributing author:
dig
Description:
dinit
Description:
Summary of filesystem commands
Examples:
dirname
Description:
Examples:
diskboot
Description:
Examples:
dispconf
Description:
dloader
Targets:
Description:
Examples:
dnssec-dsfromkey
Description:
dnssec-keyfromlabel
Description:
dnssec-keygen
Description:
dnssec-signzone
Description:
ds
Description:
Data server library
Examples:
du
Description:
Examples:
dumpefs
Description:
dumper
Description:
Examples:
dumpifs
Description:
Examples:
E
echo
Description:
Examples:
ed
Description:
egrep
Description:
elvis
Description:
Visual mode
Input mode
Operators
Special cases
Named buffers
Movement commands
Cursor movement
Marking
Tags
Inserting text
Input mode
Deleting, yanking, putting
Filters
Shifting text
Miscellaneous commands
Searching
Global & substitute commands
Substitute command
Global command
Undo and retrieving
Screen commands
Writing files
Editing other files
Reading in a file
Leaving elvis
Escaping to a shell
Macros
Abbreviations
Options
ex commands
Contributing author:
enum-devices
Description:
Overview
Matching rules
Configuration files
etc/system/enum/devices/
etc/system/enum/devices/usb/
etc/system/enum/include/
Configuration file precedence
Configuration file contents
start clause
requires clause
driver clause
mount clause
enumerator clause
set clause
append clause
uniq clause
waitfor clause
echo clause
tag clause
config clause
use clause
Macros
Bus-enumerator protocol
Examples:
enum-usb
Targets:
Description:
Overview
USB device information
Microsoft descriptors
Behavior when enumerating a single USB device
The enum-usb configuration file
Sample enum-usb.conf configuration file
Device
Ignore
Config
Multiple configuration selections
Composing Config option statements
Set
Composing Set option statements
user_spec_id
inc_user_spec_id
Using enum-devices with enum-usb
Examples:
enum-usb.conf
enum-devices configuration file
env
Description:
Examples:
errno
Description:
Examples:
esh
Description:
Command-line format
Filename expansion
Quoting
Escape character (backslash)
Double quotes
Builtin commands
. (dot) command
alias command
cd command
emount command
ewaitfor command
exec command
exit command
export command
kill command
reopen command
set command
unset command
Examples:
etfsctl
Targets:
Description:
Device
Pools
Counts
Errors
Examples:
expand
Description:
Examples:
/etc/exports
Description:
Limitations:
expr
Description:
Examples:
F
false
Description:
fcat
Description:
Contributing author:
fdformat
Description:
Examples:
fdisk
Description:
Partition types
Commands
Interactive mode
Examples:
fesh
Description:
ecp command
edf command
eecho command
els command
emkdir command
epwd command
erm command
ermdir command
fgrep
Description:
file
Description:
Contributing author:
find
Description:
Primary expressions
Formatted printing (-printf and -fprintf primitives)
Backslash (\) Escape Codes
Format Codes
Examples:
finstall
Description:
flashctl
Description:
Filesystem information
Examples:
flex
Description:
Contributing author:
fmt
Description:
fold
Description:
Examples:
fontinfo
Description:
Examples:
fpemu.so
Description:
freeze
Description:
Examples:
Contributing author:
fs-cd.so
Description:
fs-cifs
Description:
Examples:
fs-dos.so
Description:
Summary of filesystem commands
fs-etfs-ram
Common options
Driver options
Description:
Examples:
fs-ext2.so
Description:
Summary of filesystem commands
fs-mac.so
Description:
Summary of filesystem commands
fs-nfs2
Description:
Examples:
fs-nfs3
Description:
Examples:
fs-nt.so
Description:
Summary of filesystem commands
fs-qnx4.so
Description:
Summary of filesystem commands
fs-qnx6.so
Description:
Required properties of the device
Summary of filesystem commands
fs-udf.so
Description:
fsysinfo
Description:
Examples:
/etc/fstab
Description:
ftp
Description:
/etc/ftpchroot
Description:
ftpd
Description:
Setting up a restricted ftp subtree
/etc/ftpd.conf
Description:
Default settings
/etc/ftpusers
Description:
Related files
fullpath
Description:
Examples:
G
g++
Description:
Contributing author:
/etc/gateways
Description:
Other parameter settings
gawk
Description:
Expressions:
Variables
Patterns
Special patterns --- BEGIN and END
Regular expressions
Pattern ranges
Expression patterns
Actions
Output statements
Functions:
Arithmetic Functions:
String functions:
Input/Output and general functions:
User-defined functions
Sample awk programs:
Examples:
Contributing author:
gcc
QNX Neutrino cross-development options
Overall options
C language options
C++ language options
Warning options
Debugging options
Optimization options
Preprocessor options
Assembler option
Linker options
Directory options
Target options
Machine-dependent options
Code-generation options
Description:
Contributing author:
gcov
Description:
Contributing author:
gdb
Description:
Contributing author:
getconf
Description:
Examples:
getty
Description:
gf-calib
Description:
gns
Description:
APIs and advertising rules
Path namespace
Connection rules for GNS
Multiple GNS servers
Multiple service domains
Redundant GNS servers
Auto-scanning client
Backup server mode
GNS and tightly coupled network
Special pathname
Examples:
gprof
Description:
Contributing author:
grep
Description:
Basic regular expressions
Extended Regular Expressions
Fixed Regular Expressions
Examples:
gunzip
Description:
Contributing author:
gzip
Description:
Contributing author:
H
ham
Description:
hamctrl
Description:
hd
Description:
Output formats
Examples:
head
Description:
Examples:
helpviewer
Description:
Creating help files:
Supported elements
Supported entities
Creating topic files
Level 1
Level 2
Level 3
An example
Publishing your topic file
Searching
hidview
Description:
Examples:
hogs
Description:
Examples:
host
Description:
hostapd
Description:
hostname
Description:
/etc/hosts
Description:
/etc/hosts.equiv
Description:
Positive entries
Negative entries
I
id
Description:
Examples:
if_up
Description:
Examples:
ifconfig
Description:
Parameters
Diagnostics
Examples:
ifwatchd
Description:
Examples:
indent
Description:
inetd
Description:
Internal services
Effects of SIGHUP
/etc/inetd.conf
Description:
Setting the IPsec policy
IPv6 TCP/UDP behavior
Examples:
inflator
Description:
Examples:
infocmp
Description:
input-cfg
Description:
inputtrap
Description:
Probing
Using a trapfile
Examples:
io-audio
Description:
Examples:
io-blk.so
Suffixes for size, memory, and time arguments
blk options
Filesystem options
Description:
Controlling writing operations
Naming schemes
io-display
Description:
The io-display configuration file
The io-display server and Photon
Examples:
io-graphics
Description:
io-graphics configuration options
io-hid
Description:
Examples:
io-pkt-v4, io-pkt-v4-hc, io-pkt-v6-hc
Description:
Generic driver options
Examples:
io-usb
Description:
Selecting a driver configuration
Examples:
J
join
Description:
Examples:
K
kill
Description:
Examples:
ksh
Description:
Shell startup
Command syntax
Compound commands
Quoting
Aliases
Substitution
Parameters
Tilde expansion
Brace expansion (alternation)
Filename patterns
Input/output redirection
Arithmetic expressions
Coprocesses
Functions
POSIX mode
Command execution and builtin commands
. (dot) builtin command
: (null) builtin command
alias builtin command
bg builtin command
bind builtin command
break builtin command
builtin builtin command
cd builtin command
command builtin command
continue builtin command
echo builtin command
eval builtin command
exec builtin command
exit builtin command
export builtin command
false builtin command
fc builtin command
fg builtin command
getopts builtin command
hash builtin command
jobs builtin command
kill builtin command
let builtin command
print builtin command
pwd builtin command
read builtin command
readonly builtin command
return builtin command
set builtin command
shift builtin command
test builtin command
times builtin command
trap builtin command
true builtin command
typeset builtin command
ulimit builtin command
umask builtin command
unalias builtin command
unset builtin command
wait builtin command
whence builtin command
Job control
emacs interactive input-line editing
Contributing author:
L
ld
Description:
Contributing author:
ldd
Description:
Examples:
ldrel
Targets:
Description:
less
Description:
Commands:
Contributing author:
link
Description:
ln
Description:
Examples:
ln-w
Description:
logger
Description:
Examples:
login
Description:
logout
Description:
lpd
Description:
lpr
Description:
Diagnostics
lprc
Description:
lprq
Description:
lprrm
Description:
ls
QNX Neutrino extensions:
Description:
Filetype and permissions
lsm-autoip.so
Description:
Examples:
lsm-pf-v4.so, lsm-pf-v6.so
Description:
lsm-qnet.so
Description:
Examples:
lwresd
Description:
M
m4
Description:
/usr/share/misc/magic
Description:
make
Description:
Examples:
Contributing author:
mcd
Targets:
Local mode
Limitations
Description:
Overview
MCD rules
Monitor a mediastore
Monitor namespace changes
Monitor the presence of files
MCD server
Operational flow
Startup
Device or insertion
Configuring the MCD
Configuration file sections
Entity descriptions
Parameters
Media content rules
Parameters
Notification routine
Using the MCD as a filesystem automounter
First-level entries
Second-level entries
The mcd resource manager interface
.insert and .eject files
.devices directory
Sequence number
Example: Filesystem hierarchy
Read-only entries for rules
Callout templates
Insertion and ejection notification
Arguments
Built-in notification routines
Media content determination
Arguments
Returns
Built-in content detection rules
MOUNT_FSYS special sequences
Client API
Maintained information
Example: Media player
Example: Polling
Stale Rules
Additional Information
Detecting other kinds of system media
Detecting USB and iPod devices
Pattern matching and case-sensitivity
Matching a single rule
Detecting CD insertion with non-media content
CD-changer controlled by external firmware
Using the MCD as a partition enumerator
Examples:
Two-phase filesystem mount example
mcs
Description:
melt
Description:
Contributing author:
mesg
Description:
/etc/mib.txt
Description:
mixer
Description:
Examples:
mkasmoff
Description:
mkcldr
Targets:
Description:
Examples:
mkbuild
Description:
Examples:
mkdir
Description:
Examples:
mkdosfs
Description:
Summary of filesystem commands
Examples:
Contributing author:
mkefs
Description:
Buildfiles
Attributes
bigendian attribute (boolean)
block_size attribute
cd attribute
dperms attribute
filter attribute
followlink attribute (boolean)
gid attribute
max_size attribute
min_size attribute
mount attribute
mountperms attribute
optional attribute (boolean)
perms attribute
prefix attribute
search attribute
spare_blocks attribute
type attribute
uid attribute
Examples:
mketfs
Description:
Buildfiles
Attributes
bigendian attribute (boolean)
block_size attribute
cd attribute
cluster_size attribute
dperms attribute
filter attribute
followlink attribute (boolean)
gid attribute
mountperms attribute
num_blocks attribute
optional attribute (boolean)
perms attribute
prefix attribute
search attribute
type attribute
uid attribute
Examples:
mkfifo
Description:
mkfontdir
Description:
Examples:
mkifs
Description:
Buildfiles
Attributes
autolink attribute (boolean)
+
bigendian attribute (boolean)
cd attribute
chain attribute
code attribute
compress attribute (boolean)
data attribute
dperms attribute
filter attribute
followlink attribute (boolean)
gid attribute
image attribute
keeplinked attribute (boolean)
linker attribute
module attribute
optional attribute (boolean)
page_align attribute (boolean)
pagesizes attribute
perms attribute
phys_align attribute
physical attribute
prefix attribute
ram attribute
raw attribute (boolean)
script attribute (boolean)
search attribute
type attribute
uid attribute
virtual attribute
Script files
argv0 modifier
cpu modifier
external modifier (boolean)
pri modifier
session modifier (boolean)
Bootfile
Image filter
Linker specification
Output image format
Boot prefix
Startup header
Startup
Startup trailer
Image header
Image directory
Files
Image trailer
Notes on XIP versus copy
Examples:
mkimage
Description:
mkkbd
Targets:
Description:
Examples:
mkqnx6fs
Description:
Summary of filesystem commands
Examples:
mkrec
Description:
Examples:
mksbp
Description:
/etc/moduli
Description:
more
Description:
Contributing author:
mount
Description:
Examples:
mq
Description:
mqueue
Description:
mrouted
Description:
Invocation
Configuring mrouted
Configuration command options
Signals
Examples:
Routing tables
Contributing author:
mstrip
Description:
Examples:
mv
Description:
Examples:
N
named
Description:
named-checkconf
Description:
named-checkzone, named-compilezone
Description:
/etc/named.conf
Description:
ndp
Description:
netmanager
Description:
Examples:
netstat
Description:
Default display
Interface display
Routing table display
Specifying an interface
/etc/networks
Description:
newgrp
Description:
nfsd
Description:
Security Issues
Configuring Caches
/etc/nfsstart
Description:
nice
Description:
Examples:
nicinfo
Description:
Examples:
nm
Description:
Contributing author:
nohup
Description:
nslookup
Description:
Interactive commands
Diagnostics:
Contributing author:
/etc/nsswitch.conf
Description:
Sources
Databases
Status codes
Actions
Format of the file
Examples:
nsupdate
Description:
ntpd
Description:
Basic operation of the ntpd utility
Frequency discipline
Operating modes
Poll interval control
The huff-n'-puff filter
ntpdate
Description:
ntpdc
Description:
Interactive commands
Control message commands
Runtime configuration requests
ntpq
Description:
Internal commands
Control message commands
Tally codes
System variables
Peer variables
Flash codes
ntptrace
Description:
O
objcopy
Description:
Contributing author:
objdump
Description:
Contributing author:
od
Description:
Output formats
Examples:
omshell
Description:
Opening a connection
Associating local and remote objects
Viewing a remote object
Modifying a remote object
New remote objects
Resetting attributes
on
Description:
Setting the runmask
Examples:
op
Description:
openssl
Description:
Command summary
Standard commands
Message digest commands
Encoding and cipher commands
Pass phrase arguments
P
/etc/party.conf
Description:
passwd
Description:
passwd file
paste
Description:
Examples:
patch
Description:
Contributing author:
pax
Modes of operation:
Description:
Examples:
pccard-launch
Description:
Examples:
pci
Description:
Examples:
pci-bios, pci-bios-v2
Targets:
Description:
pcnfsd
Description:
/etc/pcnfsd.conf
Description:
pdebug
Description:
Examples:
ped
Description:
Cursor movement commands
Deletion commands
Formatting commands
Centering commands
Clipboard commands
Special commands
File menu operations
Search menu operations
Options menu operations
Type menu operations
Examples:
pf
Description:
ioctl interface
Examples:
/etc/pf.conf
Description:
Statement order
Macros
Tables
Options
Traffic normalization
Queueing
Translation
Packet filtering
Parameters
Routing
Pool options
Stateful inspection
State modulation
SYN proxy
Stateful tracking options
Operating system fingerprinting
Blocking spoofed traffic
Fragment handling
Anchors
Translation examples
Filter examples
Grammar
Associated files
pfctl
Description:
pfm
Description:
Viewing and editing files
Moving, deleting, and renaming files
Navigating
Setting pfm preferences
Examples:
ph
Description:
Examples:
phablang
Description:
phabmsg
Description:
Examples:
phcalc
Description:
Examples:
phdialer
Description:
phditto
Description:
Remote connectivity via modem
Remote connectivity via TCP/IP
Examples:
phfind
Description:
phfont
Description:
Examples:
fontdir
fontext
fontmap
fontopts
phgrafx
Description:
Changing the graphics resolution
Selecting the refresh rate
Selecting hardware or software cursor rendering
Global Options
Advanced Options
Hardware Details
Region Settings
Examples:
phin
Description:
Examples:
phlip
Description:
Configuring your network interfaces
Devices tab
Devices + advanced options tab
Connections + Network tab
Connections + Connection tab
Connections + Modem tab
Connections + Logging tab
Network tab
Network + advanced options tab
Examples:
phlocale
Description:
phlogin, phlogin2
Description:
phmenu
Description:
Examples:
Photon
Description:
Examples:
phrelay
Description:
Remote connectivity via modem
Remote connectivity via TCP/IP
Configuring for TCP/IP
Connecting using a serial port
Example serial connection
Using predefined Photon services
phrelay configuration file format
Data compression options
Data caching options
Encryption
Security
Examples:
phrelaycfg
Description:
phs-to-bjc
Description:
Examples:
phs-to-bmp
Description:
Examples:
phs-to-escp2
Description:
Examples:
phs-to-ijs
Description:
Examples:
phs-to-pcl
Description:
Examples:
phs-to-ps
Description:
Examples:
phshutdown
Description:
phuser
Description:
phview
Description:
Examples:
pidin
Description:
Values in the Blocked column
Examples:
pin
Description:
ping
Description:
Debugging
ICMP packet details
Duplicate and damaged packets
Trying different data patterns
TTL details
ping6
Description:
Duplicate and damaged packets
Trying different data patterns
pipe
Description:
pppd
Description:
pppoectl
Description:
Supported parameters
Examples:
pppoed
Description:
pps
Description:
pr
Description:
Contributing author:
preview
Description:
Examples:
/etc/printcap
Description:
Capabilities
printf
Description:
Format control flags
Field width
Precision
Type length
Conversion character
Escape sequences
Examples:
prjobs
Description:
procnto*
Description:
/proc filesystem
Examples:
/etc/protocols
Description:
ps
Description:
Controlling output
Examples:
pterm
Description:
Keys and keychords
Customizing your font list
Examples:
ptermcs
Description:
Terminal charset setup
Examples:
pv
Description:
Examples:
pwd
Description:
pwm
Description:
PWM Options
Configuring the Desktop menu
Examples:
pwmopts
Description:
python
Description:
Q
qbinaudit
Description:
Examples:
QCC, qcc
Description:
Profiling
Examples:
qconfig
Description:
Examples:
qconn
Description:
qcp
Targets:
Description:
qde
Description:
qed
Description:
Examples:
qtalk
Description:
Configuring default behavior
Logging a session
Using the command character
Replacing the rubout/delete character
Enabling flow control
Transferring files
Invoking qcp and ZMODEM automatically
Interactive commands:
Examples:
QWinCfg
Description:
R
racoon
Description:
Examples:
Contributing author:
/etc/racoon.conf
Description:
Path Specification
File Inclusion
Identifier Specification
Timer Specification
Listening Port Specification
Remote Nodes Specifications
Policy Specifications
Sainfo Specifications
Logging level
Specifying the way to pad
Special directives
Pre-shared key File
Examples:
random
Description:
Examples:
Contributing author:
ranlib
Description:
Contributing author:
rcp
Description:
readelf
Description:
Contributing author:
renice
Description:
Examples:
/etc/resolv.conf
Description:
Overriding /etc/resolv.conf
Keywords
nameserver
domain
search
nocache
~/.rhosts
Description:
Positive entries
Negative entries
rlogin
Description:
rlogind
Description:
Diagnostics
rm
Description:
Examples:
rmdir
Description:
Examples:
rndc
Description:
rndc-confgen
Description:
rndc.conf
Description:
route
Description:
command options
Diagnostics
route6d
Description:
routed
Description:
/etc/rpc
Description:
rpcbind
Description:
rpcgen
Description:
rpcinfo
Description:
Examples:
rsh
Description:
rshd
Description:
Diagnostics
rtadvd
Description:
Examples:
Contributing author:
/etc/rtadvd.conf
Description:
Capabilities
maxinterval
mininterval
chlim
raflags
rltime
rtime
retrans
addrs
prefixlen
pinfoflags
addr
vltime
pltime
mtu
nolladdr
Examples:
rtc
Description:
Examples:
rtquery
Description:
rtsold
Description:
ruptime
Description:
rwho
Description:
rwhod
Description:
S
savercfg
Description:
scp
Description:
Contributing author:
script
Description:
sed
Description:
Scripts
Addresses
Regular expressions
Editing commands
Examples:
Contributing author:
seedres
Description:
Examples:
sendnto
Description:
Examples:
/etc/services
Description:
setconf
Description:
setkey
Description:
Operations
Meta-arguments for operations
Algorithms for protocol
Examples:
setupbsp
Description:
sftp
Description:
Contributing author:
sftp-server
Description:
Contributing author:
sh
Description:
shelf
Description:
showlicense
Description:
showmem
Description:
showmount
Description:
show_vesa
Description:
Examples:
shutdown
Description:
size
Description:
Contributing author:
slay
Description:
Setting the runmask
Examples:
sleep
Description:
slinger
Description:
Running Slinger
How dynamic HTML works
Syntax of an SSI token
SSI commands
break
config
echo
exec
if
goto
include
label
qnxvar
config commands
Ways to achieve dynamic HTML
The data server
Executing CGI scripts
Security precautions
Examples:
The right way
The wrong way
Slinger configuration
Available to CGI scripts
slogger
Description:
Examples:
sloginfo
Description:
Examples:
smic
Description:
Refining syntax checking
Include File
Examples:
snapshot
Description:
Examples:
snmpbulkwalk
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmpd
Description:
/etc/snmpd.conf
Description:
snmpget
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmpgetnext
Description:
Examples:
snmpnetstat
Description:
Addresses
Interface displays
Routing table display
snmpset
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmpstatus
Description:
Examples:
snmptest
Description:
snmptranslate
Description:
Examples:
snmptrap
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmptrapd
Description:
snmpwalk
Description:
Examples:
Using SNMPv1
Using SNMPv2
/etc/socks.conf
Description:
sockstat
Description:
sort
Description:
Examples:
spatch
Description:
Examples:
split
Description:
Examples:
spooler
Description:
ssh
Description:
Contributing author:
ssh-add
Description:
Contributing author:
ssh-agent
Description:
Contributing author:
~/.ssh/ssh_config, /etc/ssh/ssh_config
Description:
ssh-keygen
Description:
Contributing author:
ssh-keyscan
Description:
Contributing author:
ssh-keysign
Description:
Contributing author:
sshd
Description:
Contributing author:
/etc/ssh/sshd_config
Description:
startup-* options
Description:
Generic options
Options for ARM startups
Options for PowerPC startups
Options for x86 startups
startup-apic
Targets:
Debug channels
Description:
Examples:
startup-bios, startup-bios-32
Targets:
Debug channels
Description:
Examples:
strings
Description:
Contributing author:
strip
Description:
Contributing author:
stty
Description:
Supported operands
Line control parameters
Input processing parameters
Output processing parameters
Special control characters
Extended line-editing character sequences
Action characters
Examples:
su
Description:
sync
Description:
Examples:
sysctl
Description:
Examples:
sysinfo
Description:
Examples:
/etc/syslog.conf
Description:
Examples:
syslogd
Description:
T
tail
Description:
Examples:
tar
Description:
Examples:
Contributing author:
tcpdump
Description:
Expressions
Output format
Link-level headers
ARP/RARP packets
TCP Packets
Capturing TCP packets with particular flag combinations (SYN-ACK, URG-ACK, etc.)
UDP Packets
UDP Name Server Requests
UDP Name Server Responses
SMB/CIFS decoding
NFS Requests and Replies
AFS Requests and Replies
KIP AppleTalk (DDP in UDP)
IP Fragmentation
Timestamps
Examples:
Contributing author:
tee
Description:
Examples:
telnet
Description:
Telnet commands:
telnetd
Description:
Name resolving issues
Typical configuration for running telnetd on an embedded target
textto
Description:
Examples:
tftp
Description:
Commands:
tftpd
Description:
tic
Description:
time
Description:
Examples:
tinit
Description:
ttys configuration file
top
Description:
touch
Description:
Examples:
tr
Description:
Conventions for string1 and string2
Examples:
tracelogger
Targets:
Description:
Examples:
traceprinter
Description:
Examples:
traceroute
Description:
Contributing author:
traceroute6
Description:
true
Description:
tsort
Description:
Contributing author:
tty
Description:
Examples:
U
uesh
Description:
Command-line format
Filename expansion
Quoting
Builtin commands
cd command
emount command
ewaitfor command
exec command
exit command
export command
Examples:
umask
Description:
Examples:
umount
Description:
uname
Description:
Examples:
unexpand
Description:
Examples:
unifdef
Description:
uniq
Description:
Examples:
unlink
Description:
unzip
Targets:
Description:
Examples:
uptime
Description:
usb
Description:
Examples:
use
Description:
Usage messages in shell scripts
Examples:
usemsg
Description:
Displaying help messages in ported executables
Adding or changing a usage message
Examples:
uud
Description:
uudecode
Description:
uue
Description:
uuencode
Description:
V
vi
Description:
Contributing author:
view
Description:
Contributing author:
/etc/view.conf
Description:
W
waitfor
Description:
wc
Description:
which
Description:
Examples:
who
Description:
wpa_cli
Description:
Supported commands
wpa_passphrase
Description:
wpa_supplicant
Description:
Supported features
X
xargs
Description:
Examples:
Y
Z
zap
Description:
Examples:
zcat
Description:
Contributing author:
zip
Targets:
Description:
Examples:
Commonly Used Environment Variables
A
B
C
D
E
F
G
H
I
J
L
M
N
O
P
Q
R
S
T
U
Selecting the Target System
Target selection
Architecture selection
Linker emulation selection
What's New in this Reference?
What's new in the QNX Software Development Platform 6.5.0?
New entries
Deprecated content
Changed content
Errata
What's new in the QNX Software Development Platform 6.4.1?
New entries
Deprecated content
Changed content
Errata
What's new in the QNX Software Development Platform 6.4.0?
New entries
Deprecated content
Changed content
Errata
What's new in QNX Momentics 6.3.2?
New entries
Changed content
Errata
What's new in the QNX Neutrino Core OS 6.3.2?
New entries
Changed content
Errata
What's new in QNX Momentics 6.3.0 Service Pack 2?
New entries
Changed content
Errata
What's new in QNX Momentics 6.3.0 Service Pack 1?
New entries
Changed content
What's new in QNX Momentics 6.3.0?
New entries
Deleted entries
Changed content
Errata
What's new in QNX Momentics 6.2.1?
New entries
Deleted entries
Changed content
Errata
Glossary
Addon Interfaces Library Reference
About This Reference
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
An Example
Library components
Addon Interfaces Library Reference
AOI Structures
AOI Functions
AOICtrl_t
Description:
AOInterface_t
Description:
AoAdd
Description:
AoAddDirectory
Description:
AoAddStatic
Description:
AoAddUnloadSignal
Description:
AoGetInterface
Description:
AoHold
Description:
AoIterate
Description:
AoIterateHoldGet
Description:
AoRelease
Description:
AoRemove
Description:
AoFindExt
Description:
AoFindFormats
Description:
AoFindMime
Description:
AoFindName
Description:
Examples:
AoFindStreams
Description:
AoOpenFilespec
Description:
Implemented Interfaces
Built-in Interfaces
AODeConstructor
Create
Synopsis
Arguments
Description
Returns
Destroy
Synopsis
Arguments
Description
Returns
AOExtInspector
RateExtension
Synopsis
Arguments
Description
Returns
AOFormatInspector
RateFormat
Synopsis
Arguments
Description
Returns
AOMimetypeInspector
RateMimetype
Synopsis
Arguments
Description
Returns
AOStreamer
Open
Synopsis
Arguments
Description
Returns
Close
Synopsis
Arguments
Description
Returns
Sniff
Synopsis
Arguments
Description
Returns
Read
Synopsis
Arguments
Description
Returns
Write
Synopsis
Arguments
Description
Returns
Seek
Synopsis
Arguments
Description
Returns
Tell
Synopsis
Arguments
Description
Returns
Length
Synopsis
Arguments
Description
Returns
SideInfo
Synopsis
Arguments
Description
Returns
AOStreamInspector
RateStream
Synopsis
Arguments
Description
Returns
AOResourceAccess
GetResources
Synopsis
Arguments
Description
Returns
SetResource
Synopsis
Arguments
Description
Returns
Built-in interfaces
Unloading and InitializeInterface
Name
Using Addon Resources
An Example
Using addon resources in your application
Defined Structures
AOIStream_t
Description:
AOMimeInfo_t
Description:
AOResource_t
Description:
AOAudioFormat_t
Description:
ImageFormat_t
Description:
MediaFormat_t
Description:
VideoFormat_t
Description:
Audio Developer's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What's new in QNX Neutrino 6.5.0
What's new in QNX Neutrino 6.4
What's new in QNX Neutrino 6.3
What's new in QNX Neutrino 6.2
What's new in QNX Neutrino 6.1
Changed content
Audio Architecture
QNX Sound Architecture
Cards and devices
Control device
Mixer devices
Pulse Code Modulation (PCM) devices
Data formats
PCM state machine
Software PCM mixing
PCM plugin converters
Playing and Capturing Audio Data
Handling PCM devices
Opening your PCM device
Configuring the PCM device
Controlling voice conversion
Preparing the PCM subchannel
Closing the PCM subchannel
Playing audio data
Playback states
Sending data to the PCM subchannel
If the PCM subchannel stops during playback
Stopping the playback
Synchronizing with the PCM subchannel
Capturing audio data
Selecting what to capture
Capture states
Receiving data from the PCM subchannel
If the PCM subchannel stops during capture
Stopping the capture
Synchronizing with the PCM subchannel
Mixer Architecture
Opening the mixer device
Controlling a mixer group
The best mixer group with respect to your PCM subchannel
Finding all mixer groups
Mixer event notification
Closing the mixer device
Audio Library
snd_card_get_longname
Description:
snd_card_get_name
Description:
snd_card_name
Description:
snd_cards
Description:
snd_cards_list
Description:
snd_ctl_callbacks_t
Description:
rebuild callback
xswitch callback
snd_ctl_close
Description:
snd_ctl_file_descriptor
Description:
snd_ctl_hw_info
Description:
snd_ctl_hw_info_t
Description:
snd_ctl_mixer_switch_list
Description:
snd_ctl_mixer_switch_read
Description:
snd_ctl_mixer_switch_write
Description:
snd_ctl_open
Description:
snd_ctl_pcm_channel_info
Description:
snd_ctl_pcm_info
Description:
snd_ctl_read
Description:
snd_mixer_callbacks_t
Description:
rebuild callback
element callback
group callback
Examples:
snd_mixer_close
Description:
snd_mixer_eid_t
Description:
snd_mixer_element_read
Description:
snd_mixer_element_t
Description:
snd_mixer_element_write
Description:
snd_mixer_elements
Description:
snd_mixer_elements_t
Description:
snd_mixer_file_descriptor
Description:
snd_mixer_filter_t
Description:
snd_mixer_get_bit
Description:
snd_mixer_get_filter
Description:
snd_mixer_gid_t
Description:
snd_mixer_group_read
Description:
snd_mixer_group_t
Description:
snd_mixer_group_write
Description:
snd_mixer_groups
Description:
snd_mixer_groups_t
Description:
snd_mixer_info
Description:
snd_mixer_info_t
Description:
snd_mixer_open
Description:
snd_mixer_open_name
Description:
snd_mixer_read
Description:
snd_mixer_routes
Description:
snd_mixer_routes_t
Description:
snd_mixer_set_bit
Description:
snd_mixer_set_filter
Description:
snd_mixer_sort_eid_table
Description:
snd_mixer_sort_gid_table
Description:
snd_mixer_weight_entry_t
Description:
snd_pcm_build_linear_format
Description:
snd_pcm_capture_flush
Description:
snd_pcm_capture_prepare
Description:
snd_pcm_channel_flush
Description:
snd_pcm_channel_info
Description:
snd_pcm_channel_info_t
Description:
snd_pcm_channel_params
Description:
snd_pcm_channel_params_t
Description:
snd_pcm_channel_prepare
Description:
snd_pcm_channel_setup
Description:
snd_pcm_channel_setup_t
Description:
snd_pcm_channel_status
Description:
snd_pcm_channel_status_t
Description:
snd_pcm_close
Description:
snd_pcm_file_descriptor
Description:
snd_pcm_find
Description:
snd_pcm_format_big_endian
Description:
snd_pcm_format_linear
Description:
snd_pcm_format_little_endian
Description:
snd_pcm_format_signed
Description:
snd_pcm_format_size
Description:
snd_pcm_format_t
Description:
snd_pcm_format_unsigned
Description:
snd_pcm_format_width
Description:
snd_pcm_get_format_name
Description:
snd_pcm_info
Description:
snd_pcm_info_t
Description:
snd_pcm_nonblock_mode
Description:
snd_pcm_open
Description:
Examples:
snd_pcm_open_name
Description:
Examples:
snd_pcm_open_preferred
Description:
Examples:
snd_pcm_playback_drain
Description:
snd_pcm_playback_flush
Description:
snd_pcm_playback_prepare
Description:
snd_pcm_plugin_flush
Description:
Examples:
snd_pcm_plugin_get_voice_conversion
Description:
snd_pcm_plugin_info
Description:
Examples:
snd_pcm_plugin_params
Description:
Examples:
snd_pcm_plugin_playback_drain
Description:
snd_pcm_plugin_prepare
Description:
Examples:
snd_pcm_plugin_read
Description:
snd_pcm_plugin_set_disable
Description:
Examples:
snd_pcm_plugin_set_src_mode
Description:
snd_pcm_plugin_set_voice_conversion
Description:
snd_pcm_plugin_setup
Description:
Examples:
snd_pcm_plugin_set_src_mode
Description:
snd_pcm_plugin_status
Description:
Examples:
snd_pcm_plugin_set_src_mode
Description:
snd_pcm_plugin_write
Description:
Examples:
snd_pcm_read
Description:
snd_pcm_voice_conversion_t
Description:
snd_pcm_write
Description:
snd_strerror
Description:
Examples:
snd_switch_t
Description:
wave.c example
waverec.c example
mixer_ctl.c example
LGPL License Agreement
Glossary
Building Embedded Systems
About This Book
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview of Building Embedded Systems
Introduction
The role of the IPL
Warm-start and cold-start IPL
The role of the startup program
Startup's responsibilities
Copying and decompressing the image
Configuring the hardware
Determining system configuration
Establishing callouts
Starting the OS
The startup library
The role of Neutrino
Hardware aspects
Choice of processor
Source of initialization and configuration
Choice of filesystems
No additional storage required
Additional read-only storage required
Additional read/write nonpersistent storage required
Additional read/write persistent storage required
Flash filesystems and media
Rotating media and filesystems
Network media and filesystems
I/O devices
Character I/O devices
Special/custom devices
Getting started
Hardware design
Customizing the software
Customizing the source
Working with a BSP
In this chapter...
BSP Overview
Using BSPs in the IDE
Using BSPs on the command line
Structure of a BSP
prebuilt subdirectory
install subdirectory
src subdirectory
Building source from the command line
Supporting additional devices
Transferring an OS image onto your board
Transferring an OS image
Working with a flash filesystem
Raw partitions
Flash filesystem partitions
Flash filesystem source
How do I create a partition?
Testing Neutrino on your board
Getting Photon on your board
Where do I go from here?
Filename conventions
Making an OS Image
Images, images, images
What is an OS image?
The OS image as a filesystem
Configuring an OS image
A simple buildfile
Inline files
The bootstrap file
Compressing the image
The script file
Bound multiprocessing attributes
The script file on the target
Plain ordinary lists of files
Including files from different places
Modifying the search path
Specifying the pathname explicitly
Creating the contents of the file in line
Specifying file ownership and permissions
Including a whole whack of files
Generating the image
Listing the contents of an image
Building a flash filesystem image
Using mkefs
mkefs buildfile
Block size
Spare blocks
Compressing files
Abstraction layer
Two sizes
Compression rules
The exception
Embedding an image
Combining image files using mkimage
Combining image files using the IDE
Converting images using mkrec
Transferring an image to flash
System configuration
Establishing an output device
A simple desktop example
Running drivers/filesystems
Disk drivers
Flash filesystems
Network drivers
Network filesystems
Running applications
Debugging an embedded system
pdebug software debugging agent
Hardware debuggers and Neutrino
Producing debug symbol information for IPL and startup
Generating IPL debug symbols
Generating startup debug symbols
Writing an IPL Program
Initial program loader (IPL)
Responsibilities of the IPL
Linearly mapped images
Bank-switched images
Processors & configurations
Booting from a bank-switched device
Booting from a linear device
Warm vs cold start
Warm-start IPL
Cold-start IPL
Loading the image
If the source is a linearly mapped device
If the source is a bank-switched device
ROM devices
Network boot
Using a BOOTP server
Serial port
Traditional disk
None of the above?
Transferring control to the startup program
Customizing IPLs
Initialize hardware
Loading the image into RAM
Structure of the boot header
signature
version
flags1 and flags2
header_size
machine
startup_vaddr
paddr_bias
image_paddr
ram_paddr
ram_size
startup_size
stored_size
imagefs_paddr
imagefs_size
preboot_size
zero and zero0
info
struct startup_info_skip
struct startup_info_mem and startup_info_mem_extended
struct startup_info_disk
struct startup_info_time
struct startup_info_box
Relationship of struct startup_header fields
Linear ROM execute-in-place boot image
Linear ROM compressed boot image
ROM non-XIP image
Disk/network image (x86 BIOS)
Disk/network compressed image
IPL structure
IPL source directory structure
IPL code structure
An example
Creating a new IPL
The IPL library
enable_cache
image_download_8250
image_scan
image_scan_ext
image_setup
image_setup_ext
image_start
image_start_ext
int15_copy
print_byte
print_char
print_long
print_sl
print_string
print_var
print_word
protected_mode
uart_hex8
uart_hex16
uart_hex32
uart_init
uart_put
uart_string
uart32_hex8
uart32_hex16
uart32_hex32
uart32_init
uart32_put
uart32_string
Customizing Image Startup Programs
In this chapter...
Introduction
Initialize hardware
Initialize system page
Initialize callouts
Anatomy of a startup program
Structure of a startup program
Creating a new startup program
Structure of the system page
size
total_size
type
num_cpu
system_private
asinfo
The attr field
Address space trees
hwinfo
Tags
Items
Device trees
Building the section
Other functions
Defaults
Predefined items and tags
Group item
Bus item
Device item
location tag
irq tag
diskgeometry tag
pad tag
cpuinfo
syspage_entry cacheattr
syspage_entry qtime
callout
callin
typed_strings
strings
intrinfo
The cpu_intr_base member
The flags member
config return values
syspage_entry union un
un.x86
un.x86.smpinfo (deprecated)
un.ppc (deprecated)
un.ppc.kerinfo
un.mips
un.arm
un.sh
smp
pminfo
Callout information
Debug interface
Clock/timer interface
Interrupt controller interface
Cache controller interface
System reset callout
Power management callout
The startup library
add_cache
add_callout
add_callout_array
add_interrupt
add_interrupt_array
add_ram
add_string
add_typed_string
alloc_qtime
alloc_ram
as_add
as_add_containing
as_default
as_find
as_find_containing
as_info2off
as_off2info
as_set_checker
as_set_priority
avoid_ram
calc_time_t
calloc_ram
callout_io_map, callout_io_map_indirect
callout_memory_map, callout_memory_map_indirect
callout_register_data
chip_access
chip_done
chip_read8
chip_read16
chip_read32
chip_write8
chip_write16
chip_write32
copy_memory
del_typed_string
falcon_init_l2_cache
falcon_init_raminfo
falcon_system_clock
find_startup_info
find_typed_string
handle_common_option
hwi_add_device
hwi_add_inputclk
hwi_add_irq
hwi_add_location
hwi_add_nicaddr
hwi_add_rtc
hwi_alloc_item
hwi_alloc_tag
hwi_find_as
hwi_find_item
hwi_find_tag
hwi_off2tag
hwi_tag2off
init_asinfo
init_cacheattr
init_cpuinfo
init_hwinfo
init_intrinfo
init_mmu
init_pminfo
init_qtime
init_qtime_sa1100
init_raminfo
init_smp
init_syspage_memory (deprecated)
init_system_private
jtag_reserve_memory
kprintf
mips41xx_set_clock_freqs
openbios_init_raminfo
pcnet_reset
ppc400_pit_init_qtime
ppc405_set_clock_freqs
ppc600_set_clock_freqs
ppc700_init_l2_cache
ppc800_pit_init_qtime
ppc800_set_clock_freqs
ppc_dec_init_qtime
print_syspage
rtc_time
startup_io_map
startup_io_unmap
startup_memory_map
startup_memory_unmap
tulip_reset
uncompress
x86_cpuid_string
x86_cputype
x86_enable_a20
x86_fputype
x86_init_pcbios
x86_pcbios_shadow_rom
x86_scanmem
Writing your own kernel callout
Find out who's gone before
Why are they in assembly language?
Starting off
Patching the callout code
Getting some R/W storage
The exception that proves the rule
PPC chips support
Adding a new CPU to the startup library
Customizing the Flash Filesystem
Introduction
Driver structure
resmgr and iofunc layers
Flash filesystem component
Socket services component
Flash services component
Probe routine component
Building your flash filesystem driver
The source tree
The Makefile
Making the driver
The main function
f3s_init
f3s_start
Socket services interface
f3s_open
f3s_page
f3s_status
f3s_close
Options parsing
f3s_socket_option
f3s_socket_syspage
Flash services interface
f3s_ident
f3s_reset
f3s_v2read
f3s_v2write
f3s_v2erase
f3s_v2suspend
f3s_v2resume
f3s_v2sync
f3s_v2islock
f3s_v2lock
f3s_v2unlock
f3s_v2unlockall
Choosing the right routines
Example: The devf-ram driver
main
f3s_ram_open
f3s_ram_page
System Design Considerations
Introduction
Before you design your system
Processor speed
Memory requirements
Peripherals
Debugging
Field upgrades
Other design considerations
EPROM/Flash filesystem considerations
IPL location
Graphics cards
A20 gate
External ISA bus slots
PCI bus slots
External clocks
Interrupts & controllers
Serial and parallel ports
Parallel port considerations
NMI
Design do's and don'ts
Do:
Don't:
Sample Buildfiles
Introduction
Generic examples
Shared libraries
Running executables more than once
Multiple consoles
Starting other programs on consoles
Redirection
/tmp
Complete example --- minimal configuration
Complete example --- flash filesystem
Complete example --- disk filesystem
Complete example --- TCP/IP with network filesystem
Processor-specific notes
Specifying the processor
Examples
Specifying the startup program
Specifying the serial device
Glossary
Getting Started with QNX Neutrino: A Guide for Realtime Programmers
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Foreword to the First Edition by Peter van der Veen
Preface to the First Edition by Rob Krten
A little history
Who this book is for
What's in this book?
Processes and Threads
Message Passing
Clocks, Timers, and Getting a Kick Every So Often
Interrupts
Resource Managers
QNX 4 to QNX Neutrino
Calling 911
Glossary
Other references
About Rob Krten
Acknowledgments
Processes and Threads
Process and thread fundamentals
A process as a house
The occupants as threads
Single threaded
Multi threaded
Back to processes and threads
Mutual exclusion
Priorities
Semaphores
A semaphore with a count of 1
A semaphore with a count greater than 1
A semaphore as a mutex
The kernel's role
Single CPU
Multiple CPU (SMP)
The kernel as arbiter
Prioritization
Scheduling policies
FIFO
Round Robin
The rules
Kernel states
RUNNING
READY
The blocked states
Kernel states, the complete list
Threads and processes
Why processes?
Starting a process
Starting a process from the command line
Starting a process from within a program
Starting a process with the system call
Starting a process with the exec and spawn calls
Starting a process with the fork call
Starting a process with the vfork call
Process creation and threads
So what should you use?
Starting a thread
The thread attributes structure
Thread attribute administration
The flags thread attribute
The stack thread attributes
The scheduling thread attributes
A few examples
Where a thread is a good idea
Threads in mathematical operations
Coding for SMP or single processor
Synchronizing to the termination of a thread
Joining
Using a barrier
Multiple threads on a single CPU
Things to watch out for when using SMP
Threads in independent situations
Multiple processes
Multiple processes with shared memory
Multiple threads
Comparisons
More on synchronization
Readers/writer locks
Sleepon locks
Condition variables
Signal versus broadcast
Sleepons versus condvars
Additional Neutrino services
Pools of threads
Controlling the number of threads
The thread pool functions
Scheduling and the real world
Rescheduling --- hardware interrupts
Rescheduling --- kernel calls
Rescheduling --- exceptions
Summary
Message Passing
Messaging fundamentals
A small microkernel and message passing
Message passing and client/server
Network-distributed message passing
What it means for you
The philosophy of Neutrino
Multiple threads
Server/subserver
Some examples
Send-driven (client/server)
Reply-driven (server/subserver)
An important subtlety
Multi-threaded server
Using message passing
Architecture & structure
The client
Establishing a connection
Sending messages
The server
Creating the channel
Message handling
Server framework
The send-hierarchy
Receive IDs, channels, and other parameters
More about channels
Who sent the message?
The receive ID (a.k.a. the client cookie)
Replying to the client
Not replying to the client
Replying with no data, or an errno
Finding the server's ND/PID/CHID
What about priorities?
Reading and writing data
Multipart messages
What about the other versions?
Implementation
Pulses
Receiving a pulse message
What's in a pulse?
The MsgReceivePulse function
The MsgDeliverEvent function
Channel flags
_NTO_CHF_UNBLOCK
Synchronization problem
Using the _NTO_MI_UNBLOCK_REQ
Message passing over a network
Networked message passing differences
Longer delays
Impact on ConnectAttach
Impact on MsgDeliverEvent
Impact on MsgReply, MsgRead, and MsgWrite
Impact on MsgReceive
Some notes on NDs
Priority inheritance
So what's the trick?
Summary
Clocks, Timers, and Getting a Kick Every So Often
Clocks and timers
Operating periodically
Clock interrupt sources
Base timing resolution
Getting more precision
Timing jitter
Types of timers
Notification schemes
How to fill in the struct sigevent
Pulse notification
Signal notification
Thread notification
General tricks for notification
Pulse notification
Signal notification
Using timers
Creating a timer
Signal, pulse, or thread?
What kind of timer?
A server with periodic pulses
Server-maintained timeouts
Declarations
main
setupPulseAndTimer
gotAPulse
gotAMessage
Notes
Periodic server maintenance cycles
Timers delivering signals
Timers creating threads
Getting and setting the realtime clock and more
Getting and setting
Adjusting the timebase
An accurate timestamp
Advanced topics
Other clock sources
CLOCK_MONOTONIC
So what does CLOCK_SOFTTIME do?
Using different clock sources
Kernel timeouts
Kernel timeouts with pthread_join
Kernel timeouts with message passing
Summary
Interrupts
Neutrino and interrupts
Interrupt service routine
Clearing the interrupt source
Telling a thread to do something
Level-sensitivity versus edge-sensitivity
Writing interrupt handlers
Attaching an interrupt handler
Attaching with InterruptAttachEvent
Attaching with InterruptAttach
Now that you've attached an interrupt
Detaching an interrupt handler
The flags parameter
The interrupt service routine
Using InterruptAttach
Using InterruptAttachEvent
InterruptAttach versus InterruptAttachEvent
The trade-offs
ISR functions
Summary
Resource Managers
What is a resource manager?
Examples of resource managers
Serial port
Filesystem
Characteristics of resource managers
The client's view
Finding the server
Finding the process manager
Handling directories
Union'd filesystems
Client summary
The resource manager's view
Registering a pathname
Handling messages
Connect messages
I/O messages
Three groups, really
The resource manager library
The library really does what we just talked about
Behind the scenes at the library
The base layer
The POSIX layer
Writing a resource manager
Data structures
resmgr_attr_t control structure
The other_func message handler
The data structure sizing parameters
The flags parameter
resmgr_connect_funcs_t connect table
resmgr_io_funcs_t I/O table
The resmgr_context_t internal context block
Resource manager structure
The resmgr_attach function and its parameters
Putting in your own functions
The general flow of a resource manager
Messages that should be connect messages but aren't
Combine messages
POSIX-layer data structures
The iofunc_ocb_t OCB structure
The strange case of the offset member
The iofunc_attr_t attributes structure
The iofunc_mount_t mount structure
Of device numbers, inodes, and our friend rdev
Handler routines
General notes
Locking, unlocking, and combine message handling
Connect functions notes
Internal use part
End-user parameter part
Alphabetical listing of connect and I/O functions
io_chmod
io_chown
io_close_dup
io_close_ocb
io_devctl
io_dup
io_fdinfo
io_link
io_lock
io_lock_ocb
io_lseek
io_mknod
io_mmap
io_mount
io_msg
io_notify
io_open
io_openfd
io_pathconf
io_power
io_read
io_readlink
io_rename
io_shutdown
io_space
io_stat
io_sync
io_unblock [CONNECT]
io_unblock [I/O]
io_unlink
io_unlock_ocb
io_utime
io_write
Examples
The basic skeleton of a resource manager
Step 1
Step 2
Step 3
A simple io_read example
Data area size considerations
Handling of EOF case
Maintenance of context information
Updating POSIX information
The code
Step 1
Step 2
Steps 3 & 4
Step 5
Step 6
Step 7
Step 8
Step 9
Effective use of other messaging functions
A simple io_write example
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
Step 7
Step 8
A simple io_devctl example
Step 1
Step 2
Step 3
Step 4
An io_devctl example that deals with data
Step 1
Step 2
Step 3
Step 4
Step 5
Important note
Advanced topics
Extending the OCB
OCB monitor
More efficient allocation
Extending the attributes structure
Blocking within the resource manager
Returning directory entries
Generally speaking ...
The struct dirent structure and friends
Offsets
Contents
Example
main and declarations
my_open
my_read
my_read_dir
my_read_file
dirent_size
dirent_fill
Summary
QNX 4 to Neutrino
QNX 4 and Neutrino
Similarities
Improvements
Embeddability
Thread support
Message passing
Pulses and events
Device driver model
MIPS, PPC, SH4, and ARM support
SMP support
Porting philosophy
Message passing considerations
Client/server using the global namespace
Translating messages to standard file-descriptor-based POSIX calls
Translating messages to devctl or _IO_MSG
Client/Server using an I/O manager
Proxies
Proxies for their IDs
Proxies for their contents
Interrupt service routines
Summary
Calling 911
Seeking professional help
So you've got a problem...
RTFM
Building Embedded Systems
Library Reference
System Architecture
Technotes
User's Guide
Utilities Reference
Programmer's Guide
Contact technical support
Describe the problem
Precise information
Versions
If you're using a beta...
Reproduce the problem
Narrow it down
Training
Sample Programs
atoz.c
time1.c
tp1.c
tt1.c
Glossary
Library Reference
About This Reference
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
What's in a Function Description?
Description:
Examples:
Function safety:
Manifests
QNX Neutrino Functions and Macros
A
abort
Description:
Examples:
abs
Description:
Examples:
accept
Description:
access
Description:
Examples:
acos, acosf, acosl
Description:
Examples:
acosh, acoshf, acoshl
Description:
Examples:
addrinfo
Description:
aio_cancel
Description:
aio_error
Description:
aio_fsync
Description:
aio_read
Description:
aio_return
Description:
aio_suspend
Description:
aio_write
Description:
aiocb
Description:
alarm
Description:
Examples:
alloca
Description:
Examples:
alphasort
Description:
_amblksiz
Description:
_argc
Description:
_argv
Description:
asctime, asctime_r
Description:
asin, asinf, asinl
Description:
Examples:
asinh, asinhf, asinhl
Description:
Examples:
assert
Description:
Examples:
asyncmsg_channel_create
Description:
Callback function
asyncmsg_channel_destroy
Description:
asyncmsg_connect_attach
Description:
asyncmsg_connect_attr
Description:
asyncmsg_connect_detach
Description:
_asyncmsg_connection_attr
Description:
asyncmsg_flush
Description:
asyncmsg_free
Description:
asyncmsg_get
Description:
_asyncmsg_get_header structure
asyncmsg_malloc
Description:
asyncmsg_put, asyncmsg_putv
Description:
atan, atanf, atanl
Description:
Examples:
atan2, atan2f
Description:
Examples:
atanh, atanhf, atanhl
Description:
Examples:
atexit
Description:
Examples:
atof
Description:
Examples:
atoh
Description:
Examples:
atoi
Description:
Examples:
atol, atoll
Description:
Examples:
atomic_add
Description:
Examples:
atomic_add_value
Description:
Examples:
atomic_clr
Description:
Examples:
atomic_clr_value
Description:
Examples:
atomic_set
Description:
Examples:
atomic_set_value
Description:
Examples:
atomic_sub
Description:
Examples:
atomic_sub_value
Description:
Examples:
atomic_toggle
Description:
Examples:
atomic_toggle_value
Description:
Examples:
_auxv
Description:
B
basename
Description:
Examples:
bcmp
Description:
Examples:
bcopy
Description:
Examples:
bind
Description:
bindresvport
Description:
brk
Description:
bsearch
Description:
Examples:
bt_get_backtrace
Description:
bt_init_accessor
Description:
bt_load_memmap
Description:
bt_release_accessor
Description:
bt_set_flags
Description:
bt_sprn_memmap
Description:
bt_sprnf_addrs
Description:
bt_translate_addrs
Description:
bt_unload_memmap
Description:
_btext
Description:
btowc
Description:
bzero
Description:
Examples:
C
cabs, cabsf
Description:
Examples:
cache_fini
Description:
CACHE_FLUSH
Description:
cache_init
Description:
Members of the cache_ctrl structure
Cache coherency
CACHE_INVAL
Description:
calloc
Description:
Examples:
cbrt, cbrtf
Description:
Examples:
ceil, ceilf
Description:
Examples:
cfgetispeed
Description:
Examples:
cfgetospeed
Description:
Examples:
cfgopen
Description:
Search condition flags
cfmakeraw
Description:
cfree
Description:
cfsetispeed
Description:
Examples:
cfsetospeed
Description:
Examples:
ChannelCreate, ChannelCreate_r
Description:
_NTO_CHF_COID_DISCONNECT
_NTO_CHF_DISCONNECT
_NTO_CHF_FIXED_PRIORITY
_NTO_CHF_NET_MSG
_NTO_CHF_REPLY_LEN
_NTO_CHF_SENDER_LEN
_NTO_CHF_THREAD_DEATH
_NTO_CHF_UNBLOCK
Blocking states
ChannelDestroy, ChannelDestroy_r
Description:
Blocking states
chdir
Description:
Examples:
chmod
Description:
Examples:
chown
Description:
Examples:
chroot
Description:
chsize
Description:
Examples:
clearenv
Description:
Examples:
clearerr
Description:
Examples:
clock
Description:
Examples:
clock_getcpuclockid
Description:
clock_getres
Description:
Examples:
clock_gettime
Description:
Examples:
clock_nanosleep
Description:
clock_settime
Description:
Examples:
ClockAdjust, ClockAdjust_r
Description:
Blocking states:
ClockCycles
Description:
Symmetric MultiProcessing systems
Blocking states:
Examples:
ClockId, ClockId_r
Description:
Blocking states:
Examples:
ClockPeriod, ClockPeriod_r
Description:
Blocking states
ClockTime, ClockTime_r
Description:
Blocking states
close
Description:
Examples:
closedir
Description:
Examples:
closelog
Description:
_cmdfd
Description:
_cmdname
Description:
Examples:
confstr
Description:
Examples:
connect
Description:
ConnectAttach, ConnectAttach_r
Description:
Blocking states
Node descriptors
ConnectClientInfo, ConnectClientInfo_r
Description:
_client_info structure
uint32_t nd
_cred_info structure
ConnectDetach, ConnectDetach_r
Description:
Blocking states
ConnectFlags, ConnectFlags_r
Description:
ConnectServerInfo, ConnectServerInfo_r
Description:
_server_info structure
copysign, copysignf
Description:
Examples:
cos, cosf, cosl
Description:
Examples:
cosh, coshf, coshl
Description:
Examples:
creat, creat64
Description:
Examples:
crypt
Description:
ctermid
Description:
Examples:
ctime, ctime_r
Description:
D
daemon
Description:
daylight
Description:
DebugBreak
Description:
Blocking states
DebugKDBreak
Description:
Blocking states
DebugKDOutput
Description:
Blocking states
delay
Description:
Examples:
devctl
Description:
Device-control commands
Examples:
Example 1: Setting RTS on a serial port
Example 2: Cycling through Caps Lock, Num Lock, and Scroll Lock
Example 3: Duration example
difftime
Description:
Examples:
dircntl
Description:
Flag values
Examples:
dirent
Description:
dirname
Description:
Examples:
dispatch_block
Description:
Examples:
dispatch_context_alloc
Description:
Examples:
dispatch_context_free
Description:
Examples:
dispatch_create
Description:
Examples:
dispatch_create_channel
Description:
dispatch_destroy
Description:
Examples:
dispatch_handler
Description:
Examples:
dispatch_timeout
Description:
Examples:
dispatch_unblock
Description:
Examples:
div
Description:
Examples:
dladdr
Description:
dlclose
Description:
dlerror
Description:
dlopen
Description:
The mode
Relocation
Visibility
Symbol scope
Other flags
Symbol resolution
dlsym
Description:
Examples:
dn_comp
Description:
dn_expand
Description:
drand48
Description:
ds_clear
Description:
Examples:
ds_create
Description:
Examples:
ds_deregister
Description:
Examples:
ds_flags
Description:
ds_get
Description:
ds_register
Description:
Examples:
ds_set
Description:
Examples:
dup
Description:
Examples:
dup2
Description:
Examples:
E
eaccess
Description:
_edata
Description:
encrypt
Description:
_end
Description:
endfsent
Description:
endgrent
Description:
endhostent
Description:
ENDIAN_BE16
Description:
Examples:
ENDIAN_BE32
Description:
Examples:
ENDIAN_BE64
Description:
Examples:
ENDIAN_LE16
Description:
Examples:
ENDIAN_LE32
Description:
Examples:
ENDIAN_LE64
Description:
Examples:
ENDIAN_RET16
Description:
Examples:
ENDIAN_RET32
Description:
Examples:
ENDIAN_RET64
Description:
Examples:
ENDIAN_SWAP16
Description:
Examples:
ENDIAN_SWAP32
Description:
Examples:
ENDIAN_SWAP64
Description:
Examples:
endnetent
Description:
endprotoent
Description:
endpwent
Description:
endservent
Description:
endspent
Description:
endutent
Description:
environ
Description:
eof
Description:
Examples:
erand48
Description:
erf, erff
Description:
erfc, erfcf, erfcl
Description:
err, errx
Description:
Examples:
errno
Description:
Changes to EALREADY
Examples:
_etext
Description:
execl
Description:
exec* summary
Examples:
execle
Description:
exec* summary
Examples:
execlp
Description:
exec* summary
execlpe
Description:
exec* summary
execv
Description:
exec* summary
Examples:
execve
Description:
exec* summary
execvp
Description:
exec* summary
execvpe
Description:
exec* summary
_exit
Description:
Examples:
exit
Description:
Examples:
exp, expf, expl
Description:
Examples:
expm1, expm1f
Description:
Examples:
F
fabs, fabsf
Description:
Examples:
fcfgopen
Description:
fchdir
Description:
fchmod
Description:
Examples:
fchown
Description:
Examples:
fclose
Description:
Examples:
fcloseall
Description:
Examples:
fcntl
Description:
flock structure
Examples:
fdatasync
Description:
fdopen
Description:
Examples:
feof
Description:
Examples:
ferror
Description:
Examples:
fflush
Description:
Examples:
ffs
Description:
fgetc
Description:
Examples:
fgetchar
Description:
Examples:
fgetpos
Description:
Examples:
fgets
Description:
Examples:
fgetspent
Description:
Examples:
fgetwc
Description:
fgetws
Description:
fileno
Description:
Examples:
flink
Description:
flock
Description:
flockfile
Description:
floor, floorf
Description:
Examples:
flushall
Description:
fmod, fmodf, fmodl
Description:
Examples:
fnmatch
Description:
Pattern Matching Special Characters
Examples:
fopen, fopen64
Description:
Examples:
fork
Description:
Examples:
forkpty
Description:
fp_exception_mask
Description:
Examples:
fp_exception_value
Description:
Examples:
fp_precision
Description:
Examples:
fp_rounding
Description:
Examples:
fp_setenv
Description:
Examples:
fpathconf
Description:
Examples:
fprintf
Description:
Examples:
fputc
Description:
Examples:
fputchar
Description:
Examples:
fputs
Description:
Examples:
fputwc
Description:
fputws
Description:
fread
Description:
Examples:
free
Description:
Examples:
freeaddrinfo
Description:
freeifaddrs
Description:
freopen, freopen64
Description:
Examples:
frexp, frexpf
Description:
Examples:
fscanf
Description:
Examples:
fseek, fseeko, fseeko64
Description:
Examples:
fsetpos
Description:
Examples:
fstat, fstat64
Description:
Examples:
fstatvfs, fstatvfs64
Description:
fsync
Description:
ftell, ftello, ftello64
Description:
Examples:
ftime
Description:
Examples:
ftruncate, ftruncate64
Description:
ftrylockfile
Description:
ftw, ftw64
Description:
funlockfile
Description:
futime
Description:
fwide
Description:
fwprintf
Description:
fwrite
Description:
Examples:
fwscanf
Description:
G
gai_strerror
Description:
gamma, gamma_r, gammaf, gammaf_r
Description:
getaddrinfo
Description:
Using the hints argument
Using the ai_flags argument in the hints structure
Pitfalls
Examples:
getc
Description:
Examples:
getc_unlocked
Description:
getchar
Description:
Examples:
getchar_unlocked
Description:
getcwd
Description:
Examples:
getdomainname
Description:
getdtablesize
Description:
getegid
Description:
Examples:
getenv
Description:
Examples:
geteuid
Description:
Examples:
getfsfile
Description:
getfsent
Description:
The fstab structure
getfsspec
Description:
getgid
Description:
Examples:
getgrent
Description:
Examples:
getgrgid
Description:
Examples:
getgrgid_r
Description:
getgrnam
Description:
Examples:
getgrnam_r
Description:
getgrouplist
Description:
Examples:
getgroups
Description:
Examples:
gethostbyaddr
Description:
Examples:
gethostbyaddr_r
Description:
gethostbyname, gethostbyname2
Description:
gethostbyname_r
Description:
gethostent
Description:
gethostent_r
Description:
gethostname
Description:
getifaddrs
Description:
GETIOVBASE
Description:
GETIOVLEN
Description:
getitimer
Description:
getlogin
Description:
getlogin_r
Description:
getnameinfo
Description:
Extension
Examples:
getnetbyaddr
Description:
getnetbyname
Description:
getnetent
Description:
getopt
Description:
Utility Syntax Guidelines
Examples:
getpagesize
Description:
getpagesizes, getpagesizes64
Description:
Examples:
getpass
Description:
getpeereid
Description:
getpeername
Description:
getpgid
Description:
getpgrp
Description:
Examples:
getpid
Description:
Examples:
getppid
Description:
Examples:
getprio
Description:
getprotobyname
Description:
getprotobynumber
Description:
getprotoent
Description:
getpwent
Description:
Examples:
getpwent_r
Description:
getpwnam
Description:
Examples:
getpwnam_r
Description:
getpwuid
Description:
Examples:
getpwuid_r
Description:
getrlimit, getrlimit64
Description:
Examples:
getrusage
Description:
gets
Description:
Examples:
getservbyname
Description:
getservbyport
Description:
getservent
Description:
getsid
Description:
getsockname
Description:
getsockopt
Description:
Manipulating socket options
Options
IP_HDRINCL
IP_TOS
SO_BINDTODEVICE
SO_BROADCAST
SO_DEBUG
SO_DONTROUTE
SO_ERROR
SO_KEEPALIVE
SO_LINGER
SO_OOBINLINE
SO_RCVBUF and SO_SNDBUF
SO_RCVLOWAT
SO_RCVTIMEO
SO_REUSEADDR
SO_REUSEPORT
SO_SNDLOWAT
SO_SNDTIMEO
SO_TIMESTAMP
SO_TYPE
SO_USELOOPBACK
TCP_KEEPALIVE
TCP_NODELAY
Keepalive timing
getspent, getspent_r
Description:
Examples:
getspnam, getspnam_r
Description:
Examples:
getsubopt
Description:
Examples:
gettimeofday
Description:
getuid
Description:
Examples:
getutent
Description:
getutid
Description:
getutline
Description:
getw
Description:
getwc
Description:
getwchar
Description:
getwd
Description:
glob
Description:
Examples:
globfree
Description:
gmtime
Description:
gmtime_r
Description:
H
h_errno
Description:
hcreate
Description:
Examples:
hdestroy
Description:
Examples:
herror
Description:
hostent
Description:
hsearch
Description:
Examples:
hstrerror
Description:
htonl
Description:
htons
Description:
hwi_find_item
Description:
Examples:
hwi_find_tag
Description:
hwi_off2tag
Description:
hwi_tag2off
Description:
hypot, hypotf
Description:
Examples:
I
ICMP
Description:
ICMP6
Description:
ICMP6 type/code filter
if_freenameindex
Description:
if_indextoname
Description:
if_nameindex
Description:
if_nametoindex
Description:
ifaddrs
Description:
ilogb, ilogbf
Description:
Examples:
in8
Description:
in8s
Description:
in16, inbe16, inle16
Description:
in16s
Description:
in32, inbe32, inle32
Description:
in32s
Description:
index
Description:
inet_addr
Description:
inet_aton
Description:
inet_lnaof
Description:
inet_makeaddr
Description:
inet_net_ntop
Description:
Network Numbers (IPv4 Internet addresses)
inet_netof
Description:
inet_net_pton
Description:
inet_network
Description:
inet_ntoa
Description:
inet_ntoa_r
Description:
inet_ntop
Description:
Examples:
inet_pton
Description:
AF_INET addresses
AF_INET6 addresses
Examples:
INET6
Description:
Protocols
Addressing
Interaction between IPv4/v6 sockets
inet6_option_alloc
Description:
inet6_option_append
Description:
inet6_option_find
Description:
inet6_option_init
Description:
inet6_option_next
Description:
inet6_option_space
Description:
inet6_rthdr_add
Description:
inet6_rthdr_getaddr
Description:
inet6_rthdr_getflags
Description:
inet6_rthdr_init
Description:
inet6_rthdr_lasthop
Description:
inet6_rthdr_reverse
Description:
inet6_rthdr_segments
Description:
inet6_rthdr_segments
inet6_rthdr_space
Description:
initgroups
Description:
initstate
Description:
Examples:
input_line
Description:
Examples:
insque
Description:
InterruptAttach, InterruptAttach_r
Description:
Interrupt vector numbers
Interrupts and startup code
Typical x86 Interrupt vector numbers
Interrupt handler function
Flags
_NTO_INTR_FLAGS_END
_NTO_INTR_FLAGS_PROCESS
_NTO_INTR_FLAGS_TRK_MSK
Blocking states
InterruptAttachEvent, InterruptAttachEvent_r
Description:
Flags
_NTO_INTR_FLAGS_END
_NTO_INTR_FLAGS_PROCESS
_NTO_INTR_FLAGS_TRK_MSK
Advantages & disadvantages
Blocking states
InterruptDetach, InterruptDetach_r
Description:
Blocking states
InterruptDisable
Description:
InterruptEnable
Description:
InterruptHookIdle
Description:
Flags
_NTO_INTR_FLAGS_END
_NTO_INTR_FLAGS_PROCESS
_NTO_INTR_FLAGS_TRK_MSK
Blocking states
InterruptHookTrace
Description:
_NTO_INTR_FLAGS_END
Blocking states
InterruptLock
Description:
InterruptMask
Description:
InterruptUnlock
Description:
InterruptUnmask
Description:
InterruptWait, InterruptWait_r
Description:
Blocking states
_intr_v86
Description:
Examples:
_io_connect
Description:
_io_connect_ftype_reply
Description:
_io_connect_link_reply
Description:
ioctl, ioctl_socket
Description:
How ioctl commands map to other commands
Commands with special handling in ioctl_socket
iofdinfo
Description:
iofunc_attr_init
Description:
iofunc_attr_lock
Description:
iofunc_attr_t
Description:
iofunc_attr_trylock
Description:
iofunc_attr_unlock
Description:
iofunc_check_access
Description:
iofunc_chmod
Description:
io_chmod_t structure
iofunc_chmod_default
Description:
iofunc_chown
Description:
io_chown_t structure
iofunc_chown_default
Description:
iofunc_client_info
Description:
iofunc_close_dup
Description:
io_close_t structure
iofunc_close_dup_default
Description:
iofunc_close_ocb
Description:
iofunc_close_ocb_default
Description:
iofunc_devctl
Description:
io_devctl_t structure
iofunc_devctl_default
Description:
iofunc_fdinfo
Description:
iofunc_fdinfo_default
Description:
io_fdinfo_t structure
iofunc_func_init
Description:
Examples:
iofunc_link
Description:
io_link_t structure
iofunc_lock
Description:
iofunc_lock_calloc
Description:
iofunc_lock_default
Description:
iofunc_lock_free
Description:
iofunc_lock_ocb_default
Description:
iofunc_lseek
Description:
io_lseek_t structure
iofunc_lseek_default
Description:
iofunc_mknod
Description:
io_mknod_t structure
iofunc_mmap
Description:
io_mmap_t structure
iofunc_mmap_default
Description:
iofunc_notify
Description:
io_notify_t structure
iofunc_notify_t structure
Examples:
iofunc_notify_remove
Description:
Examples:
iofunc_notify_trigger
Description:
Examples:
iofunc_ocb_attach
Description:
iofunc_ocb_calloc
Description:
Examples:
iofunc_ocb_detach
Description:
iofunc_ocb_free
Description:
Examples:
iofunc_ocb_t
Description:
iofunc_open
Description:
io_open_t structure
Examples:
iofunc_open_default
Description:
iofunc_openfd
Description:
io_openfd_t structure
iofunc_openfd_default
Description:
iofunc_pathconf
Description:
io_pathconf_t structure
iofunc_pathconf_default
Description:
iofunc_read_default
Description:
iofunc_read_verify
Description:
io_read_t structure
iofunc_readlink
Description:
io_readlink_t structure
iofunc_rename
Description:
io_rename_t structure
iofunc_space_verify
Description:
io_space_t structure
iofunc_stat
Description:
iofunc_stat_default
Description:
io_stat_t structure
iofunc_sync
Description:
iofunc_sync_default
Description:
iofunc_sync_verify
Description:
io_sync_t structure
iofunc_time_update
Description:
iofunc_unblock
Description:
iofunc_unblock_default
Description:
Examples:
iofunc_unlink
Description:
io_unlink_t structure
iofunc_unlock_ocb_default
Description:
iofunc_utime
Description:
io_utime_t structure
iofunc_utime_default
Description:
iofunc_write_default
Description:
iofunc_write_verify
Description:
io_write_t structure
ionotify
Description:
Flags
Actions
IP
Description:
Multicasting
Multicast Options
IPsec
Description:
Kernel interface
Policy management
Miscellaneous sysctl variables
Protocols
Setting the policy
Arguments for request
ipsec_dump_policy
Description:
Examples:
ipsec_get_policylen
Description:
Examples:
ipsec_set_policy
Description:
Examples:
ipsec_strerror
Description:
Examples:
IP6
Description:
Basic IP6 sockets API
Advanced IP6 sockets API
Advanced API and TCP sockets
Conflict resolution
Raw IP6 Sockets
iruserok, iruserok_sa
Description:
isalnum
Description:
Examples:
isalpha
Description:
Examples:
isascii
Description:
Examples:
isatty
Description:
Examples:
iscntrl
Description:
Examples:
isdigit
Description:
Examples:
isfdtype
Description:
isfinite
Description:
Examples:
isgraph
Description:
Examples:
isinf
Description:
Examples:
islower
Description:
Examples:
isnan
Description:
Examples:
isprint
Description:
Examples:
ispunct
Description:
Examples:
isspace
Description:
Examples:
isupper
Description:
Examples:
iswalnum
Description:
iswalpha
Description:
iswcntrl
Description:
iswctype
Description:
iswdigit
Description:
iswgraph
Description:
iswlower
Description:
iswprint
Description:
iswpunct
Description:
iswspace
Description:
iswupper
Description:
iswxdigit
Description:
isxdigit
Description:
Examples:
itoa
Description:
Examples:
J
j0, j0f
Description:
Examples:
j1, j1f
Description:
jn, jnf
Description:
Examples:
jrand48
Description:
K
kill
Description:
Examples:
killpg
Description:
Examples:
L
labs
Description:
Examples:
lchown
Description:
Examples:
lcong48
Description:
ldexp, ldexpf, ldexpl
Description:
Examples:
ldiv
Description:
Examples:
lfind
Description:
Examples:
lgamma, lgamma_r, lgammaf, lgammaf_r
Description:
Examples:
link
Description:
Examples:
lio_listio
Description:
listen
Description:
llabs
Description:
localeconv
Description:
Examples:
localtime
Description:
localtime_r
Description:
lockf
Description:
log, logf, logl
Description:
Examples:
log10, log10f, log10l
Description:
Examples:
log1p, log1pf, log1pl
Description:
logb, logbf
Description:
Examples:
login_tty
Description:
longjmp
Description:
Examples:
lrand48
Description:
lsearch
Description:
Examples:
lseek, lseek64
Description:
Examples:
lstat, lstat64
Description:
Examples:
ltoa, lltoa
Description:
Examples:
ltrunc
Description:
Examples:
M
main
Description:
Examples:
mallinfo
Description:
malloc
Description:
Examples:
Debugging
Reverting to the behavior of Neutrino 6.2
mallopt
Description:
Controlling memory allocation
Controlling extra checking
max
Description:
Examples:
mblen
Description:
Examples:
mbrlen
Description:
mbrtowc
Description:
mbsinit
Description:
mbsrtowcs
Description:
mbstowcs
Description:
Examples:
mbtowc
Description:
Examples:
mcheck
Description:
mem_offset, mem_offset64
Description:
QNX extension
Examples:
memalign
Description:
memccpy
Description:
Examples:
memchr
Description:
Examples:
memcmp
Description:
Examples:
memcpy
Description:
Examples:
memcpyv
Description:
Examples:
memicmp
Description:
Examples:
memmove
Description:
Examples:
memset
Description:
Examples:
message_attach
Description:
message_attr_t structure
Handler function
Examples:
message_connect
Description:
Examples:
message_detach
Description:
Examples:
min
Description:
Examples:
mkdir
Description:
Examples:
mkfifo
Description:
Examples:
mknod
Description:
Examples:
mkstemp
Description:
mktemp
Description:
mktime
Description:
Examples:
mlock
Description:
mlockall
Description:
mmap, mmap64
Description:
Examples:
mmap_device_io
Description:
mmap_device_memory
Description:
Examples:
modem_open
Description:
Examples:
modem_read
Description:
modem_script
Description:
State 1
State 2
State 3
State 4
State 5
modem_write
Description:
modf, modff
Description:
Examples:
mount
Description:
mount_parse_generic_args
Description:
Examples:
mprobe
Description:
mprotect
Description:
mq_close
Description:
mq_getattr
Description:
mq_notify
Description:
mq_open
Description:
mq_receive
Description:
mq_send
Description:
mq_setattr
Description:
mq_timedreceive, mq_timedreceive_monotonic
Description:
Examples:
mq_timedsend, mq_timedsend_monotonic
Description:
Examples:
mq_unlink
Description:
mrand48
Description:
_msg_info
Description:
Node descriptors
MsgCurrent, MsgCurrent_r
Description:
Blocking states
MsgDeliverEvent, MsgDeliverEvent_r
Description:
Blocking states
Native networking
Examples:
MsgError, MsgError_r
Description:
Blocking states
Native networking
MsgInfo, MsgInfo_r
Description:
Blocking states
MsgKeyData, MsgKeyData_r
Description:
Blocking states
Examples:
MsgRead, MsgRead_r
Description:
Blocking states
Native networking
MsgReadv, MsgReadv_r
Description:
Blocking states
MsgReceive, MsgReceive_r
Description:
Blocking states
Native networking
MsgReceivePulse, MsgReceivePulse_r
Description:
Blocking states
MsgReceivePulsev, MsgReceivePulsev_r
Description:
Blocking states
MsgReceivev, MsgReceivev_r
Description:
Blocking states
MsgReply, MsgReply_r
Description:
Blocking states
Native networking
MsgReplyv, MsgReplyv_r
Description:
Blocking states
MsgSend, MsgSend_r
Description:
Blocking states
Native networking
MsgSendnc, MsgSendnc_r
Description:
Blocking states
MsgSendPulse, MsgSendPulse_r
Description:
Blocking states
Native networking
MsgSendsv, MsgSendsv_r
Description:
Blocking states
MsgSendsvnc, MsgSendsvnc_r
Description:
Blocking states
MsgSendv, MsgSendv_r
Description:
Blocking states
MsgSendvnc, MsgSendvnc_r
Description:
Blocking states
MsgSendvs, MsgSendvs_r
Description:
Blocking states
MsgSendvsnc, MsgSendvsnc_r
Description:
Blocking states
MsgVerifyEvent, MsgVerifyEvent_r
Description:
Blocking states
MsgWrite, MsgWrite_r
Description:
Blocking states
Native networking
MsgWritev, MsgWritev_r
Description:
Blocking states
msync
Description:
Examples:
munlock
Description:
munlockall
Description:
munmap
Description:
munmap_device_io
Description:
munmap_device_memory
Description:
munmap_flags
Description:
N
name_attach
Description:
name_attach_t
Examples:
name_close
Description:
Examples:
name_detach
Description:
Examples:
name_open
Description:
Examples:
nanosleep
Description:
nanospin
Description:
nanospin_calibrate
Description:
Examples:
nanospin_count
Description:
Examples:
nanospin_ns
Description:
nanospin_ns_to_count
Description:
Examples:
nap
Description:
napms
Description:
nbaconnect
Description:
nbaconnect_result
Description:
ncurses
Description:
ND_NODE_CMP
Description:
Examples:
netent
Description:
netmgr_ndtostr
Description:
Examples:
netmgr_remote_nd
Description:
Examples:
netmgr_strtond
Description:
Examples:
nextafter, nextafterf
Description:
Examples:
nftw, nftw64
Description:
nice
Description:
nrand48
Description:
nsec2timespec
Description:
ntohl
Description:
ntohs
Description:
O
offsetof
Description:
Examples:
open, open64
Description:
Examples:
opendir
Description:
Examples:
openfd
Description:
Examples:
openlog
Description:
Examples:
openpty
Description:
out8
Description:
out8s
Description:
out16, outbe16, outle16
Description:
out16s
Description:
out32, outbe32, outle32
Description:
out32s
Description:
P
pathconf
Description:
Examples:
pathfind, pathfind_r
Description:
Examples:
pathmgr_symlink
Description:
Examples:
pathmgr_unlink
Description:
Examples:
pause
Description:
Examples:
pccard_arm
Description:
Examples:
pccard_attach
Description:
Examples:
pccard_detach
Description:
Examples:
pccard_info
Description:
_pccard_info structure
Examples:
pccard_lock
Description:
Examples:
pccard_raw_read
Description:
Examples:
pccard_unlock
Description:
Examples:
pci_attach
Description:
pci_attach_device
Description:
pci_dev_info structure
Flags
Testing and converting addresses
Examples:
pci_detach
Description:
pci_detach_device
Description:
pci_find_class
Description:
pci_find_device
Description:
pci_irq_routing_options
Description:
Examples:
pci_map_irq
Description:
pci_present
Description:
pci_read_config
Description:
pci_read_config8
Description:
pci_read_config16
Description:
pci_read_config32
Description:
pci_rescan_bus
Description:
pci_write_config
Description:
pci_write_config8
Description:
pci_write_config16
Description:
pci_write_config32
Description:
pclose
Description:
Examples:
perror
Description:
Examples:
pipe
Description:
poll
Description:
Examples:
popen
Description:
Examples:
posix_mem_offset, posix_mem_offset64
Description:
posix_memalign
Description:
posix_spawn
Description:
posix_spawn_file_actions_addclose
Description:
posix_spawn_file_actions_adddup2
Description:
posix_spawn_file_actions_addopen
Description:
posix_spawn_file_actions_destroy
Description:
posix_spawn_file_actions_init
Description:
posix_spawnattr_addpartid
Description:
posix_spawnattr_addpartition
Description:
posix_spawnattr_destroy
Description:
posix_spawnattr_getcred
Description:
posix_spawnattr_getflags
Description:
posix_spawnattr_getnode
Description:
posix_spawnattr_getpartid
Description:
posix_spawnattr_getpgroup
Description:
posix_spawnattr_getrunmask
Description:
posix_spawnattr_getschedparam
Description:
posix_spawnattr_getschedpolicy
Description:
posix_spawnattr_getsigdefault
Description:
posix_spawnattr_getsigignore
Description:
posix_spawnattr_getsigmask
Description:
posix_spawnattr_getstackmax
Description:
posix_spawnattr_getxflags
Description:
posix_spawnattr_init
Description:
posix_spawnattr_setcred
Description:
posix_spawnattr_setflags
Description:
posix_spawnattr_setnode
Description:
posix_spawnattr_setpgroup
Description:
posix_spawnattr_setrunmask
Description:
posix_spawnattr_setschedparam
Description:
posix_spawnattr_setschedpolicy
Description:
posix_spawnattr_setsigdefault
Description:
posix_spawnattr_setsigignore
Description:
posix_spawnattr_setsigmask
Description:
posix_spawnattr_setstackmax
Description:
posix_spawnattr_setxflags
Description:
posix_spawnp
Description:
posix_typed_mem_get_info
Description:
posix_typed_mem_open
Description:
pow, powf, powl
Description:
Examples:
pread, pread64
Description:
printf
Description:
Format Arguments
Format control string
Format control flags
Field width
Precision specifier
Type length specifier
Conversion type specifiers
Examples:
procmgr_daemon
Description:
procmgr_event_notify
Description:
Event types
Examples:
procmgr_event_trigger
Description:
Examples:
procmgr_guardian
Description:
Examples:
procmgr_session
Description:
__progname
Description:
protoent
Description:
pthread_abort
Description:
pthread_atfork
Description:
pthread_attr_destroy
Description:
pthread_attr_getdetachstate
Description:
pthread_attr_getguardsize
Description:
pthread_attr_getinheritsched
Description:
pthread_attr_getschedparam
Description:
pthread_attr_getschedpolicy
Description:
pthread_attr_getscope
Description:
pthread_attr_getstackaddr
Description:
pthread_attr_getstacklazy
Description:
pthread_attr_getstackprealloc
Description:
pthread_attr_getstacksize
Description:
pthread_attr_init
Description:
pthread_attr_setdetachstate
Description:
pthread_attr_setguardsize
Description:
pthread_attr_setinheritsched
Description:
pthread_attr_setschedparam
Description:
Examples:
pthread_attr_setschedpolicy
Description:
pthread_attr_setscope
Description:
pthread_attr_setstackaddr
Description:
pthread_attr_setstacklazy
Description:
pthread_attr_setstackprealloc
Description:
pthread_attr_setstacksize
Description:
pthread_barrier_destroy
Description:
pthread_barrier_init
Description:
pthread_barrier_wait
Description:
pthread_barrierattr_destroy
Description:
pthread_barrierattr_getpshared
Description:
pthread_barrierattr_init
Description:
pthread_barrierattr_setpshared
Description:
pthread_cancel
Description:
pthread_cleanup_pop
Description:
Examples:
pthread_cleanup_push
Description:
Examples:
pthread_cond_broadcast
Description:
pthread_cond_destroy
Description:
pthread_cond_init
Description:
pthread_cond_signal
Description:
pthread_cond_timedwait
Description:
Examples:
pthread_cond_wait
Description:
Examples:
pthread_condattr_destroy
Description:
pthread_condattr_getclock
Description:
pthread_condattr_getpshared
Description:
pthread_condattr_init
Description:
pthread_condattr_setclock
Description:
pthread_condattr_setpshared
Description:
pthread_create
Description:
QNX extensions
Examples:
pthread_detach
Description:
pthread_equal
Description:
pthread_exit
Description:
pthread_getconcurrency
Description:
pthread_getcpuclockid
Description:
pthread_getname_np
Description:
pthread_getschedparam
Description:
pthread_getspecific
Description:
Examples:
pthread_join
Description:
pthread_key_create
Description:
Examples:
pthread_key_delete
Description:
pthread_kill
Description:
pthread_mutex_destroy
Description:
pthread_mutex_getprioceiling
Description:
pthread_mutex_init
Description:
pthread_mutex_lock
Description:
Examples:
pthread_mutex_setprioceiling
Description:
pthread_mutex_timedlock, pthread_mutex_timedlock_monotonic
Description:
pthread_mutex_trylock
Description:
pthread_mutex_unlock
Description:
pthread_mutex_wakeup_np
Description:
pthread_mutexattr_destroy
Description:
pthread_mutexattr_getprioceiling
Description:
pthread_mutexattr_getprotocol
Description:
pthread_mutexattr_getpshared
Description:
pthread_mutexattr_getrecursive
Description:
pthread_mutexattr_gettype
Description:
pthread_mutexattr_getwakeup_np
Description:
pthread_mutexattr_init
Description:
pthread_mutexattr_setprioceiling
Description:
pthread_mutexattr_setprotocol
Description:
pthread_mutexattr_setpshared
Description:
pthread_mutexattr_setrecursive
Description:
pthread_mutexattr_settype
Description:
pthread_mutexattr_setwakeup_np
Description:
pthread_once
Description:
Examples:
pthread_rwlock_destroy
Description:
pthread_rwlock_init
Description:
pthread_rwlock_rdlock
Description:
pthread_rwlock_timedrdlock
Description:
pthread_rwlock_timedwrlock
Description:
pthread_rwlock_tryrdlock
Description:
pthread_rwlock_trywrlock
Description:
pthread_rwlock_unlock
Description:
pthread_rwlock_wrlock
Description:
pthread_rwlockattr_destroy
Description:
pthread_rwlockattr_getpshared
Description:
pthread_rwlockattr_init
Description:
pthread_rwlockattr_setpshared
Description:
pthread_self
Description:
pthread_setcancelstate
Description:
pthread_setcanceltype
Description:
pthread_setconcurrency
Description:
pthread_setname_np
Description:
pthread_setschedparam
Description:
pthread_setschedprio
Description:
pthread_setspecific
Description:
Examples:
pthread_sigmask
Description:
pthread_sleepon_broadcast
Description:
pthread_sleepon_lock
Description:
pthread_sleepon_signal
Description:
pthread_sleepon_timedwait
Description:
pthread_sleepon_unlock
Description:
pthread_sleepon_wait
Description:
pthread_spin_destroy
Description:
pthread_spin_init
Description:
pthread_spin_lock
Description:
pthread_spin_trylock
Description:
pthread_spin_unlock
Description:
pthread_testcancel
Description:
pthread_timedjoin, pthread_timedjoin_monotonic
Description:
_pulse
Description:
pulse_attach
Description:
Examples:
pulse_detach
Description:
Examples:
putc
Description:
Examples:
putc_unlocked
Description:
putchar
Description:
Examples:
putchar_unlocked
Description:
putenv
Description:
Examples:
puts
Description:
Examples:
putspent
Description:
Examples:
pututline
Description:
putw
Description:
putwc
Description:
putwchar
Description:
pwrite, pwrite64
Description:
Q
qnx_crypt
Description:
Examples:
qsort
Description:
Examples:
R
Raccept
Description:
raise
Description:
Examples:
rand
Description:
Examples:
rand_r
Description:
random
Description:
Examples:
Rbind
Description:
rcmd, rcmd_af
Description:
Rconnect
Description:
rdchk
Description:
re_comp
Description:
re_exec
Description:
read
Description:
Examples:
read_main_config_file
Description:
readblock
Description:
readcond
Description:
MIN
TIME
TIMEOUT
FORWARD
readdir
Description:
Examples:
readdir_r
Description:
readlink
Description:
Examples:
readv
Description:
realloc
Description:
Examples:
realpath
Description:
recv
Description:
recvfrom
Description:
recvmsg
Description:
regcomp
Description:
Basic Regular Expressions
Extended Regular Expressions
Examples:
Contributing author:
regerror
Description:
Examples:
Contributing author:
regexec
Description:
Examples:
Contributing author:
regfree
Description:
Examples:
Contributing author:
remainder, remainderf, remainderl
Description:
remove
Description:
Examples:
remque
Description:
rename
Description:
Examples:
res_init
Description:
Resolver configuration
res_mkquery
Description:
res_query
Description:
res_querydomain
Description:
res_search
Description:
res_send
Description:
resmgr_attach
Description:
resmgr_attr_t structure
The flags argument
Examples:
resmgr_block
Description:
Examples:
resmgr_connect_funcs_t
Description:
resmgr_context_alloc
Description:
Examples:
resmgr_context_free
Description:
Examples:
resmgr_context_t
Description:
resmgr_detach
Description:
Blocking states
Examples:
resmgr_devino
Description:
Examples:
resmgr_handle_grow
Description:
resmgr_handle_tune
Description:
resmgr_handler
Description:
Examples:
resmgr_io_funcs_t
Description:
resmgr_iofuncs
Description:
resmgr_msg_again
Description:
resmgr_msgread
Description:
resmgr_msgreadv
Description:
resmgr_msgreply
Description:
Blocking states
resmgr_msgreplyv
Description:
Blocking states
resmgr_msgwrite
Description:
resmgr_msgwritev
Description:
_RESMGR_NPARTS
Description:
resmgr_ocb
Description:
resmgr_open_bind
Description:
resmgr_pathname
Description:
_RESMGR_PTR
Description:
_RESMGR_STATUS
Description:
resmgr_unbind
Description:
rewind
Description:
Examples:
rewinddir
Description:
Examples:
Rgetsockname
Description:
rindex
Description:
rint, rintf, rintl
Description:
Examples:
Rlisten
Description:
rmdir
Description:
Examples:
ROUTE
Description:
Routing database entries
Routing packets
Routing control messages
Examples:
Rrcmd
Description:
rresvport, rresvport_af
Description:
Rselect
Description:
rsrcdbmgr_attach
Description:
rsrc_request_t structure
Examples:
Example 1
Example 2
Example 3
Example 4
rsrcdbmgr_create
Description:
rsrc_alloc_t structure
Examples:
rsrcdbmgr_destroy
Description:
Examples:
rsrcdbmgr_detach
Description:
Examples:
rsrcdbmgr_devno_attach
Description:
Class names
Examples:
rsrcdbmgr_devno_detach
Description:
Examples:
rsrcdbmgr_query_name
Description:
Examples:
ruserok
Description:
S
sbrk
Description:
Examples:
scalb
Description:
Examples:
scalbn, scalbnf
Description:
Examples:
_scalloc
Description:
scandir
Description:
scanf
Description:
Format control string
Conversion specifiers
Type length specifiers
Conversion type specifiers
Examples:
sched_getparam
Description:
Examples:
sched_get_priority_adjust
Description:
sched_get_priority_max
Description:
Examples:
sched_get_priority_min
Description:
sched_getscheduler
Description:
sched_param
Description:
Examples:
sched_rr_get_interval
Description:
sched_setparam
Description:
sched_setscheduler
Description:
Examples:
sched_yield
Description:
Examples:
SchedCtl, SchedCtl_r
Description:
SCHED_APS_QUERY_PARMS
Scheduling policies
Handling bankruptcy
SCHED_APS_SET_PARMS
SCHED_APS_CREATE_PARTITION
SCHED_APS_QUERY_PARTITION
SCHED_APS_LOOKUP
SCHED_APS_JOIN_PARTITION
SCHED_APS_MODIFY_PARTITION
SCHED_APS_PARTITION_STATS
SCHED_APS_OVERALL_STATS
SCHED_APS_MARK_CRITICAL
SCHED_APS_CLEAR_CRITICAL
SCHED_APS_QUERY_THREAD
SCHED_APS_ATTACH_EVENTS
SCHED_APS_ADD_SECURITY
Security
SCHED_APS_QUERY_PROCESS
Blocking states
Examples:
SchedGet, SchedGet_r
Description:
Blocking states
SchedInfo, SchedInfo_r
Description:
SchedSet, SchedSet_r
Description:
Blocking states
SchedYield, SchedYield_r
Description:
Blocking states
searchenv
Description:
Examples:
seed48
Description:
seekdir
Description:
select
Description:
Manipulating file-descriptor sets
Examples:
select_attach
Description:
Flags
Function
Examples:
select_detach
Description:
Examples:
select_query
Description:
Examples:
sem_close
Description:
sem_destroy
Description:
sem_getvalue
Description:
sem_init
Description:
sem_open
Description:
sem_post
Description:
sem_timedwait, sem_timedwait_monotonic
Description:
Examples:
sem_trywait
Description:
sem_unlink
Description:
sem_wait
Description:
send
Description:
sendmsg
Description:
sendto
Description:
servent
Description:
setbuf
Description:
Examples:
setbuffer
Description:
setdomainname
Description:
setegid
Description:
Examples:
setenv
Description:
Examples:
seteuid
Description:
Examples:
setgid
Description:
Examples:
setfsent
Description:
setgrent
Description:
setgroups
Description:
sethostent
Description:
sethostname
Description:
SETIOV
Description:
setitimer
Description:
setjmp
Description:
Examples:
setkey
Description:
setlinebuf
Description:
setlocale
Description:
setlogmask
Description:
Examples:
setnetent
Description:
setpgid
Description:
Examples:
setpgrp
Description:
setprio
Description:
setprotoent
Description:
setpwent
Description:
setregid
Description:
setreuid
Description:
setrlimit, setrlimit64
Description:
setservent
Description:
setsid
Description:
Examples:
setsockopt
Description:
setspent
Description:
setstate
Description:
Examples:
settimeofday
Description:
setuid
Description:
Examples:
setutent
Description:
setvbuf
Description:
Examples:
_sfree
Description:
shm_ctl
Description:
Flags for ARM processors
Examples:
shm_ctl_special
Description:
ARM-specific flags
PPC-specific flags
SH4-specific flags
shm_open
Description:
Examples:
shm_unlink
Description:
Examples:
shutdown
Description:
shutdown_system
Description:
shutdown_classify callout
shutdown_display callout
shutdown_done callout
shutdown_error callout
shutdown_process callout
shutdown_progress callout
shutdown_prompt callout
Examples:
sigaction
Description:
Examples:
sigaddset
Description:
Examples:
sigblock
Description:
sigdelset
Description:
Examples:
sigemptyset
Description:
Examples:
sigevent
Description:
SIGEV_INTR
SIGEV_NONE
SIGEV_PULSE
SIGEV_SIGNAL
SIGEV_SIGNAL_CODE
SIGEV_SIGNAL_THREAD
SIGEV_THREAD
SIGEV_UNBLOCK
Critical threads
sigfillset
Description:
Examples:
sigismember
Description:
Examples:
siglongjmp
Description:
Examples:
sigmask
Description:
signal
Description:
func is a function
func is SIG_DFL
func is SIG_IGN
Handling a condition
Examples:
SignalAction, SignalAction_r
Description:
POSIX signals
QNX Neutrino signals
Signal actions
Blocking states
SignalKill, SignalKill_r
Description:
Blocking states
SignalProcmask, SignalProcmask_r
Description:
Blocking states
SignalSuspend, SignalSuspend_r
Description:
Blocking states
SignalWaitinfo, SignalWaitinfo_r
Description:
Blocking states
sigpause
Description:
sigpending
Description:
Examples:
sigprocmask
Description:
Examples:
sigqueue
Description:
sigsetjmp
Description:
Examples:
sigsetmask
Description:
sigsuspend
Description:
Examples:
sigtimedwait
Description:
sigunblock
Description:
sigwait
Description:
sigwaitinfo
Description:
sin, sinf, sinl
Description:
Examples:
sinh, sinhf, sinhl
Description:
Examples:
sleep
Description:
Examples:
_sleepon_broadcast
Description:
_sleepon_destroy
Description:
_sleepon_init
Description:
_sleepon_lock
Description:
_sleepon_signal
Description:
_sleepon_unlock
Description:
_sleepon_wait
Description:
slogb
Description:
Examples:
slogf
Description:
Severity levels
Examples:
slogi
Description:
Examples:
_smalloc
Description:
snmp_close
Description:
snmp_free_pdu
Description:
snmp_open
Description:
snmp_pdu
Description:
snmp_pdu_create
Description:
snmp_read
Description:
snmp_select_info
Description:
Asynchronous SNMP transactions:
snmp_send
Description:
snmp_session
Description:
snmp_timeout
Description:
snprintf
Description:
Examples:
sockatmark
Description:
socket
Description:
SOCK_STREAM sockets
SOCK_DGRAM and SOCK_RAW sockets
Using the ioctl call
Socket-level options
socketpair
Description:
Examples:
SOCKSinit
Description:
sopen
Description:
Examples:
sopenfd
Description:
spawn
Description:
Mapping file descriptors
inheritance structure
spawnl
Description:
Examples:
spawnle
Description:
Examples:
spawnlp
Description:
spawnlpe
Description:
spawnp
Description:
spawnv
Description:
Examples:
spawnve
Description:
spawnvp
Description:
spawnvpe
Description:
sprintf
Description:
Examples:
sqrt, sqrtf, sqrtl
Description:
Examples:
srand
Description:
Examples:
srand48
Description:
srandom
Description:
_srealloc
Description:
sscanf
Description:
Examples:
stat, stat64
Description:
stat structure
Access permissions
st_mode bits
Macros
Examples:
statvfs, statvfs64
Description:
stderr
Description:
stdin
Description:
stdout
Description:
straddstr
Description:
strcasecmp
Description:
Examples:
strcat
Description:
Examples:
strchr
Description:
Examples:
strcmp
Description:
Examples:
strcmpi
Description:
Examples:
strcoll
Description:
Examples:
strcpy
Description:
Examples:
strcspn
Description:
Examples:
strdup
Description:
Examples:
strerror
Description:
Examples:
strerror_r
Description:
Examples:
strftime
Description:
Formats
Examples:
stricmp
Description:
Examples:
strlcat, strlcpy
Description:
Examples:
Contributing author:
strlen
Description:
Examples:
strlwr
Description:
Examples:
strncasecmp
Description:
Examples:
strncat
Description:
Examples:
strncmp
Description:
Examples:
strncpy
Description:
Examples:
strnicmp
Description:
Examples:
strnset
Description:
Examples:
strpbrk
Description:
Examples:
strptime
Description:
Formats
Modified conversion specifiers
Examples:
strrchr
Description:
Examples:
strrev
Description:
Examples:
strsep
Description:
Examples:
strset
Description:
Examples:
strsignal
Description:
strspn
Description:
Examples:
strstr
Description:
Examples:
strtod, strtof, strtold
Description:
Examples:
strtoimax, strtoumax
Description:
strtok
Description:
Examples:
strtok_r
Description:
strtol, strtoll
Description:
Examples:
strtoul, strtoull
Description:
Examples:
strupr
Description:
Examples:
strxfrm
Description:
Examples:
swab
Description:
swprintf
Description:
swscanf
Description:
symlink
Description:
Examples:
sync
Description:
SyncCondvarSignal, SyncCondvarSignal_r
Description:
Blocking states
SyncCondvarWait, SyncCondvarWait_r
Description:
Blocking states
SyncCtl, SyncCtl_r
Description:
SyncDestroy, SyncDestroy_r
Description:
Blocking states
SyncMutexEvent, SyncMutexEvent_r
Description:
SyncMutexLock, SyncMutexLock_r
Description:
Blocking states
SyncMutexRevive, SyncMutexRevive_r
Description:
SyncMutexUnlock, SyncMutexUnlock_r
Description:
Blocking states
SyncSemPost, SyncSemPost_r
Description:
SyncSemWait, SyncSemWait_r
Description:
SyncTypeCreate, SyncTypeCreate_r
Description:
Blocking states
sysconf
Description:
Examples:
sysctl
Description:
Examples:
syslog
Description:
Message levels
Examples:
sysmgr_reboot
Description:
SYSPAGE_CPU_ENTRY
Description:
Examples:
SYSPAGE_ENTRY
Description:
Examples:
_syspage_ptr
Description:
system
Description:
Examples:
T
tan, tanf, tanl
Description:
Examples:
tanh, tanhf, tanhl
Description:
Examples:
tcdrain
Description:
Examples:
tcdropline
Description:
Examples:
tcflow
Description:
Examples:
tcflush
Description:
Examples:
tcgetattr
Description:
Examples:
tcgetpgrp
Description:
Examples:
tcgetsid
Description:
tcgetsize
Description:
tcinject
Description:
Examples:
tcischars
Description:
TCP
Description:
tcsendbreak
Description:
Examples:
tcsetattr
Description:
Examples:
tcsetpgrp
Description:
Examples:
tcsetsid
Description:
tcsetsize
Description:
tell, tell64
Description:
Examples:
telldir
Description:
tempnam
Description:
termios
Description:
thread_pool_control
Description:
thread_pool_create
Description:
How it works
Thread-pool attributes
Examples:
thread_pool_destroy
Description:
Examples:
thread_pool_limits
Description:
thread_pool_start
Description:
Examples:
ThreadCancel, ThreadCancel_r
Description:
Blocking states
ThreadCreate, ThreadCreate_r
Description:
Thread attributes
Signal state
Local storage for private data
Blocking states
ThreadCtl, ThreadCtl_r
Description:
_NTO_TCTL_ALIGN_FAULT
_NTO_TCTL_IO
_NTO_TCTL_NAME
_NTO_TCTL_ONE_THREAD_CONT
_NTO_TCTL_ONE_THREAD_HOLD
_NTO_TCTL_RUNMASK
_NTO_TCTL_RUNMASK_GET_AND_SET
_NTO_TCTL_RUNMASK_GET_AND_SET_INHERIT
_NTO_TCTL_THREADS_CONT
_NTO_TCTL_THREADS_HOLD
Blocking states
ThreadDestroy, ThreadDestroy_r
Description:
Blocking states
ThreadDetach, ThreadDetach_r
Description:
Blocking states
ThreadJoin, ThreadJoin_r
Description:
Blocking states
time
Description:
Examples:
timer_create
Description:
Examples:
timer_delete
Description:
timer_getexpstatus
Description:
timer_getoverrun
Description:
timer_gettime
Description:
timer_settime
Description:
Examples:
timer_timeout, timer_timeout_r
Description:
Blocking states
TimerAlarm, TimerAlarm_r
Description:
Blocking states
TimerCreate, TimerCreate_r
Description:
Blocking states
TimerDestroy, TimerDestroy_r
Description:
Blocking states
TimerInfo, TimerInfo_r
Description:
struct _timer_info
Blocking states
TimerSettime, TimerSettime_r
Description:
Expiration date
Blocking states
TimerTimeout, TimerTimeout_r
Description:
Timeout states
Event types
The timeout
Blocking states
times
Description:
Examples:
timespec
Description:
timespec2nsec
Description:
timezone
Description:
tm
Description:
tmpfile, tmpfile64
Description:
Examples:
tmpnam
Description:
Examples:
tolower
Description:
Examples:
toupper
Description:
Examples:
towctrans
Description:
towlower
Description:
towupper
Description:
trace_func_enter
Description:
trace_func_exit
Description:
trace_here
Description:
Examples:
trace_logb
Description:
Examples:
trace_logbc
Description:
trace_logf
Description:
trace_logi
Description:
trace_nlogf
Description:
Examples:
trace_vnlogf
Description:
Examples:
TraceEvent
Description:
Buffer and execution control
_NTO_TRACE_ALLOCBUFFER, _NTO_TRACE_DEALLOCBUFFER
_NTO_TRACE_FLUSHBUFFER
_NTO_TRACE_QUERYEVENTS
_NTO_TRACE_START, _NTO_TRACE_STARTNOSTATE, _NTO_TRACE_STOP
_NTO_TRACE_SETRINGMODE
_NTO_TRACE_SETLINEARMODE
Fast/wide mode configuration
_NTO_TRACE_SETALLCLASSESFAST, _NTO_TRACE_SETALLCLASSESWIDE
_NTO_TRACE_SETCLASSFAST, _NTO_TRACE_SETCLASSWIDE
_NTO_TRACE_SETEVENTFAST, _NTO_TRACE_SETEVENTWIDE
Static rules filter configuration
_NTO_TRACE_ADDALLCLASSES, _NTO_TRACE_DELALLCLASSES
_NTO_TRACE_ADDCLASS, _NTO_TRACE_DELCLASS
_NTO_TRACE_ADDEVENT, _NTO_TRACE_DELEVENT
_NTO_TRACE_SETCLASSPID, _NTO_TRACE_CLRCLASSPID, _NTO_TRACE_SETCLASSTID, _NTO_TRACE_CLRCLASSTID
_NTO_TRACE_SETEVENTPID, _NTO_TRACE_CLREVENTPID, _NTO_TRACE_SETEVENTTID, _NTO_TRACE_CLREVENTTID
Dynamic rules filter configuration
Accessing data in the event handler
Macros for use with the event header
_NTO_TRACE_ADDEVENTHANDLER, _NTO_TRACE_DELEVENTHANDLER
_NTO_TRACE_ADDCLASSEVHANDLER, _NTO_TRACE_DELCLASSEVHANDLER
User-generated trace events
_NTO_TRACE_INSERTEVENT
_NTO_TRACE_INSERTSUSEREVENT, _NTO_TRACE_INSERTCUSEREVENT, _NTO_TRACE_INSERTUSRSTREVENT
Examples:
traceparser
Description:
traceparser_cs
Description:
Callback function
traceparser_cs_range
Description:
traceparser_debug
Description:
traceparser_destroy
Description:
traceparser_get_info
Description:
User info modes for info_modes
Other valid user info modes
traceparser_init
Description:
truncate
Description:
ttyname
Description:
Examples:
ttyname_r
Description:
tzname
Description:
tzset
Description:
Examples:
U
ualarm
Description:
Examples:
UDP
Description:
ultoa, ulltoa
Description:
Examples:
umask
Description:
Examples:
umount
Description:
UNALIGNED_PUT16
Description:
UNALIGNED_PUT32
Description:
UNALIGNED_PUT64
Description:
UNALIGNED_RET16
Description:
UNALIGNED_RET32
Description:
UNALIGNED_RET64
Description:
uname
Description:
Examples:
ungetc
Description:
Examples:
ungetwc
Description:
UNIX
Description:
Addressing
Protocols
LOCAL_CREDS
unlink
Description:
Examples:
unsetenv
Description:
usleep
Description:
Examples:
utime
Description:
Examples:
utimes
Description:
utmp
Description:
utmpname
Description:
utoa
Description:
Examples:
V
va_arg
Description:
Varargs and coercion
Examples:
va_copy
Description:
Examples:
va_end
Description:
va_start
Description:
Examples:
valloc
Description:
verr, verrx
Description:
vfork
Description:
vfprintf
Description:
Examples:
vfscanf
Description:
Examples:
vfwprintf
Description:
vfwscanf
Description:
vprintf
Description:
Examples:
vscanf
Description:
Examples:
vslogf
Description:
vsnprintf
Description:
Examples:
vsprintf
Description:
Examples:
vsscanf
Description:
Examples:
vswprintf
Description:
vswscanf
Description:
vsyslog
Description:
vwarn, vwarnx
Description:
vwprintf
Description:
vwscanf
Description:
W
wait
Description:
Status macros
wait3
Description:
wait4
Description:
waitid
Description:
waitpid
Description:
warn, warnx
Description:
Examples:
wcrtomb
Description:
wcscat
Description:
wcschr
Description:
wcscmp
Description:
wcscoll
Description:
wcscpy
Description:
wcscspn
Description:
wcsftime
Description:
wcslen
Description:
wcsncat
Description:
wcsncmp
Description:
wcsncpy
Description:
wcspbrk
Description:
wcsrchr
Description:
wcsrtombs
Description:
wcsspn
Description:
wcsstr
Description:
wcstod, wcstof, wcstold
Description:
wcstoimax, wcstoumax
Description:
wcstok
Description:
wcstol, wcstoll
Description:
wcstombs
Description:
Examples:
wcstoul, wcstoull
Description:
wcscxfrm
Description:
wctob
Description:
wctomb
Description:
Examples:
wctrans
Description:
wctype
Description:
wmemchr
Description:
wmemcmp
Description:
wmemcpy
Description:
wmemmove
Description:
wmemset
Description:
wordexp
Description:
wordfree
Description:
wprintf
Description:
write
Description:
Examples:
writeblock
Description:
writev
Description:
wscanf
Description:
X
Y
y0, y0f
Description:
y1, y1f
Description:
Examples:
yn, ynf
Description:
Z
SOCKS --- A Basic Firewall
About SOCKS
How to SOCKSify a client
What SOCKS expects
Summary of Safety Information
Cancellation points
Interrupt handlers
Signal handlers
Multithreaded programs
Full Safety Information
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
Y
What's New in this Reference?
What's new in QNX Neutrino 6.5.0?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.4.1?
New entries
Deprecated content
Changed content
Errata
What's new in QNX Neutrino 6.4.0?
New entries
Deprecated content
Changed content
Errata
What's new in QNX Neutrino 6.3.2?
Errata
What's new in the QNX Neutrino Core OS 6.3.2?
New entries
Changed content
What's new in QNX Neutrino 6.3.0 Service Pack 2?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.3.0 Service Pack 1?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.3.0?
New entries
Deprecated content
What's new in QNX Neutrino 6.2.1?
New entries
Changed content
Errata
What's new in QNX Neutrino 6.2?
New entries
Deprecated content
Errata
What's new in QNX Neutrino 6.1.0?
New entries
Deprecated content
Glossary
QNX Persistent Publish/Subscribe Developer's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support options
QNX PPS Service
Running PPS
Objects and their Attributes
Object files
Object and directory sizes
Special objects
Object syntax
Objects in filesystem listings
Change notification
Responding to an object deletion
Attributes
Persistence
Persistent storage
Persistence and filesystem limitations
Saving objects
Loading objects
Publishing
Creating, modifying and deleting
Multiple publishers
Subscribing
Blocking and non-blocking reads
Setting PPS to block
Clearing O_NONBLOCK
io_notify functionality
Getting notifications of data on a file descriptor
Subscription Modes
Full mode
Delta mode
Delta mode queues
Changes to multiple attributes
Server objects
Subscribing to multiple objects
Subscribe to all objects in a directory
Notification groups
Creating notification groups
Using notification groups
Notification of closed file descriptors for objects
Options and Qualifiers
Pathname open options
Critical option
Duplicate file descriptors
Critical file descriptors
Server file descriptors
Object and attribute qualifiers
Setting qualifiers
No-persistence qualifier
Item qualifier
Adding and deleting set items
Incorrect item syntax
Examples
Example 1: Duplicate items
Example 2: Null items
Example 3: Delete an item
ppsparse
Description:
pps_attrib_t
pps_attrib_flags_t
pps_options_t
pps_status_t
Examples:
Programmer's Guide
About This Book
What you'll find in this guide
Recommended reading
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Compiling and Debugging
Choosing the version of the OS
Making your code more portable
Conforming to standards
Including QNX- or Neutrino-specific code
Header files in /usr/include
Self-hosted or cross-development
A simple example
Self-hosted
Cross-development with network filesystem
Cross-development with debugger
Download/upload facility
Cross-development, deeply embedded
Step 1: Build a Neutrino system image.
Step 2: Transfer the system image to the target.
Step 3: Boot the target.
Using libraries
Static linking
Dynamic linking
Runtime loading
Static and dynamic libraries
Static libraries
Dynamic libraries
dlopen
Platform-specific library locations
Linking your modules
Creating shared objects
Specifying an internal name
Optimizing the runtime linker
Lazy binding
RTLD_LAZY
Lazy loading
Diagnostics and debugging
Environment variables
Debugging
Debugging in a self-hosted environment
Debugging in a cross-development environment
The GNU debugger (gdb)
Starting gdb
The process-level debug agent
Serial connection
TCP/IP connection
TCP/IP static port connection
TCP/IP dynamic port connection
Sample buildfile for dynamic port sessions
A simple debug session
Configure the target
Compile for debugging
Start the debug session
Get help
Sample boot image
Debugging using libmudflap
Programming Overview
Process model
An application as a set of processes
Processes and threads
Some definitions
Priorities and scheduling
Priority range
BLOCKED and READY states
The ready queue
Suspending a running thread
When the thread is blocked
When the thread is preempted
When the thread yields
Scheduling policies
FIFO scheduling
Round-robin scheduling
Sporadic scheduling
Why threads?
Summary
Processes
Starting processes --- two methods
Process creation
Concurrency
Using fork and forkpty
Inheriting file descriptors
Process termination
Normal process termination
Abnormal process termination
Effect of parent termination
Detecting process termination
Using the High Availability Framework
Detecting termination from a starter process
Sample parent process using wait
Sample parent process using sigwaitinfo
Detecting dumped processes
Detecting the termination of daemons
Detecting client termination
Controlling processes via the /proc filesystem
Establishing a connection
Reading and writing the process's address space
Determining the offset
Determining accessibility
Manipulating a process or thread
Selecting a thread for further operations
Starting/stopping processes and threads
Setting breakpoints
Examining process and thread attributes
Thread information
DCMD_PROC_BREAK
DCMD_PROC_CHANNELS
DCMD_PROC_CLEAR_FLAG
DCMD_PROC_CURTHREAD
DCMD_PROC_EVENT
DCMD_PROC_FREEZETHREAD
DCMD_PROC_GETALTREG
DCMD_PROC_GETFPREG
DCMD_PROC_GETGREG
DCMD_PROC_GETREGSET
DCMD_PROC_GET_BREAKLIST
DCMD_PROC_INFO
DCMD_PROC_IRQS
DCMD_PROC_MAPDEBUG
DCMD_PROC_MAPDEBUG_BASE
DCMD_PROC_MAPINFO
DCMD_PROC_PAGEDATA
DCMD_PROC_RUN
DCMD_PROC_SETALTREG
DCMD_PROC_SETFPREG
DCMD_PROC_SETGREG
DCMD_PROC_SETREGSET
DCMD_PROC_SET_FLAG
DCMD_PROC_SIGNAL
DCMD_PROC_STATUS
DCMD_PROC_STOP
DCMD_PROC_SYSINFO
DCMD_PROC_THAWTHREAD
DCMD_PROC_THREADCTL
DCMD_PROC_TIDSTATUS
DCMD_PROC_TIMERS
DCMD_PROC_WAITSTOP
Tick, Tock: Understanding the Neutrino Microkernel's Concept of Time
What's a tick?
Oversleeping: errors in delays
Delaying for a second: inaccurate code
Timer quantization error
The tick and the hardware timer
Delaying for a second: better code
Another hiccup with hardware timers
Where's the catch?
What time is it?
Transparent Distributed Processing Using Qnet
What is Qnet?
Benefits of Qnet
What works best
What type of application is well-suited for Qnet?
Qnet drivers
How does it work?
Locating services using GNS
Different modes of gns
Server
Client
Registering a service
GNS path namespace
Deploying the gns processes
Quality of Service (QoS) and multiple paths
QoS policies
loadbalance
preferred
exclusive
Specifying QoS policies
Symbolic links
Designing a system using Qnet
The product
Developing your distributed system
Configuring the data cards
Configuring the controller card
Enhancing reliability via multiple transport buses
Redundancy and scalability using multiple controller cards
Redundancy
Scalability
Autodiscovery vs static
When should you use Qnet, TCP/IP, or NFS?
Writing a driver for Qnet
Writing an Interrupt Handler
What's an interrupt?
Interrupts on multicore systems
Attaching and detaching interrupts
Interrupt Service Routine (ISR)
Determining the source of the interrupt
Edge-triggered IRQ
Level-sensitive IRQ
Servicing the hardware
Safe functions
Updating common data structures
Signalling the application code
Using InterruptAttach
Using InterruptAttachEvent
Running out of interrupt events
Problems with shared interrupts
Advanced topics
Interrupt environment
Ordering of shared interrupts
Interrupt latency
Atomic operations
Heap Analysis: Making Memory Errors a Thing of the Past
Introduction
Dynamic memory management
Arena allocations
Small block configuration
Heap corruption
Contiguous memory blocks
Multithreaded programs
Allocation strategy
Common sources
Overrun and underrun errors
Releasing memory
Using uninitialized or stale pointers
Detecting and reporting errors
Using the malloc debug library
What's checked?
Allocating memory
Reallocating memory
Releasing memory
Controlling the level of checking
Description of optional checks
Forcing verification
Specifying an error handler
Other environment variables
Caveats
Manual checking (bounds checking)
Getting pointer information
Memory leaks
Tracing
Causing a trace and giving results
Analyzing dumps
Compiler support
C++ issues
Clean C
C++ example
Freedom from Hardware and Platform Dependencies
Common problems
I/O space vs memory-mapped
Big-endian vs little-endian
Typecast mangling
Hardware access
Network transparency
Alignment and structure packing
Atomic operations
Solutions
Determining endianness
Swapping data if required
ENDIAN_LE16
ENDIAN_LE32
ENDIAN_LE64
ENDIAN_BE16
ENDIAN_BE32
ENDIAN_BE64
Accessing unaligned data
UNALIGNED_RET16
UNALIGNED_RET32
UNALIGNED_RET64
UNALIGNED_PUT16
UNALIGNED_PUT32
UNALIGNED_PUT64
Examples
Mixed-endian accesses
Accessing hardware with dual-ported memory
Accessing I/O ports
Conventions for Recursive Makefiles and Directories
Structure of a multiplatform source tree
Makefile structure
The recurse.mk file
Macros
The EARLY_DIRS and LATE_DIRS macros
The LIST macro
The MAKEFILE macro
The CHECKFORCE macro
Directory levels
Project level
Section level (optional)
OS level
CPU level
Variant level
Specifying options
The common.mk file
The variant-level makefile
Recognized variant names
Using the standard macros and include files
The qconfig.mk include file
Preset macros
Postset macros
qconfig.mk macros
The qrules.mk include file
The qtargets.mk include file
Advanced topics
Collapsing unnecessary directory levels
Performing partial builds
Performing parallel builds
More uses for LIST
GNU configure
hook_preconfigure
hook_postconfigure
hook_premake
hook_postmake
hook_pinfo
Examples of creating Makefiles
A single application
A library and an application
POSIX Conformance
Conformance statement
System interfaces: general attributes
Supported features
Optional features
Float, standard I/O, and limit values
Error conditions
Mathematical interfaces
File handling
Access control
Files and directories
Internationalized system interfaces
Coded character sets
Threads
Cancellation points
Realtime
Prioritized I/O
Realtime threads
Scheduling policies
Scheduling contention scope
Default scheduling contention scope
Scheduling allocation domain
C-language compilation environment
POSIX Conformance Document (PCD)
Base Definitions
3. Definitions
3.4. Additional File Access Control Mechanism
3.12. Alternate File Access Control Mechanism
3.19. Appropriate Privileges
3.97. Clock Tick
3.159. Extended Security Controls
3.387. System Trace Event
3.409. Trace Generation Version
4. General Concepts
4.3. Extended Security Controls
4.9. Measurement of Execution Time
4.11. Pathname Resolution
4.14. Seconds Since the Epoch
4.17. Tracing
4.18. Treatment of Error Conditions for Mathematical Functions
6. Character Set
6.4. Character Set Description File
7. Locale
7.1. General
7.2. POSIX Locale
7.3. Locale Definition
8. Environment Variables
8.2. Internationalization Variables
8.3. Other Environment Variables
13. Headers
fenv.h
float.h
limits.h
math.h
signal.h
stdint.h
sys/stat.h
time.h
System Interfaces
2.3. Error Numbers
2.4. Signal Concepts
2.4.2. Realtime Signal Generation and Delivery
2.4.3. Signal Actions
2.5. Standard I/O Streams
2.5.1. Interaction of File Descriptors and Standard I/O Streams
2.8. Realtime
2.8.3. Memory Management
2.8.4. Processing Scheduling
2.8.5. Clocks and Timers
2.9.4. Thread Scheduling
2.11. Tracing
3. System Interfaces
acos, acosf, and acosl
acosh, acoshf, acoshl
asin, asinf, asinl
atan, atanf, atanhl
calloc
clock_getres, clock_settime
cos, cosf, cosl
erfc, erfcf, erfcl
exp, expf, expl
exp2, exp2f, exp2l
fclose
fcntl
fdim, fdimf, fdiml
fegetexceptflag
feraiseexcept
fflush
fgetc
fma, fmaf, fmal
fmod, fmodf, fmodl
fpclassify
fprintf
fputc
freopen
fscanf
fseeko
fsetpos
fstat
fsync
kill
ldexp, ldexpf, ldexpl
log, logf, logl
log10, log10f, log10l
log1p, log1pf, log1pl
log2, log2f, log2l
lseek
malloc
mkdir
mlock
mlockall, munlockall
mmap
mq_open
mq_receive
mq_setattr
open
posix_trace_*
pow, powf, powl
pthread_attr_destroy
pthread_condattr_destroy, pthread_condattr_init
pthread_getschedparam, pthread_setschedparam
pthread_rwlock_rdlock
pthread_rwlock_unlock
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared
read
remainder, remainderf, remainderl
remquo, remquof, remquol
rint, rintf, rintl
scalbln, scalblnf, scalblnl, scalbn, scalbnf, scalbnl
sem_open
setlocale
shm_open
sigaction
signal
sigwait
sin, sinf, sinl
sqrt, sqrtf, sqrtl
stat
strtod, strtof, strtold
strtol, strtoll
strtoul, strtoull
tan, tanf, tanl
tgamma, tgammaf, tgammal
timer_create
tmpnam
tzset
uname
write
Non-POSIX functions with POSIX-sounding names
Using GDB
Neutrino-specific extensions
A quick overview of starting the debugger
GDB commands
Command syntax
Command completion
Getting help
Running programs under GDB
Compiling for debugging
Setting the target
Starting your program
Your program's arguments
Your program's environment
Your program's input and output
Debugging an already-running process
Killing the process being debugged
Debugging programs with multiple threads
Debugging programs with multiple processes
Stopping and continuing
Breakpoints, watchpoints, and exceptions
Setting breakpoints
Setting watchpoints
Breakpoints and exceptions
Deleting breakpoints
Disabling breakpoints
Break conditions
Breakpoint command lists
Breakpoint menus
Continuing and stepping
Signals
Stopping and starting multithreaded programs
Examining the stack
Stack frames
Backtraces
Selecting a frame
Information about a frame
MIPS machines and the function stack
Examining source files
Printing source lines
Searching source files
Specifying source directories
Source and machine code
Shared libraries
Examining data
Expressions
Program variables
Artificial arrays
Output formats
Examining memory
Automatic display
Print settings
Value history
Convenience variables
Registers
Floating point hardware
Examining the symbol table
Altering execution
Assignment to variables
Continuing at a different address
Giving your program a signal
Returning from a function
Calling program functions
Patching programs
ARM Memory Management
ARM-specific restrictions and issues
_NTO_TCTL_IO behavior
Implications of the ARM Cache Architecture
ARM-specific features
shm_ctl behavior
Advanced Qnet Topics
Low-level discussion of Qnet principles
Details of Qnet data communication
Node descriptors
The sys/netmgr.h header file
netmgr_strtond
netmgr_ndtostr
netmgr_remote_nd
Booting over the network
Overview
Creating directory and setting up configuration files
Building an OS image
Booting the client
Troubleshooting
What are the limitations ...
Glossary
QED - Fullscreen Editor
About the QED Manual
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Tutorial Guide
Getting Started
The Status Line
The Command Line
Text Area
Appending New Text (F1)
Appending or Inserting Lines (F1/F2)
Using the Del and Backspace keys
Inserting text using Ins
Other Cursor keys which Simplify Editing
Saving your Text
Exercise
More on the F1 and F2 keys
Deleting Lines (F3 key)
Filling Lines (F4 key)
Centering Lines (CtrlF4)
Splitting and Joining Lines (F5/F6 keys)
Tagging Blocks of Text (F7/F8 keys)
Line Tagging
Block Tagging
Insert Mode and Block Move and Copy
Re-setting the Last Tagged Lines or Block
Re-executing Commands (F9/F10 keys)
Tabs
Line Drawing Characters
Margins
Moving Your Margins (Shift F1 to F6)
Auto Fill and Your Right Margin
Auto Justify
Indenting and Your Left Margin
Line Flags
Overstrike Flag ( Alt o )
Continuation Flag ( Alt c )
Paragraph Flag ( Alt p )
Some Simple Editor Commands.
Learn Mode
Absolute Line Positioning
Simple Pattern Matching
File I/O Commands
The View Command
Executing System Commands
Epilogue
Using qed on non-QNX terminal types
Setting Your Terminal Type
Required Terminal Capabilities
Screen Output
Keyboard Input
Reference Manual
The Syntax of Editor Commands
Line Range
Command Specification Character
Right Arguments
Placing Multiple Commands On A Line
Special Characters
The Linefeed Character (hex 0A)
The NUL Character (hex 00)
The Meta Characters (@$^^&.*[)
The Backslash Character (\)
The Tab Character (hex 09)
The Command Character (hex FF)
The Recall Character (hex FE)
The Keyboard Input Character (hex FD)
The Macro Disable Character (hex A3)
The Condition Register
Delete Buffers
The Character Delete Buffer
The Line Delete Buffer
Break Handling
The Pattern Matcher
Some Pattern Examples
Command Reference:
Append (a)
Description:
Current line:
Condition register:
Branch (b)
Description:
Current line:
Condition register:
Change (c)
Description:
Current line:
Condition register:
Delete (d)
Description:
Current line:
Condition register:
Edit (e)
Description:
Current line:
Condition register:
File (f)
Description:
Current line:
Condition register:
Global (g)
Description:
Current line:
Condition register:
Insert (i)
Description:
Current line:
Condition register:
Join (j)
Description:
Current line:
Condition register:
Kopy (k)
Description:
Current line:
Condition register:
Learn (l)
Description:
Current line:
Condition register:
Move (m)
Description:
Current line:
Condition register:
Option (o)
Description:
Options
Current line:
Condition register:
Print (p)
Description:
Current line:
Condition register:
Quit (q)
Description:
Current line:
Condition register:
Read (r)
Description:
Current line:
Condition register:
Substitute (s)
Description:
Current line:
Condition register:
Translate (t)
Description:
Current line:
Condition register:
Until (u)
Description:
Current line:
Condition register:
View (v)
Description:
View screen options
Current line:
Condition register:
Write (w)
Description:
Current line:
Condition register:
Execute (x)
Description:
Current line:
Condition register:
Yut? (prompt) (y)
Description:
Current line:
Condition register:
Zap (z)
Description:
Current line:
Condition register:
Defining Your Own Macros
What is a Macro
Multi-line Macros
Macros Containing Branches
Suggestions
Appendix A - Error Messages
Quick Reference
Control Keys
Cursor Movement Keys
Character Editing Keys
Function Keys
Option Control
Margin Control
Line Flags
Special Characters
Editor Commands
Line Range range
Line Address line
Meta Characters Used in Patterns
File I/O Commands
Alphabetical List of All Editor Commands
Examples
Writing a Resource Manager
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview
What is a resource manager?
Why write a resource manager?
The types of resource managers
Device resource managers
Filesystem resource managers
Communication via native IPC
Examples of resource managers
Transparent Distributed Processing (Qnet) statistics
Robot arm
GPS devices
Database example
I2C (Inter-Integrated Circuit) driver
When not to use a resource manager
The Bones of a Resource Manager
Under the covers
Under the client's covers
Under the resource manager's covers
Layers in a resource manager
The iofunc layer
The resmgr layer
The dispatch layer
The thread pool layer
Simple examples of device resource managers
Single-threaded device resource manager
Initialize the dispatch interface
Initialize the resource manager attributes
Initialize functions used to handle messages
Initialize the attribute structure used by the device
Put a name into the namespace
Allocate the context structure
Start the resource manager message loop
Multithreaded device resource manager
Define THREAD_POOL_PARAM_T
Initialize thread pool attributes
Allocate a thread pool handle
Start the threads
Using MsgSend and MsgReply
A bit of history
The server
The client
Fleshing Out the Skeleton
Message types
Connect messages
I/O messages
Default message handling
open, dup, and close
Setting resource manager attributes
Ways of adding functionality to the resource manager
Using the default functions
Using the helper functions
Writing the entire function yourself
POSIX-Layer Data Structures
The iofunc_ocb_t (Open Control Block) structure
The iofunc_attr_t (attribute) structure
The optional iofunc_mount_t (mount) structure
Handling Read and Write Messages
Handling the _IO_READ message
Sample code for handling _IO_READ messages
Handling the _IO_WRITE message
Sample code for handling _IO_WRITE messages
Methods of returning and replying
Returning with an error
Returning using an IOV array that points to your data
Returning with a single buffer containing data
Returning success but with no data
Getting the resource manager library to do the reply
Performing the reply in the server
Leaving the client blocked, replying later
Returning and telling the library to do the default action
Handling other read/write details
Handling the xtype member
If you aren't expecting extended types (xtype)
Handling pread* and pwrite*
Sample code for handling _IO_READ messages in pread*
Sample code for handling _IO_WRITE messages in pwrite*
Handling readcond
Updating the time for reads and writes
Combine Messages
Where combine messages are used
Atomic operations
Using a mutex
Per-thread files
The readblock function
Bandwidth considerations
The library's combine-message handling
Component responses
Component data access
Locking and unlocking the attribute structure
Connect message types
_IO_CONNECT_COMBINE_CLOSE
_IO_CONNECT_COMBINE
Extending the POSIX-Layer Data Structures
Overview
Extending the OCB and attribute structures
Extending the mount structure
Handling Other Messages
Custom messages
Handling devctl messages
Sample code for handling _IO_DEVCTL messages
Handling ionotify and select
Sample code for handling _IO_NOTIFY messages
Handling out-of-band (_IO_MSG) messages
Handling private messages and pulses
Handling open, dup, and close messages
Handling mount
mount function call
Mount in the resource manager
mount utility
Handling stat
Handling lseek
Signals, Timeouts, and Interrupts
Handling client unblocking due to signals or timeouts
Handling interrupts
Sample code for handling interrupts
Multithreaded Resource Managers
Multithreaded resource manager example
Thread pool attributes
Thread pool functions
Filesystem Resource Managers
Considerations for filesystem resource managers
Taking over more than one device
Handling directories
Matching at or below a mountpoint
The _IO_OPEN message for filesystems
Returning directory entries from _IO_READ
Returning information associated with a directory structure
Glossary
System Architecture
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
The Philosophy of QNX Neutrino
Design goals
An embeddable POSIX OS?
Product scaling
Why POSIX for embedded systems?
Multiple OS sources
Portability of development staff
Development environment: native and cross development
Why QNX Neutrino for embedded systems?
Microkernel architecture
The OS as a team of processes
A true kernel
System processes
System processes vs user-written processes
Device drivers
Interprocess communication
QNX Neutrino as a message-passing operating system
Network distribution of kernels
Single-computer model
Flexible networking
The QNX Neutrino Microkernel
Introduction
The implementation of QNX Neutrino
POSIX realtime and thread extensions
System services
Threads and processes
Thread attributes
Thread life cycle
Thread scheduling
When are scheduling decisions are made?
When is a thread blocked?
When is a thread preempted?
When is a thread yielded?
Scheduling priority
Scheduling policies
FIFO scheduling
Round-robin scheduling
Sporadic scheduling
Manipulating priority and scheduling policies
IPC issues
Thread complexity issues
Synchronization services
Mutexes: mutual exclusion locks
Priority inheritance and mutexes
Condvars: condition variables
Barriers
Sleepon locks
Reader/writer locks
Semaphores
Synchronization via scheduling policy
Synchronization via message passing
Synchronization via atomic operations
Synchronization services implementation
Clock and timer services
Time correction
Timers
Interrupt handling
Interrupt latency
Scheduling latency
Nested interrupts
Interrupt calls
Interprocess Communication (IPC)
Synchronous message passing
MsgReply vs MsgError
Message copying
Simple messages
Channels and connections
Pulses
Priority inheritance and messages
Message-passing API
Robust implementations with Send/Receive/Reply
Events
I/O notification
Signals
Special signals
Summary of signals
POSIX message queues
Why use POSIX message queues?
File-like interface
Message-queue functions
Shared memory
Shared memory with message passing
Creating a shared-memory object
mmap
Initializing allocated memory
Typed memory
Implementation-defined behavior
Seeding of typed memory regions
Naming of typed memory regions
Pathname space and typed memory
mmap allocation flags and typed memory objects
Permissions and typed memory objects
Object length and offset definitions
Interaction with other POSIX APIs
Practical examples
Allocating contiguous memory from system RAM
Defining packet memory and allocating from it
Defining a DMA-safe region
Pipes and FIFOs
Pipes
FIFOs
The Instrumented Microkernel
Introduction
Instrumentation at a glance
Event control
Modes of emission
Ring buffer
Data interpretation
System analysis with the IDE
Proactive tracing
Multicore Processing
Introduction
Asymmetric multiprocessing (AMP)
Symmetric multiprocessing (SMP)
Neutrino's microkernel approach
Booting an x86 SMP system
Booting a PowerPC or MIPS SMP system
How the SMP microkernel works
Scheduling
Kernel locking
Interprocessor interrupts (IPIs)
Critical sections
Bound multiprocessing (BMP)
A viable migration strategy
Choosing between AMP, SMP, and BMP
Process Manager
Introduction
Process management
Process primitives
posix_spawn
spawn
fork
vfork
exec*
Process loading
Memory management
Memory Management Units (MMUs)
Memory protection at run time
Software watchdog
Quality control
Full-protection model
Private virtual memory
Variable page size
Locking memory
Defragmenting physical memory
Automatically marking memory as unmovable
Pathname management
Domains of authority
Resolving pathnames
Ordering mountpoints
Single-device mountpoints
Unioned filesystem mountpoints
Why overlay mountpoints?
Symbolic prefixes
Creating special device names
Relative pathnames
A note about cd
File descriptor namespace
Open control blocks
Dynamic Linking
Shared objects
Statically linked
Dynamically linked
Augmenting code at runtime
How shared objects are used
ELF format
ELF without COFF
The process
Runtime linker
Loading a shared library at runtime
Symbol name resolution
Resource Managers
Introduction
What is a resource manager?
Why write a resource manager?
The types of resource managers
Device resource managers
Filesystem resource managers
Communication via native IPC
Resource manager architecture
Message types
The resource manager shared library
Automatic default message handling
open, dup, and close
Multiple thread handling
Dispatch functions
Combine messages
Second-level default message handling
Summary
Filesystems
Introduction
Filesystems and pathname resolution
Filesystem classes
Filesystems as shared libraries
io-blk
Builtin RAM disk
Partitions
Buffer cache
Filesystem limitations
Image filesystem
RAM filesystem
Embedded transaction filesystem (ETFS)
Inside a transaction
Types of storage media
Reliability features
Dynamic wear-leveling
Static wear-leveling
CRC error detection
ECC error correction
Read degradation monitoring with automatic refresh
Transaction rollback
Atomic file operations
Automatic file defragmentation
QNX 4 filesystem
Power-Safe filesystem
Problems with existing disk filesystems
Copy-on-write filesystem
Performance
DOS Filesystem
DOS version support
DOS text files
QNX-to-DOS filename mapping
Handling filenames
International filenames
DOS volume labels
DOS-QNX permission mapping
File ownership
CD-ROM filesystem
FFS3 filesystem
Customization
Organization
Raw partitions
Filesystem partitions
Mountpoints
Features
POSIX
Background reclaim
Fault recovery
Compression/decompression
Flash errors
Endian awareness
Utilities
System calls
NFS filesystem
CIFS filesystem
Linux Ext2 filesystem
Universal Disk Format (UDF) filesystem
Apple Macintosh HFS and HFS Plus
Windows NT filesystem
Virtual filesystems
PPS
Persistence
Behavior at startup
Behavior at shutdown
PPS objects
Object files
Change notification
Options and qualifiers
Pathname open options
Object and attribute qualifiers
Publishing
Multiple publishers
Subscribing
Subscription modes
Full mode
Delta mode
Subscribing to multiple objects
Notification groups
Character I/O
Introduction
Driver/io-char communication
Device control
QNX extensions
Input modes
Raw input mode
MIN
TIME
TIMEOUT
FORWARD
Edited input mode
Device subsystem performance
Console devices
Terminal emulation
Serial devices
Parallel devices
Pseudo terminal devices (ptys)
Networking Architecture
Introduction
Network manager (io-pkt*)
Threading model
Protocol module
Driver module
Loading and unloading a driver
Native Networking (Qnet)
QNX Neutrino distributed
Name resolution and lookup
File descriptor (connection ID)
Behind a simple open
Global Name Service (GNS)
Network naming
Resolvers
Redundant Qnet: Quality of Service (QoS) and multiple paths
QoS policies
loadbalance
preferred
exclusive
Specifying QoS policies
Symbolic links
Examples
Local networks
Remote networks
Custom device drivers
TCP/IP Networking
Introduction
Stack configurations
Structure of the TCP/IP manager
Socket API
Database routines
/etc/resolv.conf
/etc/protocols
/etc/services
Multiple stacks
IP filtering and NAT
NTP
Dynamic host configuration
AutoIP
PPP over Ethernet
/etc/autoconnect
Embedded web server
CGI method
SSI method
Data server method
High Availability
What is High Availability?
An OS for HA
Inherent HA
HA-specific modules
Custom hardware support
Client library
Recovery example
High Availability Manager
HAM and the Guardian
HAM hierarchy
Entities
Conditions
Actions
Alternate actions
Publishing autonomously detected conditions
State transitions
Other conditions
Subscribing to autonomously published conditions
Trigger based on state transition
Trigger based on specific published condition
HAM as a filesystem
Multistage recovery
HAM API
Adaptive Partitioning
What are partitions?
If adaptive partitions aren't boxes, what are they?
Why adaptive?
Benefits of adaptive partitioning
Engineering product performance
Partitioning
Partition inheritance
Dealing with design complexity
Providing security
Debugging
Adaptive partitioning thread scheduler
The Photon microGUI
A graphical microkernel
The Photon event space
Regions
Events
Graphics drivers
Multiple graphics drivers
Color model
Font support
Stroke-based fonts
Unicode multilingual support
UTF-8 encoding
Animation support
Video overlay
Layers
Printing support
The Photon Window Manager
Widget library
Fundamental widgets
Label widget (PtLabel)
Push-button widget (PtButton)
Text input widgets (PtText, PtMultiText)
Toggle-button widgets (PtToggleButton)
Graphical widgets (PtArc, PtPixel, PtRect, PtLine, PtPolygon, PtEllipse, PtBezier, PtGrid)
Scrollbar widget (PtScrollbar)
Separator widget (PtSeparator)
Slider widget (PtSlider)
Image widgets (PtLabel, PtButton)
Progress-bar widget (PtProgress)
Numeric widgets (PtNumericInteger, PtNumericFloat)
Container widgets
Window widget (PtWindow)
Group widget (PtGroup)
Panel group widget (PtPanelGroup)
Viewport widget (PtScrollContainer)
Background widget (PtBkgd)
Advanced widgets
Menu-related widgets (PtMenu, PtMenuBar, PtMenuButton)
Toolbar widgets (PtToolbar, PtToolbarGroup)
List widget (PtList)
Pulldown list widget (PtComboBox)
Tree widget (PtTree)
Terminal widgets (PtTty, PtTerminal)
Divider widget (PtDivider)
Trend graph widgets (PtTrend and PtMTrend)
Color-selection widgets (PtColorSel, PtColorPanel, PtColorPatch, PtColorSelGroup, PtColorWell)
Web client widget (PtWebClient)
Convenience functions
File-selection dialog (PtFileSelection)
Font-selection dialog (PtFontSelection)
Print-selection dialog (PtPrintSelection)
Alert dialog (PtAlert)
Notice dialog (PtNotice)
Prompt dialog (PtPrompt)
Driver development kits
Summary
Multimedia
Overview
MME functional areas
Mediastore access
Mediastore content management
Media playback and recording
The MME interface
Component-based architecture
The MME resource managers
Glossary
Technical Notes
About These Technotes
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
IP Tunneling (Generic Routing Encapsulation)
How do I use it?
A more typical example
Final tidbits
PPPOE and Path MTU Discovery
Making Multiple Images
What's a multiple image?
Restrictions on XIP image filesystems
Mounting an IFS
Using a second IFS
Example: mounting an IFS on the MGT5200 Total board
Sample buildfiles
os1.build
os2.build
Programming into flash
Putting the images together
Test program
See also
QNX Neutrino and QNX4 bootloader partitions
Encountering the .altboot message
Booting or rebooting using a partition bootloader
Resolving problems with bootloader partitions
Managing POSIX Message Queues
Choosing the Correct MTD Routine for the Flash Filesystem
Unusual flash configurations
MTD source code
Manufacturer
Choosing read callout
Choosing ident callout
Choosing write callout
Choosing erase callout
Choosing sync callout
Choosing suspend and resume callouts
Choosing islock, lock, unlock, unlockall callouts
Asynchronous Messaging
Overview
Asynchronous-messaging functions
Examples
Example 1: Sending one message
Example 2: Sending more than one message at a time
Example 3: Flushing
Example 4: Setting up an event that triggers the copy
Example 5: Using time as the trigger
Example 6: Client and server processes
Reading a Kernel Dump
I2C (Inter-Integrated Circuit) Framework
Overview
Hardware interface
Function table
version_info function
init function
fini function
send function
recv function
abort function
set_slave_addr function
set_bus_speed function
driver_info function
ctl function
Access function
Sample calls
Application interfaces
Shared-library interface
Resource manager interface
Supporting data types
DCMD_I2C_DRIVER_INFO
DCMD_I2C_SEND
DCMD_I2C_RECV
DCMD_I2C_SENDRECV
DCMD_I2C_SET_BUS_SPEED
DCMD_I2C_SET_SLAVE_ADDR (deprecated)
DCMD_I2C_MASTER_SEND (deprecated)
DCMD_I2C_MASTER_RECV (deprecated)
Resource manager design
SPI (Serial Peripheral Interface) Framework
Hardware interface
Function table
Low-level module handle structure
init function
fini function
drvinfo function
devinfo function
setcfg function
xfer function
dma_xfer function
API library
spi_open
spi_close
spi_setcfg
spi_getdevinfo
spi_getdrvinfo
spi_read
spi_write
spi_xchange
spi_cmdread
spi_dma_xchange
Fine-tuning your network drivers
High-performance NICs
Low-performance NICs
Tuning high-performance NIC drivers
PHY probing
Speed and duplex
Migrating to QNX Neutrino for ARMv6-Processor-Based Boards
Overview
BSP configuration
armv_chip
armv_cache
armv_pte
setup
Behavior of procnto-v6 shm_ctl
Using ARMv6 instructions
QNX Neutrino for ARMv7 Cortex A-8 and A-9 Processors
Contents
Overview
libstartup
armv_chip
armv_cache
armv_pte
setup
arm_chip_detect
Behavior of procnto-v6 shm_ctl
The procnto-v6 microkernel
CPU flags
Board startup for SMP
board_smp_num_cpu
board_smp_init
board_smp_start
board_smp_adjust_num
Using ARMv7 instructions
Compiling for the ARMv7 architecture
Using Makefiles
Using qcc
Using command-line compile options
Generating hardware floating point instructions
Optimizing source code
Vector Floating Point (VFP) math library
BSP configuration for VFP
Supporting Vector Floating Point Functionality for ARM Processors
Overview
Restrictions on VFP usage
BSP configuration
Using VFP instructions
How to create a Runtime Kit from the QNX Software Development Platform
Introduction
Organization of the Runtime Kit
Standard installation steps
Creating the archives
Creating the CD
Sample installation script
Backtraces
Overview
API
Examples
Obtaining and printing a memory map
Backtracing a thread in another process
Backtracing another thread within the same process
Backtracing the current thread
Doing a BT_SELF backtrace in a signal handler
Backtracing a collection of threads
QNX support for using Freescale e500 SPE
Overview
Configuring for floating point
Configuring for the command line
Reloadable Image Filesystems
Introduction
Command-line options
Kernel restoration
Secondary IFS restoration
Examples
Kernel restoration
Secondary IFS restoration
Power callout
Minidriver support
Performance measurements
Appendix
Sample program that uses sysmgr_cpumode to call the power callout
Manually mounting an IFS
Sample script to combine IPL with boot image for the EDOSK7780
Commands to burn a new IPL/Boot image for the EDOSK7780
Filesystems and Power Failures
Introduction
Guidelines for using hard drives in an environment subject to abrupt power failures
Recipe for creating hard drive corruption
How to limit the possible hard drive corruption
How to repair hard disk corruption
Power failures while writing
Process Performance State Manager (PPSM)
Overview
PPSM functions
ppsm_init
ppsm_fini
ppsm_sys_mode
ppsm_set_polling_interval
ppsm_set_threshold
ppsm_get_cpuload
ppsm_get_cpufreq
ppsm_speedstep_enable
ppsm_speedstep_disable
ppsm_set_policy
ppsm_set_notify_handler
Customizing language sort orders for libqdb_cldr.so
Standard language sort order files
Sort order algorithm
Contractions and expansions
Locale data files
Adding a new sort order locale
Converting CLDR POSIX files
Tailoring a sort order algorithm
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Getting to Know the OS
How QNX Neutrino compares to other operating systems
UNIX
Microsoft Windows
Limitations
How Neutrino is unique
Resource managers
Logging In, Logging Out, and Shutting Down
root or non-root?
Logging in
Photon mode
Text mode
Once you've logged in
Logging out
Photon mode
Text mode
Shutting down and rebooting
Managing User Accounts
What does a user account do?
User accounts vs user IDs: login, lookup, and permissions
What happens when you log in?
Account database
/etc/passwd
/etc/group
/etc/shadow
/etc/.pwlock
Managing your own account
Changing your password
Forgot your password?
Managing other accounts
Adding users
Removing accounts
Defining groups
Creating a new group
Modifying an existing group
Troubleshooting
Using the Command Line
Command line or GUI?
Processing a command
Character-device drivers
Input modes
Terminal support
Telnet
The keyboard at a glance
Physical and virtual consoles
Shell
Editing the command line
Command and filename completion
Reserved words
Entering multiple commands
Aliases
Substitutions
Directories --- tilde expansion
Parameters
Commands
Arithmetical expressions
Braces
Filename generation
Redirecting input and output
Pipes
Quoting special characters
History: recalling commands
Shell scripts
Utilities
Understanding command syntax
Displaying online usage messages
Executing commands on another node or tty
Priorities
Basic commands
International keyboards
Neutrino for MS-DOS users
DOS commands and their Neutrino equivalents
diskcomp
MS-DOS local command-interpreter variables
Troubleshooting
Using the Photon microGUI
Overview of Photon
Why is it called Photon?
Why is it called a microGUI?
Your workspace
Modifying the shelf
Modifying the Launch menu
Creating items and submenus
Target files
Controlling the order of items
Additional menu control
Troubleshooting
Modifying the Desktop menu
Starting applications automatically
Configuration tools
Browsing files with the File Manager
Getting help with the Helpviewer
Searching for a topic or keyword
Bookmarking a topic to view it again later
Navigating around help files
Viewing more than one topic at once
Surfing the web
Connecting to other systems
Phditto
Phindows
Configuring the Neutrino machine for TCP/IP use
Starting Phindows
Additional options
Hotkeys and shortcuts
pterm
Text field
Window
Workspace
Exiting Photon
Photon environment variables
Troubleshooting
Working with Files
Everything is a file
Types of files
Filenames and pathnames
Absolute and relative pathnames
Dot and dot-dot directories
A note about cd
No drive letters
Pathnames that begin with a dot
Extensions
Pathname-space mapping
Filename rules
Where everything is stored
/
/bin
/boot
/dev
/etc
/fs
/home
/lib
/proc
/root
/sbin
/tmp
/usr
/var
File ownership and permissions
Setuid and setgid
Sticky bit
Default file permissions
Filename extensions
Troubleshooting
Using Editors
Choosing an editor
Supported editors
vi
ped
Specifying the default editor
Controlling How Neutrino Starts
What happens when you boot?
Loading a Neutrino image
Power-Safe filesystem
QNX 4 filesystem
diskboot
.diskroot
/etc/system/sysinit
Device enumeration
oem file or directory
overrides file or directory
Host-specific enumerators
/etc/rc.d/rc.sysinit
rc.local
tinit
Updating disk drivers
Applying a driver update patch after you've installed QNX Neutrino
Troubleshooting
Configuring Your Environment
What happens when you log in?
Customizing your home
Configuring your shell
/etc/profile
$HOME/.profile
ksh's startup file
Environment variables
Setting PATH and LD_LIBRARY_PATH
Configuration strings
Setting the time zone
Caveats
Examples
Eastern time
Pacific time
Newfoundland time
Central European time
Japanese time
Programming with time zones
Customizing Photon
Starting applications automatically
The right fonts
Input methods
Terminal types
Troubleshooting
Writing Shell Scripts
What's a script?
Available shells
Running a shell script
The first line
Arguments to a ksh script
Arguments to a gawk script
Arguments to a perl script
Example of a Korn shell script
Efficiency
Caveat scriptor
Working with Filesystems
Introduction
Setting up, starting, and stopping a block filesystem
Mounting and unmounting filesystems
Image filesystem
Configuring an OS image
/dev/shmem RAM filesystem
QNX_4 filesystem
Extents
Filenames
Links and inodes
Removing links
Directory links
Symbolic links
Filesystem robustness
Power-Safe filesystem
Booting
Snapshots
DOS filesystem
CD-ROM filesystem
Linux Ext2 filesystem
Flash filesystems
CIFS filesystem
NFS filesystem
Setting up NFS
NFS server
NFS client
Universal Disk Format (UDF) filesystem
Apple Macintosh HFS and HFS Plus
Windows NT filesystem
Inflator filesystem
Troubleshooting
Using Qnet for Transparent Distributed Processing
What is Qnet?
When should you use Qnet?
Conventions for naming nodes
Software components for Qnet networking
Starting Qnet
Creating useqnet
Starting the network manager, protocols, and drivers
Checking out the neighborhood
Populating /net
Troubleshooting
Is Qnet running?
Are io-pkt* and the drivers running?
Is the network card functional?
How do I get diagnostic information?
Is the hostname unique?
Are the nodes in the same domain?
TCP/IP Networking
Overview of TCP/IP
Clients and servers
Hosts and gateways
Name servers
Routing
Software components for TCP/IP networking
Running the Internet daemons
Running multiple instances of the TCP/IP stack
Dynamically assigned TCP/IP parameters
Using PPPoE
Establishing a PPPoE session
Starting a point-to-point connection over PPPoE session
Using DHCP
Using AutoIP
Troubleshooting
Are io-pkt* and the drivers running?
What is the name server information?
How do I map hostnames to IP addresses?
How do I get the network status?
How do I make sure I'm connected to other hosts?
How do I display information about an interface controller?
Printing
Overview of printing
Printing with lpr
User interface
lpd --- printer daemon
lpr --- start a print job
lprq --- show printer queue
lprrm --- remove jobs from a queue
lprc --- printer-control program
Spooling directories
Access control
Network manager
Printer capabilities: /etc/printcap
A typical setup
Printers on serial lines
Remote printers
Filters
Some /etc/printcap examples
USB printer
Single printer
Multiple printers
Local and remote printers
Remote printing to a printer on another network
Remote printing to a TCP/IP-enabled printer using lpr
Printing with spooler
Setting up spooler
Printing on a USB printer
Remote printing over Qnet
Remote printing over TCP/IP
Troubleshooting
Understanding lpr error messages
lpr error messages
lprq error messages
lprrm error messages
lprc error messages
lpd error messages
Troubleshooting remote printing problems
Connecting Hardware
Introduction
PCI/AGP devices
CD-ROMs and DVDs
Floppy disks
Hard disks
EIDE
Troubleshooting for devb-eide
SCSI devices
SCSI RAID
LS-120
ORB
Zip and Jaz disks
Magnetic optical drives
RAM disks
Input devices
Mice and keyboards
Touchscreens
Audio cards
ISA cards
Non-PnP-based
PnP-based
PCI Cards
PCCARD and PCMCIA cards
USB devices
Printers
Mice and keyboards
Touchscreens
Ethernet adapters
Mass-storage devices
Troubleshooting
Character devices
General serial adapters
Multiport serial adapters
Parallel ports
Terminals
I/O attributes
Network adapters
Identify your NIC
Start the driver
Make sure the driver is communicating properly with the hardware
Physical Node ID
Current Physical Node ID
Current Operation Rate
Active Interface Type
Active PHY Address
Power Management State
Maximum Transmittable data Unit
Maximum Receivable data Unit
Receive Checksumming Enabled, Transmit Checksumming Enabled
Hardware Interrupt
DMA Channel
I/O Aperture
Memory Aperture
ROM Aperture
Promiscuous Mode
Multicast Support
Packets Transmitted OK
Bytes Transmitted OK
Total Packets Transmitted Bad
Broadcast Packets Transmitted OK
Multicast Packets Transmitted OK
Memory Allocation Failures on Transmit
Packets Received OK
Bytes Received OK
Single Collisions on Transmit
Multiple Collisions on Transmit
Deferred Transmits
Late Collision on Transmit errors
Transmits aborted (excessive collisions)
Transmits aborted (excessive deferrals)
Transmit Underruns
No Carrier on Transmit
Jabber detected
Receive Alignment errors
Received packets with CRC errors
Packets Dropped on receive
Ethernet Headers out of range
Oversized Packets received
Frames with Dribble Bits
Total Frames experiencing Collision(s)
Modems
Internal modems
ISA non-PnP
ISA PnP
PCI-based modems
External modems
Cable Modems / ISDN
Testing modems
Troubleshooting modems
Video cards
Changing video modes in Photon
Manually setting up your video card
Setting up multiple displays
GF
Photon
Configuring multiple displays with multiple video cards
Configuring multiple displays using a single video device
Setting Up an Embedded Web Server
Where should you put the files?
Running Slinger
Dynamic HTML
CGI method
SSI method
Syntax for SSI Commands
Data server method
Security precautions
Examples
Configuration
Script
rand_images.c
rand_images.pl
Using CVS
A crash course in CVS
CVS basics
Revisions
Basic operations
Repositories
Editors and CVS
Creating a repository
Getting files in and out of the repository
Putting changes back into the repository
Importing an existing source tree
Getting information on files
Changing files
More information on files: what changed and why
CVS and directory trees
Concurrent development: branching and merging
Branching
Merging
Removing and restoring files
Setting up a CVS server
Backing Up and Recovering Data
Introduction
Backup strategies
Choosing backup storage media and location
Choosing a backup format
Controlling your backup
Archiving your data
Creating an archive
Extracting from an archive
Compressing an archive
Decompressing the archive
Storage choices
CDs
Bootable CDs
Removable media
Backing up physical hard disks
Ghost Images
Remote backups
CVS
Remote filesystems
Other remote backups
QNX_4 disk structure
Partition components
Loader block
Root block
Bitmap blocks
Root directory
Directories
Links
Extent blocks
Files
File-maintenance utilities
fdisk
dinit
chkfsys
dcheck
zap
Recovering a zapped file
spatch
Recovering disks and files
Using chkfsys
When to run chkfsys
Using chkfsys on a live system
Recovering from a bad block in the middle of a file
What to do if your system will no longer boot
If the mount fails...
If the disk is unrecoverable
If the filesystem is intact
Securing Your System
General OS security
Remote and local attacks
Remote exploits
Local exploits
Effects of attacks
Viruses
Neutrino security in general
Neutrino-specific security issues
Message passing
pdebug
qconn
Qnet
IPSec
Setting up a firewall
Fine-Tuning Your System
Getting the system's status
Improving performance
Faster boot times
Filesystems and block I/O (devb-*) drivers
Performance and robustness
Metadata updates
Ordering the updates to metadata
Throughput
Configuration
Block I/O commit level
Record size
Double buffering
File descriptor vs standard I/O
Pregrowing a file
Fine-tuning USB storage devices
How small can you get?
Understanding System Limits
The limits on describing limits
Configurable limits
Filesystem limits
Querying filesystem limits
QNX 4 filesystem
Power-Safe (fs-qnx6.so) filesystem
Ext2 filesystem
DOS FAT12/16/32 filesystem
CD-ROM (ISO9660) filesystem
NFS2 and NFS3 filesystem
CIFS filesystem
Embedded (flash) filesystem
Embedded Transaction filesystem (ETFS)
UDF filesystem
Apple Macintosh HFS and HFS Plus
Windows NT filesystem
Other system limits
File descriptors
Synchronization primitives
TCP/IP limits
Shared memory
Message queues
Platform-specific limits
Technical Support
Examples
Buildfile for an NFS-mounting target
qnxbasedma.build
Buildfile that doesn't use diskboot
.profile
.kshrc
Configuration files for spooler
Using lpr
Using NCFTP
Using SAMBA
PPP with CHAP authentication between two Neutrino boxes
Glossary
Utilities Reference
About This Reference
What you'll find in this reference
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Utility Conventions
Syntax conventions
Interpreting utility syntax
Invoking utilities
File conventions
Signal conventions
Exit status conventions
Error conventions
Utilities
A
/etc/acl.conf
Description:
addr2line
Description:
Contributing author:
addvariant
Description:
Dealing with GNU projects
Creating the initial files
Creating the subdirectories and files
Squashing levels
Examples:
appbuilder
Description:
applypatch
Description:
aps
Description:
Examples:
ar
Description:
Contributing author:
arp
Description:
/etc/autoconnect
Description:
B
basename
Description:
Examples:
bc
Description:
Bases
Variables
Assignment operators
The if statement
Iteration statements
User-defined functions
Builtin variables and functions
Library functions
bdftophf2
Description:
Examples:
bindres
Description:
bison
Description:
Contributing author:
bkgdmgr
Description:
bootpd
Description:
/etc/bootptab
Description:
brconfig
Description:
Examples:
bunzip2
Description:
bz2cat
Description:
bzip2
Description:
C
c++filt
Description:
Contributing author:
calib
Description:
Examples:
cam-cdrom.so
Description:
cam-disk.so
Description:
cam-optical.so
Description:
cat
Description:
Examples:
CC, cc
Description:
Contributing author:
chat
Description:
Chat script
Abort strings
Report strings
Timeout
Sending EOT
Generating break
Escape sequences
chattr
Description:
Examples:
chgrp
Description:
Examples:
chkdosfs
Description:
Summary of filesystem commands
Examples:
Contributing author:
chkfsys
Description:
After a power failure
Summary of filesystem commands
Examples:
chkqnx6fs
Description:
Summary of filesystem commands
Examples:
chmod
Description:
Symbolic Modes
Some examples of symbolic modes:
Octal Modes
Setgid and setuid
chown
Description:
Examples:
cksum
Description:
clear
Description:
cmp
Description:
Examples:
/etc/context.conf
Description:
coreinfo
Description:
cp
Description:
General
Recursive copying
Examples:
cpio
Description:
Examples:
cron
Description:
crontab
Description:
Sample crontab entries
Examples:
ctags
Description:
Examples:
Contributing author:
cut
Description:
Examples:
cvs
Description:
add
admin
annotate
checkout
commit
diff
edit
editors
export
history
import
init
log
login
logout
rdiff
release
remove
rtag
status
tag
unedit
update
watch
watchers
Keyword substitution
Contributing author:
D
D entries before deva-*
deva-*
devb-*
devc-*
devf-*
devg-*
devh-*
devi-*
devn-*
devnp-*
devp-*
devu-*
D entries beyond devu-*
date
Description:
Displaying the date
Setting the date
Examples:
dcheck
Description:
Examples:
dd
Description:
Examples:
Contributing author:
deflate
Description:
Examples:
deva-ctrl-4dwave.so
Targets:
Description:
Examples:
deva-ctrl-audiopci.so
Targets:
Description:
Examples:
Contributing author:
deva-ctrl-cs4281.so
Targets:
Description:
Examples:
deva-ctrl-ess1938.so
Targets:
Description:
Examples:
deva-ctrl-geode.so
Targets:
Description:
Examples:
deva-ctrl-i8x0.so
Targets:
Description:
Examples:
deva-ctrl-intel_hda.so
Targets:
Description:
Examples:
deva-ctrl-nmg6.so
Targets:
Description:
Examples:
deva-ctrl-sb.so
Description:
deva-ctrl-via686.so
Targets:
Description:
Examples:
deva-ctrl-vortex.so
Targets:
Description:
Examples:
Contributing author:
deva-ctrl-ymfds1.so
Targets:
Description:
Examples:
Contributing author:
deva-mixer-ac97.so
Description:
deva-mixer-ak4531.so
Description:
deva-mixer-hda.so
Description:
deva-util-restore.so
Targets:
Description:
devb-adpu320
cam options
cdrom options
disk options
optical options
adpu320 options
blk options
Description:
Examples:
devb-aha8
cam options
cdrom options
disk options
optical options
aha8 options
blk options
Description:
Examples:
devb-ahci
cam options
ahci options
blk options
Description:
Examples:
devb-btmm
cam options
cdrom options
disk options
optical options
btmm options
blk options
Description:
Examples:
devb-eide
blk options
cam options
cdrom options
disk options
eide options
Interface-specific options:
Device-specific options:
Description:
Examples:
devb-fdc
Targets:
cam options
disk options
fdc options
blk options
Description:
Examples:
devb-loopback
loopback options
blk options
Description:
Driver support
Mounting
devb-mvSata
cam options
mvSata options
blk options
Description:
Examples:
devb-ram
cam options
disk options
ram options
blk options
Description:
Examples:
devb-umass
cam options
umass options
blk options
Description:
Examples:
devc-con, devc-con-hid
Targets:
Description:
Keyboard control
Character sets
Character set defaults
Character set example:
ANSI screen control codes
C0 control codes
ESC control sequences
C1 control characters (220+)
CSI control sequences
Graphic rendition
Color numbers
Modes
Mapping from QNX keyboard to ANSI keys
International keyboard layouts
Examples:
devc-par
Targets:
Description:
Examples:
devc-pty
Description:
Examples:
devc-ser8250
Targets:
Description:
Examples:
devc-serpci
Targets:
Description:
devc-serusb
Targets:
Description:
devc-serzscc
Targets:
Description:
Examples:
devf-generic
Targets:
Description:
Verbose output
Examples:
devf-ram
Targets:
Description:
Examples:
devg-ati_rage128.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-carmine.so
Targets:
Description:
Supported chipsets
2D Acceleration features
Other features
Resolution and refresh support
The carmine.conf file
Alpha layer support
devg-chips.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-coral.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
The coral.conf file and dual-head
devg-extreme2.so
Targets:
Description:
Supported chipsets
2D Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-flat.so
Targets:
Description:
devg-geode.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-gma9xx.so
Description:
Supported chipsets
2D Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-i810.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-i830.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-intelhd.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-matroxg.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-poulsbo.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-radeon.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-rage.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-s3_savage.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-sis630.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-smi5xx.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-smi7xx.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-soft3d.so
Targets:
Description:
Supported chipsets
Acceleration features
devg-soft3d-fixed.so
Targets:
Description:
Supported chipsets
Acceleration features
devg-svga.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-tnt.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-tvia.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-vesabios.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devg-vmware.so
Targets:
Description:
Supported chipsets
Acceleration features
Video Overlay/Scaler support
Other features
Resolution and refresh support
devh-egalax.so
Description:
Examples:
devh-microtouch.so
Description:
Examples:
devh-ps2ser.so
Description:
Examples:
devh-touchintl.so
Description:
Examples:
devh-usb.so
Description:
Examples:
devi-dyna
Description:
Examples:
devi-elo
Description:
Examples:
devi-hid
Targets:
Description:
Examples:
devi-hirun
protocol [protocol_opts...]
device [device_opts...]
filter [filter_opts...]
Description:
Examples:
devi-microtouch
Description:
Examples:
devi-semtech
Description:
Examples:
devi-zytronic
Description:
Examples:
devn-asix.so
Description:
Examples:
devn-crys8900.so
Description:
Examples:
devn-dm9102.so
Description:
Examples:
devn-el509.so
Description:
Examples:
devn-el900.so
Description:
Examples:
devn-epic.so
Description:
Examples:
devn-fd.so
Description:
Examples:
devn-i82544.so
Description:
Examples:
devn-micrel8841.so
Description:
Examples:
devn-ne2000.so
Description:
Examples:
devn-pcnet.so
Description:
Examples:
devn-pegasus.so
Description:
Examples:
devn-rtl.so
Description:
Examples:
devn-rtl8150.so
Description:
Examples:
devn-sis9.so
Description:
Examples:
devn-smc9000.so
Description:
Examples:
devn-speedo.so
Description:
Examples:
devn-tigon3.so
Description:
Examples:
devn-tulip.so
Description:
Examples:
devn-via-rhine.so
Description:
Examples:
devnp-ath.so
Description:
devnp-axe.so
Description:
devnp-bce.so
Description:
Examples:
devnp-bcm1250.so
Description:
Examples:
devnp-bcm43xx.so
Description:
Examples:
devnp-bge.so
Description:
Examples:
devnp-e1000.so
Description:
Examples:
devnp-i80579.so
Description:
Examples:
devnp-i82544.so
Description:
Examples:
devnp-mpcsec.so
Description:
Examples:
devnp-mpc85xx.so
Description:
Examples:
devnp-msk.so
Description:
devnp-ral.so, devnp-ural.so
Description:
devnp-rtl8169.so
Description:
Examples:
devnp-rum.so
Description:
devnp-shim.so
Description:
Examples:
devnp-speedo.so
Description:
Examples:
devp-pccard
Description:
Resources and Server Configuration Files
CardBus
Examples:
devu-ehci.so
Targets:
Description:
Examples:
devu-kbd
Description:
Examples:
devu-mouse
Description:
Examples:
devu-ohci.so
Targets:
Description:
Examples:
devu-prn
Targets:
Description:
Examples:
devu-uhci.so
Targets:
Description:
Examples:
df
Description:
Examples:
dhcp.client
Description:
/etc/dhcp/dhcp-up
/etc/dhcp/dhcp-options
dhcpd
Description:
OMAPI
Lease object
Host object
Control object
Failover-state object
Examples:
Contributing author:
/etc/dhcpd.conf
Description:
File format
Scope
host keyword
group keyword
subnet keyword
When a subnet becomes a shared network
For clients on more than one subnet
shared-network keyword
global keyword
Statements
Range statements
Permission statements
Parameter statements
DHCP option statements
Data types in DHCP options
Standard DHCP option statements
Troubleshooting
Related issues
Dynamic address allocation
Preventing IP address conflicts
Security
Examples:
/var/state/dhcp/dhcpd.leases
Description:
Examples:
dhcprelay
Description:
Relay agent information options
Specifying DHCP servers
Examples:
Contributing author:
diff
Description:
Contributing author:
diff3
Description:
Sample input files
Sample file #1 --- lao
Sample file #2 --- tzu
Sample file #3 --- tao
Detailed description of diff3 normal format
diff3 hunks
An example of diff3 normal format
Merging from a common ancestor
Selecting which changes to incorporate
Marking conflicts
Generating the merged output directly
How diff3 merges incomplete lines
Saving the changed file
Contributing author:
dig
Description:
dinit
Description:
Summary of filesystem commands
Examples:
dirname
Description:
Examples:
diskboot
Description:
Examples:
dispconf
Description:
dloader
Targets:
Description:
Examples:
dnssec-dsfromkey
Description:
dnssec-keyfromlabel
Description:
dnssec-keygen
Description:
dnssec-signzone
Description:
ds
Description:
Data server library
Examples:
du
Description:
Examples:
dumpefs
Description:
dumper
Description:
Examples:
dumpifs
Description:
Examples:
E
echo
Description:
Examples:
ed
Description:
egrep
Description:
elvis
Description:
Visual mode
Input mode
Operators
Special cases
Named buffers
Movement commands
Cursor movement
Marking
Tags
Inserting text
Input mode
Deleting, yanking, putting
Filters
Shifting text
Miscellaneous commands
Searching
Global & substitute commands
Substitute command
Global command
Undo and retrieving
Screen commands
Writing files
Editing other files
Reading in a file
Leaving elvis
Escaping to a shell
Macros
Abbreviations
Options
ex commands
Contributing author:
enum-devices
Description:
Overview
Matching rules
Configuration files
etc/system/enum/devices/
etc/system/enum/devices/usb/
etc/system/enum/include/
Configuration file precedence
Configuration file contents
start clause
requires clause
driver clause
mount clause
enumerator clause
set clause
append clause
uniq clause
waitfor clause
echo clause
tag clause
config clause
use clause
Macros
Bus-enumerator protocol
Examples:
enum-usb
Targets:
Description:
Overview
USB device information
Microsoft descriptors
Behavior when enumerating a single USB device
The enum-usb configuration file
Sample enum-usb.conf configuration file
Device
Ignore
Config
Multiple configuration selections
Composing Config option statements
Set
Composing Set option statements
user_spec_id
inc_user_spec_id
Using enum-devices with enum-usb
Examples:
enum-usb.conf
enum-devices configuration file
env
Description:
Examples:
errno
Description:
Examples:
esh
Description:
Command-line format
Filename expansion
Quoting
Escape character (backslash)
Double quotes
Builtin commands
. (dot) command
alias command
cd command
emount command
ewaitfor command
exec command
exit command
export command
kill command
reopen command
set command
unset command
Examples:
etfsctl
Targets:
Description:
Device
Pools
Counts
Errors
Examples:
expand
Description:
Examples:
/etc/exports
Description:
Limitations:
expr
Description:
Examples:
F
false
Description:
fcat
Description:
Contributing author:
fdformat
Description:
Examples:
fdisk
Description:
Partition types
Commands
Interactive mode
Examples:
fesh
Description:
ecp command
edf command
eecho command
els command
emkdir command
epwd command
erm command
ermdir command
fgrep
Description:
file
Description:
Contributing author:
find
Description:
Primary expressions
Formatted printing (-printf and -fprintf primitives)
Backslash (\) Escape Codes
Format Codes
Examples:
finstall
Description:
flashctl
Description:
Filesystem information
Examples:
flex
Description:
Contributing author:
fmt
Description:
fold
Description:
Examples:
fontinfo
Description:
Examples:
fpemu.so
Description:
freeze
Description:
Examples:
Contributing author:
fs-cd.so
Description:
fs-cifs
Description:
Examples:
fs-dos.so
Description:
Summary of filesystem commands
fs-etfs-ram
Common options
Driver options
Description:
Examples:
fs-ext2.so
Description:
Summary of filesystem commands
fs-mac.so
Description:
Summary of filesystem commands
fs-nfs2
Description:
Examples:
fs-nfs3
Description:
Examples:
fs-nt.so
Description:
Summary of filesystem commands
fs-qnx4.so
Description:
Summary of filesystem commands
fs-qnx6.so
Description:
Required properties of the device
Summary of filesystem commands
fs-udf.so
Description:
fsysinfo
Description:
Examples:
/etc/fstab
Description:
ftp
Description:
/etc/ftpchroot
Description:
ftpd
Description:
Setting up a restricted ftp subtree
/etc/ftpd.conf
Description:
Default settings
/etc/ftpusers
Description:
Related files
fullpath
Description:
Examples:
G
g++
Description:
Contributing author:
/etc/gateways
Description:
Other parameter settings
gawk
Description:
Expressions:
Variables
Patterns
Special patterns --- BEGIN and END
Regular expressions
Pattern ranges
Expression patterns
Actions
Output statements
Functions:
Arithmetic Functions:
String functions:
Input/Output and general functions:
User-defined functions
Sample awk programs:
Examples:
Contributing author:
gcc
QNX Neutrino cross-development options
Overall options
C language options
C++ language options
Warning options
Debugging options
Optimization options
Preprocessor options
Assembler option
Linker options
Directory options
Target options
Machine-dependent options
Code-generation options
Description:
Contributing author:
gcov
Description:
Contributing author:
gdb
Description:
Contributing author:
getconf
Description:
Examples:
getty
Description:
gf-calib
Description:
gns
Description:
APIs and advertising rules
Path namespace
Connection rules for GNS
Multiple GNS servers
Multiple service domains
Redundant GNS servers
Auto-scanning client
Backup server mode
GNS and tightly coupled network
Special pathname
Examples:
gprof
Description:
Contributing author:
grep
Description:
Basic regular expressions
Extended Regular Expressions
Fixed Regular Expressions
Examples:
gunzip
Description:
Contributing author:
gzip
Description:
Contributing author:
H
ham
Description:
hamctrl
Description:
hd
Description:
Output formats
Examples:
head
Description:
Examples:
helpviewer
Description:
Creating help files:
Supported elements
Supported entities
Creating topic files
Level 1
Level 2
Level 3
An example
Publishing your topic file
Searching
hidview
Description:
Examples:
hogs
Description:
Examples:
host
Description:
hostapd
Description:
hostname
Description:
/etc/hosts
Description:
/etc/hosts.equiv
Description:
Positive entries
Negative entries
I
id
Description:
Examples:
if_up
Description:
Examples:
ifconfig
Description:
Parameters
Diagnostics
Examples:
ifwatchd
Description:
Examples:
indent
Description:
inetd
Description:
Internal services
Effects of SIGHUP
/etc/inetd.conf
Description:
Setting the IPsec policy
IPv6 TCP/UDP behavior
Examples:
inflator
Description:
Examples:
infocmp
Description:
input-cfg
Description:
inputtrap
Description:
Probing
Using a trapfile
Examples:
io-audio
Description:
Examples:
io-blk.so
Suffixes for size, memory, and time arguments
blk options
Filesystem options
Description:
Controlling writing operations
Naming schemes
io-display
Description:
The io-display configuration file
The io-display server and Photon
Examples:
io-graphics
Description:
io-graphics configuration options
io-hid
Description:
Examples:
io-pkt-v4, io-pkt-v4-hc, io-pkt-v6-hc
Description:
Generic driver options
Examples:
io-usb
Description:
Selecting a driver configuration
Examples:
J
join
Description:
Examples:
K
kill
Description:
Examples:
ksh
Description:
Shell startup
Command syntax
Compound commands
Quoting
Aliases
Substitution
Parameters
Tilde expansion
Brace expansion (alternation)
Filename patterns
Input/output redirection
Arithmetic expressions
Coprocesses
Functions
POSIX mode
Command execution and builtin commands
. (dot) builtin command
: (null) builtin command
alias builtin command
bg builtin command
bind builtin command
break builtin command
builtin builtin command
cd builtin command
command builtin command
continue builtin command
echo builtin command
eval builtin command
exec builtin command
exit builtin command
export builtin command
false builtin command
fc builtin command
fg builtin command
getopts builtin command
hash builtin command
jobs builtin command
kill builtin command
let builtin command
print builtin command
pwd builtin command
read builtin command
readonly builtin command
return builtin command
set builtin command
shift builtin command
test builtin command
times builtin command
trap builtin command
true builtin command
typeset builtin command
ulimit builtin command
umask builtin command
unalias builtin command
unset builtin command
wait builtin command
whence builtin command
Job control
emacs interactive input-line editing
Contributing author:
L
ld
Description:
Contributing author:
ldd
Description:
Examples:
ldrel
Targets:
Description:
less
Description:
Commands:
Contributing author:
link
Description:
ln
Description:
Examples:
ln-w
Description:
logger
Description:
Examples:
login
Description:
logout
Description:
lpd
Description:
lpr
Description:
Diagnostics
lprc
Description:
lprq
Description:
lprrm
Description:
ls
QNX Neutrino extensions:
Description:
Filetype and permissions
lsm-autoip.so
Description:
Examples:
lsm-pf-v4.so, lsm-pf-v6.so
Description:
lsm-qnet.so
Description:
Examples:
lwresd
Description:
M
m4
Description:
/usr/share/misc/magic
Description:
make
Description:
Examples:
Contributing author:
mcd
Targets:
Local mode
Limitations
Description:
Overview
MCD rules
Monitor a mediastore
Monitor namespace changes
Monitor the presence of files
MCD server
Operational flow
Startup
Device or insertion
Configuring the MCD
Configuration file sections
Entity descriptions
Parameters
Media content rules
Parameters
Notification routine
Using the MCD as a filesystem automounter
First-level entries
Second-level entries
The mcd resource manager interface
.insert and .eject files
.devices directory
Sequence number
Example: Filesystem hierarchy
Read-only entries for rules
Callout templates
Insertion and ejection notification
Arguments
Built-in notification routines
Media content determination
Arguments
Returns
Built-in content detection rules
MOUNT_FSYS special sequences
Client API
Maintained information
Example: Media player
Example: Polling
Stale Rules
Additional Information
Detecting other kinds of system media
Detecting USB and iPod devices
Pattern matching and case-sensitivity
Matching a single rule
Detecting CD insertion with non-media content
CD-changer controlled by external firmware
Using the MCD as a partition enumerator
Examples:
Two-phase filesystem mount example
mcs
Description:
melt
Description:
Contributing author:
mesg
Description:
/etc/mib.txt
Description:
mixer
Description:
Examples:
mkasmoff
Description:
mkcldr
Targets:
Description:
Examples:
mkbuild
Description:
Examples:
mkdir
Description:
Examples:
mkdosfs
Description:
Summary of filesystem commands
Examples:
Contributing author:
mkefs
Description:
Buildfiles
Attributes
bigendian attribute (boolean)
block_size attribute
cd attribute
dperms attribute
filter attribute
followlink attribute (boolean)
gid attribute
max_size attribute
min_size attribute
mount attribute
mountperms attribute
optional attribute (boolean)
perms attribute
prefix attribute
search attribute
spare_blocks attribute
type attribute
uid attribute
Examples:
mketfs
Description:
Buildfiles
Attributes
bigendian attribute (boolean)
block_size attribute
cd attribute
cluster_size attribute
dperms attribute
filter attribute
followlink attribute (boolean)
gid attribute
mountperms attribute
num_blocks attribute
optional attribute (boolean)
perms attribute
prefix attribute
search attribute
type attribute
uid attribute
Examples:
mkfifo
Description:
mkfontdir
Description:
Examples:
mkifs
Description:
Buildfiles
Attributes
autolink attribute (boolean)
+
bigendian attribute (boolean)
cd attribute
chain attribute
code attribute
compress attribute (boolean)
data attribute
dperms attribute
filter attribute
followlink attribute (boolean)
gid attribute
image attribute
keeplinked attribute (boolean)
linker attribute
module attribute
optional attribute (boolean)
page_align attribute (boolean)
pagesizes attribute
perms attribute
phys_align attribute
physical attribute
prefix attribute
ram attribute
raw attribute (boolean)
script attribute (boolean)
search attribute
type attribute
uid attribute
virtual attribute
Script files
argv0 modifier
cpu modifier
external modifier (boolean)
pri modifier
session modifier (boolean)
Bootfile
Image filter
Linker specification
Output image format
Boot prefix
Startup header
Startup
Startup trailer
Image header
Image directory
Files
Image trailer
Notes on XIP versus copy
Examples:
mkimage
Description:
mkkbd
Targets:
Description:
Examples:
mkqnx6fs
Description:
Summary of filesystem commands
Examples:
mkrec
Description:
Examples:
mksbp
Description:
/etc/moduli
Description:
more
Description:
Contributing author:
mount
Description:
Examples:
mq
Description:
mqueue
Description:
mrouted
Description:
Invocation
Configuring mrouted
Configuration command options
Signals
Examples:
Routing tables
Contributing author:
mstrip
Description:
Examples:
mv
Description:
Examples:
N
named
Description:
named-checkconf
Description:
named-checkzone, named-compilezone
Description:
/etc/named.conf
Description:
ndp
Description:
netmanager
Description:
Examples:
netstat
Description:
Default display
Interface display
Routing table display
Specifying an interface
/etc/networks
Description:
newgrp
Description:
nfsd
Description:
Security Issues
Configuring Caches
/etc/nfsstart
Description:
nice
Description:
Examples:
nicinfo
Description:
Examples:
nm
Description:
Contributing author:
nohup
Description:
nslookup
Description:
Interactive commands
Diagnostics:
Contributing author:
/etc/nsswitch.conf
Description:
Sources
Databases
Status codes
Actions
Format of the file
Examples:
nsupdate
Description:
ntpd
Description:
Basic operation of the ntpd utility
Frequency discipline
Operating modes
Poll interval control
The huff-n'-puff filter
ntpdate
Description:
ntpdc
Description:
Interactive commands
Control message commands
Runtime configuration requests
ntpq
Description:
Internal commands
Control message commands
Tally codes
System variables
Peer variables
Flash codes
ntptrace
Description:
O
objcopy
Description:
Contributing author:
objdump
Description:
Contributing author:
od
Description:
Output formats
Examples:
omshell
Description:
Opening a connection
Associating local and remote objects
Viewing a remote object
Modifying a remote object
New remote objects
Resetting attributes
on
Description:
Setting the runmask
Examples:
op
Description:
openssl
Description:
Command summary
Standard commands
Message digest commands
Encoding and cipher commands
Pass phrase arguments
P
/etc/party.conf
Description:
passwd
Description:
passwd file
paste
Description:
Examples:
patch
Description:
Contributing author:
pax
Modes of operation:
Description:
Examples:
pccard-launch
Description:
Examples:
pci
Description:
Examples:
pci-bios, pci-bios-v2
Targets:
Description:
pcnfsd
Description:
/etc/pcnfsd.conf
Description:
pdebug
Description:
Examples:
ped
Description:
Cursor movement commands
Deletion commands
Formatting commands
Centering commands
Clipboard commands
Special commands
File menu operations
Search menu operations
Options menu operations
Type menu operations
Examples:
pf
Description:
ioctl interface
Examples:
/etc/pf.conf
Description:
Statement order
Macros
Tables
Options
Traffic normalization
Queueing
Translation
Packet filtering
Parameters
Routing
Pool options
Stateful inspection
State modulation
SYN proxy
Stateful tracking options
Operating system fingerprinting
Blocking spoofed traffic
Fragment handling
Anchors
Translation examples
Filter examples
Grammar
Associated files
pfctl
Description:
pfm
Description:
Viewing and editing files
Moving, deleting, and renaming files
Navigating
Setting pfm preferences
Examples:
ph
Description:
Examples:
phablang
Description:
phabmsg
Description:
Examples:
phcalc
Description:
Examples:
phdialer
Description:
phditto
Description:
Remote connectivity via modem
Remote connectivity via TCP/IP
Examples:
phfind
Description:
phfont
Description:
Examples:
fontdir
fontext
fontmap
fontopts
phgrafx
Description:
Changing the graphics resolution
Selecting the refresh rate
Selecting hardware or software cursor rendering
Global Options
Advanced Options
Hardware Details
Region Settings
Examples:
phin
Description:
Examples:
phlip
Description:
Configuring your network interfaces
Devices tab
Devices + advanced options tab
Connections + Network tab
Connections + Connection tab
Connections + Modem tab
Connections + Logging tab
Network tab
Network + advanced options tab
Examples:
phlocale
Description:
phlogin, phlogin2
Description:
phmenu
Description:
Examples:
Photon
Description:
Examples:
phrelay
Description:
Remote connectivity via modem
Remote connectivity via TCP/IP
Configuring for TCP/IP
Connecting using a serial port
Example serial connection
Using predefined Photon services
phrelay configuration file format
Data compression options
Data caching options
Encryption
Security
Examples:
phrelaycfg
Description:
phs-to-bjc
Description:
Examples:
phs-to-bmp
Description:
Examples:
phs-to-escp2
Description:
Examples:
phs-to-ijs
Description:
Examples:
phs-to-pcl
Description:
Examples:
phs-to-ps
Description:
Examples:
phshutdown
Description:
phuser
Description:
phview
Description:
Examples:
pidin
Description:
Values in the Blocked column
Examples:
pin
Description:
ping
Description:
Debugging
ICMP packet details
Duplicate and damaged packets
Trying different data patterns
TTL details
ping6
Description:
Duplicate and damaged packets
Trying different data patterns
pipe
Description:
pppd
Description:
pppoectl
Description:
Supported parameters
Examples:
pppoed
Description:
pps
Description:
pr
Description:
Contributing author:
preview
Description:
Examples:
/etc/printcap
Description:
Capabilities
printf
Description:
Format control flags
Field width
Precision
Type length
Conversion character
Escape sequences
Examples:
prjobs
Description:
procnto*
Description:
/proc filesystem
Examples:
/etc/protocols
Description:
ps
Description:
Controlling output
Examples:
pterm
Description:
Keys and keychords
Customizing your font list
Examples:
ptermcs
Description:
Terminal charset setup
Examples:
pv
Description:
Examples:
pwd
Description:
pwm
Description:
PWM Options
Configuring the Desktop menu
Examples:
pwmopts
Description:
python
Description:
Q
qbinaudit
Description:
Examples:
QCC, qcc
Description:
Profiling
Examples:
qconfig
Description:
Examples:
qconn
Description:
qcp
Targets:
Description:
qde
Description:
qed
Description:
Examples:
qtalk
Description:
Configuring default behavior
Logging a session
Using the command character
Replacing the rubout/delete character
Enabling flow control
Transferring files
Invoking qcp and ZMODEM automatically
Interactive commands:
Examples:
QWinCfg
Description:
R
racoon
Description:
Examples:
Contributing author:
/etc/racoon.conf
Description:
Path Specification
File Inclusion
Identifier Specification
Timer Specification
Listening Port Specification
Remote Nodes Specifications
Policy Specifications
Sainfo Specifications
Logging level
Specifying the way to pad
Special directives
Pre-shared key File
Examples:
random
Description:
Examples:
Contributing author:
ranlib
Description:
Contributing author:
rcp
Description:
readelf
Description:
Contributing author:
renice
Description:
Examples:
/etc/resolv.conf
Description:
Overriding /etc/resolv.conf
Keywords
nameserver
domain
search
nocache
~/.rhosts
Description:
Positive entries
Negative entries
rlogin
Description:
rlogind
Description:
Diagnostics
rm
Description:
Examples:
rmdir
Description:
Examples:
rndc
Description:
rndc-confgen
Description:
rndc.conf
Description:
route
Description:
command options
Diagnostics
route6d
Description:
routed
Description:
/etc/rpc
Description:
rpcbind
Description:
rpcgen
Description:
rpcinfo
Description:
Examples:
rsh
Description:
rshd
Description:
Diagnostics
rtadvd
Description:
Examples:
Contributing author:
/etc/rtadvd.conf
Description:
Capabilities
maxinterval
mininterval
chlim
raflags
rltime
rtime
retrans
addrs
prefixlen
pinfoflags
addr
vltime
pltime
mtu
nolladdr
Examples:
rtc
Description:
Examples:
rtquery
Description:
rtsold
Description:
ruptime
Description:
rwho
Description:
rwhod
Description:
S
savercfg
Description:
scp
Description:
Contributing author:
script
Description:
sed
Description:
Scripts
Addresses
Regular expressions
Editing commands
Examples:
Contributing author:
seedres
Description:
Examples:
sendnto
Description:
Examples:
/etc/services
Description:
setconf
Description:
setkey
Description:
Operations
Meta-arguments for operations
Algorithms for protocol
Examples:
setupbsp
Description:
sftp
Description:
Contributing author:
sftp-server
Description:
Contributing author:
sh
Description:
shelf
Description:
showlicense
Description:
showmem
Description:
showmount
Description:
show_vesa
Description:
Examples:
shutdown
Description:
size
Description:
Contributing author:
slay
Description:
Setting the runmask
Examples:
sleep
Description:
slinger
Description:
Running Slinger
How dynamic HTML works
Syntax of an SSI token
SSI commands
break
config
echo
exec
if
goto
include
label
qnxvar
config commands
Ways to achieve dynamic HTML
The data server
Executing CGI scripts
Security precautions
Examples:
The right way
The wrong way
Slinger configuration
Available to CGI scripts
slogger
Description:
Examples:
sloginfo
Description:
Examples:
smic
Description:
Refining syntax checking
Include File
Examples:
snapshot
Description:
Examples:
snmpbulkwalk
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmpd
Description:
/etc/snmpd.conf
Description:
snmpget
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmpgetnext
Description:
Examples:
snmpnetstat
Description:
Addresses
Interface displays
Routing table display
snmpset
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmpstatus
Description:
Examples:
snmptest
Description:
snmptranslate
Description:
Examples:
snmptrap
Description:
Examples:
Using SNMPv1
Using SNMPv2
snmptrapd
Description:
snmpwalk
Description:
Examples:
Using SNMPv1
Using SNMPv2
/etc/socks.conf
Description:
sockstat
Description:
sort
Description:
Examples:
spatch
Description:
Examples:
split
Description:
Examples:
spooler
Description:
ssh
Description:
Contributing author:
ssh-add
Description:
Contributing author:
ssh-agent
Description:
Contributing author:
~/.ssh/ssh_config, /etc/ssh/ssh_config
Description:
ssh-keygen
Description:
Contributing author:
ssh-keyscan
Description:
Contributing author:
ssh-keysign
Description:
Contributing author:
sshd
Description:
Contributing author:
/etc/ssh/sshd_config
Description:
startup-* options
Description:
Generic options
Options for ARM startups
Options for PowerPC startups
Options for x86 startups
startup-apic
Targets:
Debug channels
Description:
Examples:
startup-bios, startup-bios-32
Targets:
Debug channels
Description:
Examples:
strings
Description:
Contributing author:
strip
Description:
Contributing author:
stty
Description:
Supported operands
Line control parameters
Input processing parameters
Output processing parameters
Special control characters
Extended line-editing character sequences
Action characters
Examples:
su
Description:
sync
Description:
Examples:
sysctl
Description:
Examples:
sysinfo
Description:
Examples:
/etc/syslog.conf
Description:
Examples:
syslogd
Description:
T
tail
Description:
Examples:
tar
Description:
Examples:
Contributing author:
tcpdump
Description:
Expressions
Output format
Link-level headers
ARP/RARP packets
TCP Packets
Capturing TCP packets with particular flag combinations (SYN-ACK, URG-ACK, etc.)
UDP Packets
UDP Name Server Requests
UDP Name Server Responses
SMB/CIFS decoding
NFS Requests and Replies
AFS Requests and Replies
KIP AppleTalk (DDP in UDP)
IP Fragmentation
Timestamps
Examples:
Contributing author:
tee
Description:
Examples:
telnet
Description:
Telnet commands:
telnetd
Description:
Name resolving issues
Typical configuration for running telnetd on an embedded target
textto
Description:
Examples:
tftp
Description:
Commands:
tftpd
Description:
tic
Description:
time
Description:
Examples:
tinit
Description:
ttys configuration file
top
Description:
touch
Description:
Examples:
tr
Description:
Conventions for string1 and string2
Examples:
tracelogger
Targets:
Description:
Examples:
traceprinter
Description:
Examples:
traceroute
Description:
Contributing author:
traceroute6
Description:
true
Description:
tsort
Description:
Contributing author:
tty
Description:
Examples:
U
uesh
Description:
Command-line format
Filename expansion
Quoting
Builtin commands
cd command
emount command
ewaitfor command
exec command
exit command
export command
Examples:
umask
Description:
Examples:
umount
Description:
uname
Description:
Examples:
unexpand
Description:
Examples:
unifdef
Description:
uniq
Description:
Examples:
unlink
Description:
unzip
Targets:
Description:
Examples:
uptime
Description:
usb
Description:
Examples:
use
Description:
Usage messages in shell scripts
Examples:
usemsg
Description:
Displaying help messages in ported executables
Adding or changing a usage message
Examples:
uud
Description:
uudecode
Description:
uue
Description:
uuencode
Description:
V
vi
Description:
Contributing author:
view
Description:
Contributing author:
/etc/view.conf
Description:
W
waitfor
Description:
wc
Description:
which
Description:
Examples:
who
Description:
wpa_cli
Description:
Supported commands
wpa_passphrase
Description:
wpa_supplicant
Description:
Supported features
X
xargs
Description:
Examples:
Y
Z
zap
Description:
Examples:
zcat
Description:
Contributing author:
zip
Targets:
Description:
Examples:
Commonly Used Environment Variables
A
B
C
D
E
F
G
H
I
J
L
M
N
O
P
Q
R
S
T
U
Selecting the Target System
Target selection
Architecture selection
Linker emulation selection
What's New in this Reference?
What's new in the QNX Software Development Platform 6.5.0?
New entries
Deprecated content
Changed content
Errata
What's new in the QNX Software Development Platform 6.4.1?
New entries
Deprecated content
Changed content
Errata
What's new in the QNX Software Development Platform 6.4.0?
New entries
Deprecated content
Changed content
Errata
What's new in QNX Momentics 6.3.2?
New entries
Changed content
Errata
What's new in the QNX Neutrino Core OS 6.3.2?
New entries
Changed content
Errata
What's new in QNX Momentics 6.3.0 Service Pack 2?
New entries
Changed content
Errata
What's new in QNX Momentics 6.3.0 Service Pack 1?
New entries
Changed content
What's new in QNX Momentics 6.3.0?
New entries
Deleted entries
Changed content
Errata
What's new in QNX Momentics 6.2.1?
New entries
Deleted entries
Changed content
Errata
Glossary
QNX Neutrino System Analysis Toolkit
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
What is the System Analysis Toolkit (SAT)?
What can the SAT do for you?
Components of the SAT
Instrumented kernel
Kernel buffer management
Data-capture program (tracelogger)
Data interpretation (e.g. traceprinter)
Integrated Development Environment
Events and the Kernel
What generates events
Generating events: a typical scenario
Multithreaded example
Thread context-switch time
Restarting threads
Simple and combine events
Fast and wide modes
Classes and events
Communication class: _NTO_TRACE_COMM
Control class: _NTO_TRACE_CONTROL
Interrupt classes: _NTO_TRACE_INTENTER, _NTO_TRACE_INTEXIT, _NTO_TRACE_INT_HANDLER_ENTER, and _NTO_TRACE_INT_HANDLER_EXIT
Kernel-call classes: _NTO_TRACE_KERCALLENTER, _NTO_TRACE_KERCALLEXIT, and _NTO_TRACE_KERCALLINT
Process class: _NTO_TRACE_PROCESS
System class: _NTO_TRACE_SYSTEM
Thread class: _NTO_TRACE_THREAD
User class: _NTO_TRACE_USER
Virtual thread class: _NTO_TRACE_VTHREAD
Kernel Buffer Management
Instrumented kernel and kernel buffer management
Buffer specifications
Circular linked lists
Linked list size
Full buffers and the high-water mark
Buffer overruns
Capturing Trace Data
Overview
Using tracelogger to control tracing
Managing trace buffers
tracelogger's modes of operation
Choosing between wide and fast modes
Filtering events
Specifying where to send the output
Using TraceEvent to control tracing
Managing trace buffers
Modes of operation
Filtering events
Choosing between wide and fast modes
Inserting trace events
Filtering
Overview
The static rules filter
The dynamic rules filter
Setting up a dynamic rules filter
Event handler
Removing event handlers
The post-processing facility
Interpreting Trace Data
Overview
Using traceprinter and interpreting the output
Building your own parser
The traceparser library
Simple and combine events
The traceevent_t structure
Event interlacing
Timestamps
Tutorials
Overview
The instrex.h header file
Gathering all events from all classes
Gathering all events from one class
Gathering five events from four classes
Gathering kernel calls
Event handling - simple
Inserting a user simple event
Current Trace Events and Data
Interpreting the table
Table of events
User's Guide
About This Guide
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
What is the System Analysis Toolkit (SAT)?
What can the SAT do for you?
Components of the SAT
Instrumented kernel
Kernel buffer management
Data-capture program (tracelogger)
Data interpretation (e.g. traceprinter)
Integrated Development Environment
Events and the Kernel
What generates events
Generating events: a typical scenario
Multithreaded example
Thread context-switch time
Restarting threads
Simple and combine events
Fast and wide modes
Classes and events
Communication class: _NTO_TRACE_COMM
Control class: _NTO_TRACE_CONTROL
Interrupt classes: _NTO_TRACE_INTENTER, _NTO_TRACE_INTEXIT, _NTO_TRACE_INT_HANDLER_ENTER, and _NTO_TRACE_INT_HANDLER_EXIT
Kernel-call classes: _NTO_TRACE_KERCALLENTER, _NTO_TRACE_KERCALLEXIT, and _NTO_TRACE_KERCALLINT
Process class: _NTO_TRACE_PROCESS
System class: _NTO_TRACE_SYSTEM
Thread class: _NTO_TRACE_THREAD
User class: _NTO_TRACE_USER
Virtual thread class: _NTO_TRACE_VTHREAD
Kernel Buffer Management
Instrumented kernel and kernel buffer management
Buffer specifications
Circular linked lists
Linked list size
Full buffers and the high-water mark
Buffer overruns
Capturing Trace Data
Overview
Using tracelogger to control tracing
Managing trace buffers
tracelogger's modes of operation
Choosing between wide and fast modes
Filtering events
Specifying where to send the output
Using TraceEvent to control tracing
Managing trace buffers
Modes of operation
Filtering events
Choosing between wide and fast modes
Inserting trace events
Filtering
Overview
The static rules filter
The dynamic rules filter
Setting up a dynamic rules filter
Event handler
Removing event handlers
The post-processing facility
Interpreting Trace Data
Overview
Using traceprinter and interpreting the output
Building your own parser
The traceparser library
Simple and combine events
The traceevent_t structure
Event interlacing
Timestamps
Tutorials
Overview
The instrex.h header file
Gathering all events from all classes
Gathering all events from one class
Gathering five events from four classes
Gathering kernel calls
Event handling - simple
Inserting a user simple event
Current Trace Events and Data
Interpreting the table
Table of events
QNX Neutrino Web Browser Engine
Developer's Guide
About This Guide
What's in this guide?
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview of the Web Browser Engine
What is the Web Browser Engine?
Organization of the Web Browser Engine
Web Browser Engine supported features
Building Your Own Web Browser Engine-based Browser
Web Browser Engine Reference Application
Running the Web Browser Engine Sample Application
Run the sample application
Getting a more responsive mouse pointer
WebView
advanceFocus
Description:
canShowMIMEType
Description:
canShowMIMETypeAsHTML
Description:
close
Description:
createInstance
Description:
goBack
Description:
goForward
Description:
initWithFrame
Description:
mainFrame
Description:
onExpose
Description:
onKeyDown
Description:
onKeyUp
Description:
onMouseMotion
Description:
onMouseButtonDown
Description:
onMouseButtonUp
Description:
resetPageZoom
Description:
Examples:
scrollBy
Description:
scrollableSubFrameAtPoint
Description:
scrollRenderobjectBy
Description:
scrollableRenderobjectAtPoint
Description:
setPageSizeMultiplier
Description:
setDownloadDelegate
Description:
setMIMETypesShownAsHTML
Description:
setMIMETypesShownAsHTML
Description:
setWebNotificationDelegate
Description:
setViewWindow
Description:
zoomPageOut
Description:
zoomPageIn
Description:
WebNotificationDelegate
finishedLoadNotification
Description:
hoverOverLink
Description:
loadError
Description:
progressNotification
Description:
startLoadNotification
Description:
setTitle
Description:
showToolTip
Description:
showStatus
Description:
unknownContentType
Description:
createWindow
Description:
getInstancePtr
Description:
GfWindow
restoreViewState
Description:
saveViewState
Description:
setInputMethodState
Description:
setInstancePtr
Description:
runJavaScriptAlert
Description:
runJavaScriptPrompt
Description:
runJavaScriptConfirm
Description:
textFieldBegin
Description:
textFieldEnd
Description:
updateScreen
Description:
Examples:
WebFrame
stopLoading
Description:
Examples:
reload
Description:
Examples:
loadURL
Description:
Examples:
What's New
What's new for the Web Browser Engine for QNX Neutrino 6.5.0
Developer's Guide
About This Guide
What's in this guide?
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Overview of the Web Browser Engine
What is the Web Browser Engine?
Organization of the Web Browser Engine
Web Browser Engine supported features
Building Your Own Web Browser Engine-based Browser
Web Browser Engine Reference Application
Running the Web Browser Engine Sample Application
Run the sample application
Getting a more responsive mouse pointer
WebView
advanceFocus
Description:
canShowMIMEType
Description:
canShowMIMETypeAsHTML
Description:
close
Description:
createInstance
Description:
goBack
Description:
goForward
Description:
initWithFrame
Description:
mainFrame
Description:
onExpose
Description:
onKeyDown
Description:
onKeyUp
Description:
onMouseMotion
Description:
onMouseButtonDown
Description:
onMouseButtonUp
Description:
resetPageZoom
Description:
Examples:
scrollBy
Description:
scrollableSubFrameAtPoint
Description:
scrollRenderobjectBy
Description:
scrollableRenderobjectAtPoint
Description:
setPageSizeMultiplier
Description:
setDownloadDelegate
Description:
setMIMETypesShownAsHTML
Description:
setMIMETypesShownAsHTML
Description:
setWebNotificationDelegate
Description:
setViewWindow
Description:
zoomPageOut
Description:
zoomPageIn
Description:
WebNotificationDelegate
finishedLoadNotification
Description:
hoverOverLink
Description:
loadError
Description:
progressNotification
Description:
startLoadNotification
Description:
setTitle
Description:
showToolTip
Description:
showStatus
Description:
unknownContentType
Description:
createWindow
Description:
getInstancePtr
Description:
GfWindow
restoreViewState
Description:
saveViewState
Description:
setInputMethodState
Description:
setInstancePtr
Description:
runJavaScriptAlert
Description:
runJavaScriptPrompt
Description:
runJavaScriptConfirm
Description:
textFieldBegin
Description:
textFieldEnd
Description:
updateScreen
Description:
Examples:
WebFrame
stopLoading
Description:
Examples:
reload
Description:
Examples:
loadURL
Description:
Examples:
What's New
What's new for the Web Browser Engine for QNX Neutrino 6.5.0
QNX Photon microGUI Multilingual Input
链 形 菜 单 管 理 器 的 使 用 与 设 置 方 法
Using the Photon Chinese Supplement
Chinese fonts
Chinese input method (cpim)
Photon Chinese Input Method (English)
Using the Photon Chinese Supplement
Chinese fonts
Chinese input method (cpim)
Photon 日本語サプリメント 2.0
本書について
日本語入力ツール・バーと入力の手順
日本語入力ツール・バー
モード・ステータス・ボタン
ヘルプ・ボタン
変換位置設定ボタン
クローズ・ボタン
日本語入力の手順
読みを入力する
入力文字を変換する
文字を確定する
基本操作
入力環境
入力環境の設定
キー・コードで入力環境を設定する
入力方式の設定
入力モードの設定
入力文字サイズの設定
モード・ステータス・ボタンで入力環境を設定する
文字の編集
カーソルを移動する
文字を削除する
カーソルの前の文字を削除する
カーソル位置の文字を削除する
入力文字を取り消す
スペース文字の入力
変換
漢字に変換する
複数の変換候補を表示する
入力文字を確定する
変換候補を確定する
同音語リストの変換候補を確定する
入力文字を強制的に確定する
ひらがなに変換する
カタカナに変換する
英数字に変換する
半角に変換する
注目文節を変更する
注目文節とは
注目文節を移動する
注目文節の長さを変更する
文字コードから変換する
単語登録
例:
動作モード・オプション
動作モード・オプション・パネル
入力環境オプション
変換オプション
変換方式
コード体系
複合語優先変換
句読点変換
カーソル・オプション
その他のオプション
学習機能
表計算ソフト入力
付録A: Photonエディタについて
日本語のファイルを作成する
付録B:VJEキー・ストローク一覧
付録C: ローマ字入力の規則
付録D:ローマ字/かな対応表
Photon Japanese Input Method (English)
Japanese Input Method (VPIM)
VJE Toolbar and Japanese Input
Basic VJE Operations
Conversion
Mode Options
Appendix A: About the Photon Editor
Appendix B: VJE Keystrokes Summary
Appendix C: Notes on Roman Input
Appendix D: Kana Chart for Roman Input
한글 입력기 (kpim)
本書について
日本語入力ツール・バーと入力の手順
日本語入力ツール・バー
Photon Korean Input Method (English)
Korean input method (kpim)
Activating/Deactivating kpim
Editing
Other features
链 形 菜 单 管 理 器 的 使 用 与 设 置 方 法
Using the Photon Chinese Supplement
Chinese fonts
Chinese input method (cpim)
Photon Chinese Input Method (English)
Using the Photon Chinese Supplement
Chinese fonts
Chinese input method (cpim)
Photon 日本語サプリメント 2.0
本書について
日本語入力ツール・バーと入力の手順
日本語入力ツール・バー
モード・ステータス・ボタン
ヘルプ・ボタン
変換位置設定ボタン
クローズ・ボタン
日本語入力の手順
読みを入力する
入力文字を変換する
文字を確定する
基本操作
入力環境
入力環境の設定
キー・コードで入力環境を設定する
入力方式の設定
入力モードの設定
入力文字サイズの設定
モード・ステータス・ボタンで入力環境を設定する
文字の編集
カーソルを移動する
文字を削除する
カーソルの前の文字を削除する
カーソル位置の文字を削除する
入力文字を取り消す
スペース文字の入力
変換
漢字に変換する
複数の変換候補を表示する
入力文字を確定する
変換候補を確定する
同音語リストの変換候補を確定する
入力文字を強制的に確定する
ひらがなに変換する
カタカナに変換する
英数字に変換する
半角に変換する
注目文節を変更する
注目文節とは
注目文節を移動する
注目文節の長さを変更する
文字コードから変換する
単語登録
例:
動作モード・オプション
動作モード・オプション・パネル
入力環境オプション
変換オプション
変換方式
コード体系
複合語優先変換
句読点変換
カーソル・オプション
その他のオプション
学習機能
表計算ソフト入力
付録A: Photonエディタについて
日本語のファイルを作成する
付録B:VJEキー・ストローク一覧
付録C: ローマ字入力の規則
付録D:ローマ字/かな対応表
Photon Japanese Input Method (English)
Japanese Input Method (VPIM)
VJE Toolbar and Japanese Input
Basic VJE Operations
Conversion
Mode Options
Appendix A: About the Photon Editor
Appendix B: VJE Keystrokes Summary
Appendix C: Notes on Roman Input
Appendix D: Kana Chart for Roman Input
한글 입력기 (kpim)
本書について
日本語入力ツール・バーと入力の手順
日本語入力ツール・バー
Photon Korean Input Method (English)
Korean input method (kpim)
Activating/Deactivating kpim
Editing
Other features
QNX Photon microGUI Windowing System
Programmer's Guide
About This Guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Introduction
Overview of the Photon architecture
Photon Application Builder (PhAB)
Get immediate results
Concentrate on functionality
Create prototypes without writing code
Cut code size
Create consistent applications
Create all kinds of applications
Widget concepts
Widget life cycle
Widget geometry
Programming paradigm
Text-mode application
Non-PhAB application
PhAB application
Photon libraries
API categories and libraries
Versions and platforms
Building applications with PhAB---an overview
Step 1: Create modules
Step 2: Add widgets
Step 3: Attach callbacks
Step 4: Generate code
Step 5: Run your application
Step 6: Repeat any previous step
Writing applications without PhAB
Tutorials
Before you start...
Creating a Photon project and starting PhAB
From the IDE:
From standalone PhAB:
PhAB's Interface
Tutorial 1 --- Hello, world
Creating the application
Generating code
From the IDE
From standalone PhAB
Want more info?
Tutorial 2 --- editing resources
Adding a button widget
Changing the bevel width
Changing the font
Changing the text alignment
Setting flags
Changing the fill color
Editing a pixmap
Editing multiline text
Editing a list of text items
Creating a template
Want more info?
Tutorial 3 --- creating menus and menubars
About link callbacks
About instance names
Creating a menubar
Creating the File menu module
Adding menu items
Creating the Help menu module
Attaching link callbacks
Attaching a module-type link callback
Attaching a code-type link callback
Setting up the code
Want more info?
Tutorial 4 --- creating dialogs
About dialogs
More on instance names
Attaching a dialog module
Adding widgets to the dialog
Adding a callback to the Done button
Modifying a generated code function
Compiling and Running
Want more info?
Tutorial 5 --- creating windows
Creating a window
Attaching callbacks
Adding widgets
Generating and modifying the code
Generating the code
Modifying the setup function
Modifying the color-change function
Modifying the window-close function
Compiling and running
Want more info?
PhAB's Environment
Menus
File menu
Edit menu
Project menu
Build menu
Widget menu
View menu
Window menu
Help menu
Toolbars
Control panels
Widget palette
Modes (create vs select)
Determining the mode
Switching to create mode
Switching to select mode
Resources panel
Callbacks panel
Module Tree panel
Module Links panel
Browse Files panel
Search dialog
Customizing your PhAB environment
General preferences
Color preferences
Dragging preferences
Grid preferences
Working with Applications
Creating an application
From the IDE:
Standalone PhAB:
Choosing a main window style
Opening an application
From the IDE
Standalone PhAB
Saving an application
From the IDE
From standalone PhAB
Naming or renaming an application
Saving an existing application
Overwriting an existing application
Closing an application
Specifying project properties
Startup Windows tab
Define a startup window
Adding a startup window
Modifying a startup window
Deleting a startup window
Specifying a global header file
Initialization function
Generate Options tab
Other Generate options
Run options
Build and Debug options
Importing files
Importing PhAB modules from other applications
Importing XBM images
Importing graphics images
Exporting files
Working with Modules
Module types
Anatomy of a module
Selecting a module
How modules are saved
Changing module resources
Creating a new module
Deleting a module
Iconifying modules
Displaying modules at run time
Positioning a module
Finding lost modules and icons
Window modules
Resizing a window module
Dialog modules
Resizing a dialog module
Predefined dialogs
Menu modules
Opening the menu editor
Specifying instance names
Creating hotkeys and shortcuts
Resizing a menu module
Creating command items
Creating submenu items
Creating separator items
Creating toggle items
Creating function items
Moving menu items
Using a menu module
Picture modules
Displaying a picture
Using pictures as widget databases
Resizing a picture module
Creating Widgets in PhAB
Types of widgets
Instance names
Default instance name
When to assign a unique name
Instance names and translations
Duplicate names
Creating a widget
Creating several widgets
Canceling create mode
Selecting widgets
A single widget
Point-and-click method
Control-panel methods
Multiple widgets
Using a bounding box
Using Shift and click
Using the control panels
Widgets within a group
Using the Module Tree panel
Using the Next and Previous buttons
Hidden widgets
Aligning widgets
To another widget
To a parent container
Distributing widgets
Common User Access (CUA) and handling focus
Changing focus with the keyboard
Controlling focus
Focus callbacks
Focus-handling functions
Ordering widgets
Dragging widgets
Dragging preferences
Setting a widget's x and y coordinates
Transferring widgets between containers
Resizing widgets and modules
Clipboard
Cutting and copying
Pasting
Duplicating widgets and containers
Deleting widgets or modules
Matching widget resources and callbacks
Importing graphic files
Changing a widget's class
Templates
Creating templates
Adding a widget class
Editing templates
Deleting templates
Editing Resources and Callbacks in PhAB
Editing widget resources
Pixmap editor
Setting the pixmap's size
How to draw and erase
Choosing colors
Choosing a background color
Drawing freehand
Drawing lines, rectangles, and circles
Filling an enclosed area
Selecting an area
Nudging an area
Using the Pixmap toolbar
Other pixmap controls
Color editor
Full color editor
Quick color editor
Flag/choice editor
Flag resources
Option list resources
Font editor
List editor
Editing existing list items
Deleting list items
Number editor
Text editors
Code editor
Layout editors
Fill layout info editor
Row layout info editor
Grid layout info editor:
Row layout data editor
Grid layout data editor
Callbacks
Editing callbacks
Module callbacks
Prerealize setup function
Postrealize setup function
Setup functions are stored in stub files
Code callbacks
Callback functions are stored in stub files
Hotkey callbacks
Hotkeys --- the basics
Specifying the hotkey label
Specifying the callback
Where you want a module to appear
What widget you need in the callback function
Where the user is going to type the hotkey
Processing hotkeys
Disabling hotkeys
Event handlers --- raw and filter callbacks
Geometry Management
Container widgets
Geometry negotiation
Resize policy
Setting the resize policy in PhAB
Setting the resize policy in your application's code
Absolute positioning
Aligning widgets using groups
Joining widgets into a group
Accessing widgets in a group
Aligning widgets horizontally or vertically
Aligning widgets in rows and columns
Using the Group flags
Splitting apart a group
Constraint management using anchors
Anchor resources
Setting anchor flags in PhAB
Setting anchor flags in your application's code
Using layouts
PtFillLayout
PtRowLayout
PtGridLayout
Using hints
Enforcing position or size constraints without anchors or layouts
Generating, Compiling, and Running Code
Using the Build menu
Building your application
Generating application code
What PhAB generates
Version control
Tips on using CVS
Function prototypes
Potential problems with generating proto.h
How application files are organized
Multiplatform applications
Single-platform applications
Converting to Eclipse
Editing source
Choosing an editor or browser
Creating a source module
Changing the file display
Compiling and linking
Specifying additional libraries
Running make
Modifying the make command
Customizing the build process
Running the application
Debugging
Managing targets
The Build menu
Including non-PhAB files in your application
Eclipse Project applications
Multiplatform applications
Single-platform applications
Adding libraries
Making a DLL out of a PhAB application
Compiling and linking
Initializing your DLL
Unloading your DLL
Working with Code
Variables and manifests
Widget variables and manifests
Using the global variable and widget manifest
Handling multiple instances of a window
Internal link manifests
Global header file
Function names and filenames
Initialization function
Processing command-line options
Module setup functions
Code-callback functions
Geometry data types
Timers
Using PtTimer
RtTimer* functions
Initializing menus
Enabling, disabling, or toggling menu items
Changing menu-item text
Generating menu items
Creating submenus
Delaying and forcing updates to the display
Globally
For a specific container
Forcing updates
Manipulating Resources in Application Code
Argument lists
Setting resources
Argument lists for setting resources
Scalar and color resources
String resources
Alloc resources
Image resources
Array resources
Flag resources
Function resources
Pointer resources
Link resources
Struct resources
Boolean resources
Calling PtSetResources
Setting one resource
Getting resources
Not using pointers
Scalar and flag resources (nonpointer method)
String resources (nonpointer method)
Boolean resources (nonpointer method)
Using pointers
Scalar and flag resources (pointer method)
String resources (pointer method)
Alloc resources (pointer method)
Image resources (pointer method)
Array resources (pointer method)
Pointer resources (pointer method)
Link resources (pointer method)
Struct resources (pointer method)
Boolean resources (pointer method)
Calling PtGetResources
Getting one resource
Application-level resources
Setting resources
Removing callbacks
Getting callbacks
Managing Widgets in Application Code
Creating widgets
Ordering widgets
Working in the widget family
Callbacks
Adding callbacks
Callback invocation
Removing callbacks
Examining callbacks
Event handlers
Adding event handlers
Removing event handlers
Event handler invocation
Widget styles
Photon hook
Multi-hook
Setting widget styles using the Photon Hook
Control Surfaces
What's a control surface?
Limitations
Binding actions to control surfaces
Referring to control surfaces
Control-surface API
Creating and destroying control surfaces
Finding IDs for control surfaces
Calculating geometry for control surfaces
Drawing control surfaces
Activating control surfaces
Enabling and disabling control surfaces
Finding control surfaces
Hiding and showing control surfaces
Ordering control surfaces
Storing user data with control surfaces
Example
Accessing PhAB Modules from Code
Creating internal links
Using internal links in your code
Manifests
Internal-link functions
Example --- displaying a menu
Using widget databases
Creating a database
Preattaching callbacks
Assigning unique instance names
Creating a dynamic database
Widget-database functions
International Language Support
Application design considerations
Size of text-based widgets
Justification
Font height
Hard-coded strings
Use of @ in instance names
Bilingual applications
Common strings
Generating a language database
Message databases
Language editor
Starting the Language Editor within PhAB
Starting the Language Editor as a stand-alone application
Creating a new translation file
Editing an existing translation file
Translating the text
Hotkeys
Help resources
Translation functions
Running your application
Distributing your application
Context-Sensitive Help
Referring to help topics
Universal Resource Locator (URL)
Topic path
Connecting help to widgets
Displaying help in the Helpviewer
Displaying help in a balloon
Help without the ? icon
Accessing help from your code
Interprocess Communication
Connections
Naming conventions
Typical scenario
Local connections
Example
Sending QNX messages
Receiving QNX messages
Adding an input handler
name_attach and PtAppAddInput
Removing an input handler
Message buffer size
Example --- logging error messages
Photon pulses
Photon application that receives a pulse
Creating a pulse
Arming a pulse
Sending the pulse message to the deliverer
Registering an input handler
Delivering a pulse to yourself
Destroying a pulse
Example --- message queues
Photon application that delivers a pulse
Processing signals
Adding a signal-processing function
Removing a signal-processing function
Other I/O mechanisms
Parallel Operations
Overview
Background processing
Work procedures
Threads
Locking the Photon library
Multiple event-processing threads
Realtime threads
Non-Photon and Photon threads
Modal operations and threads
Exiting a multithreaded program
Threads and work procedures
Raw Drawing and Animation
PtRaw widget
Raw drawing function
Determining the raw widget canvas
Translating coordinates
Clipping
Using damage tiles
Using a model for more complex drawing
Examples of simple PtRaw drawing functions
Color
Drawing attributes
General attributes
Text attributes
Fill attributes
Stroke (line) attributes
Arcs, ellipses, polygons, and rectangles
Rectangles
Rounded rectangles
Beveled boxes, rectangles, and arrows
Polygons
Overlapping polygons
Arcs, circles, chords, and pies
Spans --- complex shapes
Lines, pixels, and pixel arrays
Text
Bitmaps
Images
Palette-based images
Direct-color images
Gradient-color images
Creating images
Caching images
Transparency in images
Using chroma
Using a transparency mask
Displaying images
Manipulating images
Releasing images
Animation
Creating a series of snapshots
Using a widget database
Using a file
Cycling through the snapshots
Flickerless animation
PtOSContainer
Memory-context functions
Direct mode
Example
Video memory offscreen
Offscreen locks
Alpha blending support
Chroma key support
Extended raster operations
Video modes
Gradients
Driver-level gradients
Application-level gradients
Video overlay
Example
Layers
Surfaces
Viewports
Layer API
Using layers
Example
Understanding Encodings, Fonts, Languages and Code Tables
Terminology Definitions
Language
Code Table
Encoding
Font
Characters
Unicode encoding in Photon
UTF-8, UTF-16 (Pg_TEXT_WIDECHAR)
UTF-8
UTF-8, UTF-16 (PF_WIDECHAR), UTF-32 (PF_WIDECHAR32)
UTF-16
String representation
Translation
Services
Advanced Graphics
General Notes
Language Notes
Fonts
Symbol metrics
Font function libraries
Font names
Querying available fonts
FontDetails structure
Generating font names
Example
Writing text in a rectangular area
Repairing damage to proportional text
Printing
Overview
Print contexts
Creating a print context
Modifying a print context
Starting a print job
Printing the desired widgets
Printing a new page
Printing widgets that scroll
PtList
PtMultiText
PtScrollArea
Suspending and resuming a print job
Ending a print job
Freeing the print context
Example
Drag and Drop
Transport mechanism
Using drag and drop
Starting drag and drop
Example
Receiving drag-and-drop events
Source widget
Destination widget
Canceling drag and drop
Registering new transport types
A simple data structure
A more complicated structure
Clear-references list
Endian list
Fixup list
Registry entry
Transport functions
Both applications
Source application
Destination application
Regions
Photon coordinate space
Region coordinates
Region origins
Initial dimensions and location
Origin at (0,0) and initial rectangle at (0,0)
Origin at (0,0) and initial rectangle not at (0,0)
Origin not at (0,0) and initial rectangle not at (0,0)
About child regions
Regions and event clipping
Placement and hierarchy
Region hierarchy
Parent region
Brother regions
Default placement
Ph_FORCE_FRONT flag
Specific placement
Using regions
Opening a region
Placing regions
Changing region placement
Changing the parent
Specifying brothers
System information
Events
Pointer events
Pressing a button
Releasing a button
Multiple clicks
Modifier keys
Emitting events
Targeting specific regions
Inclusive event
Direct event
Targeting specific widgets
Emitting key events
Event coordinates
Event handlers --- raw and filter callbacks
Collecting events
Event compression
Dragging
Initiating dragging
Outline dragging
Opaque dragging
Handling drag events
Outline dragging
Opaque dragging
Window Management
Window-management flags
Window-rendering flags
Window-managed flags
Window-notify flags
Notification callback
Example: verifying window closure
Getting and setting the window state
Managing multiple windows
Window-manager functions
Running a standalone application
Modal dialogs
Programming Photon without PhAB
Basic steps
Compiling and linking a non-PhAB application
Sample application
What's going on
PtInit
PtCreateWidget --- first call
PtSetArg
PtCreateWidget --- second call
PtRealizeWidget
PtMainLoop
Connecting application code to widgets
Callbacks
Event handling
Complete sample application
Photon Architecture
Event space
Regions and events
Events
Initial rectangle set
Collected rectangle set
Regions
Sensitivity
Opacity
Attribute summary
Event logging
Event modification
Parent/child relationships
Photon coordinate space
Root region
Event types
How region owners are notified of events
Polling
Synchronous notification
Asynchronous notification
Device region
Pointer focus
Keyboard focus
Drag events
Drag-and-drop events
Photon drivers
Input drivers
Mouse driver
Keyboard driver
Output drivers
Graphics driver
Multiple graphic drivers
Drivers using separate regions
Drivers using overlapping regions
Encapsulation drivers
Photon window manager
Window-frame regions
Focus region
Workspace region
Backdrop region
Widgets at a Glance
Unicode Multilingual Support
Wide and multibyte characters
Unicode
UTF-8 encoding
Conversion functions
Other encodings
Keyboard drivers
Example: text widgets
Dead keys and compose sequences
Photon compose sequences
Photon in Embedded Systems
Assumptions
Introduction
QNX Graphics framework server
Photon Server
Graphics subsystem
Font support
Input support
User applications
Steps to boot into Photon
The basics
Step 1. Start the QNX graphics framework server
Step 2. Export environment variables
Step 3. Start the Photon server
Files needed
Step 4. Configure fonts
Step 5. Start the graphics driver
Step 5. Start the input driver
Files needed
Step 6. Start the window manager
Files needed
Step 7. Start your application
Files needed
Caveats
Flash filesystems
Graphics
Miscellaneous
Example
Required binaries
Required libraries
Required fonts
Putting it all together
Troubleshooting
Example: Using the IDE's System Builder
Advanced topics
Configuring fonts
Internal or external?
Required fonts
Required fonts binaries
Configure the font server
Using PhAB under Microsoft Windows
Photon in a single window
Exiting PhAB
Advanced options
PHINDOWSOPTS
Using the clipboard
Transferring PhAB projects
Debugger launch line
Custom widget development and PhAB
Using custom TrueType fonts and PhAB
Photon Hook DLLs
Running multiple copies of PhAB
PhAB Keyboard Shortcuts
Project management shortcuts
Editing shortcuts
Adding items shortcuts
Building shortcuts
Widget management shortcuts
View and window shortcuts
Other shortcuts
What's New
What's new in Photon for QNX Neutrino 6.5.0
New content
What's new in Photon for QNX Neutrino 6.4.1
New content
What's new in Photon for QNX Neutrino 6.4
New content
What's new in Photon for QNX Neutrino 6.3
New content
What's new in Photon for QNX Neutrino 6.2.1
New content
Errata
What's new in Photon for QNX Neutrino 6.2.0
New content
What's new in Photon for QNX Neutrino 6.0
Introduction
PhAB's Environment
Working with Applications
Working with Modules
Creating Widgets in PhAB
Geometry Management
Working with Code
Manipulating Resources in Application Code
Managing Widgets in Application Code
Context-Sensitive Help
Interprocess Communication
Parallel Operations
Raw Drawing and Animation
Fonts
Printing
Drag and Drop
Events
Glossary
Library Reference
About This Reference
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Summary of Entries
Alpha blending
Background processing
Bitmaps and Images
Blitting
Characters, translating
Chroma key operations
Clipboard operations
Clipping
Colors, converting and parsing
Configuration files
Connections to other applications
Coordinates, translating
Cursors/pointers
Data chains
Direct mode
Drag and drop
Dragging
Draw contexts
Drawing attributes
General attributes
Fill attributes
Line (stroke) attributes
Text attributes
Events
Font handling
Geometry
Gradients
Driver-level
Application-level
Graphical contexts
Input/Output events
Interprocess Communication (IPC)
Layers
Key events, translating
Memory contexts
Messages and questions
Modal dialogs
Modules
Online help
Photon Application Builder functions
Photon services, connecting and disconnecting
Power-saving modes
Primitive drawing routines
Printing
Processes
Realtime timers
Regions
Shared memory
Signals
Strings, translating
Synchronization
System information
Text
Threads
Tiles
UTF-8 character strings
Video modes
Video offscreen memory
Video overlay
Wide characters
Widgets
Callbacks and hotkey handlers
Class hierarchy
Control surfaces
Creating and destroying widgets
Custom widgets
Damaging widgets
Databases
Family hierarchy
Finding widgets in an area
Focus
Geometry
Library initialization
Menus
PtComboBox
PtFileSel
PtGenList
PtGenTree
PtList
PtMTrend
PtMultiText
PtPanelGroup
PtProgress
PtTerminal
PtText
PtTree
PtTrend
PtTty
PtWindow
Realizing and unrealizing widgets
Resources
Styles
Updates, forcing and holding off
Window Manager
Ab---PhAB-Generated Code
AbGetABW
Description:
Al---PhAB Translation
AlClearTranslation
Description:
AlCloseDBase
Description:
AlGetEntry
Description:
AlGetSize
Description:
AlOpenDBase
Description:
AlReadTranslation
Description:
AlSaveTranslation
Description:
AlSetEntry
Description:
Ap---PhAB
ApAddClass
Description:
Examples:
ApAddContext
Description:
ApAppendTranslation
Description:
Examples:
ApCloseDBase
Description:
Examples:
ApCloseMessageDB
Description:
ApCopyDBWidget
Description:
Examples:
ApCreateDBWidget
Description:
Examples:
ApCreateDBWidgetFamily
Description:
ApCreateModule
Description:
Usage with window, dialog, menu, and other modules
Usage with picture modules
ApCreateWidget
Description:
Examples:
ApCreateWidgetFamily
Description:
ApDeleteDBWidget
Description:
Examples:
ApError
Description:
Examples:
ApGetDBWidgetInfo
Description:
Examples:
ApGetImageRes
Description:
Examples:
ApGetInstance
Description:
Examples:
ApGetItemText
Description:
Examples:
ApGetMessage
Description:
ApGetTextRes
Description:
Examples:
ApGetWidgetPtr
Description:
Examples:
ApInfo_t
Description:
ApInitialize
Description:
ApInstanceName
Description:
Examples:
ApLoadMessageDB
Description:
ApLinkWindow
Description:
ApModalWait
Description:
ApModifyItemAccel
Description:
ApModifyItemState
Description:
Examples:
ApModifyItemText
Description:
Examples:
ApModuleFunction
Description:
Examples:
ApModuleLocation
Description:
Examples:
ApModuleParent
Description:
Examples:
ApName
Description:
Examples:
ApOpenDBase
Description:
Examples:
ApOpenDBaseFile
Description:
Examples:
ApRemoveClass
Description:
ApRemoveContext
Description:
ApResClose
Description:
Examples:
ApSaveDBaseFile
Description:
Examples:
ApSetContext
Description:
Examples:
ApSetTranslation
Description:
Examples:
ApWidget
Description:
Examples:
mbstr---Multibyte-Character
Pd---Draw Context
PdCreateDirectContext
Description:
Examples:
PdCreateOffscreenContext
Description:
PdCreateOffscreenContextGF
Description:
PdCreateOffscreenLock
Description:
PdDestroyOffscreenLock
Description:
PdDirectStart
Description:
Examples:
PdDirectStop
Description:
Examples:
PdDupOffscreenContext
Description:
PdGetDevices
Description:
Examples:
PdGetOffscreenContextPtr
Description:
Examples:
PdGetOffscreenSurface
Description:
PdIsOffscreenLocked
Description:
PdLockOffscreen
Description:
PdOffscreenContext_t
Description:
PdReleaseDirectContext
Description:
Examples:
PdSetOffscreenTranslation
Description:
PdSetTargetDevice
Description:
Examples:
PdUnlockOffscreen
Description:
Pf---Font Server
PfAllocDetailsCx
Description:
Examples:
PfAllocRenderCx
Description:
Examples:
PfAssignDllCx
Description:
Examples:
PfAttach, PfAttachCx
Description:
Examples:
PfAttachDllCx
Description:
Examples:
PfAttachLocalDll
Description:
Examples:
PfAttachServerDll
Description:
Examples:
PfAttachSleuthMonitorDll
Description:
Examples:
PfConvertFontID, PfConvertFontIDCx
Description:
Examples:
PfConvertPixelsToPointSizeCx
Description:
Examples:
PfDecomposeStemToID, PfDecomposeStemToIDCx
Description:
Examples:
PfDefaultContext
Description:
Examples:
PfDetach, PfDetachCx
Description:
Examples:
PfDetachLocalDll
Description:
Examples:
PfDynamicFontIDCx
Description:
Examples:
PfDynamicLoad, PfDynamicLoadCx
Description:
Examples:
PfDynamicUnload, PfDynamicUnloadCx
Description:
Examples:
PfExtent
Description:
Examples:
PfExtentCx
Description:
Examples:
PfExtent16dot16
Description:
PfExtent16dot16Cx
Description:
PfExtentComponents, PfExtentComponentsCx
Description:
PfExtentFractTextCharPositions
Description:
PfExtentText
Description:
PfExtentTextCharPositions, PfExtentTextCharPositionsCx
Description:
Examples:
PfExtentTextToRect
Description:
Examples:
PfExtentWideText
Description:
PfFindFont, PfFindFontCx
Description:
Examples:
PfFontBaseStem, PfFontBaseStemCx
Description:
PfFontDescription, PfFontDescriptionCx
Description:
Examples:
PfFontFlags, PfFontFlagsCx
Description:
Examples:
PfFontSize, PfFontSizeCx
Description:
Examples:
PfFontTypeCx
Description:
PfFractionalExtentText
Description:
PfFreeFont, PfFreeFontCx
Description:
Examples:
PfGenerateFontName, PfGenerateFontNameCx
Description:
Examples:
PfGetGlyphIndexCx
Description:
Examples:
PfGetOutline, PfGetOutlineCx
Description:
Examples:
PfGlyph, PfGlyphCx
Description:
Examples:
PfLoadFont, PfLoadFontCx
Description:
PfLoadMetrics, PfLoadMetricsCx
Description:
Examples:
pf_point_t
Description:
pf_point_16dot16_t
Description:
PfQueryFontInfo, PfQueryFontInfoCx
Description:
Examples:
PfQueryFonts, PfQueryFontsCx
Description:
FontDetails structure
pf_rect_t
Description:
pf_rect_16dot16_t
Description:
PfRender, PfRenderCx
Description:
Examples:
PfRestartServerDll
Description:
Examples:
PfSetOptionsDll
Description:
Examples:
PfSetRenderingDPICx
Description:
Examples:
PfTextWidthBytes
Description:
Examples:
PfTextWidthChars
Description:
PfUnloadMetrics
Description:
PfWaitOnServerDll
Description:
Examples:
PfWideTextWidthBytes
Description:
PfWideTextWidthChars
Description:
Pg---Graphics
PgAlphaOff, PgAlphaOffCx
Description:
PgAlphaOn, PgAlphaOnCx
Description:
PgAlphaValue
Description:
PgARGB
Description:
PgBackgroundShadings
Description:
PgBevelBox, PgBevelBoxCx
Description:
PgBlit, PgBlitCx
Description:
PgBlueValue
Description:
PgCalcColorContrast
Description:
PgChromaOff, PgChromaOffCx
Description:
PgChromaOn, PgChromaOnCx
Description:
PgClearDrawBuffer, PgClearDrawBufferCx
Description:
Examples:
PgClearTranslation, PgClearTranslationCx
Description:
PgCMY
Description:
Examples:
PgColor_t
Description:
Standard colors
PgColorHSV_t
Description:
PgColorMatch
Description:
PgConfigScalerChannel
Description:
PgContextBlit, PgContextBlitCx
Description:
PgContextBlitArea, PgContextBlitAreaCx
Description:
PgContrastBevelBox, PgContrastBevelBoxCx
Description:
PgCreateDriverRegion
Description:
PgCreateGC
Description:
PgCreateLayerSurface
Description:
PgCreateVideoChannel
Description:
PgDefaultAlpha
Description:
PgDefaultChroma
Description:
PgDefaultFill
Description:
PgDefaultGC
Description:
PgDefaultMode
Description:
PgDefaultStroke
Description:
PgDefaultText
Description:
PgDestroyGC
Description:
PgDestroyVideoChannel
Description:
PgDrawArc, PgDrawArcCx
Description:
Examples:
PgDrawArrow, PgDrawArrowCx
Description:
PgDrawBevelBox, PgDrawIBevelBox, PgDrawBevelBoxCx, PgDrawIBevelBoxCx
Description:
Examples:
PgDrawBeveled, PgDrawBeveledCx
Description:
Examples:
PgDrawBezier, PgDrawBezierv, PgDrawBezierCx, PgDrawBezierCxv
Description:
Examples:
PgDrawBitmap, PgDrawBitmapv, PgDrawBitmapCx, PgDrawBitmapCxv
Description:
Examples:
PgDrawEllipse, PgDrawEllipseCx
Description:
Examples:
PgDrawGradient, PgDrawGradientCx
Description:
Examples:
PgDrawGradientBevelBox, PgDrawGradientBevelBoxCx
Description:
PgDrawGrid, PgDrawGridCx
Description:
Examples:
PgDrawImage, PgDrawImagev, PgDrawImageCx, PgDrawImageCxv
Description:
Examples:
PgDrawLine, PgDrawILine, PgDrawLineCx, PgDrawILineCx
Description:
Examples:
PgDrawMultiTextArea, PgDrawMultiTextAreaCx
Description:
Examples:
PgDrawPhImage, PgDrawPhImagev, PgDrawPhImageCx, PgDrawPhImageCxv
Description:
PgDrawPhImageRectv, PgDrawPhImageRectCxv
Description:
PgDrawPixel, PgDrawIPixel, PgDrawPixelCx, PgDrawIPixelCx
Description:
PgDrawPixelArray, PgDrawPixelArrayv, PgDrawPixelArrayCx, PgDrawPixelArrayCxv
Description:
PgDrawPolygon, PgDrawPolygonv, PgDrawPolygonCx, PgDrawPolygonCxv
Description:
Examples:
PgDrawRect, PgDrawIRect, PgDrawRectCx, PgDrawIRectCx
Description:
Examples:
PgDrawRepBitmap, PgDrawRepBitmapv, PgDrawRepBitmapCx, PgDrawRepBitmapCxv
Description:
Examples:
PgDrawRepImage, PgDrawRepImagev, PgDrawRepImageCx, PgDrawRepImageCxv
Description:
PgDrawRepPhImage*
Description:
PgDrawRoundRect, PgDrawRoundRectCx
Description:
Examples:
PgDrawSpan, PgDrawSpanv, PgDrawSpanCx, PgDrawSpanCxv
Description:
Examples:
PgDrawString, PgDrawStringv, PgDrawStringCx, PgDrawStringCxv
Description:
PgDrawText*, PgDrawTextChars*
Description:
Examples:
PgDrawTextArea, PgDrawTextAreaCx
Description:
PgDrawTImage, PgDrawTImagev, PgDrawTImageCx, PgDrawTImageCxv
Description:
PgDrawTrend, PgDrawTrendv, PgDrawTrendCx, PgDrawTrendCxv
Description:
Examples:
PgExtentMultiText
Description:
Examples:
PgExtentText
Description:
Examples:
PgFlush, PgFFlush, PgFlushCx, PgFFlushCx
Description:
Examples:
PgGetColorModel, PgGetColorModelCx
Description:
PgGetGC, PgGetGCCx
Description:
PgGetGraphicsHWCaps
Description:
PgHWCaps_t
PgGetLayerCaps
Description:
PgGetOverlayChromaColor
Description:
PgGetPalette
Description:
PgGetRegion, PgGetRegionCx
Description:
PgGetScalerCapabilities
Description:
PgGetSurfaceGFSid
Description:
PgGetVideoMode
Description:
PgGetVideoModeInfo
Description:
PgGetVideoModeList
Description:
PgGray
Description:
Examples:
PgGrayValue
Description:
Examples:
PgGreenValue
Description:
PgHSV
Description:
Examples:
PgHSV2RGB
Description:
PgLayerCaps_t
Description:
PgLockLayer
Description:
PgMap_t
Description:
PgMultiBlit, PgMultiBlitCx
Description:
PgNextVideoFrame
Description:
PgPHookRegister
Description:
PgReadScreen
Description:
Examples:
PgReadScreenSize
Description:
PgRedValue
Description:
PgRGB
Description:
Examples:
PgRGB2HSV
Description:
PgScalerCaps_t
Description:
PgScalerProps_t
Description:
PgSetAlpha, PgSetAlphaCx
Description:
Operation flags
Multiplier flags
Source multiplier flags
Destination multiplier flags
Alpha test flags:
Examples:
PgSetAlphaBlend, PgSetAlphaBlendCx
Description:
Examples:
PgSetChroma, PgSetChromaCx
Description:
Examples:
PgSetClipping, PgSetClippingCx
Description:
PgSetColorModel, PgSetColorModelCx
Description:
PgSetControlFlagGCCx
Description:
PgSetDPMSMode
Description:
PgSetDrawBufferSize, PgSetDrawBufferSizeCx
Description:
Examples:
PgSetDrawMode, PgSetDrawModeCx
Description:
Photon 1.14 and earlier
Photon for QNX Neutrino
PgSetFillColor, PgSetFillColorCx
Description:
Examples:
PgSetFillDither, PgSetFillDitherCx
Description:
Examples:
PgSetFillTransPat, PgSetFillTransPatCx
Description:
Examples:
PgSetFillXORColor, PgSetFillXORColorCx
Description:
Examples:
PgSetFont, PgSetFontCx
Description:
Examples:
PgSetGC, PgSetGCCx
Description:
PgSetLayerArg
Description:
Layer arguments
Examples:
PgSetLayerSurface
Description:
PgSetMultiClip, PgSetMultiClipCx
Description:
PgSetPalette, PgSetPaletteCx
Description:
PgSetPlaneMask, PgSetPlaneMaskCx
Description:
PgSetRegion, PgSetRegionCx
Description:
PgSetStrokeCap, PgSetStrokeCapCx
Description:
PgSetStrokeColor, PgSetStrokeColorCx
Description:
PgSetStrokeDash, PgSetStrokeDashCx
Description:
Examples:
PgSetStrokeDither, PgSetStrokeDitherCx
Description:
PgSetStrokeJoin, PgSetStrokeJoinCx
Description:
PgSetStrokeTransPat, PgSetStrokeTransPatCx
Description:
PgSetStrokeWidth, PgSetStrokeFWidth, PgSetStrokeWidthCx, PgSetStrokeFWidthCx
Description:
PgSetStrokeXORColor, PgSetStrokeXORColorCx
Description:
PgSetTextColor, PgSetTextColorCx
Description:
PgSetTextDither, PgSetTextDitherCx
Description:
PgSetTextTransPat, PgSetTextTransPatCx
Description:
PgSetTextXORColor, PgSetTextXORColorCx
Description:
PgSetTranslation, PgSetTranslationCx
Description:
Examples:
PgSetUnderline, PgSetUnderlineCx
Description:
PgSetUserClip, PgSetUserClipAbsolute, PgSetUserClipCx, PgSetUserClipAbsoluteCx
Description:
PgSetVideoMode
Description:
PgShmemAttach
Description:
PgShmemCleanup
Description:
Examples:
PgShmemCreate
Description:
PgShmemDestroy
Description:
PgShmemDetach
Description:
PgSyncFlush, PgSyncFlushCx
Description:
PgSwapDisplay, PgSwapDisplayCx
Description:
Examples:
PgUnlockLayer
Description:
PgVideoChannel_t
Description:
PgWaitDrawComplete
Description:
PgWaitHWIdle
Description:
PgWaitVSync, PgWaitVSyncCx
Description:
Examples:
Ph---Photon
PhAddMergeTiles
Description:
PhAllocPackType
Description:
PhArea_t
Description:
PhAreaToRect
Description:
PhAttach
Description:
Examples:
PhBlit
Description:
Examples:
PhBitmapCursorDescription_t
Description:
PhCancelDrag
Description:
PhChannelAttach
Description:
name_attach and PtAppAddInput
Examples:
PhCharacterCursorDescription_t
Description:
PhClipboardCopyString
Description:
PhClipboardHdr
Description:
PhClipboardPasteString
Description:
PhClipboardRead
Description:
Examples:
PhClipboardWrite
Description:
Examples:
PhClipTilings
Description:
PhCoalesceTiles
Description:
PhCopyTiles
Description:
PhCreateImage
Description:
PhCreateTransportCtrl
Description:
PhCursorDef_t
Description:
PhCursorDescription_t
Description:
PhDCCreate
Description:
PhDCGetCurrent
Description:
PhDCRelease
Description:
PhDCSetCurrent
Description:
Examples:
PhDetach
Description:
Examples:
PhDeTranslateRect
Description:
PhDeTranslateTiles
Description:
PhDim_t
Description:
PhDragEvent_t
Description:
PhEmit
Description:
Examples:
PhEmitmx
Description:
Examples:
PhEvent_t
Description:
Ph_EV_BOUNDARY
Ph_EV_BUT_PRESS
Ph_EV_BUT_RELEASE
Ph_EV_BUT_REPEAT
Ph_EV_DNDROP
Ph_EV_DRAG
Ph_EV_DRAW
Ph_EV_EXPOSE
Ph_EV_INFO
Ph_EV_KEY
Ph_EV_PTR_MOTION_BUTTON
Ph_EV_PTR_MOTION_NOBUTTON
Ph_EV_RAW
Ph_EV_SERVICE
Ph_EV_SYSTEM
Ph_EV_TIMER
Ph_EV_USER
Ph_EV_WM
PhEventArm
Description:
Examples:
PhEventEmit
Description:
Examples:
PhEventEmitmx
Description:
Examples:
PhEventNext
Description:
Examples:
PhEventPeek
Description:
Examples:
PhEventRead
Description:
Examples:
PhEventRegion_t
Description:
PhFindTransportType
Description:
PhFreeTiles
Description:
PhFreeTransportType
Description:
Examples:
PhGetAllTransportHdrs
Description:
PhGetConnectId
Description:
PhGetConnectInfo
Description:
PhGetData
Description:
PhGetMsgSize
Description:
Examples:
PhGetNextInlineData
Description:
PhGetNextTransportHdr
Description:
PhGetRects
Description:
PhGetTile
Description:
PhGetTransportHdr
Description:
PhGetTransportVectors
Description:
PhImage_t
Description:
Image types
PhInitDrag
Description:
Examples:
PhInputGroup
Description:
PhIntersectTilings
Description:
PhKeyEvent_t
Description:
PhKeyToMb
Description:
PhLibVersion
Description:
PhLinkTransportData
Description:
PhLocateTransHdr
Description:
PhMakeGhostBitmap
Description:
PhMakeTransBitmap
Description:
Examples:
PhMakeTransparent
Description:
Examples:
PhMallocUnpack
Description:
PhMergeTiles
Description:
PhMoveCursorAbs
Description:
PhMoveCursorRel
Description:
PhMultiBlit
Description:
PhPackEntry
Description:
PhPackType
Description:
PhPoint_t
Description:
PhPoint16dot16_t
Description:
PhPointerEvent_t
Description:
PhQueryCursor
Description:
PhQueryRids
Description:
PhQuerySystemInfo
Description:
PhReattach
Description:
Examples:
PhRect_t
Description:
PhRect16dot16_t
Description:
PhRectIntersect
Description:
PhRectsToTiles
Description:
PhRectToArea
Description:
PhRectUnion
Description:
PhRegion_t
Description:
PhRegionChange
Description:
Examples:
PhRegionClose
Description:
PhRegionDataFindType
Description:
Examples:
PhRegionDataHdr_t
Description:
PhRegionInfo
Description:
Examples:
PhRegionOpen
Description:
Examples:
PhRegionQuery
Description:
Examples:
PhRegisterTransportType
Description:
PhReleaseImage
Description:
PhReleaseTransportCtrl
Description:
PhReleaseTransportHdrs
Description:
PhSortTiles
Description:
PhSysInfo_t
Description:
gen
gfx
PhTile_t
Description:
PhTilesBoundingRect
Description:
PhTilesToRects
Description:
PhTimerArm
Description:
PhTo8859_1
Description:
PhTranslateRect
Description:
Examples:
PhTranslateTiles
Description:
PhTransportCtrl_t
Description:
PhTransportFindLink
Description:
PhTransportLink_t
Description:
PhTransportRegEntry_t
Description:
Fixup manifests
Endian information
PhTransportType
Description:
PhUnlinkTransportHdr
Description:
PhUnpack
Description:
PhWindowChange
Description:
PhWindowClose
Description:
PhWindowEvent_t
Description:
PhWindowOpen
Description:
PhWindowQueryVisible
Description:
Examples:
Pi---Images
PiConvertImage
Description:
Examples:
PiCropImage
Description:
PiDuplicateImage
Description:
PiFlipImage
Description:
PiGetPixel
Description:
PiGetPixelFromData
Description:
PiGetPixelRGB
Description:
PiInitImage
Description:
PiResizeImage
Description:
Examples:
PiSetPixel
Description:
PiSetPixelInData
Description:
Pm---Memory
PmMemCreateMC
Description:
Examples:
PmMemFlush
Description:
Examples:
PmMemReleaseMC
Description:
Examples:
PmMemSetChunkSize
Description:
PmMemSetMaxBufSize
Description:
PmMemSetType
Description:
PmMemStart
Description:
Examples:
PmMemStop
Description:
Examples:
Pp---Printing
PpContinueJob
Description:
Examples:
PpCreatePC
Description:
Examples:
PpEndJob
Description:
Examples:
PpFreePrinterList
Description:
PpGetCanvas
Description:
PpGetPC
Description:
Examples:
PpLoadDefaultPrinter
Description:
Examples:
PpLoadPrinter
Description:
Examples:
PpLoadPrinterList
Description:
PpPrintContext_t
Description:
Pp_PC_COLLATING_MODE
Pp_PC_COLOR_MODE
Pp_PC_CONTROL (read-only)
Pp_PC_COPIES
Pp_PC_DATE
Pp_PC_DEVICE
Pp_PC_DITHERING
Pp_PC_DO_PREVIEW
Pp_PC_DRIVER
Pp_PC_DUPLEX
Pp_PC_FILENAME
Pp_PC_INKTYPE
Pp_PC_INTENSITY
Pp_PC_JOB_NAME
Pp_PC_MARGINS
Pp_PC_MAX_DEST_SIZE
Pp_PC_NAME
Pp_PC_NONPRINT_MARGINS
Pp_PC_ORIENTATION
Pp_PC_PAGE_NUM
Pp_PC_PAGE_RANGE
Pp_PC_PAPER_SIZE
Pp_PC_PAPER_SOURCE
Pp_PC_PAPER_TYPE
Pp_PC_PREVIEW_APP
Pp_PC_PRINTER_RESOLUTION
Pp_PC_PROP_APP
Pp_PC_REVERSED
Pp_PC_SCALE
Pp_PC_SOURCE_COLORS
Pp_PC_SOURCE_OFFSET
Pp_PC_SOURCE_RESOLUTION
Pp_PC_SOURCE_SIZE
Pp_PC_USER_ID (read-only)
PpPrintNewPage
Description:
PpPrintWidget
Description:
Examples:
PpReleasePC
Description:
Examples:
PpSetCanvas
Description:
PpSetPC
Description:
Examples:
PpStartJob
Description:
Examples:
PpSuspendJob
Description:
Pt---Widget Toolkit
PtAddCallback
Description:
Examples:
PtAddCallbacks
Description:
Examples:
PtAddClassStyle
Description:
Examples:
PtAddData
Description:
PtAddEventHandler
Description:
Examples:
PtAddEventHandlers
Description:
Examples:
PtAddFilterCallback
Description:
Examples:
PtAddFilterCallbacks
Description:
Examples:
PtAddHotkeyHandler
Description:
Examples:
PtAddResponseType
Description:
PtAlert
Description:
Examples:
PtAllowExit
Description:
PtAppAddCallback
Description:
Examples:
PtAppAddEventHandler
Description:
PtAppAddFd, PtAppAddFdPri
Description:
PtAddFilterCallback
Description:
PtAppAddHotkeyHandler
Description:
PtAppAddInput
Description:
name_attach and PtAppAddInput
Examples:
PtAppAddInputRemote
Description:
name_attach and PtAppAddInputRemote
PtAppAddSignalProc
Description:
PtAppAddWorkProc
Description:
Examples:
PtAppCreatePulse
Description:
PtAppDeletePulse
Description:
PtAppGetResource
Description:
PtAppGetResources
Description:
PtAppInit
Description:
PtAppPulseTrigger
Description:
PtAppRemoveCallback
Description:
PtAppRemoveEventHandler
Description:
PtAppRemoveFd
Description:
PtAppRemoveFilterCallback
Description:
PtAppRemoveHotkeyHandler
Description:
PtAppRemoveInput
Description:
PtAppRemoveSignal
Description:
PtAppRemoveWorkProc
Description:
Examples:
PtAppSetFdMode
Description:
PtAppSetResource
Description:
Examples:
PtAppSetResources
Description:
Pt_CB_APP_EXIT
Pt_CB_APP_WCLASS_CREATED
Pt_CB_FILTER
Pt_CB_RAW
Pt_CB_HOTKEY
PtAppCallback_t
PtAppRawCallback_t
PtAppHotkeyCallback_t
Examples:
PtArg_t
Description:
Pt_ARG
Description:
PtBalloonCallback_t
Description:
PtBkgdHandlerProcess
Description:
Examples:
PtBlit
Description:
PtBlockAllWindows
Description:
PtBlockWindow
Description:
PtCalcAbsPosition
Description:
Examples:
PtCalcCanvas
Description:
PtCalcSurface
Description:
PtCalcSurfaceByAction
Description:
PtCalcSurfaceById
Description:
PtCallback_t
Description:
PtCallbackInfo_t
Description:
PtCancelDnd
Description:
PtChannelCreate
Description:
PtCheckSurfaces
Description:
PtChildType
Description:
PtClearWidget
Description:
Examples:
PtClipAdd
Description:
PtClippedBlit
Description:
PtClipRemove
Description:
PtComboBox*
Description:
PtCondTimedWait
Description:
PtCondWait
Description:
PtConnectionAddEventHandlers
Description:
PtConnectionAddMsgHandlers
Description:
PtConnectionClientDestroy
Description:
PtConnectionClientGetUserData
Description:
PtConnectionClientSetError
Description:
PtConnectionClientSetUserData
Description:
PtConnectionFindId
Description:
PtConnectionFindName
Description:
PtConnectionFlush
Description:
PtConnectionNotify
Description:
PtConnectionReply, PtConnectionReplymx
Description:
PtConnectionResizeEventBuffer
Description:
PtConnectionSend, PtConnectionSendmx
Description:
PtConnectionServerDestroy
Description:
PtConnectionServerGetUserData
Description:
PtConnectionServerSetError
Description:
PtConnectionServerSetUserData
Description:
PtConnectionTmpName
Description:
PtConnectionWaitForName
Description:
PtConnectorCreate
Description:
PtConnectorDestroy
Description:
PtConnectorGetId
Description:
PtConsoleSwitch
Description:
PtContainerBox
Description:
Examples:
PtContainerFindFocus
Description:
PtContainerFocusNext
Description:
Examples:
PtContainerFocusPrev
Description:
Examples:
PtContainerGiveFocus
Description:
Examples:
PtContainerHit
Description:
Examples:
PtContainerHold
Description:
Examples:
PtContainerNullFocus
Description:
Examples:
PtContainerRelease
Description:
Examples:
PtCRC
Description:
PtCRCValue
Description:
Examples:
PtCreateActionSurface
Description:
PtCreateClassStyle
Description:
Examples:
PtCreateSurface
Description:
PtCreateTransportCtrl
Description:
PtCreateWidget
Description:
Examples:
PtDamageExtent
Description:
Examples:
PtDamageSurface, PtDamageSurfaceById
Description:
PtDamageSurfaceByAction
Description:
PtDamageWidget
Description:
Examples:
PtDestroyAllSurfaces
Description:
PtDestroySurface
Description:
PtDestroySurfaceById
Description:
PtDestroyWidget
Description:
Examples:
PtDisableSurface, PtDisableSurfaceById
Description:
PtDisableSurfaceByAction
Description:
PtDndFetch_t
Description:
PtDndSelect
Description:
PtDupClassStyle
Description:
Examples:
PtEnableSurface, PtEnableSurfaceById
Description:
PtEnableSurfaceByAction
Description:
PtEndFlux
Description:
PtEnter
Description:
Examples:
PtEventHandler
Description:
Examples:
PtExit
Description:
PtExtentWidget
Description:
Examples:
PtExtentWidgetFamily
Description:
PtFdProcF_t, PtFdProc_t
Description:
PtFepCmd
Description:
PtFileSelection
Description:
PtFileSelectionInfo_t structure
PtFileSelectorInfo_t structure
Examples:
PtFindChildClass
Description:
Examples:
PtFindChildClassMember
Description:
Examples:
PtFindClassStyle
Description:
Examples:
PtFindContainer
Description:
PtFindData
Description:
PtFindDisjoint
Description:
PtFindFocusChild
Description:
PtFindFocusNextFrom
Description:
PtFindFocusPrevFrom
Description:
PtFindGuardian
Description:
PtFindNextData
Description:
PtFindSurface
Description:
PtFindSurfaceByAction
Description:
PtFlush
Description:
PtFontSelection
Description:
Examples:
PtForwardWindowEvent
Description:
Examples:
PtForwardWindowTaskEvent
Description:
Examples:
PtFS*
Description:
PtGenList*
Description:
PtGenTree*
Description:
PtGetAbsPosition
Description:
PtGetControlFlags
Description:
PtGetDndFetchIndex
Description:
Examples:
PtGetParent
Description:
Examples:
PtGetParentWidget
Description:
PtGetRcvidPid
Description:
Examples:
PtGetRcvidPidNd
Description:
PtGetResource
Description:
Examples:
PtGetResources
Description:
Examples:
PtGetStyleMember
Description:
Examples:
PtGetWidgetStyle
Description:
Examples:
PtGiveFocus
Description:
Examples:
PtGlobalFocusNext
Description:
PtGlobalFocusNextContainer
Description:
PtGlobalFocusNextFrom
Description:
PtGlobalFocusPrev
Description:
PtGlobalFocusPrevContainer
Description:
PtGlobalFocusPrevFrom
Description:
PtHelpQuit
Description:
PtHelpSearch
Description:
Examples:
PtHelpTopic
Description:
Examples:
PtHelpTopicRoot
Description:
Examples:
PtHelpTopicTree
Description:
Examples:
PtHelpUrl
Description:
Examples:
PtHelpUrlRoot
Description:
Examples:
PtHideSurface, PtHideSurfaceById
Description:
PtHideSurfaceByAction
Description:
PtHit
Description:
PtHold
Description:
PtHotkeyCallback_t
Description:
PtInflateBalloon
Description:
PtInit
Description:
Examples:
PtInitDnd
Description:
Examples:
PtInputCallbackProcF_t, PtInputCallbackProc_t
Description:
PtInsertSurface, PtInsertSurfaceById
Description:
PtIsFluxing
Description:
PtIsFocused
Description:
PtLeave
Description:
Examples:
PtList*
Description:
PtMainLoop
Description:
PtMakeModal
Description:
PtMessageBox
Description:
PtModalBlock
Description:
Examples:
PtModalEnd
Description:
PtModalStart
Description:
PtModalUnblock
Description:
Examples:
PtMulti*
Description:
PtNextTopLevelWidget
Description:
PtNotice
Description:
Examples:
PtPassword
Description:
PtPG*
Description:
PtPositionMenu
Description:
PtPreventExit
Description:
PtPrintPropSelect
Description:
PtPrintPropSelectionInfo_t structure
Dialog resources
Main dialog buttons
Main dialog titles
Paper pane
Graphics pane
Margins pane
Defaults pane
Printers pane
Print Order pane
Examples:
PtPrintSelect
Description:
PtPrintSelection
Description:
Examples:
PtProcessEvent
Description:
PtProgress*
Description:
PtPrompt
Description:
Examples:
PtPulseArm
Description:
PtQuerySystemInfo
Description:
PtQuitMainLoop
Description:
PtRawCallback_t
Description:
PtRealizeWidget
Description:
Examples:
PtReattach
Description:
Examples:
PtRelease
Description:
PtReleaseTransportCtrl
Description:
PtRemoveCallback
Description:
Examples:
PtRemoveCallbacks
Description:
PtRemoveData
Description:
PtRemoveEventHandler
Description:
Examples:
PtRemoveEventHandlers
Description:
Examples:
PtRemoveFilterCallback
Description:
Examples:
PtRemoveFilterCallbacks
Description:
Examples:
PtRemoveHotkeyHandler
Description:
Examples:
PtReparentWidget
Description:
Examples:
PtReRealizeWidget
Description:
PtResizeEventMsg
Description:
PtSendEventToWidget
Description:
Examples:
PtSetAreaFromCanvas
Description:
PtSetArg
Description:
Examples:
PtSetClassStyleMethods
Description:
Examples:
PtSetParentWidget
Description:
Examples:
PtSetResource
Description:
Examples:
PtSetResources
Description:
Examples:
PtSetStyleMember
Description:
Examples:
PtSetStyleMembers
Description:
Examples:
PtSetWidgetStyle
Description:
Examples:
PtShowSurface, PtShowSurfaceById
Description:
PtShowSurfaceByAction
Description:
PtSignalProcF_t, PtSignalProc_t
Description:
PtSpawn
Description:
Options
Callback function
PtSpawnDeleteCallback
Description:
PtSpawnSetCallback
Description:
PtSpawnWait
Description:
PtStartFlux
Description:
PtSurfaceActionId
Description:
PtSurfaceAddData, PtSurfaceAddDataById
Description:
PtSurfaceBrotherBehind
Description:
PtSurfaceBrotherInFront
Description:
PtSurfaceCalcBoundingBox, PtSurfaceCalcBoundingBoxById
Description:
PtSurfaceExtent, PtSurfaceExtentById
Description:
PtSurfaceGetData
Description:
PtSurfaceHit
Description:
PtSurfaceId
Description:
PtSurfaceInBack
Description:
PtSurfaceInFront
Description:
PtSurfaceIsDisabled
Description:
PtSurfaceIsEnabled
Description:
PtSurfaceIsHidden
Description:
PtSurfaceIsShown
Description:
PtSurfaceRect, PtSurfaceRectById
Description:
PtSurfaceRemoveData, PtSurfaceRemoveDataById
Description:
PtSurfaceTestPoint
Description:
PtSurfaceToBack, PtSurfaceToBackById
Description:
PtSurfaceToFront, PtSurfaceToFrontById
Description:
PtSyncWidget
Description:
PtTerminal*
Description:
PtText*
Description:
PtTimerArm
Description:
PtTransportCtrl_t
Description:
PtTransportRequestable
Description:
Request callback function
PtReqResponseHdr_t structure
PtTransportType
Description:
PtTree*
Description:
PtTrend*
Description:
PtTty*
Description:
PtUnblockWindows
Description:
PtUnlinkData
Description:
PtUnrealizeWidget
Description:
PtUpdate
Description:
PtValidParent
Description:
Examples:
PtWidgetActiveSurface
Description:
PtWidgetArea
Description:
PtWidgetBrotherBehind
Description:
Examples:
PtWidgetBrotherInFront
Description:
Examples:
PtWidgetChildBack
Description:
Examples:
PtWidgetChildFront
Description:
Examples:
PtWidgetClass
Description:
Examples:
PtWidgetClassFlags
Description:
PtWidgetDim
Description:
PtWidgetExtent
Description:
Examples:
PtWidgetFamily
Description:
Examples:
PtWidgetFlags
Description:
PtWidgetHelpHit
Description:
PtWidgetInsert
Description:
PtWidgetIsClass
Description:
Examples:
PtWidgetIsClassMember
Description:
Examples:
PtWidgetIsRealized
Description:
PtWidgetMinimumSize
Description:
PtWidgetOffset
Description:
Examples:
PtWidgetParent
Description:
Examples:
PtWidgetPreferredSize
Description:
PtWidgetRid
Description:
Examples:
PtWidgetSkip
Description:
Examples:
PtWidgetToBack
Description:
Examples:
PtWidgetToFront
Description:
Examples:
PtWidgetTree
Description:
Examples:
PtWidgetTreeTraverse
Description:
Examples:
PtWidgetVisibleExtent
Description:
PtWindow*
Description:
PtWindowConsoleSwitch
Description:
PtWindowGetFrameSize
Description:
PtWorkProcF_t, PtWorkProc_t
Description:
Px---Extended
PxConfigClose, PxConfigCloseCx
Description:
PxConfigDeleteEntry, PxConfigDeleteEntryCx
Description:
PxConfigDeleteSection, PxConfigDeleteSectionCx
Description:
PxConfigFirstSection, PxConfigFirstSectionCx
Description:
PxConfigForceEmptySection, PxConfigForceEmptySectionCx
Description:
PxConfigNextEntry, PxConfigNextEntryCx
Description:
PxConfigNextSection, PxConfigNextSectionCx
Description:
Examples:
PxConfigNextString, PxConfigNextStringCx
Description:
Examples:
PxConfigOpen, PxConfigOpenCx
Description:
Examples:
PxConfigReadBool, PxConfigReadBoolCx
Description:
PxConfigReadChar, PxConfigReadCharCx
Description:
PxConfigReadDouble, PxConfigReadDoubleCx
Description:
PxConfigReadInt, PxConfigReadIntCx
Description:
PxConfigReadLLong, PxConfigReadLLongCx
Description:
PxConfigReadLong, PxConfigReadLongCx
Description:
PxConfigReadShort, PxConfigReadShortCx
Description:
PxConfigReadString, PxConfigReadStringCx
Description:
PxConfigSection, PxConfigSectionCx
Description:
PxConfigWriteBool, PxConfigWriteBoolCx
Description:
PxConfigWriteChar
Description:
PxConfigWriteDouble, PxConfigWriteDoubleCx
Description:
PxConfigWriteInt, PxConfigWriteIntCx
Description:
PxConfigWriteLLong, PxConfigWriteLLongCx
Description:
PxConfigWriteLong, PxConfigWriteLongCx
Description:
PxConfigWriteShort, PxConfigWriteShortCx
Description:
PxConfigWriteString, PxConfigWriteStringCx
Description:
PxGetImageExtensions
Description:
PxLoadImage
Description:
PxMethods_t
Threads and PxLoadImage
Examples:
PxRotateImage
Description:
Methods
PxTerminalBuildCharsets
Description:
PxTerminalLoadCharsets
Description:
PxTerminalSaveCharsets
Description:
PxTerminate
Description:
PxTranslateFromUTF
Description:
PxTranslateList
Description:
PxTranslateSet
Description:
Examples:
PxTranslateStateFromUTF
Description:
PxTranslateStateToUTF
Description:
PxTranslateToUTF
Description:
PxTranslateUnknown
Description:
Rt---Realtime
RtTimerCreate
Description:
RtTimerDelete
Description:
RtTimerGetTime
Description:
RtTimerSetTime
Description:
utf8---UTF-8 Character
utf8len
Description:
utf8strblen
Description:
utf8strchr
Description:
Examples:
utf8strichr
Description:
utf8strirchr
Description:
utf8strlen
Description:
utf8strnchr
Description:
Examples:
utf8strncmp
Description:
utf8strndup
Description:
utf8strnichr
Description:
utf8strnlen
Description:
utf8strrchr
Description:
Examples:
utf8towc
Description:
wc---Wide-Character
wctolower
Description:
wctoutf8
Description:
What's New
What's new in Photon for QNX Neutrino 6.5.0
New entries
Changed entries
Errata
What's new in Photon for QNX Neutrino 6.4.1
New content in the docs
Corrections, clarifications, and other changes
What's new in Photon for QNX Neutrino 6.4.0
New content in the docs
Corrections, clarifications, and other changes
What's new in Photon for QNX Neutrino 6.3 Service Pack 1
New content in the docs
What's new in Photon for QNX Neutrino 6.3
New content in the docs
Corrections, clarifications, and other changes
Deprecated functions and data types
What's new in Photon for QNX Neutrino 6.2.1
New content in the docs
Deprecated functions and data types
Corrections
What's new in Photon for QNX Neutrino 6.2.0
New content in the docs
Ap
Pd
Pf
Pg
Ph
Pp
Pt
utf8
wc
Deprecated functions and data types
Corrections, clarifications, and other changes
What's new in Photon for QNX Neutrino 6.1.0
Patch A
New content in the docs
Deprecated functions and data types
Other changes
What's new in Photon for QNX Neutrino 6.0
New functionality
Font names
New content in the docs
Al---PhAB Translation
Ap---PhAB
mbstr---Multibyte-Character
Pd---Draw Context
Pf---Font Server
Pg---Graphics
Ph---Photon
Pi---Images
Pp---Printing
Pt---Widget toolkit
Px---Extended
Rt---Realtime
Corrections
Pg---Graphics
Ph---Photon
Glossary
Widget Reference
About This Reference
What you'll find in this guide
Typographical conventions
Note to Windows users
Navigation buttons
Technical support
Global Data Structures
PtBalloonCallback_t
Description:
PtCallback_t
Description:
Callback functions
PtCallbackInfo_t
Description:
PtHotkeyCallback_t
Description:
PtRawCallback_t
Description:
Widgets
Widget hierarchy
Widget icons in PhAB
What's in a widget description?
Class hierarchy
PhAB icon
Public header
Description
New resources
Inherited resources
Convenience functions
PtArc
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_ARC_END
Pt_ARG_ARC_START
Pt_ARG_ARC_TYPE
Inherited resources:
PtBarGraph
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_BARGRAPH_BASE
Pt_ARG_BARGRAPH_COLOR
Pt_ARG_BARGRAPH_DATA
Pt_ARG_BARGRAPH_DEPTH
Pt_ARG_BARGRAPH_FLAGS
Pt_ARG_BARGRAPH_GRID_COLOR
Pt_ARG_BARGRAPH_GRID_HORIZ
Pt_ARG_BARGRAPH_GRID_VERT
Pt_ARG_BARGRAPH_MAX
Pt_ARG_BARGRAPH_MIN
Inherited resources:
PtBasic
Class hierarchy:
PhAB icon:
Public header:
Description:
Selecting widgets
Borders and colors
New resources:
Pt_ARG_BANDWIDTH_THRESHOLD
Pt_ARG_BASIC_FLAGS
Edge-control bits
Fill-control bits
Behavior on state change
Pt_ARG_BEVEL_COLOR
Pt_ARG_BEVEL_CONTRAST
Pt_ARG_COLOR
Pt_ARG_CONTRAST
Pt_ARG_DARK_BEVEL_COLOR
Pt_ARG_DARK_FILL_COLOR
Pt_ARG_FILL_COLOR
Pt_ARG_FILL_PATTERN
Pt_ARG_HIGHLIGHT_ROUNDNESS
Pt_ARG_INLINE_COLOR
Pt_ARG_LIGHT_BEVEL_COLOR
Pt_ARG_LIGHT_FILL_COLOR
Pt_ARG_MARGIN_HEIGHT
Pt_ARG_MARGIN_WIDTH
Pt_ARG_OUTLINE_COLOR
Pt_ARG_STYLE
Pt_ARG_TRANS_PATTERN
Pt_CB_ACTIVATE
Pt_CB_ARM
Pt_CB_DISARM
Pt_CB_GOT_FOCUS
Pt_CB_LOST_FOCUS
Pt_CB_MENU
Pt_CB_REPEAT
Inherited resources:
PtBezier
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_BEZIER_FLAGS
Inherited resources:
PtBkgd
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_BKGD_IMAGE
Pt_ARG_BKGD_SPACING_X
Pt_ARG_BKGD_SPACING_Y
Pt_ARG_BKGD_TILE
Inherited resources:
PtButton
Class hierarchy:
PhAB icon:
Public header:
Description:
Creating pushbuttons
Pushbutton behavior
Visual feedback
New resources:
Pt_ARG_ARM_COLOR
Pt_ARG_ARM_FILL
Pt_ARG_ARM_IMAGE
Inherited resources:
PtCalendar
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CALENDAR_COLOR1
Pt_ARG_CALENDAR_COLOR2
Pt_ARG_CALENDAR_COLOR3
Pt_ARG_CALENDAR_COLOR4
Pt_ARG_CALENDAR_COLOR5
Pt_ARG_CALENDAR_DATE
Pt_ARG_CALENDAR_FLAGS
Pt_ARG_CALENDAR_FONT1
Pt_ARG_CALENDAR_FONT2
Pt_ARG_CALENDAR_FONT3
Pt_ARG_CALENDAR_FONT4
Pt_ARG_CALENDAR_FONT5
Pt_ARG_CALENDAR_HIGHLIGHT
Pt_ARG_CALENDAR_MONTH_BTN_COLOR
Pt_ARG_CALENDAR_MONTH_NAMES
Pt_ARG_CALENDAR_SEL_COLOR
Pt_ARG_CALENDAR_TIME_T
Pt_ARG_CALENDAR_WDAY_NAMES
Pt_ARG_CALENDAR_YEAR_BTN_COLOR
Pt_CB_CALENDAR_SELECT
Inherited resources:
PtClient
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CLIENT_FLAGS
Pt_ARG_CLIENT_NAME
Pt_ARG_CLIENT_REPLY_LEN
Pt_ARG_CLIENT_SEND
Pt_ARG_CLIENT_SERVER (read only)
Pt_CB_CLIENT_CONNECTED
Pt_CB_CLIENT_ERROR
Pt_CB_CLIENT_EVENT
Pt_CB_CLIENT_NOT_FOUND
Inherited resources:
PtClock
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CLOCK_FACE_COLOR
Pt_ARG_CLOCK_FACE_OUTLINE_COLOR
Pt_ARG_CLOCK_FLAGS
Pt_ARG_CLOCK_FONT
Pt_ARG_CLOCK_HOUR
Pt_ARG_CLOCK_HOUR_COLOR
Pt_ARG_CLOCK_HOUR_OFFSET
Pt_ARG_CLOCK_MINUTE
Pt_ARG_CLOCK_MINUTE_COLOR
Pt_ARG_CLOCK_MINUTE_OFFSET
Pt_ARG_CLOCK_SECOND
Pt_ARG_CLOCK_SECOND_COLOR
Pt_ARG_CLOCK_SECOND_OFFSET
Pt_ARG_CLOCK_SEP1
Pt_ARG_CLOCK_SEP1_COLOR
Pt_ARG_CLOCK_SEP2
Pt_ARG_CLOCK_SEP2_COLOR
Pt_ARG_CLOCK_TYPE
Pt_CB_CLOCK_TIME_CHANGED
Inherited resources:
PtColorPanel
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CPANEL_FLAGS
Inherited resources:
PtColorPatch
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CPATCH_FLAGS
Inherited resources:
PtColorSel
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CS_COLOR
Pt_ARG_CS_COLOR_MODELS
Pt_ARG_CS_CURRENT_MODEL
Pt_ARG_CS_FLAGS
Pt_ARG_CS_PALETTE
Pt_CB_CS_COLOR_CHANGED
Inherited resources:
PtColorSelGroup
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CSGROUP_FLAGS
Inherited resources:
PtColorWell
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CWELL_FLAGS
Pt_ARG_CWELL_SWATCH_DIM
Inherited resources:
PtComboBox
Class hierarchy:
PhAB icon:
Public header:
Description:
Keyboard actions
Callbacks
New resources:
Pt_ARG_CBOX_BUTTON_WIDTH
Pt_ARG_CBOX_FLAGS
Pt_ARG_CBOX_MAX_VISIBLE_COUNT
Pt_ARG_CBOX_SEL_ITEM
Pt_ARG_CBOX_TEXT_FILL_COLOR
Pt_CB_CBOX_ACTIVATE
Pt_CB_CBOX_CLOSE
Exported subordinate children:
Inherited resources:
Pt_ARG_VISIBLE_COUNT
Convenience functions:
PtComboBoxListClose
Description:
PtComboBoxListOpen
Description:
PtCompound
Class hierarchy:
PhAB icon:
Public header:
Description:
Inherited resources:
PtContainer
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CONTAINER_FLAGS
Pt_ARG_CURSOR_OVERRIDE
Pt_ARG_LAYOUT
Pt_ARG_LAYOUT_INFO
Pt_ARG_LAYOUT_TYPE
Pt_ARG_FILL_LAYOUT_INFO
Pt_ARG_ROW_LAYOUT_INFO
Pt_ARG_GRID_LAYOUT_INFO
Pt_ARG_TITLE
Pt_ARG_TITLE_FONT
Pt_CB_BALLOONS
Pt_CB_CHILD_ADDED_REMOVED
Pt_CB_CHILD_GETTING_FOCUS
Pt_CB_CHILD_LOSING_FOCUS
Pt_CB_LAYOUT
Pt_CB_RESIZE
Inherited resources:
PtDisjoint
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_SYSINFO (read only)
Pt_CB_SYSINFO
Inherited resources:
PtDivider
Class hierarchy:
PhAB icon:
Public header:
Description:
Examples
New resources:
Pt_ARG_DIVIDER_FLAGS
Pt_ARG_DIVIDER_OFFSET
Pt_ARG_DIVIDER_SIZES (read-only)
Pt_CB_DIVIDER_DRAG
Pt_CB_DIVIDER_HANDLE_CALLBACK
Exported subordinate children:
Inherited resources:
Pt_ARG_BANDWIDTH_THRESHOLD
Pt_ARG_GROUP_ORIENTATION
PtEllipse
Class hierarchy:
PhAB icon:
Public header:
Description:
Inherited resources:
PtFileSel
Class hierarchy:
PhAB icon:
Public header:
Description:
Examples
New resources:
Pt_ARG_FS_FILE_SPEC
Pt_ARG_FS_FLAGS
Pt_ARG_FS_FORMAT
Pt_ARG_FS_IMAGES (write-only)
Pt_ARG_FS_LBL_DATE
Pt_ARG_FS_LBL_GROUP
Pt_ARG_FS_LBL_NAME
Pt_ARG_FS_LBL_OWNER
Pt_ARG_FS_LBL_PERMISSIONS
Pt_ARG_FS_LBL_SIZE
Pt_ARG_FS_REFRESH
Pt_ARG_FS_ROOT_DIR
Pt_CB_FS_BKGD_HANDLER
Pt_CB_FS_SELECTION
Pt_CB_FS_STATE
Inherited resources:
Pt_CB_DND
Convenience functions:
PtFSAddAfter
Description:
PtFSAddFirst
Description:
PtFSAllItems
Description:
PtFSAllocItem
Description:
Examples:
PtFSClearSelection
Description:
PtFSDamageItem
Description:
PtFSExpandParents
Description:
PtFSFolderCollapse
Description:
PtFSFolderExpand
Description:
PtFSFreeAllItems
Description:
PtFSFreeItems
Description:
PtFSGetCurrent
Description:
PtFSGetSelIndexes
Description:
PtFSGoto
Description:
PtFSItemIndex
Description:
PtFSRemoveChildren
Description:
PtFSRemoveItem
Description:
PtFSRemoveList
Description:
PtFSRootItem
Description:
PtFSSelect
Description:
PtFSSelectedItems
Description:
PtFSSetSelIndexes
Description:
PtFSShow
Description:
PtFSUnselect
Description:
PtFSUnselectNonBrothers
Description:
PtFontSel
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_FONT_DISPLAY
Pt_ARG_FONT_FLAGS
Pt_ARG_FONT_LBL_BKGDCOLOR
Pt_ARG_FONT_LBL_FONT
Pt_ARG_FONT_LBL_SIZE
Pt_ARG_FONT_LBL_STYLE
Pt_ARG_FONT_LBL_TEXTCOLOR
Pt_ARG_FONT_NAME
Pt_ARG_FONT_POINT_SIZE_MAX
Pt_ARG_FONT_SAMPLE
Pt_ARG_FONT_SYMBOL
Pt_ARG_FONT_TEXT_COLOR
Pt_ARG_FONT_TEXT_BKGD_COLOR
Pt_CB_FONT_MODIFY
Inherited resources:
Convenience functions:
PtGauge
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_GAUGE_FLAGS
Pt_ARG_GAUGE_FONT
Pt_ARG_GAUGE_H_ALIGN
Pt_ARG_GAUGE_V_ALIGN
Pt_ARG_GAUGE_VALUE
Pt_ARG_GAUGE_VALUE_PREFIX
Pt_ARG_GAUGE_VALUE_SUFFIX
Pt_ARG_MAXIMUM
Pt_ARG_MINIMUM
Pt_ARG_ORIENTATION
Pt_CB_GAUGE_VALUE_CHANGED
Inherited resources:
PtGenList
Class hierarchy:
PhAB icon:
Public header:
Description:
Using scrollbars
Current item
Mouse actions
Keyboard actions
New resources:
Pt_ARG_LIST_COLUMN_ATTR
Pt_ARG_LIST_COLUMN_POS
Pt_ARG_LIST_DNDSEL_COLOR
Pt_ARG_LIST_FLAGS
Pt_ARG_LIST_FONT
Pt_ARG_LIST_ITEM_COUNT (read-only)
Pt_ARG_LIST_SB_RES
Pt_ARG_LIST_SCROLL_RATE
Pt_ARG_LIST_SEL_COUNT (read-only)
Pt_ARG_LIST_TOTAL_HEIGHT (read-only)
Pt_ARG_SCROLLBAR_WIDTH
Pt_ARG_SELECTION_FILL_COLOR
Pt_ARG_SELECTION_MODE
Pt_ARG_SELECTION_TEXT_COLOR
Pt_ARG_TOP_ITEM_POS
Pt_ARG_VISIBLE_COUNT (read-only)
Pt_CB_SCROLL_MOVE
Inherited resources:
Pt_CB_DND
Convenience functions:
PtGenListAddItems
Description:
PtGenListAllItems
Description:
PtGenListClearSelection
Description:
PtGenListCreateTextBalloon
Description:
PtGenListDamageItem
Description:
PtGenListDrawBackground
Description:
PtGenListDrawString
Description:
Examples:
PtGenListFirstItem
Description:
PtGenListGetCurrent
Description:
PtGenListGetSelIndexes
Description:
PtGenListGoto
Description:
PtGenListHold
Description:
PtGenListItem_t
Description:
PtGenListItemIndex
Description:
PtGenListItemRealloc
Description:
PtGenListLastItem
Description:
PtGenListLockItem
Description:
PtGenListRelease
Description:
PtGenListRemoveItems
Description:
PtGenListResize
Description:
PtGenListSelect
Description:
PtGenListSelectedItems
Description:
PtGenListSetColumnBalloon
Description:
PtGenListSetGflags
Description:
PtGenListSetSelIndexes
Description:
PtGenListShow
Description:
PtGenListUnlockItem
Description:
PtGenListUnselect
Description:
PtGenTree
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_TREE_FLAGS
Pt_ARG_TREE_LINE_COLOR
Pt_ARG_TREE_LINE_SPACING
Pt_ARG_TREE_MARGIN_COLOR
Pt_CB_GEN_TREE_INPUT
Inherited resources:
Pt_CB_DND
Convenience functions:
PtGenTreeAddAfter
Description:
PtGenTreeAddFirst
Description:
PtGenTreeAllItems
Description:
PtGenTreeClearSelection
Description:
PtGenTreeCollapse
Description:
PtGenTreeDamageItem
Description:
PtGenTreeExpand
Description:
PtGenTreeExpandParents
Description:
PtGenTreeFreeAllItems
Description:
PtGenTreeFreeItems
Description:
PtGenTreeGetCurrent
Description:
PtGenTreeGetSelIndexes
Description:
PtGenTreeGoto
Description:
PtGenTreeItem_t
Description:
PtGenTreeItemIndex
Description:
PtGenTreeItemRealloc
Description:
PtGenTreeItemResize
Description:
PtGenTreeRemoveChildren
Description:
PtGenTreeRemoveItem
Description:
PtGenTreeRemoveList
Description:
PtGenTreeResize
Description:
PtGenTreeRootItem
Description:
PtGenTreeSelect
Description:
PtGenTreeSelectedItems
Description:
PtGenTreeSetSelIndexes
Description:
PtGenTreeShow
Description:
PtGenTreeUnselect
Description:
PtGenTreeUnselectNonBrothers
Description:
PtGraphic
Class hierarchy:
PhAB icon:
Public header:
Description:
Origin and coordinates
Line attributes
Colors
Creating a drawing
Sizing the primitives
Grouping elements of the drawing
New resources:
Pt_ARG_DASH_LIST
Pt_ARG_DASH_SCALE
Pt_ARG_GRAPHIC_FLAGS
Pt_ARG_INSIDE_COLOR
Pt_ARG_INSIDE_FILL_PATTERN
Pt_ARG_INSIDE_TRANS_PATTERN
Pt_ARG_LINE_CAP
Pt_ARG_LINE_JOIN
Pt_ARG_LINE_WIDTH
Pt_ARG_ORIGIN
Pt_ARG_POINTS
Pt_CB_RESCALE
Inherited resources:
PtGrid
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_GRID_HORIZONTAL
Pt_ARG_GRID_VERTICAL
Inherited resources:
PtGroup
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_CELL_HORZ_ALIGN
Pt_ARG_CELL_VERT_ALIGN
Pt_ARG_GROUP_FLAGS
Pt_ARG_GROUP_HORZ_ALIGN
Pt_ARG_GROUP_ORIENTATION
Pt_ARG_GROUP_ROWS_COLS
Pt_ARG_GROUP_SPACING
Pt_ARG_GROUP_SPACING_X
Pt_ARG_GROUP_SPACING_Y
Pt_ARG_GROUP_VERT_ALIGN
Inherited resources:
PtImageArea
Class hierarchy:
PhAB icon:
Public header:
Description:
New resources:
Pt_ARG_IMAGEAREA_FLAGS
Pt_ARG_IMAGEAREA_GRID_COLOR
Pt_ARG_IMAGEAREA_GRID_THRESHOLD
Pt_ARG_IMAGEAREA_IMAGE
Pt_ARG_IMAGEAREA_LEFT
Pt_ARG_IMAGEAREA_SELECTION
Pt_ARG_IMAGEAREA_TOP
Pt_ARG_IMAGEAREA_ZOOM
Pt_CB_IMAGEAREA_DRAG
Pt_CB_IMAGEAREA_MOVEMENT
Pt_CB_IMAGEAREA_SCROLLED
Pt_CB_IMAGEAREA_SELECTION
Inherited resources:
PtLabel
Class hierarchy:
PhAB icon:
Public header:
Description:
Creating labels
Text labels
Image and bitmap labels
Balloons
New resources:
Pt_ARG_ACCEL_KEY
Pt_ARG_BALLOON_COLOR
Pt_ARG_BALLOON_FILL_COLOR
Pt_ARG_BALLOON_POSITION
Pt_ARG_BALLOON_TEXT
Pt_ARG_HORIZONTAL_ALIGNMENT
Pt_ARG_LABEL_BALLOON
Pt_ARG_LABEL_FLAGS
Pt_ARG_LABEL_IMAGE
Pt_ARG_LABEL_TYPE
Pt_ARG_LINE_SPACING
Pt_ARG_MARGIN_BOTTOM
Pt_ARG_MARGIN_LEFT
Pt_ARG_MARGIN_RIGHT
Pt_ARG_MARGIN_TOP
Pt_ARG_SECONDARY_H_ALIGN
Pt_ARG_SECONDARY_V_ALIGN
Pt_ARG_TEXT_FONT
Pt_ARG_TEXT_IMAGE_SPACING
Pt_ARG_TEXT_STRING
Pt_ARG_UNDERLINE1
Pt_ARG_UNDERLINE2
Pt_ARG_UNDERLINE_TYPE
Pt_ARG_VERTICAL_ALIGNMENT
Inherited resources:
&n