Alex Ionescu wrote:
If you really want to argue using Ockam's Razor (note for others: Ockam's razor basically says that the simplest assumption is usually the correct one), then I'm afraid I'm the one winning this argument.
oh, FFS (note for others: "For Fuck's Sake"), just grow up already
Emanuele: let's discuss your CSRSS.EXE fetishism this time. You know what's my position about subsystems, let's let the others know too. To keep it simple, I'll use a bullet list: - the concept of "subsystem server" just complicates the taxonomy of Windows processes unnecessarily. I'd like to think to ReactOS only having two kinds of processes: services and non-services (three: the SCM, in a category on its own). All of the other ad-hoc semantics (start-up sequence, user session lifetime, connection to the display, etc.) can be implemented either with service semantics or with a custom logic specific to a certain service. Keyword: SIMPLICITY - personalities as services? meh. Personalities should be the closest possible to utility libraries, you should be allowed to mix them (mixing Win32 and POSIX is very necessary to implement a BeOS personality, for instance, and POSIX itself needs to at least be aware of Win32 if we want it to be actually useful), and please let's stop the insanity: POSIX was designed to be implemented in kernel mode, and there's nothing shocking or horrific about running POSIX in a kernel (I mean, lots of systems do, none has crashed and burned. Even QNX - signals and the lowest-level forms of IPC are implemented in the microkernel). Keyword: FLEXIBILITY - Win32 consoles. Yuck. Let's see: I/O and signaling in user mode, user interface in a system process, could it be any more wrong than this? why yes, it _is_: in Win32 its handles share a namespace with NT handles, despite having perversely differing semantics. What a disaster. Keyword: ORTHOGONALITY