QNX 4 --> Neutrino Migration Guide

[Bookset]
[Bookset]
[Contents]
[About]

About This Guide

Meet the New OS

    Architecture

    Support for x86, MIPS, PowerPC

    SMP

    Portability

    Installing Neutrino on a QNX 4 box

     Moving files from QNX 4 to Neutrino

      Typical development cycle
       From the QNX 4 machine:
       From the Neutrino machine:

Development Environment

    Compiler & tools

    Header files

    Libraries

     Static and dynamic libraries

    Useful manifests

    Debugging

    Buildfiles and images

Programming Issues

    Scheduling

     Priority range

    Process issues

     Process creation

     Process flags

    I/O Managers vs Resource Managers

    Messages

     Neutrino's connection-oriented philosophy

     Channel IDs vs process IDs

     How should the receiver be written?

     How does the sender find the receiver?

     Receiving messages in a resource manager

     _PPF_SIGCATCH

     Message priority

     Priority floating

     Receiving from across the network

    Events

    Proxies vs pulses

     Example of pulses with a resource manager

    Signal services

     Signals and threads

    Shared memory

    Semaphores

     Named semaphores

    POSIX Message Queues

    Timers

     Timeouts

    Interrupts

    Hardware I/O

     Port I/O

     Memory-mapped I/O

     Memory for DMA

     PCI functions

    Getting system information

    Getting process information

    The term_ Functions

Migration Methodology

    A suggested approach

    Get to know Neutrino

    Install the OS

    Move your environment

    Move your utilities

    Plan!

    Moving a program

     Analysis

     Architectural issues

     Converting header files

     Converting pathnames

     Converting functions, etc.

The mig4nto Utility

    mig4nto

      Syntax:
      Options:
      Description
      Examples:
      Exit status:

The Migration Library

    The migration process manager (mig4nto-procmgr)

      Syntax:
      Options:
      Description

     Migration functions that require mig4nto-procmgr

    The migration library functions

      block_read
      block_write
      dev_arm
      dev_info
      dev_insert_chars
      dev_ischars
      dev_mode
      dev_read
      dev_readex
      dev_size
      dev_state
      disk_get_entry
      disk_space
      fsys_get_mount_dev
      fsys_get_mount_pt
      getnid
      mig4nto_init
      qnx_hint_attach
      qnx_hint_detach
      qnx_name_attach
      qnx_name_detach
      qnx_name_locate
      qnx_name_query
      qnx_osinfo
      qnx_proxy_attach
      qnx_proxy_detach
      qnx_psinfo
      qnx_spawn
      Readmsg
      Readmsgmx
      Receive
      Receivemx
      Reply
      Replymx
      Send
      Sendmx
      Trigger
      Writemsg
      Writemsgmx
      Yield

QNX 4 Functions & Neutrino Equivalents