OS WARS MEGA THREAD (Now debating proprietary vs. open-source!)

Artlav

Aperiodic traveller
Addon Developer
Beta Tester
Joined
Jan 7, 2008
Messages
5,790
Reaction score
780
Points
203
Location
Earth
Website
orbides.org
Preferred Pronouns
she/her
Wait, what? DX is "useless" because it occasionally introduces new features that weren't supported by previous versions?
More like it's how 5 hours of sleep at 4 am turns "i don't like it" into "it's useless". :blush:

Not sure why that's a "stupid reason."
Single data point. I've only encountered VS2015 once, and i think it was complaining about pieces of code i was still typing out, or something close to that. Left a bad taste.

"Zombie"? ASP.NET didn't even show up until 2002, so I'm not sure how it's from the 90s...

It's also under active development and widely used by people who don't want websites that look like they're from the 90s.
Hm, i think i got it confused with just ASP, the one with visual basic code between <% %>.
Back in 2004 i have inherited a 1998 vintage site written in it, with an JET/MS Access database, i guess that experience forever tainted my opinion on Microsoft web stuff.

However, i still haven't heard of a site written in it since M6 forums - every CMS and open source web app i ran into in the last decade was in PHP and/or client-side stuff, and on the internet seeing an occasional .asp extension still have a buggy feeling attached to it.

You are for sure not running systemd, now are you?
What's the problem with it?
Where i work we have hundreds of Linux servers spread across 11 time zones, most of them with both systemd controlling the services and uptime measured in years.
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,404
Reaction score
581
Points
153
Location
Vienna
Where i work we have hundreds of Linux servers spread across 11 time zones, most of them with both systemd controlling the services and uptime measured in years.

Of course you have. :rofl:
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,659
Reaction score
2,379
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
Of course you have. :rofl:

Why not? :blink:

Russia has 11 timezones,

systemd is around in most distributions since 2012 and standard in many since 2013,

and nobody knows what Artlav does when he is not playing with Russian vacuum tubes. :lol:
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,404
Reaction score
581
Points
153
Location
Vienna
Russia has 11 timezones,

systemd is around in most distributions since 2012 and standard in many since 2013,

Oh, I don't doubt that. I'm laughing at servers running systemd having years of uptime. That stuff routinely craps out our servers with 100% CPU load, causing all kinds of "scheduled" reboots.

At first I didn't believe our IT folks that it is that bad, but now that I have to administer some servers myself, I see where all the bad PR comes from. No matter what distribution I've tried (Debian-derived, RHEL, Arch, Gentoo), as soon as systemd is in it, it gets unstable.

The fact that every single update of it made the systems hang on boot one way or the other is not exactly helping to build up trust, either.

Well, knowing Artlav, he perhaps runs his own version of systemd coded in Pascal :lol:. If so, I'd love to get my hands on it, because it would certainly be much more stable than the "official" crap.

---------- Post added at 12:26 ---------- Previous post was at 11:56 ----------

But between our mutual anecdotes, on a different note: was the forced Windows 10 update ever confirmed? Most of the reports I've read don't deny the possibility of "user-error" aka "clicked too fast".
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,659
Reaction score
2,379
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
Oh, I don't doubt that. I'm laughing at servers running systemd having years of uptime. That stuff routinely craps out our servers with 100% CPU load, causing all kinds of "scheduled" reboots.

Well, I have no clue about it (I am a coder, not an admin, Jim!), but the software architecture of systemd is scary. Quite many horizontal dependencies, very complicated layer structure, deep dependencies.

And worst of all, those dependencies are forced into other projects as well. Not really SOLID.

Sure not bad to make the init process easier to manage - but is this really the solution?
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,404
Reaction score
581
Points
153
Location
Vienna
Well, I have no clue about it (I am a coder, not an admin, Jim!), but the software architecture of systemd is scary. Quite many horizontal dependencies, very complicated layer structure, deep dependencies.

And worst of all, those dependencies are forced into other projects as well. Not really SOLID.

Sure not bad to make the init process easier to manage - but is this really the solution?

To be honest, it is not really very different to the Windows svchost. Yeah, it goes against almost every classical *nix approach, but if it works out I'd be the last to complain.

Unfortunately it doesn't work out as far as my experience goes.

Well, at least Microsoft and Linux get one step closer to becoming friends again: http://azure.github.io/SONiC/
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,659
Reaction score
2,379
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
To be honest, it is not really very different to the Windows svchost. Yeah, it goes against almost every classical *nix approach, but if it works out I'd be the last to complain.http://azure.github.io/SONiC/

With the difference, that svchost was put into a Windows environment that already existed. And it did not try to be smart. systemd is similar in that context, but also largely different in trying to be smarter than the administrator.
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,404
Reaction score
581
Points
153
Location
Vienna
systemd is similar in that context, but also largely different in trying to be smarter than the administrator.

Agreed. On many problem encounters I've found myself googling for solutions, only to get to a Poettering email confirming that the behavior is as designed, and everybody complaining is just DoingItWrong(TM). Doing it right of course often includes a work-around. :shrug:

Linux really was an alternative to Windows, but IMHO lately it's just becoming more of the same. To me, it doesn't make a big difference anymore if Microsoft or RedHat :censored:s you for good. The former got more liberal with time, the later more dubious.
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,659
Reaction score
2,379
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
Agreed. On many problem encounters I've found myself googling for solutions, only to get to a Poettering email confirming that the behavior is as designed, and everybody complaining is just DoingItWrong(TM). Doing it right of course often includes a work-around. :shrug:

A famous pattern in the modern world: The algorithm is always right. :rofl:
 

Fabri91

Donator
Donator
Joined
Jun 2, 2008
Messages
2,179
Reaction score
234
Points
78
Location
Valmorea
Website
www.fabri91.eu
But between our mutual anecdotes, on a different note: was the forced Windows 10 update ever confirmed? Most of the reports I've read don't deny the possibility of "user-error" aka "clicked too fast".

This is the thing most similar to a first-hand account of the issue, and many sites seem to reference this thread directly or indirectly. It strikes me as odd because at the very least the user would have to accept the EULA before any upgrade occurs.
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,404
Reaction score
581
Points
153
Location
Vienna
This is the thing most similar to a first-hand account of the issue, and many sites seem to reference this thread directly or indirectly. It strikes me as odd because at the very least the user would have to accept the EULA before any upgrade occurs.

I also only know that reference, and think so, too. All of my 3 Win7 installs just show the nagging notification, but never downloaded nor installed Win10 automatically. Perhaps Europe is handled differently or I'm just lucky? :idk:

Of course, if there really IS such a threat - and especially if there is a "vaccine" - I'd like to know to take precautions.
 

DaveS

Addon Developer
Addon Developer
Donator
Beta Tester
Joined
Feb 4, 2008
Messages
9,452
Reaction score
707
Points
203
I also only know that reference, and think so, too. All of my 3 Win7 installs just show the nagging notification, but never downloaded nor installed Win10 automatically. Perhaps Europe is handled differently or I'm just lucky? :idk:

Of course, if there really IS such a threat - and especially if there is a "vaccine" - I'd like to know to take precautions.
How about this MS KB article: https://support.microsoft.com/en-us/kb/3080351
 

jedidia

shoemaker without legs
Addon Developer
Joined
Mar 19, 2008
Messages
10,891
Reaction score
2,141
Points
203
Location
between the planets
Perhaps Europe is handled differently

This is very possible. As far as I know, it were european laws that forced microsoft to put downgradability into the license. I.E. you should be able to downgrade microsoft products to a prior iteration.

(I am a coder, not an admin, Jim!)

I keep telling my boss that. It seems to be sinking in :lol:
 

kamaz

Unicorn hunter
Addon Developer
Joined
Mar 31, 2012
Messages
2,298
Reaction score
4
Points
0
The size (of a memory leak) DOES matter.

Nah, the difference is the server model.

Historically, Unix/Linux servers used the fork() model where a new process is created to serve a client and terminated afterwards. The memory leak therefore does not matter because all the memory used by the instance will be released after the client disconnects.

Since there is no fork() syscall on Windows, Windows servers use threads model -- where the process persists, and a new thread is spawned per client inside it. As all clients threads share the same memory space, the memory leak will persist after the client disconnects.

So under the fork() model even a large leak does not matter, while under the thread model even a small leak will continue building up over time.

For performance reasons, some Linux software, i.e. Apache, has moved to a hybrid model -- they use threads for handling clients since spawning a thread is faster than fork(), but there is a transaction limit after which the server process is killed and respawned to keep memory leaks under control.

Ironically: calling free() on Linux does NOT release the memory back to the OS. Or, more specifically, it's not guranteed to do so. See brk().
 
Last edited:

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,659
Reaction score
2,379
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
In server programming reality though, the memory leak is only one visible symptom of a family of similar resource problems and the fork/join system does not really prevent problems, it only hides the memory leak from being easily detectable. But all other resource deprivations can still happen easily, if you are not watching out.

You should never underestimate the possibility of a memory leak being just a sign of something worse lurking inside your code.
 

kamaz

Unicorn hunter
Addon Developer
Joined
Mar 31, 2012
Messages
2,298
Reaction score
4
Points
0
it only hides the memory leak from being easily detectable.

That's why you have Valgrind. If you are relying on top for detection of memory management issues, you are doing it wrong. Memory leaks are actually the least of your problems. Try silent heap corruption, GNU malloc's best feature caused by mixing control and data blocks. top will not show you that.

But all other resource deprivations can still happen easily, if you are not watching out.

Of course. But consider the following code:

void handle_client(char *client_data) {
char *buf1 = malloc(1024);
char *buf2 = malloc(1024);
strcpy(buf1, client_data);
// do something
}

This code has two issues, one is a buffer overflow the other one is a memory leak. However, this code is NOT exploitable under typical scenarios. Yet if you add free(buf2) at the end to fix the memory leak then kaboom! code injection. But if you are running under the fork() model there is no reason to call free()...

I'm not advocating sloppy code, but the point is, the fork() model is much more resilient to sloppy code then the threads model.
 

Linguofreak

Well-known member
Joined
May 10, 2008
Messages
5,038
Reaction score
1,275
Points
188
Location
Dallas, TX
That's why you have Valgrind. If you are relying on top for detection of memory management issues, you are doing it wrong. Memory leaks are actually the least of your problems. Try silent heap corruption, GNU malloc's best feature caused by mixing control and data blocks. top will not show you that.

Doesn't mixing control and data blocks actually make it more likely that heap corruption will be noisy, rather than silent? If you write over a data item with zeroes, it can screw up the state and output of your program without the runtime library or OS ever being aware of it. If you clobber a heap control block, it's fairly likely that the allocator will choke on inconsistent state the next time it walls through the free list, scream about memory corruption on stderr, and kill the program before any more calculations are done on bad data.
 

TMac3000

Evil Republican
Joined
Nov 16, 2008
Messages
2,773
Reaction score
0
Points
36
Location
Flying an air liner to the moon
The command line is optional?
Depends on the distro, I suppose. I have never seen a single terminal command you couldn't execute graphically in Ubuntu. Now, in OpenSuse, I found doing updates much more reliable from the command line, but that may change in future releases;)

and hard? :blink:
Well, it isn't hard to copy and paste commands from online. But learning the actual art of it, so you can think about which commands to use in any given situation...I think that would be much harder than learning DOS was. And I was killer with DOS back in the day:tiphat:
 
Top