pigfoot’s weblog

We should forget about small efficiencies — Donald Knuth

Archive for September, 2005

OpenBSD: Improved Memory Allocation, Beta Testing 3.8, from KernelTrap.

OpenBSD creator Theo de Raadt described a number of modifications to how OpenBSD allocates memory:

  • mmap system call return a random memory address, as well ensuring “that two objects are not mapped next to each other; in effect, this creates unallocated memory which we call a ‘guard page’”
  • malloc function was updated to use mmap to obtain memory
  • free function was updated to immediately return memory to the kernel and un-allocate it from the calling process

Theo points out that these changes have a couple of significant impacts. He explains that for over a decade efforts have been made to find and fix buffer overflows, and more recently bugs have been found in which software is reading before the start of a buffer, or beyond the end of the buffer. With these recent memory allocation changes, such an attempt will cause the application to coredump with a SIGSEGV signal.

Additionally, now that memory is unmapped as soon as it is freed, any attempt to access freed memory will also cause the application to coredump with a SIGSEGV signal.

Popularity: 15% [?]

  • 0 Comments
  • Filed under: IT, OpenBSD, Unix
  • SSE Performance Programming

    SSE Performance Programming, from developer.apple.com.

    Here is a tutorial about programming SSE in C language, learning how to do SIMD vector programming for MacOS X for Intel CPU.

    Popularity: 20% [?]

  • 1 Comment
  • Filed under: C/C++, Develop
  • [FX/TB] Win32 Trunk build

    Mozilla Firefox/Thunderbird Trunk builds (20050901)

    Sepecial Check-in

    • Because plugins hosted at update.mozilla.org only support up to 1.0+, not 1.6a1 (limitation in update.mozilla.org ?), I add app.extensions.version as 1.0+ in profile to accept plugins installation
    1. checkout finish: Thu Sep 1 00:07:40 DST -0700 UTC 2005
    2. All Chech-in, FX Chech-in, TB Chech-in from last build
    3. my vs7.1-trunk patch
    4. my tweaks profile patch
    5. Used branding artwork by JairoB
    6. UAO of zh_TW.Big5 Unicode Fix
    7. enabled extensions of cookie, xml-rpc, xmlextras, p3p, pref, universalchardet, inspector, transformiix, webservices, xforms, schema-validation, gnomevfs
    8. P0/P1/P2/P3 all build with VC7.1
    9. P0 build build with /GAL6
    10. P1 build build with /GAL6 and mmoy’s MMX patches
    11. P2 build build with /GAL6 arch:SSE and mmoy’s SSE patches
    12. P3 build build with /GAL7 arch:SSE2 and mmoy’s SSE2 patches

    Popularity: 7% [?]

  • 0 Comments
  • Filed under: Gecko, IT