News for hackers. Stuff that matters.
Re:AI is forcing us to pay off 40 years of technical debt by ihavesomeexampl on Wednesday November 04, 2026 @09:04AM (#50365677)
But.. alter data that gets executed (interpeter?), I mean, how does this work even in theory? All data is potentially code?
Re:AI is forcing us to pay off 40 years of technical debt by intrasight on Wednesday November 04, 2026 @09:32AM (#50366051)
All data is potentially code only in a Von Neumann architecture, but not in a Harvard architecture, where there's a separation of data and code with different memory access to each.
Re:AI is forcing us to pay off 40 years of technical debt by esterna on Wednesday November 04, 2026 @09:43AM (#50366219)
[delayed]
Re:AI is forcing us to pay off 40 years of technical debt by lelanthran on Wednesday November 04, 2026 @02:56PM (#50370670)
> All data is potentially code only in a Von Neumann architecture, but not in a Harvard architecture, where there's a separation of data and code with different memory access to each.

Says you. I wrote a program for a Hardvard architecture chip (PIC) that read bytecode from the data memory and executed it. Updates were made by replacing the data block with a new data block.

In practice, there is no way to separate data and instructions. After all, JS downloaded inside a webpage is literally data, and it gets executed.

Re:AI is forcing us to pay off 40 years of technical debt by AdamH12113 on Wednesday November 04, 2026 @03:42PM (#50371218)
To clarify what intrasight is talking about: A Harvard architecture CPU has two physically separate memory busses for code and data. This makes it possible to build a computer with a program memory that cannot be altered through the data bus. In practice, this isn't normally done -- even on Harvard architecture microcontrollers, the flash and RAM are connected to both busses because memory is expensive. And having inalterable program memory doesn't save you from stack-smashing attacks that alter a return address.