Event Tracing for Windows (ETW) — Part 2

    So, there were two major groups of comments on the last post, and I’ll try to address them.     The first was a question about managed support for ETW.  I talked to the ETW team, and the current state is that there is no official managed interface for ETW.  Being a standard Win32 API,…

3

Event Tracing for Windows (ETW)

    A lot of work in performance tuning is organizational.  There’s only so much work one can do with a profiler and a single module.  A good example is the Registry — we can attach profilers to the Registry access routines and optimize them until they run as smooth as silk, but performance will still…

10

Misinformation and the The Prefetch Flag

   Hello!  I haven’t updated this blog in a while; work and other events have conspired to keep me from writing.  Also, blogs.msdn.com moved internally from .Text to Telligent Community Server, and my CSS markup was an unfortunate casualty of the move, so I’m working on redesigning the blog’s visual appearance.  More entries will be coming…

24

Encodings in Strings are Evil Things (Part 8)

   As more Unicode encodings are being finished, I find myself wanting to actually start using rmstring in real situations.  However, most of my “real situations” involve legacy encodings.  So, I need to start cracking on transcoding.    The first concern is allowing adapters for arbitrary transcodings.  A tricky problem that’s related to transcoding is collation (aka…

8

Encodings in Strings are Evil Things (Part 7)

   Eugh.  Due to a three-part punch of piling-up work, time with family over the holidays, and being thoroughly sick, I haven’t had much time to work on rmstring — which means, of course, that this hasn’t updated.  I haven’t given up on it though!  (I’m not dead!  I don’t want to go on the cart…) …

1

Encodings in Strings are Evil Things (Part 6)

   First, I apologize for not updating recently — at work, my dev machine’s power supply died, and took my hard drive with it.  Luckily, I had everything backed up; however, I had to copy everything over to, and work on, a single-monitor Longhorn dogfood box with no major apps installed.  This went on for a week and a half…

0

Encodings in Strings are Evil Things (Part 5)

    In our last episode, we briefly discussed possible behaviors for encoding_cast, and we discussed how the STL’s basic_string class was structured — namely, we noted that it had several core functions that were overloaded many times for various types of input.  We also noted that we could avoid many of the implementation headaches that…

6

Encodings in Strings are Evil Things (Part 4)

   In our last episode, we established that we wouldn’t be able to make a true std::string replacement and still handle variable-width encodings.  So, we started with the beginning lines of an rmstring class.  However, this doesn’t mean we are going to dispense with std::string entirely!  But first, a quick answer about my choice of names…

2

Encodings in Strings are Evil Things (Part 3)

   (Before I start: I’ve gotten a few suggestions about readability, since my two entries thus far have been quite long.  So, entries will now contain a summary at the end with major facts/conclusions, and I’ll go back and add them for the first two posts.  I’ll also try to pace my paragraphs more regularly.  Thanks…

1

Encodings in Strings are Evil Things (Part 2)

   At the end of the last post, we reduced the abstract concept of “string” down to an “ordered sequence of Unicode code points.”  (We did so by choosing to actively ignore glyph information, but we’ll be coming back to it later.)  Unicode code points are simply numbers; of course, numbers have to be reduced to…

5