Hacker News new | ask | show | jobs
by layer8 72 days ago
We are still missing "Windows Subsystem for Copilot".
3 comments

Never understood this about Windows Subsystem for Linux naming, nor its predecessor Windows Services for Unix. Surely Linux is the subsystem running on Windows? Should we now reinterpret Windows for Workgroups as a means of astrally projecting your organization inside Windows 3.11?! The dative only works ONE way, Microsoft!

I guess they really just didn't want a product name to start with the name of a competitor's product. I bet Copilot can fix this...

A "Windows subsystem" is a specific interface between user-mode applications and the Windows kernel. It's a technical notion that exists in Windows. So there are different Windows subsystems for different types of applications. The naming convention is "Windows subsystem for <application type>". It makes more sense when you read it as "Windows subsystem for [running] Linux [applications]".

WSL2 deviates from the native concept of what a Windows subsystem is; it is named that way because it is the successor of the original WSL.

I believe you're almost entirely wrong unfortunately. It is true that Windows has subsystems as a technical feature, yes. However, I don't think it's true that WSL (v1, let alone v2) was part of that architecture, despite the name. AFAIK that existing subsystem notion was a user-mode one, where each subsystem was built mostly in user-mode on top of the NT ("native") subsystem, with binaries in the PE format. WSL just completely ignored the whole thing, and even the existing notion of processes, and came up with a separate new thing called "picoprocesses" that it (barely?) wired through some critical kernel components via a custom driver that executed Linux binaries intact, implementing the Linux syscalls.

If you want a list of actual subsystems Windows recognizes, this should be pretty accurate:

https://learn.microsoft.com/en-us/windows/win32/debug/pe-for...

The real reason for calling it a subsystem was almost entirely for familiarity with the previous concept of running Linux programs on Windows, which were based on that subsystem feature (the POSIX subsystem and the Subsystem for UNIX-based Applications).

It needs an apostrophe then it makes more sense “Windows’ Subsystem for Linux”

It is a Windows Subsystem, that caters to running Linux.

It’s a functional title not an architectural one.

Subsystem isn't used as a random English word here, "Windows Subsystem" is already a fixed term. So you wouldn't introduce a possessive relation into the term when using it.
Indeed, I was trying to make it easier for you.
Or a colon:

    Windows Subsystem for: Linux
That doesn't seem like a contradiction to the idea that "Windows subsystem" is (at least after WSL 1 and especially 2) a description for a functionality (i.e. running binaries targeting a different OS's interfaces), not an implementation.
No, as I explained, that's not what the actual subsystem architecture did. The binaries very much targeted Windows and did not target any other OSes. They weren't (say) ELF files targeting Linux, they were PE files targeting Windows, and you had to compile them from source with special flags to target those subsystems on Windows. You could not run those binaries on other OSes. The compatibility was at the source level, not at the binary level.
This, and it may have also been a legal thing. "Product for Third-Party OS" has been accepted as a descriptive use of a third-party trademark for decades, requiring only proper attribution rather than a license, whereas marketing a product that didn't even originally use the Linux kernel as a "Linux Subsystem" might have been considered riskier by Microsoft's lawyers in spite of the nonstandard use of the former.
It could be even more simple. Microsoft would want to their own product, Windows, to come before Linux in the name.

I read through the brand guidelines where I work, and we have a similar stipulation. Maybe there is some law mixed in there, but from a pure branding play, a company will never want to put someone else first.

WSL was a traditional subsystem in the Windows NT tradition, it just never worked properly.

WSL2 runs real Linux in a virtual machine.

Actually no, that is what many without Windows background think.

WSL 1.0 was based on Drawbridge research project of library OSes, also used to port SQL Server into Linux.

See https://news.ycombinator.com/item?id=46110904

Microsoft had to warn users that they would corrupt the original WSL subsystem if they touched Linux files using Windows tools:

> DO NOT, under ANY circumstances, access, create, and/or modify Linux files inside of your `%LOCALAPPDATA%` folder using Windows apps, tools, scripts, consoles, etc.

They did overcome that problem eventually, but by then everyone had moved on to WSL2.

That is no different from having file systems problems across OSes, as old as there are multiple OSes.

Even Linux best practices for SMB access have been as read only.

> It makes more sense when you read it as "Windows subsystem for [running] Linux [applications]".

You can't have ellipsis when the shortened version already has its own meaning.

X for Y when both X and Y are nouns means that X is part of Y, not that Y is part of X.

e.g. "I bought new tyres for my car". The tyres are part of my car. You can't flip it and say "I bought new my car for tyres", it's just not how the word "for" works.

Grammatically it has to be "Linux for Windows subsystem", or "Windows subsystem for running Linux" as you said. The verb is essential for it to parse correctly.

There are many exceptions to what you state as an ironclad rule: i bought a display case for my baseball, i bought an album for my photos, etc. “for” can go in either direction.
It's a Windows subsystem. For running Linux.
Sub for system Windows Linux.

It’s a proper noun, there are no rules.

It's the subsystem of X for Y. The US department for health is not a medicine product called 'department' produced by 'US'.
> Surely Linux is the subsystem running on Windows?

Only in version 2. WSL1 didn't run a Linux kernel, just provided binary compatibility to run Linux userspace programs.

> I guess they really just didn't want a product name to start with the name of a competitor's product.

Probably, but I doubt linux wants it either. People might think it's some official linux product.

The thing they “didn’t want to [do]” was infringe on the Linux trademark.
Copilot Subsystem for Copilot
Copilot Copilot for Copilot
Someone can probably make a valid "Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo" out of Copilot.

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

You're talking about the aladeen or that aladeen? I don't understand which aladeen you are talking about.
You could try Copilot Copilot for Windows with Windows Copilot. I know it's still got Copilot in it, but not as much as Copilot Copilot Copilot Copilot MS Office for Windows Copilot.
But I don't like Copilot!
Copilot Copilot Copilot Copilot
I guess it does sort of work as a "grammatical infinity" idea https://medium.com/luminasticity/cardinality-and-growth-rate...

Like an imperative, because copilot can exist as a verb, I copilot a plane, and Copilot can exist as a software product, and as a helper in a software product that is itself a software product that helps you use the software product it is a helper to

So Copilot copilot! could be an imperative for Copilot to Copilot, and Copilot Copilot could be a description of a software product that helps people use a software product named Copilot, but the second is not really grammatically correct as a sentence, whereas the imperative is.

So in the end I guess you could have a Copilot Copilot..[infinite Copilots]..copilot!

Copilot copilots Copilot copilots copilot copilot Copilot copilots
Woah that actually works...

Microsoft-Copilot-branded copilots, which other Microsoft-Copilot-branded copilots assist, themselves assist Microsoft-Copilot-branded copilots.

I just woke up, please for the love of ai slop, stop before you break my definition of the word copilot!

(Fun fact: If you repeat a word sufficiently, it will lose its meaning..)

After reading this thread, my brain is now convinced that copilots are actually some sort of small South American mammals.

I think I'll stick to that definition; I don't want to lose my mental image of the daft-looking little copilots roaming around the Inter-Andean valleys that their more menacing-looking ancestors once inhabited. Yeah, cute little things.

> (Fun fact: If you repeat a word sufficiently, it will lose its meaning..)

Too late. Microsoft already caused that to happen.

Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo
Copilot OS
Pssh.. your joke surely won't be a joke inside Microsoft..