Page 2 of 3

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Mon Jul 10, 2017 10:17 am
by erkinalp

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Thu Mar 07, 2019 11:58 pm
by onestop_mid
PurpleGurl wrote:
Mon May 01, 2017 9:49 pm
Another approach is an idea from a decade ago. The idea was to rework the kernel to be different from Windows NT. Such things included removing CSRSS, converting consoles to drivers, getting away from LPC, etc. As long as driver and full application compatibility are maintained, then there would be no harm -- except for taking the time to develop this and iron out the bugs. The goal would not be so much to try to recreate Linux, though if the kernel is simple enough, it might be able to support both Windows and Linux code. It seems like ALL OSs could be subsystems then.

And if I sound like I don't know what I'm talking about, well, I don't understand the kernel internals of either ROS or Linux.
ReactOS shares nothing at all with linux and does nothing to imitate it.

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Fri Mar 08, 2019 12:45 am
by PurpleGurl
I never said it did, so I was misunderstood. Most here know I'm a regular fixture. Like I said, I know nothing about the kernel internals of ROS (and Windows) or Linux either one. There is NO comparison there, just a statement of fact, as a standalone statement that I don't know about either one.

Also, thread necromancy is against the rules. If you had followed elsewhere, you'd understand that devs shot down the idea of not having CSRSS. I had responded to an idea from a decade prior when the kernel wasn't as mature. And there was a build of ROS that was a tad closer to Linux to be able to use more of Wine. I don't know the status of ARWINS now.

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Thu Oct 10, 2019 11:06 am
by Thanatophobia
Adcock wrote:
Sun Apr 30, 2017 9:01 pm
But if Linux binary run on ReactOS then what would be the difference between Linux and Windows . ( ReactOS = Windows , at least to me )
Besides things that runs on Linux can run on Windows .

Also if you are going to use ReactOS in future then why won't you want to use ReactOS native software ?

Also ReactOS is an Open Source alternative to "Microsoft Windows" .
It is not Windows + Linux or Windows + *nix .
Why not just run Linux on Linux ?
Well, you see, Windows NT is just an architecture. Native Windows applications run via the Win32 API, which is a subsystem running in user mode which interact with the hardware via routines in kernel mode. That's why Windows NT (including Windows XP+) maintained compatibility with 32-bit DOS-based versions of Windows (Windows 3.1 thru ME), because they used the same APIs and system calls, even if under the hood they were completely different systems. And Windows NT was designed to support multiple subsystem environments, each with their own API and libraries.

Even before Windows 2000, they had an POSIX-compliant subsystem, as well as an OS/2 subsystem which they removed after Windows 2000. And then before WSL, there was Windows Services for UNIX, which was a similar environment on previous versions of Windows.

In other words, native Windows applications run within a Win32 subsystem in user mode. It can also have a subsystem that can run Linux/*NIX applications, or other types of systems and it will still be Windows.

What classifies as what type of OS it is is how the architecture is structured, not if they used the same libraries or if they are even compatible with each other. That is why GNU/Linux, BSD, macOS and other systems are referred as *NIX-like, not because they are necessarily binary compatible (even among different Linux distros), but because they are structured in pretty much the same way.

Likewise on Linux, you can install WINE which creates a subsystem and libraries to run Windows applications, but it doesn't affect how Linux is ultimately structured and that Linux would still be Linux.

Here's a diagram on how Windows 2000 works. This image is from Wikipedia:
[ external image ]

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Fri Oct 11, 2019 10:21 am
by Adcock
Thanatophobia : Hi :D
erkinalp wrote:
Fri Feb 17, 2017 5:44 pm
ENIW: GNU/Linux binary format interpreter and related subsystems for ReactOS
ENIW Now in Windows
What I understood from this was that erkinalp meant adding capability to execute elf format executable files to ROS [ReactOS].
I just don't want that to happen.
But since I have been using Arch Linux for several months I understand why experts love Unix utilities.
The reason is it makes them look nerd. :lol:
Feels like hacker. [Actually there are many good reasons but I am not well versed in Unix]
So I would expect geeks [experts] to port those [grep and otherstuff....] to ROS.
By porting I mean compiling those to PE format.
That is exactly what I want.
But erkinalp proposed "GNU/Linux binary format interpreter"

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Fri Oct 11, 2019 8:22 pm
by erkinalp
ENIW, unlike Wine or WSL 1, would delegate to Linux using a kernel-mode subsystem, and unlike WSL 2, will not use virtualisation, would instead use thunking to user-mode instance of Linux (this is no problem for us, because both are licensed under GPL 2). ELF interpretation is just a part of it. This method enables us share resources maximally between Win32 and ENIW personalities.
This is proposed architectural diagram for an implementation of ENIW, ENIW Never Imitated WSL, based on user-mode Linux.
https://drive.google.com/file/d/0BzXRZO ... p6Y3M/view

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Sat Oct 12, 2019 8:21 am
by Thanatophobia
erkinalp wrote:
Fri Oct 11, 2019 8:22 pm
ENIW, unlike Wine or WSL 1, would delegate to Linux using a kernel-mode subsystem, and unlike WSL 2, will not use virtualisation, would instead use thunking to user-mode instance of Linux (this is no problem for us, because both are licensed under GPL 2). ELF interpretation is just a part of it. This method enables us share resources maximally between Win32 and ENIW personalities.
This is proposed architectural diagram for an implementation of ENIW, ENIW Never Imitated WSL, based on user-mode Linux.
https://drive.google.com/file/d/0BzXRZO ... p6Y3M/view
Would it be included into ReactOS by default, or can it be optionally installed separately?

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Sat Oct 12, 2019 1:02 pm
by erkinalp
No need to be included in ReactOS Minimal.

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Sat Oct 12, 2019 1:53 pm
by ThFabba
Are you aware you're making up words?

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Sun Oct 13, 2019 10:50 am
by Thanatophobia
erkinalp wrote:
Sat Oct 12, 2019 1:02 pm
No need to be included in ReactOS Minimal.
ThFabba wrote:
Sat Oct 12, 2019 1:53 pm
Are you aware you're making up words?
ENIW is just a concept for a proposal of a Linux subsystem for ReactOS.

About the ReactOS "Minimal" thing, is it possible when ReactOS is ready for release it's going to come in different editions/flavors? Like a standard desktop edition, a server edition, and a version or embedded systems or IoT?

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Sun Oct 13, 2019 12:00 pm
by ThFabba
I'm less saying that I don't understand what Erkin is talking about, and more saying that he's making things up that don't exist/don't have wider support from the community and then selling them as though they did.

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Mon Oct 14, 2019 8:24 pm
by erkinalp
It is a future plan. ReactOS will/is going to (read whatever way you wish) have several distributions. ReactOS CORE is the name for a distribution including two common Windows userlands: win32, .NET. ReactOS Minimal is the most minimal usable subset of ReactOS, and its scope is yet to be determined; but it is known that it will not include a GUI.
KReactOS is my proposal for a ReactOS distribution with tightly integrated KDE as its only userland.
Third party distributions are also welcome.
As Thanatophobia says, ENIW is WINE spelled backwards, it stands for ENIW Never Imitated WSL, it just means a Linux userland subsystem for ReactOS. I even proposed an architecture based on user-mode Linux and several adapters including binary interpreter (namely eniw.sys) and service management adapter (namely systemd2svchost).

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Mon Oct 14, 2019 10:28 pm
by binarymaster
erkinalp wrote:
Mon Oct 14, 2019 8:24 pm
It is a future plan.
It's all in your head. :| You contributed zero lines of code to the project.

It seems you are not aware you're just making up words.

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Tue Oct 15, 2019 12:48 am
by Thanatophobia
binarymaster wrote:
Mon Oct 14, 2019 10:28 pm
erkinalp wrote:
Mon Oct 14, 2019 8:24 pm
It is a future plan.
It's all in your head. :| You contributed zero lines of code to the project.

It seems you are not aware you're just making up words.
erkinalp, what your saying is not a bad idea in my opinion and these are good proposals if the developers would like to take a look at them. But you can't say that is/will be a feature that will be in ReactOS or that it will be this and that since you're not a developer or have control over the course of the project, or know the direction the developers want to go for.

You could create your own fork(s) or builds, and implement and experiment the features you want to include if you had the coding skills.

Re: Possibilities For NTVDM and other Sub-Systems

Posted: Tue Oct 15, 2019 3:58 pm
by erkinalp
I have the necessary and sufficient coding skills, but lack the necessary time (it's very difficult to be a combined research&administrative assistant in one university and doctoral student in another, and more difficult to find a suitable contiguous timespan to make significant (non-toy) contribution to a third project), hence in the need of help.
EDIT: fixed spelling mistake