4 ms·
> Again, stuff I don't need to know about. Until you do.... For example, disk addresses are numbers. In most cases, consecutive numbers means adjacent blocks
by anamax 17y ago
> Again, stuff I don't need to know about.
Until you do....
For example, disk addresses are numbers. In most cases, consecutive numbers means adjacent blocks which means that accessing a, a+1 is much faster than accessing a, a+2034.
Except that that's not true for certain values of a which depend on the disk's actual layout, which can change (because the disk may decide that a or a+1 is bad and remap it to some other place).
All abstractions leak at some point. (My fun one was some non-existent memory that could be written and then read reliably in certain ways. Yes, there really wasn't a DIMM plugged in, but I could write to the relevant physical address and get back what I'd written.)
- LogicHoleFlaw 17y agoHow did... how was that even possible?!
- derobert 17y agoL1, L2, and L3 data cache make that easily possible. The write is cached, and the read is satisfied from the cache. Alternatively, there could be aliasing going on, and that read/write is actually going to a different DIMM (and thus corrupting memory elsewhere)
- anamax 17y agoNope. It wasn't caches, aliasing, or memory mapping. I could write to any physical address in the slots with no DIMMs and get back what I read, just like I could with the slots that had memory. I figured it out when I noticed that all reads (from the slots with no dimms), regardless of address, returned the last value written to any address. In other words, a read from 104 returned what I wrote to 100 if that was the last write. The data bus was behaving like a set of capacitors.
- Confusion 17y agoUntil you do.... And then you turn to someone with expertise on the subject or obtain the expertise. You cannot possibly be an expert on everything computerrelated.
- Pistos2 17y agoExactly. Low level knowledge is nice to have in some situations, but is for the most part not required to accomplish a lot because high level knowledge and tools are often sufficient.
- anamax 17y ago> And then you turn to someone with expertise on the subject or obtain the expertise. I think that it's possible and even reasonable to understand the fundamentals a couple of levels of abstraction either direction from your area of expertise. In the cases where that's not enough, it's still very useful in helping you interact with someone who has relevant expertise.