Hacker News new | past | comments | ask | show | jobs | submit login
LegoOS: Disseminated, Distributed OS for Hardware Resource Disaggregation [pdf] (usenix.org)
91 points by ingve 4 months ago | hide | past | web | favorite | 30 comments

I smell a lawsuit, or at least a C&D.

I used to work for LEGO. They have more lawyers than I've ever seen anywhere else.

When I read the title, I honestly thought this was an official LEGO thing. This is exactly why it's important for a company like LEGO to protect its trademark.

I realize this is just an homage to LEGO and I'm sure they know and appreciate that. But they still need to defend their trademark. If they don't, anybody could just use their name for whatever they wanted - even things they DO NOT want to be associated with.

I thought this was some kind of project for automating LEGO deconstruction down to the smallest possible bricks (hardware).

Exactly - this is what happened to https://en.wikipedia.org/wiki/BrickOS (previously legOS).

BrickOS is an alternative OS for the Lego Mindstorms kit.

I'd argue this is worse, as it directly relates to LEGO's products, but LEGO is just very protective of their brand name in general.

Especially considering LEGOs products in the beginner electronics /robotics space.

There actually used to be a "legOS" project (homebrew firmware for the original Lego Mindstorms) and they were politely but firmly asked to change their name.


I would've suggested footOS, after considering that armOS might also upset ARM.

I'll call your LEGO lawyers and raise you Disney lawyers.

Let's not forget IBM's Nazguls

Games Workshop is another example of lawyer-happy company, albeit on a smaller scale.

I've just never worked for Disney. ;)

Also, Nintendo.

Trademark infringement requires a bit more than just using the name (likelihood of confusion is one of the tests), but given that companies need to aggressively defend their trademark to keep it they might file a suit anyway.

Winning in court sometimes only requires a bit more money than the other party has to spend.

is that really true though for one of the world's most recognizable brands with a unique name?

I get how that would happen if a company used the name commercially, but wouldn’t this be classed under fair use as long as the usage was non commercial? Anyways, IANAL.

(INAL as well, but as far as I know:) Trademark fair use is different from copyright fair use. In short trademark fair use is if you use it to reference the original (e.g., "compatible with WindowsTM") or if its not used as a trademark to describe your service. (WD-40 example I found used "inhibitor" while "THE INHIBITOR" was trademarked)

LEGOFUCKYOURSELF-OS you could argue the le is french :D

Wrong! In 1978, LEGO's major patent expired in the US (20 years after it was filed in 1958).

Patents are entirely unrelated to trademarks. I very much doubt that an operating system would be able to infringe on a patent for interconnecting plastic blocks.

An operating system called "LegoOS" might infringe on the trademark of a plastic block company called "LEGO" (though one of the tests is "likelihood of confusion" and it would be hard to confuse the two).

Adrian Colyer has an excellent write-up of this paper here: https://blog.acolyer.org/2018/10/22/legoos-a-disseminated-di...

A cease and desist letter must be in the mail.

It's unfortunate that so many are drinking the disaggregation koolaid.

FACT: you cannot disaggregate CPU from memory. Of course, that's the component you most want to do. Disaggregating IO devices is no big deal (and obviously doable with a monolithic kernel, since we have pcie hotplug today.)

Why? The fact that DRAM latency has been around 50ns for a decade is probably the most important performance limiter on any systems today. Exchanging 50ns local DRAM for 600-1000ns network access is profoundly stupid. Caches? Sure, they're great, but we already have very large caches that hardly ever take non-compulsory misses.

In other words: bandwidth is easy; latency is hard.

This is not news, but it's why your datacenter won't have racks of ram and a racks of memory-free cpus, and a racks of storage.

Interesting, although I find it hard to get a good idea about performance from the few benchmarks presented. Especially since the tested working sets are quite small, whereas any serious usage of something like this would likely be with problems that are a lot larger: could the networking keep up if it has to handle a few hundred GB, not MB? Given the speeds modern networking hardware can reach it's possible I guess, especially since the local cache sizes also could grow appropriately.

"InfiniBand will soon reach 200Gbps and sub-600 nanosecond speed [66], being only 2× to 4× slower than main memory bus in bandwidth."

that's absolutely incredible!

LOL InfiniBand was so ahead of its time. Such an old yet amazing technology that made a comeback thanks to cloud computing.

Can anyone summarise how this is different from Barrelfish?

It is written on the paper:

> "Section 7 > Multi-Kernel and Multi-Instance OSes. > > Multi-kernel OSes like Barrelfish, Helios, Hive, and fos run a small kernel on each core or programmable device in a monolithic server, and they use message passing to communicate across their internal kernels. Similarly, multi-instance OSes like Popcorn and Pisces run multiple Linux kernel instances on different cores in a machine. Different from these OSes, LegoOS runs on and manages a distributed set of hardware devices; it manages distributed hardware resources using a two-level approach and handles device failures (currently only mComponent). In addition, LegoOS differs from these OSes in how it splits OS functionalities, where it executes the split kernels, and how it performs message passing across components. Different from multikernels’ message passing mechanisms which are performed over buses or using shared memory in a server, LegoOS’ message passing is performed using a customized RDMA-based RPC stack over InfiniBand or RoCE network. Like LegoOS, fos separates OS functionalities and run them on different processor cores that share main memory. Helios runs satellite kernels on heterogeneous cores and programmable NICs that are not cache-coherent. We took a step further by disseminating OS functionalities to run on individual, network-attached hardware devices. Moreover, LegoOS is the first OS that separates memory and process management and runs virtual memory system completely at network-attached memory devices."

Or Mesos/DCOS?

Reminds me of Plan 9.

Applications are open for YC Summer 2019

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