Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
pslam
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
13 ms
·
91.
▲
by
pslam
11y ago
I'm saddened by the author going to this trouble. Embedded cpu selection doesn't happen in isolation - or at least, it shouldn't. The available tools are a large part of why you would pick chip A over chip B. If you don'
92.
▲
by
pslam
11y ago
The entire point of my system is that I don't need to care which copy is good. If it scrubs and detects any error, I'll mount disks independently as two filesystems, and diff the contents. I'll then restore corrupted data fro
93.
▲
by
pslam
11y ago
Yeah the RAID1 part is weak sauce. However, my specific setup mitigates these flaws: * The intention is to detect at-rest bit flips before they progressively pollute everywhere. I don't mind if it's not instantaneously detected on
94.
▲
by
pslam
11y ago
I run a slightly crazy setup for about 200GB of data: * raid1 on all data. This isn't a backup - it's for end-to-end detection of bit flips in (some of) the storage path (and at rest). This needs a better solution (zfs?) * zbackup
95.
▲
by
pslam
11y ago
In a sense, this is true. The view that all bugs are static, determinable, and caused by a lack of care and attention, is old fashioned and demonstrably wrong. In mature code bases (e.g core linux kernel), (almost) all the low hanging bugs
96.
▲
by
pslam
11y ago
Seeking a mandatory backdoor is equivalent to banning encryption. This isn't just metaphorical - it is a practical, provable result of it. The various attempts throughout history have been abysmal failures of security. The other practi
97.
▲
by
pslam
11y ago
It's also very common in older ISAs, especially DSPs. As pointed out elsewhere, it's common in VLIWs (which is generally "older" ISAs). A good example is the Motorola 56K DSP family. Instructions are 24 bit wide (24 bi
98.
▲
by
pslam
11y ago
> > It is a gmail account. > You're completely incorrect. You see how this actually is confusing! This is historically inaccurate. I have never signed up for a Google Account and yet I have one. Before Google+ and Google Apps
99.
▲
by
pslam
11y ago
Yes, and these are effectively 3 different instructions sharing the same mnenomic. If you assemble them: mov 0x1000(%rax,%rax), %eax mov %eax, 0x1000(%rax,%rax) mov $7, %eax You get: 000000
100.
▲
by
pslam
11y ago
That's a fun program. Similar techniques to this are used to create "ROP" (return-oriented programming) exploits. You get enough building blocks to get general purpose programming, and it's "just" matter of map
101.
▲
by
pslam
11y ago
I recall a long time back, when Linux was configured as standard for 100Hz ticks (aka "jiffies"), the counter was initialized close to wraparound instead of 0. The result was you typically encountered "jiffy wraparound"
102.
▲
by
pslam
11y ago
Wow! Yes, I am interested in that kind of thing. Also a coincidence: me and my brother used to do cooperative 2-player speeed-runs of Doom/Doom2 as part of a thing called "H2HMud". We had a setup which consisted of a fast 486
103.
▲
by
pslam
11y ago
Indeed, and I should have said "pseudorandom". What I'm trying to say is that it's fully predictable. Yes, they could have used rand() with an appropriate srand(seed), communicated between machines. They could even have
104.
▲
by
pslam
11y ago
Even the "randomness" is deterministic. The fixed, repeating table is an optimization, but it's also completely necessary for multiplayer to work. Doom does things very differently to how more recent multiplayer FPS multiplay
105.
▲
by
pslam
11y ago
I've been wondering recently how viable it would be to implement an FPGA-within-an-FPGA: * Create a model of a simple, open FPGA. * Create tools to support the open FPGA. * Synthesize the FPGA for an existing proprietary FPGA.
106.
▲
by
pslam
11y ago
I bet somewhere in the source there is a line which looks like: if (inclusiveEnd + 1 > size) { return ERR_INVALID; } HTTP ranges are inclusive, and most likely implemented here with unsigned 64 bit integers. My guess
107.
▲
by
pslam
12y ago
Thanks for posting this. I'm often surprised how few people know that almost all synchronization primitives can be implemented with each other. They are effectively equivalent. However, as you say, some end up being hideously complicat
108.
▲
by
pslam
12y ago
Bingo :) Actually, not just embedded systems. There's HSMs (hardware security modules) which also can't be updated to support new functions. Often this is because the underlying primitives have been implemented in fixed-function h
109.
▲
by
pslam
12y ago
There are installations which don't support ECC, usually due to hardware limitations, but do support RSA-4k. Often this cert is the trust anchor for various other uses than just SSL, so the result is you end up using RSA-4k instead of
110.
▲
by
pslam
12y ago
TCL is an incredibly useful language to quickly construct small code snippets in, and is especially good as a REPL language - as a command line interface. On the other hand, it's the bane of my life. It's particularly bad (and ver
111.
▲
by
pslam
12y ago
It is very expensive to hire an H1-B compared to a US resident. The only way for it to be cheaper would involve fraud: paying a worker less than prevailing wage, which would require cooking your books, lying to US Immigration, and getting i
112.
▲
by
pslam
12y ago
It is illegal to pay an H1-B Visa Holder differently to the prevailing wage. Converting to a Green Card should have no effect on your pay, and if it does, the employers are committing fraud. You may have a side-effect of increased pay due t
113.
▲
by
pslam
12y ago
Thanks for making that! I hadn't considered the rotation, because as you point out, it doesn't exactly match up. It's gaining distance from the center of image as it moves. It could still be some kind of internal reflection a
114.
▲
by
pslam
12y ago
There's another object near the left edge of the video, moving from top to bottom. Does anyone know what that is? Its movement per frame seems too consistent and predictable to be an artifact (noise) of the camera.
115.
▲
by
pslam
12y ago
That's exactly the threat full disk encryption is designed for.
116.
▲
by
pslam
12y ago
Sorry, I wasn't clear enough that my code was intended as sarcastic. It's obviously silly to zero variables because the compiler is free to ignore you. The point is, the underlying machine is going to do the same. There are many w
117.
▲
by
pslam
12y ago
So you're essentially trying to protect against a hypervisor attack? That's never going to work unless you put the primitives in the hypervisor. Assuming you own it.
118.
▲
by
pslam
12y ago
Thanks - that's a good example of what I was trying to convey. The point is Rust already provides safety guarantees. If you don't trust the runtime, then why would you trust the built-in zero'ing? I get the "defense in d
119.
▲
by
pslam
12y ago
This keeps coming up, but I think it's a very, very bad idea . It's false security. If you are running in an environment where you don't trust code running in the same compartment/sandbox/process, then it's fu
120.
▲
by
pslam
12y ago
This is probably a bad idea and I would bet (and probably win) that less aggressive unrolling would be better in pretty much all cases except a micro-benchmark . This kind of trick worked well on CPUs in the 1980s (as jvoorhis points out i
More ›