Why Is Windows Built Like This? | Shop Talk #81
Shop Talk #81 explores the strange engineering decisions that still shape modern Windows systems today.Dave and Glen dig into GUIDs, COM, APIs, the Windows Registry, backwards compatibility, CPU scheduling, interrupts, abstraction layers, and why software architecture often becomes far more complicated than users expect.The conversation expands into how old engineers approached system design, whether modern abstraction layers hide too much complexity, and why low-level computing knowledge still matters.This episode was built directly from viewer questions and comments.
00:00 - Hey I’m Dave02:46 - Did you ever have some of your code be part of an exploit?04:03 - Considering today’s sheer mass of driver stacks… How would you organize this with the benefit of hindsight?05:06 - You didnt tell us what format the binary UID was in?06:29 - How does a person even get through the maze of gate keepers that exest to even use a solution like you did?07:23 - Has your ESP32 idle monitor led to any optimizations to other code running on the ESP32?07:52 - Am I the only one here who never knew that GUID is pronounced gwid?09:01 - 1) What about the counterpart function, StringToIID()? 2) Out of curiosity, did you ever have any experience with SOM, and if so, what are your takes on SOM vs. COM?09:57 - Have you considered using a bitmask instead of the if with 4 potential checks?10:48 - Why didn’t Windows just use 128 bit ID’s that were interpreted as {uint32, uint32, uint32, uint32} ?12:01 - I am wondering would you be able to make content how to use/read C?12:58 - When are you getting a gang together to give us a proper and correct windows alternative?13:56 - Great stuff except for your misrepresentation of Morse code…14:56 - Why did it have to be Morse code?15:26 - How did the agent get the command in the first place ?18:22 - Might try initializing the array with hyphens, then unroll that loop.19:07 - Where can I get a mezmerizer?20:23 - Is it nibble, or is it nybble?20:46 - Did your optimized function produce uppercase or lowercase hex digits?21:12 - Are you saying you’re the reason why MS always historically represents UUIDs with capitals letters?21:29 - Would have you really get rid of sprintf instead of printf, since IIDtoString should have converted IID to a string instead of print the outcome to the console?21:57 - Can you do a video on COM?22:31 - Looking at your code my first thought was why is this even in a loop, why not just unroll it?23:13 - Couldn’t that function be written with zero branching instructions?23:39 - Were you guys over medicated or under supervised?25:38 - I’d bet all of your electronic toys are cheaper than a boat?26:37 - So are you saying that the guid is unique to each installation/computer since I heard you mention it tied to a mac address?27:16 - Didn’t Microsoft use target big-endian systems also?27:37 - This may be a silly question, but why do these things need to be converted to strings anyway?28:17 - For converting to hex, you index into an array?29:20 - I wonder if your significant little improvement was the one of the reasons Microsoft was able to succeed in the marketplace?29:32 - How do you actually quantify 100% faster? It now takes no time?29:46 - Maybe its a 35000RPM drive because they didn’t use a synchronous motor?30:14 - Next two topics logging and ntp. ?30:38 - When is the Dave’s Garage shirt with Memory is a sort of a compression algorithm with a sense of nostalgia! coming out?30:51 - You mean that Transcend wifi sd card lurking in my drawer wont work any more?31:05 - Canadian Tire Money?31:26 - What the H E double hockey sticks is Canadian Tire Money?31:51 - We’re letting the Americans know about Canadian Tire money now?33:30 - Why was I not already subscribed?