Hacker Newsnew | past | comments | ask | show | jobs | submit | burnt-resistor's commentslogin

Several European economists I follow on YT suggest Americans and Asians should prep now for a temporary food supply chain shortage, famine, and/or collapse resulting from the knock-on effects of petroleum and urea market disruptions.

Corporate welfare that will never be recouped. It's totally corrupt.


It's regulated by who can climb to the top of the crab bucket and go with the mafia chief to ask for bribes and sweetheart deals in other lands.

Meanwhile, Russian oligarchs have been welcomed back with open arms by Italy's Biennale art festival with only Caolan Robertson asking the hard questions.


Up until the Powell memo.

Stanford is also unproctored by charter.

>Nearly 40% of Stanford undergraduates claim they’re disabled. I’m one of them

https://www.thetimes.com/us/news-today/article/40-percent-st...

https://archive.ph/RPegw


Have a look at every owner of excessively loud pickem up trucks and motorcycles too.

I would like to find a lighter exhaust system for my motorcycle, the stock system weighs like 30 pounds. All the aftermarket exhausts seem to be louder then stock. I want something that light and quiet but everyone else seems to want loud AF.

Add a muffler. Universal ones exist and a shop can fabricate the exhaust headers/tubing to make it work.

Sometimes ultra-minimal is really too simple, and it lacks the userland and kernel bits that can be tweaked and built upon for course assignments that resemble things in the rest of the POSIX world.

MINIX 2.0 is mostly published in the text of Operating Systems: Design and Implementation (1997) by Tanenbaum. It's a superior OS for teaching UNIX philosophy and OS concepts rather than starting with a contrived OS that has no relevance to anything. It runs on vintage x86 machines (QEMU/etc.) no problem. About the first hack I added to it was upping the keyboard repeat rate to maximum and delay to minimum.

Some schools have drifted away by using more complicated OSes like FreeBSD as their generic UNIX and OS teaching platform, but this throws out the simplicity of MINIX <3.0. The MINIX kernel and basic userland fit in very little code, it can almost all fit in your head, there's a book that goes into detail about most of the important concepts, and it can be rebuilt on modern machines in seconds.


plus 1 for Minix. that's how Linus learned OS, from Tanenbaum, and how their public monolithic vs microkernel rift began. iirc xv6 while monolithic also allows for a microkernel implementation (maybe not the ideal way to learn about microkernels) and also has a POSIX layer which fits your "resembles the POSIX world" req. unsure if one still requires learning compiling for strong type checking for IPC with microkernels (if learning for a diy build)

Yeah, it was neat. Like "add a new process scheduling algorithm" as a class assignment. Good luck doing that in a complex, real OS or figuring it out in a contrived one that won't have relevancy to real OSes. At least MINIX is nominally UNIX/POSIX/C more or less and is somewhat related to ye olde UNIX design, internals, and software dev concepts, algorithms, and philosophy such that classic UNIX books are often helpful.

When seL4 came around, it helped me rethink microkernel architecture and limitations, especially IPC, security, and correctness. What is a mostly unsolved problem is coordinating a transaction and possible rollback of actions that touch multiple areas of responsibility without becoming a monolithic hybrid.


Then perhaps you haven't been around for very long. Have a look here before you put your feet in your mouth any further:

https://en.wikipedia.org/wiki/Comparison_of_mail_servers


On the greenfield x86 development side: Self-modifying code, while possible, is generally terrible because it obliterates cache lines and pipeline branch prediction performance too. And it also violates W^X so it generally has to be used in JIT-compatible memory pages. So avoid it almost always. It was kind of a thing in 486 and P5 days like using code immediates as inner loop variables, but not so much now.

There's a lot of x86 crufty edge-cases to handle to achieve perfect(ish) emulation or translation.


> It was kind of a thing in 486 and P5...

After those machines, at the Pentium Pro, with look-ahead instruction decoding, it became a major lose to store into code. Superscalar x86 CPUs have the hardware to detect and handle stores into code, but it requires bringing the CPU to a clean halt, almost like an exception interrupt, discarding pipelined work that's already been done, and then restarting the pipeline, reloading the instructions ahead. All the performance gains of superscalar hardware is lost for a while.

There are RISC architectures where self-modifying code isn't supported, and code pages must be read-only. Then the CPU doesn't need the machinery for detecting and aborting look ahead on a store into code. MacOS has enforced that rule since the PowerPC era.


I think that you can execute JIT code using an interpreter?

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: