VMWare asynchronous TSCs on Opteron

July 5th, 2008

A rare VMWare error message is this one, occuring when the virtual machine is being launched:
Your host does not have synchronized TSCs. Please read VMware Knowledge Base article 2041.

Your host does not have synchronized TSCs. Please read VMware Knowledge Base article 2041.

When that error message pops up it is likely that all sorts of time-related things will go wrong in the guest system: Video playback, audio for the video, double-clicks.

An example environment where this can occur:

  • Host system Windows XP
  • CPU AMD Opteron for socket 939 (175, 180, 185, 190)
  • Certain drivers, such as those installed by MSI Live Monitor (AMD CPU Driver 1.3.2.16?)

Fix

I fixed the problem by adding these lines on the bottom of the .vmx file:

processor0.use = TRUE
processor1.use = FALSE
host.noTSC = "TRUE"
ptsc.noTSC = "TRUE"
host.TSC.noForceSync = "TRUE"

That way the guest system only has a single core CPU and only one core of the Opteron helps to emulate it, but that seems to be the only disadvantage.

Whizlabs vs. Enthuware

July 4th, 2008

I bought several exam simulators for mock exams:

  • The one for SCJP 5.0 (CX-310-055) from Whizlabs
  • The one for SCWCD 1.4 (CX-310-081) from Whizlabs
  • The one for SCBCD 1.3 (CX-310-090) from Whizlabs
  • The one for SCDJWS (CX-310-220) from Whizlabs
  • The one for SCEA (CX-310-051) from Whizlabs
  • More recently: The one for SCBCD 5.0 from Enthuware

License

Enthuware uses a pretty normal end user software license, while Whizlabs plagues the user with a complicated activation procedure, only to limit the use to three CPUs! So when the user upgrades the CPU or gets a new computer, the license is lost. The three CPUs for which it works have to be chosen within 6 months after the purchase. That makes it pretty much useless for what I bought it, which is to keep my knowledge about topics that I currently don’t need at work up to date. Whizlabs simulators cannot be used for that. This is not much of an issue when the user wants to learn for a certificate and will never need the simulator again afterwards.

Learning process, repetition scheme

Whizlabs simulators have certain features which try to adept to the user (“adaptive testing”). As far as I know they do not follow proven methods from the field of education science, though.

Enthuware’s direct support for such features is limited. However, its comment system provides great flexibility for custom systems. My article Effective Enthuware describes how to use the Leitner System in the Enthuware Test Studio. That is the system for this type of learning.

Supported Platforms

Enthuware Test Studio requires JRE 5.0. The Whizlabs simulators support all common Microsoft Windows versions.

Errata

Enthuware Test Studio provides a direct link to the Enthuware forum post in which that question is being discussed. That can be helpful to find out if the proposed answer is incorrect, but recently I was usually the first one to check that out, so there were no other comments about that question.

Useability

Whizlabs has a Flash based GUI. It works well, but most things must be done with the mouse.
Enthuware uses the common key and mouse bindings for GUIs (Swing with system’s default L&F).

Price

For most exams the Whizlabs products are a little more expensive than the Enthuware products. For example Whizlabs SCBCD 5.0 Preparation Kit for USD 74.95, Enthuware EJB+ Full Version for USD 29.00.

Question Quality

The big unknown. I do not know anything about a conclusive study regarding the question qualities. They are both at least okay.

Question Quantity

Untransparent for Whizlabs products, and varies from product to product.

Conclusion

I recommend the Enthuware products. The knock-out arguments are the license and the Leitner System support. A really nice objective test from a huge organisation would help, like the tests we have for cars and such, a test which would also examine question quality and study time / exam result ratio. But this market is just too small, so you have to do with subjective reports like mine.

See also the Effective Enthuware article.

Chess puzzle #3 (medium)

July 2nd, 2008

I (black) felt that there was a way to get out of this alive and with even material, after I accepted the sacrifice of Chessmaster Grandmaster Edition (white) and ended up in this situation. So I used up all my time to think myself out of it … and still failed.

Do you see a way out? It is possible.

Solution: show

Something in the general line of 1. … c4 2. Qxc4 Be6 3. Qb3 Nxf4 4. Qxb7+ could also work.

The key is to see that … Qxb7 and … Qxa8 is not such a big thread, because there is a potential trap against the white queen. As a consequence, the light bishop can be activated.

Chess puzzle #9 (easy)

June 30th, 2008

Black to move and win significant material.

Chess puzzle #12 (easy)

June 30th, 2008

vjoe (white) made a mistake here. How could I (black) have won material?


Solution: show

Chess puzzle #10 (easy)

June 30th, 2008

I (black) made a mistake in a game against vjoe (white) here.


White to move and win material.

Solution: show

Chess puzzle #7 (easy)

June 30th, 2008

I lost this game, because I missed my last chance at this position, where Black just made a horrible blunder.

Find a good sequence of moves for me (white).

Ignore my IP in AWStats

June 29th, 2008

I use AWStats to get statistical usage information about my websites. The problem is that for less important websites like my private one I often test and develop directly on the production system. That creates many garbage entries in the HTTP log.

AWStats has the option SkipHosts for the configuration file, but my IP changes all the time.

So what I did was this:

Modify awstats.pl

...
if ($param =~ /^SkipHosts/) {
    @SkipHosts=();
        #foreach my $elem (split(/\s+/,$value)) {
        #       if ($elem =~ /^REGEX\[(.*)\]$/i) { $elem=$1; }
        #       else { $elem='^'.quotemeta($elem).'$'; }
        #       if ($elem) { push @SkipHosts, qr/$elem/i; }
        #}
        ####
        my $ips="/home/whoever/ips.txt";
        open(DAT, $ips) || die("can't open ip list");
        my @lines=<DAT>;
        close(DAT);
        foreach my $line (@lines)
        {
                chop($line);
                my $esc='^'.quotemeta($line).'$';
                push @SkipHosts, qr/$esc/i;
        }
        ####
        next;
        }
...

(You may want to keep the old code which I commented out and concatenate it with your values for @SkipHosts.)

Log my IPs

How that can be done depends on the situation. In my case I can safely assume that I have logged in to the web server over ssh with most IPs that I would use, so I added this to the .bash_profile:

echo $SSH_CLIENT | egrep -i -o '([[:digit:]]+\.){3}[[:digit:]]+' >> ips.txt

Hope it helps someone.

Effective Enthuware

June 29th, 2008

Based on my certifications I have a some experience with exam simulators and mock questions from other sources. The years I served as a student assistant at the Leibnitz Institute for Science Education as well as my personal interest in this topic supplied me with a background in learning techniques. This post describes how to apply the Leitner System to the Enthuware Test Studio.

The Enthuware Test Studio is a software that can mock a test environment and provide various additional exam preparation tools. “Question Banks” can be purchased for it and loaded. I bought the Question Bank for the Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5 (CX-310-091), because I have the old version of the certificate and want to upgrade.

The Leitner System

The Leitner System is a method of grouping questions based on how often and when they need to be repeated. Enthuware Test Studio does not directly support it, but unlike Whizlabs it provides an indirect way using the study notes.
Enthuware Test Studio Missed Questions

  • When an answer is wrong, the question will end up in the section “Missed Questions” automatically
  • That section shows the questions in a table which can and should be sorted by the custom note (“My Note”)
  • After a missed question has been tried again, enter the corresponding box number of the Leitner System as a note using the “Edit Note” button on the bottom of the question window. (Increase number for correct answer, back to box one for wrong answer.)
  • Re-order by “My Note” when the boxes changed. Repeat questions in a frequency based on their box number (low numbers more often).

Shortcomings:

  • Only questions that have been missed the first time will end up in the “Missed Questions” section, although according to the Leitner System they would still have to be repeated a couple of times in decreasing intervals. But especially when time is short this can also be an advantage. If any questions can be skipped, then those which had been answered correctly at the first attempt.
  • It is possible to memorise the position of the answers in a multiple-choice or single-choice question, because Enthuware Test Studio does not support shuffling the order of the answers.

I found those shortcomings to be acceptable.

Overall learning approach

  • Learn the basics about the test subject from a general book or tutorial and practice. (The Sun EE Tutorial is great for SCBCD, SCWCD and SCDJWS.)
  • Study a single exam topic from the certification, for example in Mikalai Zaikin’s study guides
  • Make a custom test in Enthuware Test Studio with a subset of the available questions for this exam topic (not too many) and take it.
  • While repeating this routine for the other questions of the same exam topic and later for other exam topics, integrate repeating of missed questions based on the system above into your daily routine.

Chess puzzle #11 (tough)

June 28th, 2008

I (black) made a mistake. Fortunately my opponent did not see it, and the game ended in a draw. Do you?

Chess puzzle 11

White to move and win material. It is tough!

Need help?

Tactical concepts needed for the solution: show

First move: show