What's new: Kernel ------------------ * MIPS binaries from QNX Momentics 6.3 aren't compatible with 6.4.1 because of changes to the runtime environment (ABI) * We've reduced the jitter in the interrupt-to-thread latency, especially on x86 platforms. * If you exec() a program with a relative path, and you're using Qnet, the kernel no longer leaks small amounts of memory, and Qnet no longer leaks some resources. (Ref# 62502) What's new: Booting and licensing --------------------------------- * If you add a license in text mode (e.g. on the console or via a telnet session) using finstall -l, you can now properly activate. (Ref# 62147) New utilities include: showlicense Display the type of QNX license that's currently active. (Ref# 62227) What's new: Core Networking --------------------------- * The Core Networking Stack documentation now includes a technote on converting io-net drivers into native io-pkt drivers. (Ref# 58620) * We ship the SSH suite, but it isn't currently documented. What's new: Filesystems ----------------------- The fs-udf.so filesystem has a new vcd=num option that you can use to set the number of raw VCD 2352-byte deblocking buffers. (Ref# 15071, 67230) What's new: Graphics -------------------- * Composition Manager a hardware-independent layer of abstraction that encompasses all aspects of window management, such as window creation, realization, and destruction, as well as content updates inside the Human Machine Interface (HMI). The composition manager is compliant with OpenKode and OpenGL ES. For more information, see the Composition Manager Developer's Guide. What's new: Libraries --------------------- chdir(), chroot() We've fixed a bug in chdir() that made chroot() not work properly. (Ref# 21089) endfsent(), getfsent(), getfsfile(), getfsspec(), setfsent() These functions work with the /etc/fstab file; you can use them to get information about the filesystem that this file describes. (Ref# 65331, 65399) These functions are in libc.a, but not in libc.so (in order to save space). What's new: Block-oriented drivers (devb-*) ------------------------------------------- New drivers: devb-ahci Driver for AHCI SATA interfaces (QNX Neutrino) We've also addressed the following: devb-eide This driver no longer auto-detects RAID controllers, so as to avoid corrupting RAID configurations. Use the jumper on your card to disable RAID mode. (Ref# 60231) What's new: Graphics drivers (devg-*) ------------------------------------- The new drivers include: devg-poulsbo.so Graphics driver for Intel Poulsbo chipsets We've also addressed the following: * Switching from devg-matroxg.so to devg-svga.so via modeswitching no longer causes io-graphics and/or io-display to fault. (Ref# 61152) What's new: Network drivers (devn-*, devnp-*) --------------------------------------------- The new drivers include: devnp-e1000.so Driver for Intel Gigabit Ethernet controllers (Ref# 66074, 67003) The devnp-e1000.so and devnp-i82544.so drivers are similar: * devnp-i82544.so has performance optimizations (TSO and interrupt thresholding options) that may make it a better performing candidate for some hardware * devnp-e1000.so likely supports more hardware (it will support TSO in a future release) The enumerators currently start devnp-e1000.so for Intel Gigabit Ethernet controllers, but you might want to switch to devnp-i82544.so, depending on your hardware. devnp-rtl8169.so Driver for Realtek 8169 Gigabit Ethernet controllers; replaces devn-rtl8169.so. (Ref# 67108, 67238) We've also addressed the following: devnp-i82544.so We've corrected the default values for the irq_threshold and transmit options in the usage message and documentation. This driver doesn't support the promiscuous option. (Ref# 62229) What's new: Web browsers ------------------------ * Web Browser Engine a high-performance embeddable web browser that's based on the WebKit open source engine. We ship a native Advanced Graphics version of the browser with basic functionality; your Photon or Flash application can add windowing and a control interface (e.g. address bar and navigation). For more information, see the Web Browser Engine Developer's Guide. What's new: Compiler, tools, and utilities ------------------------------------------ gdb * On PPC targets, ntoppc-gdb uses hardware watchpoints when they're available. If hardware watchpoints aren't available, gdb uses software watchpoints. The kernel has support for hardware watchpoints only on BookE. (Ref# 13133, 21293) * If you have two breakpoints exactly one instruction apart, the second breakpoint now correctly stops the debugger. (Ref# 20833) pidin The pidin syspage command now displays the CPU-dependent, mdriver, and pminfo sections of the system page. (Ref# 62406, 67058) What's new: IDE --------------- * The QNX Momentics Tool Suite 6.4.1 includes version 4.6 of the IDE; its new features include: o Eclipse 3.4 o CDT 5.0 o GCC Mudflap visualization o improvements to the System Profiler o the ability to import projects (including BSPs) and browse source packages from our Foundry27 community website o more information about CPU usage in the System Information perspective * The QNX Source Package and BSP wizard replaces separate wizards for importing QNX source packages and BSPs. (Ref# 67407, 67409) * In the Target File System Navigator for a target booted from .boot, you can now drag the file .boot from a project and drop it into the / directory in the Target File System view. (Ref# 46882; Ticket ID 77863) Discontinued items: ------------------- * sin -- use pidin instead. (Ref# 66906, 66908) * devn-rtl8169.so -- use devnp-rtl8169.so instead. (Ref# 67108, 67238) Known issues: ------------- * If you create a shared memory object, mmap() it with MAP_SHARED, create a synchronization object (e.g. a mutex) in it, and then mmap() with MAP_PRIVATE to the same offset in the shared object, then the application and some some programs such as pidin and shutdown may hang. (Ref# 63369) * The devb-eide fails to detect EIDE devices on Renesas EDOSK7780 targets. (Ref# 60231) * Switching from devg-matroxg.so to devg-svga.so via modeswitching will cause io-graphics and/or io-display to fault. (Ref# 61152) Known issues: IDE ----------------- * If you install software updates (via Help-->Software Updates), the wizard may list some secondary update sites. You install updates from such sites at your own risk. (Ref# 66909) Fixed issues ------------ * Static constructors no longer crash when you compile C++ code with debugging. 66706 * A serious race condition, and potential deadlock circumstance, has been corrected in libgf and io-display with the usage of the following routines: gf_draw_begin(), gf_draw_finish(), * gf_draw_flush(), gf_draw_end(), and gf_layer_flushrect(). * * If you've linked your Advanced Graphics application against libgf.a or libgfS.a, you need to relink it. 66160 * Some deadlocks under heavy usage in the F3S filesystem (devf) have been corrected. 65991 * We now ship , and we've added getfsent(), getfsspec(), getfsfile(), setfsent(), and endfsent() to the static libc. 65331 * We've corrected the default values for the irq_threshold and transmit options in the usage message and documentation for devnp-i82544.so. This driver doesn't support the promiscuous option. 62229 * If you add a license in text mode (e.g. on the console or via a telnet session) using finstall -l, you can now properly activate. 62147 * The setkey utility now supports the 3des-deriv encryption algorithm. 60289 * phs-to-pcl: Issues related to text layout have been resolved. 58180 * phs-to-pcl: Improper text clipping resolved. 57113 * phs-to-pcl: Fill patterns are now processed. 52878 * We've removed the -L (landscape) option from the phs-to-* printer filters. Use PpSetPC() to set the orientation in the printer draw stream to Pp_PORTRAIT, Pp_LANDSCAPE, etc. (Ticket ID 69400) 25697 * If you have two breakpoints exactly one instruction apart, the second breakpoint now correctly stops the debugger. 20833 * The entry for fs-qnx6.so in the Utilities Reference now describes the required device properties for the Power-Safe filesystem. 66339 * If the RLIMIT_DATA limit set with setrlimit() is exceeded, the brk(), mmap(), and sbrk() functions fail with errno set to ENOMEM. 66278 * The documentation no longer says that iofunc_lock() isn't implemented. 65936 * The High Availability Manager can see death messages only from tasks that are running in session 1, and daemon() doesn't put the caller into that session; use procmgr_daemon() instead if you want to * use your application with the HAM. If you want to use inetd under control of the HAM, specify the -D option when you start inetd. 42701 * The System Architecture guide and the entries for ChannelCreate(), ConnectAttach(), and MsgSend*() in the QNX Neutrino Library Reference now mention that if a process wants other processes to * communicate with it, it can use name_attach() to create a channel and associate a name with it. The sender process can then use name_open() to locate that name and create a connection to it. (Ticket ID 70168) 26438 * The Processes chapter of the QNX Neutrino Programmer's Guide now includes a section on manipulating threads via the /proc/pid/as files. 17722