Movatterモバイル変換


[0]ホーム

URL:


Wayback Machine
76 captures
17 Jun 2011 - 17 Jan 2026
AprMAYJun
29
201520162017
success
fail
COLLECTED BY
Organization:Internet Archive
These crawls are part of an effort to archive pages as they are created and archive the pages that they refer to. That way, as the pages that are referenced are changed or taken from the web, a link to the version that was live when the page was written will be preserved.

Then the Internet Archive hopes that references to these archived pages will be put in place of a link that would be otherwise be broken, or a companion link to allow people to see what was originally intended by a page's authors.

The goal is tofix all broken links on the web. Crawls of supported "No More 404" sites.
This is a collection of web page captures from links added to, or changed on, Wikipedia pages. The idea is to bring a reliability to Wikipedia outlinks so that if the pages referenced by Wikipedia articles are changed, or go away, a reader can permanently find what was originally referred to.

This is part of the Internet Archive's attempt torid the web of broken links.
TIMESTAMPS
loading
The Wayback Machine - https://web.archive.org/web/20160529042017/https://dxd.dynax.at/
dxd - dynax driver framework  1863
cross platform open source driver development framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
dxd - dynax driver framework Documentation

cross platform open source driver development framework

The dynax driver framework provides commonC++ driver and device classes to ease kernel driver development as well as driver interface integration in user mode applications. The framework is based on interface implementations forKMDF (Windows),IOKit (OSX) and Linux(planned).

draft.png

The dynax driver framework consists of two main parts:

  • thekernel driver platform abstraction providing platform independent
    • C++ skeleton with virtual methods for driverevent handling and standardized default event handling
    • device classes forUSB,PCI,FW, etc.
    • resource classes forisr handling anddevice resource access
    • threading andsynchronisation classes
    • generic interface classes forPortClass Audio/MIDI andCoreAudio
    • generic streaming interface
  • theuser mode driver interface providing platform independent
    • driver and device classes for interfacing hardware
    • notification mechanism for standardized defaultPNP handling
    • communication andsynchronisation classes
    • generic streaming interface
    • generic interface classes forCoreMIDI andCoreAudio server plugins

The implementation design rules:

  • light weight implementation, adding as less as possible overhead
  • synergetic code usage
  • enable the user to reduce the code only to tasks handling specific device features
  • sparse as possible implementation code
  • strictly uncompromised object orientated design
  • separation of flow and error control
  • typesafty avoiding unclassified pointers and casting wherever possible
  • strict RAII (let only the compiler create the code of balanced initialization and deconstruction)
  • destruction always succeeds: a destructor never throws an exception.
  • all object parameters are reasonably checked (ofcourse pointer validity can not be ensured without overhead, so its only checked against null pointer.
  • it is always valid to directly forward an dx/dxd object as a parameter to another dx/dxd object. Validity is ensured.

User space

  • Object construction might fail with exception.

Kernel space

  • Object construction might fail with object status. Always check object status!

SVN repository

please request svn read access by inquiring todxd@d.nosp@m.ynax.nosp@m..at

Speed

The framework is lightweight. It precisely executes only the needed kernel KPI. Most drivers are slow due to a bad design and its inherent workarounds. dxd provides the means to help with a clean design, with less pitfalls. dxd takes care about tedious and error prone KPI requirements and therefor avoids the implementation of slow workarounds due to KPI misinterpretation and OS bugs.

C++ in the Kernel???

The dynax driver framework uses asubset of C++ without real exception handling andRTTI runtime type information.
However dxd does provide some kind of exception handling semantics based on macros. This way you can get at least most of the error handling out of the way of the drivers program flow.
There is a rather religious discussion about C++ and kernel development. You can loose your time and join the discussion or just get your driver done - probably faster in C++, better structured and platform independent with the support of dxd.
dxd classes do provide a way around most kernel pitfalls. Its uncompromised object orientated design helps keeping your code safe, fast, small, nice and clean.
you may spent the extra spare time and do something useful.


(c) copyright 2009 dynamic acoustics e.U.generated on Fri May 27 2016

a closed source license may be obtained by requesting a written permission fromdynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.


[8]
ページ先頭

©2009-2026 Movatter.jp