Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Programming Businesses Apple IT Technology

Darwin Kernel Programming 15

ZigMonty writes "Apple has updated their Kernel Programming docs (May 1st). They are a lot more substantial now (read: they say something other than 'don't')."
This discussion has been archived. No new comments can be posted.

Darwin Kernel Programming

Comments Filter:
  • by cremes ( 16553 ) on Monday May 06, 2002 @09:15AM (#3469005) Homepage
    Under the VFS section, there's a subsection entitled "A Politically Correct Example."
    A Politically Correct Example

    The Politically Correct File System is an example of a VFS stack. In this example, all calls are ignored (passed to the underlying layer) except for those that create, read, or write a file (or folder).

    Upon receiving a request to create a file or folder, the Politically Correct (PC) stack intercepts the call before it can be executed by the underlying file system. The PC version of the create call checks the requested filename against a table of names. If the name is deemed politically incorrect, for example if the user chooses to name a file "vulgarity", the PC create call chooses a more pleasing name, for example, "politeness". The new name is passed to the create routine of the underlying file system.

    Similarly, when a user opens a file to read or write it, such as with a text editor, the PC read and write routines first examine the data buffer, possibly substituting preferred words and phrases for their undesirable counterparts. After the substitutions are made, the buffer is handed to the underlying routine, which displays the data or writes it to disk.

    Thus, if a user attempted to save a file containing a sentence such as this:

    The beleaguered computer company's woes continue, despite rising stock prices.

    the PC write routine might intercept and filter this sentence to a more desirable version:

    The aspiring computer company's joys continue, due to rising stock prices.

    cr
    • This is typical, many Apple docs were peppered with jokes. The examples for the GUI in the Inside Macintosh were about about SurfWriter, the coolest word processor (or something like that). Most glossaries had an (incomplete) entry for RTFM, etc...
  • I went through the previous incarnation of this manual and it was pretty lousy. I haven't had a good chance yet to study this one, but if they added any new information to it then I'll be happy.

    The documentation for Apple's new systems has been rather poor. I've been writing an IOKit driver (check it out at http://sourceforge.net/projects/darwin-tulip/) and had a hell of a time figuring out some of the tricks. Some of that was related to this project being my first attempt at a driver (:-), but there were some critical areas where the documentation stopped dead in its tracks and said "This section is not written yet." D'oh!

    My next project after this ethernet driver is to write either a) an opensource tool to defrag HFS+, or b) a VFS driver. If I do (a) first it will help with (b). I'm counting on there being better documentation on VFS than currently exists. I've started looking at the source code (the only documentation that exists on VFS), but it can take many months to become proficient with its internal workings; good doc should cut that down some.

    cr
  • by h0tblack ( 575548 ) on Monday May 06, 2002 @12:09PM (#3470214)
    ...have appeared in the build up to the start of the WWDC (today).
    There's also an updated "UNIX Porting Guide"
    http://developer.apple.com/techpubs/macosx /Darwin/ index.html

    All of the latest updates can be found here:
    http://developer.apple.com/techpubs/macosx/ whatsne w.html

    One of the older bits of documentation I came across recently was that on Assembly under OS X, including details for the i386 architecture.
    http://developer.apple.com/techpubs /macosx/Develop erTools/Assembler/AssemblerTOC.html

Intel CPUs are not defective, they just act that way. -- Henry Spencer

Working...