If your battling another person and you apply a double KO, the game requires 2 inputs, instead of the 1 input required when an in-game battle occurs. Perhaps some pseudocode may help explain this better.
I'm not technically proficient enough to fully understand everything pseudocoded, there, but I think I get the gist of it.
Your position, as I see it, is that in cases where two Pokemon are KO'd on the same term, you'd run into a scenario something like this (in a nutshell):
-One player must hold up a warning sign of their action before the other can make a move.
-If the other player hasn't held up a warning sign, you can't make a move (and therefore hold up your warning sign).
-Both players can't be holding up a warning sign at the same time.
Basically, both players are waiting to see what the other person will be sending out next before they send their Pokemon out, but then, if Player 1 is waiting for Player 2, and Player 2 is waiting for Player 1...
Am I right?
What you're failing to take into account, however, is that if Gamefreak really wanted to get this system into link-battles, they could easily fix it in two ways, both of which have already been mentioned:
-Somehow determine which person got the KO. This can be done randomly, by choosing the person who used the Knockout move (but was then subsequently KO'd by recoil or Sandstorm or the backlash of Explosion), etc. Things'd then proceed normally, with the person whose Pokemon was determined to be KO'd first (Player 2) choosing a Pokemon without being told what Player 1 is choosing. Player 1 is then told what Player 2 chose, and things go on their merry way.
-Don't determine who got the KO, and instead tell neither player what the other is sending out, as would happen now. As I understand it from Indragon's statement, this is what the game would do normally.
In both cases, the issue of both players waiting on the other to tell them what they're sending out doesn't come up, which I believe is your reason as to why it's not put in link battles. As it appears, this reason is not a factor.
I repeat that the primary reason this system is not implemented in link battles because it is simply not fair to a given player. The "programmatically impossible" reason you put forward, as far as I can understand, is no obstacle. The real obstacle to putting this in would be the idea saying, "Hey, do we really want to give people who get the first KO even more of an advantage? Give them enough of a running start that they could win the battle, maybe?"