I'm not sure this post will last long, as people might just start ranting about their opinions about crappy screen saver options for Windows or something, but:
Why, technically, is Windows a poorly written OS? If you don't know, don't respond, and I'm not looking for "because it doesn't work on Sparc", but more things like:
Windows will swap to disk almost at boot. This is bad because disk access is much much slower than accessing RAM, and with plenty of RAM, there is no need to swap to disk at all.
The point is to better discuss with people what the difference is and why linux is a "better" OS, and not for abstract reasons (open source vs proprietary).
wh666-666
04-01-2007, 09:40 PM
One reason why linux could be considered a better OS is the read/write/execution/running of files on the system compared to Windows is dramatically more secure helping limit automatic or remote explotations.
blackbelt_jones
04-02-2007, 09:41 AM
I think this thread would have better chances if it had been title something like "technical reasons why Linux is better." But anyway...
I think that Linux is better because of the wealth of command line applications. This has a lot of advantages. It makes scripting simple and powerful. It provides a basis for GUI development. And, of course, it makes for a more powerful command line.
Plus, those Windows screensavers are total crap!:p
ph34r
04-02-2007, 01:07 PM
Interdependant parts of the OS, tied to things they don't need to be tied to. Internet Explorer is one example.
Another thing would be executable files based on their file name (extension). Shouldn't the OS look at the file to determine data type, and then choose an app to open that data type with.... Like Mac does.
bwkaz
04-02-2007, 07:05 PM
Its memory management sucks (at least up through XP). You already touched on this one, happybunny, when you said "it swaps almost at boot", but the problem is a bit worse than just at boot.
The real problem is that while the machine is running, doing nothing, it will decide to swap out programs that are up and running. (This is true whether they currently own "the activation" -- i.e. they're the program that the user would be interacting with if the user was using the machine -- or not.) I see this relatively frequently when I leave a remote desktop session open to an XP machine with 512MB RAM, with one instance of VS2005 open. This instance is taking up about 100M of virtual memory (mostly because it's just a pig, although about 30M of that is the .net framework that it hosts). Nothing else is happening on this machine.
But if I leave it in that state and go to lunch, for instance, then when I come back, it will take several minutes (with the hard drive going crazy, if I head over into the other room and listen to it) before I can do anything in VS2005 -- including just closing the program.
(Of course, when I say "doing nothing", I mean "doing nothing that I know about". I assume that VS is getting paged out because something else needs the RAM, but I have no idea what. I assume that something else needs the memory because if the kernel's just dropping the program out of memory based on the program's working set, that's way, way, way beyond stupid.)
Other issues with memory -- It has no OOM killer. So if you have one service run away and take up all the memory, it won't ever get killed like it would on Linux. (It used to be that the process with the highest priority and using the most memory would be selected for killing, back on kernel 2.4.something. I bet the algorithm has changed now, though.)
We had this happen on a server a few weeks ago. The absolute piece of CRAP known as Symantec BackupExec (version 11d; 10.0 was better, and 8.x was much much better, but 8.x was written before Symantec bought Veritas, and the quality has dropped like a rock ever since the buyout) had a service that was taking up tons of memory and tons of CPU, trying to do ... who knows what. It started about 3:00 PM one day, and continued until someone called us in at 6:00 AM the next day, saying the fileserver wasn't responding very well. It took at least three hours just to shut down (though once the BE service finally died, everything else got much much faster).
Had Windows just killed that service when it used up the 1.5G of memory that it had used up (that server only has 1G physical), then at least the other stuff would have stayed usable. But no. (Of course it'd need some way to say "please keep this process at a lower OOM-killer priority", because you don't want it killing your database server just because another process is running away; it'd be good to mark a few processes as lower priority for killing if they're critical. But the BE service isn't anywhere near critical; nobody cares if it gets killed.)
(Edit: And I bet if we'd configured the page-file to be a fixed size, Windows would have had no choice but to kill a process. Well, either that or blue-screen, but it better not kill everything because one process is misbehaving. Wouldn't surprise me if they did that, though. Sigh.)
Let's see... there has to be other stuff...
Oh, let's not forget the ever-present "operation failed" COM errors that I get fairly often. (That's E_FAIL, which is HRESULT 0x80004005.) Way to provide absolutely no useful debugging information! Sigh.
Here we go, this is a good one: Exchange. If you have more than 1GB of physical memory, you must configure the server to have a 3GB/1GB user/kernel virtual memory split. If you don't, Exchange will crash (!) when it tries to allocate more than 2GB of virtual memory when its information store gets large enough. (And don't even get me started on the absolute RETARDEDNESS of storing all messages for every user in a single file. That's worse than mbox; at least with mbox, each user's mailbox is independent. Exchange lumps them all together. (Personally, I think Maildir is better than mbox, because there, each message is independent, and a single lost file doesn't mean a whole lost mailbox. But that's just me.))
The reason Exchange crashes is because whoever wrote it never got the memo that physical memory and virtual memory are two different things. It asks the OS how much physical memory there is, and sets the limit on the amount of virtual memory that it will allocate to double that. Then it never checks memory allocation results, it just assumes the allocations will all succeed. So when one doesn't, because it's run out of virtual memory (because each process is limited to less than 2GB, because some of the <2GB area is used by code, and user-mode by default can't access more than 2GB of virtual memory anyway), it crashes hard when it tries to use the returned pointer.
The "fix" is to let it use up to 3GB of virtual memory (and hog everything on the server!), because there's a second limit built in at some point below 3GB. So when it sees you have 4GB of physical RAM (for instance), it will set its internal limit at somewhere below 3GB (at least it leaves 1GB for other stuff... sigh), because that's the hard upper limit. But if you don't reconfigure the kernel's user/kernel VM split, it'll still crash before it hits 2GB.
All together now: SIGH.
klackenfus
04-03-2007, 07:42 AM
You can't talk about what's wrong with Windows without mentioning the hated Registry. Prior to Windows 95, you had *.ini files which were plain text and analogous to *.conf files in the Linux/Unix world. However, back in the days before the Registry, it was also pretty darn easy to copy Windows/DOS programs from one computer to another simply by copying the directory where they were installed. The Registry made that almost impossible because it, by and large, eliminated the *.ini files and placed all the application configuration settings in the cryptic and easily damaged Registry. That's when I started to learn Linux because I was so fed up with that move.
XiaoKJ
04-03-2007, 09:32 AM
I used to have a glimpse of my education MINISTRY's standard computer registry, painfully locked by HP.
Its a full registry file that had to be applied to each and every computer in all of the computer labs. Luckily its replicable with Ghost (and I'll tell you why)
Installing this registry file means to back up the entire original registry and copy the registry file in. That's fine. The problem is that its more than that. You have to set the old registry to exclude the Admin, which is to manually uncheck the dialog boxes on the registry file's properties, and you have to manually check the dialog boxes for all the other users.
Unfortunately, unchecking the dialog box means that you cannot edit the registry, even moving it will be denied.
Reboot. And copy the new registry to a new folder in system32. Repeat the procedure to mimic the old one. You cannot do it with or before the old one or the system will hang. Reboot.
Now, you have to check the dialog boxes for both the new and old registries and move them (old to a back up, new to the working place) And you have to uncheck the dialog boxes before rebooting. If not, the new registry will prevent even the Administrator to edit any system file, including the registry file and installing new programs.
Reboot and install all the programs you need (all non-trivial programs need the registry for something...)
And for some weird reason, copying the registry with a livecd won't work, not even the bartpe cd. (because its NTFS --- vfat will be malleable with livecds)
And this is a true excerpt from a standard Admin's instructions. The full one is even more scary, since we need chinese support over here.
The catch-22 of this story is that the dialog box I've been avoiding to name reads "editable by". That means the registry is manually uneditable by admins even, while you have set it editable by everyone else, they effectively can't do so because the incomprehensible mess of a registry HP has provided (trust me -- it looks like hell, like the original unix source code) has locked down everything they can do. Not even right-clicking. On the desktop.
ps: anybody explain to me why I hate GNOME's registry?
MastaShake57
04-03-2007, 09:42 AM
The absolute piece of CRAP known as Symantec BackupExec (version 11d; 10.0 was better, and 8.x was much much better, but 8.x was written before Symantec bought Veritas, and the quality has dropped like a rock ever since the buyout).
You're a wilder man than I am, bwkaz. I would never upgraded beyond our very stable 9.1 revision of Veritas BackupExec. God knows what they'll do to the most "pwning" backup software of all, Veritas NetBackup...
/shivers
XiaoKJ
04-03-2007, 11:11 AM
And then there is no default way of tidying up the programs menu. Almost all systems I know of, running windows, have the menu full, sometimes even using up the 3rd extra pane. Some are super long....
That is just annoying, and still I see people working fine with it. The Dock & applications folder idea in Mac OS X is just so much easier --- most people don't need to explicitly run more than a few apps frequently, and the Dock forces you to reduce. Even the area in Linux is so much better. And don't forget --- geeks are usually untidy... (and you readers just know I'm surely not referring to google and apple but rather at yahoo...)
Speaking of annoying, no virus I've met can rival Windows Genuine Attack. Last month, my bro brought in his laptop, with the Dark Mark (thanks Hairy Potter) and a real Windows key on it. And oh-so-well those maniacs at WGA hq deemed it un-authentic, and that means booting the computer, as slow as it already is, was 5 seconds slower than it needs. And the stupid thing pops up every few moments. And yet the banker my bro is has definitely great patience to put up with it for so long he's lost count. Now I know how the prime minister can tolerate a boat in his stomach (chinese proverb)
Exodus2001
04-03-2007, 06:00 PM
Because yesterday I tried to install Vista on my friends laptop and it wouldn't let me install on the first partition. I wiped the hard drive clean and created two ntfs partitions. The first one I wanted vista on and the second for data. It did install just fine when I had only one partition and then went back and created the second with vista.
To sum thing up for me:
"I'm sorry Dave, but I can't do that."
I know now why it was doing that. It was making sure I didn't overwrite the maintenance partition. Gee thanks.
blackbelt_jones
04-03-2007, 07:42 PM
I'm too busy to get distracted by reading what everyone has written, but it just occurred to me that Linux doesn't need to be defragmented... if no one mentioned it, that's a big one right there. Whenever I use Windows these days, there's always the inevitable moment when my system seems to be running in molasses, and I am reminded of the existence of defragmenting.
bwkaz
04-03-2007, 10:09 PM
I would never upgraded beyond our very stable 9.1 revision of Veritas BackupExec. Yep. I don't think we used 9.1, but 8.x was great. 10.0 wasn't too bad (although the admin console took forever to load, probably because they redid it in .net), but 11d SUCKS.
The only problem with the "let's keep using 9.1" approach is, there are major security issues with the BE remote agents that get released every once in a while. And of course when the issues are made public, no patch is released for the older agents -- Symantec says "if you aren't running one of the latest two versions, too bad". And of course they charge for the downgrade (because it's not an upgrade) to the next version number. Sigh.
So, long story short, we moved to 11d because there were bugs in the remote agent for 10.0. (And Symantec actually pulled the remote agent for 10.0 for XP x64 from their web server; you can't get it at all anymore. How this helps customers, I'm not at all sure; you can't use a 10.0 remote agent with 11d, or an 11d remote agent with 10.0. But it's typical Symantec crap. We got a pair of machines running the 64-bit XP because the people using them needed to be able to use a 64-bit version of the CAD package, and then realized we'd never be able to back them up. Sigh.) I wish we'd have been able to stay with the working version.
(The really retarded thing is, if the client machine isn't running any remote agent, BE will refuse to back it up at all. Used to be that under v8.x, it would back up the machine using the administrative c$ share (which of course wouldn't get in-use files, but neither does the remote agent). But no, not anymore. Sigh.)
Edit: blackbelt_jones: No, nobody has mentioned the fact that Linux FSes (ext*, reiserfs, probably also XFS, etc.) don't need to be defragged yet. Good one. :)
XiaoKJ
04-04-2007, 01:44 PM
regarding the FSes' defragmentation thingy, there is recent proof that NTFS under windows XP is less dependant on defragmentation. However, it is still evident that the improvement is a high-quality cheap hack (and yes this combi is possible). This is because heavy FS usage in windows will revert to the old algorithm.
In fact, this is easily deduced if you assume that, in the kernel, windows still uses the 20 yr old algorithm fit for floppy disks while some guru they hired added the sensible patch to modify the behaviour.
Nonetheless, linux's FS management is superior. No qualms about that.
blackbelt_jones
04-05-2007, 01:16 PM
You know, I want to touch on Open Source for just a minute. The benefits are not all abstract. Knowing what's on your computer (or knowing that the community knows, which is just as good) makes it more secure, and better security is technically better. Being able to choose and customize your interface is technically superior than not being able to choose, isn't it? Being able to improve the software leads to more technical innovation, yes?
regarding the FSes' defragmentation thingy, there is recent proof that NTFS under windows XP is less dependant on defragmentation. However, it is still evident that the improvement is a high-quality cheap hack (and yes this combi is possible). This is because heavy FS usage in windows will revert to the old algorithm.
In fact, this is easily deduced if you assume that, in the kernel, windows still uses the 20 yr old algorithm fit for floppy disks while some guru they hired added the sensible patch to modify the behaviour.
Nonetheless, linux's FS management is superior. No qualms about that.
Does this mean I don't have to defragment my Windows partition anymore?
IsaacKuo
04-05-2007, 03:04 PM
Drive letters. After all these years, Windows is still using drive letters. Even before Windows, the Amiga showed the right way to do it--allow drives to be specified by either volume name or device name.
So, for example, you could name a removable disc "GraphicsApps:", and specify a file within it as "GraphicsApps:DPaint/Deluxe Paint". When you double-clicked on an image file, it could prompt you to insert the disc "GraphicsApps" in any drive.
What's really cool is that you could alias drive names to any directory on any disc, including a ramdisk. So, you could copy your GraphicsApps disc onto "ramdisk:GraphicsAppsCopy" and alias GraphicsApps: to that directory. Voila! All of your icons and scripts access the ramdisk files instead of asking you to insert the disc!
Now, let's contrast this to Windows where file paths are always specified by drive letter. This causes all sorts of headaches when, for example, some stuff is on the second partition of the primary hard drive but then you add or remove another hard drive. This shuffles drive letters around, and everything from registry entries to Start Menu shortcuts get screwed.
Linux does things in the Unix fashion, which is certainly better than the Windows way of doing things, even if it doesn't handle files on removeable media very well. Thanks to symbolic links, you can usually set things up to be somewhat easily portable from one device to another.
But the way Windows does things, with drive letters? Horrible. Just plain horrible.
wh666-666
04-05-2007, 04:37 PM
Simple language. Ive not been using linux on a daily basis for very long at all but the commands are alot more simplex than dos or altering windows settings. I dont know many commands as its just like learning a new language (a link btw to a command book for common commands would be handy if anyone knows of one?) but when ive read or someones told me a command thats been very simple and one one line ive thought "mmmm is that it?" when to do a similar task in dos would have taken multiple and long commands or in windows multiple windows, sub windows and checkboxes.
Its far easier explaining to a user from the technical supports viewpoint and from the users viewpoint as well, one command to type in, instead of multiple and sometimes confusing commands to people who dont know dos command or multiple screens in windows and having to explain each window in inane detail.
mrrangerman43
04-05-2007, 04:47 PM
I dont know many commands as its just like learning a new language (a link btw to a command book for common commands would be handy if anyone knows of one?)
Here ya go, Rute (http://rute.2038bug.com/index.html.gz) is a good place to start.
EDIT: Linux file system (http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/index.html) Here's some E-books (http://anselmo.homeunix.net/ebooks/)
bwkaz
04-05-2007, 08:17 PM
Drive letters. After all these years, Windows is still using drive letters. By default, yes. But you don't have to (starting with 2000, including XP, and I assume also including Vista, but I haven't tried it). You can now mount a specific drive at (e.g.) C:\Data, assuming the C:\Data directory already exists.
However, you can't get rid of C:. If you have C: and D:, and add a drive between them in the IDE order, then D: will (by default) still move to E:, but you can move the new D: to be (e.g.) C:\second-cdrom, and your E: will move back to D:. But it's still a manual process.
Even before Windows, the Amiga showed the right way to do it--allow drives to be specified by either volume name or device name. Yeah, there are a lot of places where other OSes did the Right Thing way before Windows existed, and Windows still got it wrong. ;) Some of these have been corrected recently, but many have not (see most of this thread for examples :p).
So, for example, you could name a removable disc "GraphicsApps:", and specify a file within it as "GraphicsApps:DPaint/Deluxe Paint". When you double-clicked on an image file, it could prompt you to insert the disc "GraphicsApps" in any drive. Ooooh, that's nifty! That does seem to be nicer. Not sure how well it'd work with CD-ROMs, but that's probably a minor quibble; any writable FS can store a permanent identifier in the FS itself that the OS can use to ask the user for the disk.
Linux does things in the Unix fashion, which is certainly better than the Windows way of doing things, even if it doesn't handle files on removeable media very well. Removable media is supposed to be getting better recently, with the "persistent device naming" schemes that have been implemented in udev's standard rules. If you insert a specific USB storage device, it'll always create a set of symlinks under /dev/disk/by-id/ (for the whole disk and each of its partitions) whose names will always stay the same. The target of the symlink will change (because it'll use whatever sdX device is next in line), but the name itself will stay.
There's also /dev/disk/by-path/, for when you want to treat all removable storage devices that get stuck into one specific port the same way. And there's /dev/disk/by-uuid/ for referring to ext* filesystems by their universally unique identifiers (which mke2fs generates and writes to the FS). Actually I think reiserfs also has a UUID, and I suspect most other native Linux FSes do too.
And this doesn't help when the user expects the FS to be mounted, but I assume that HAL can handle that. (I hope, anyway. I don't use HAL myself.)
Thanks to symbolic links, you can usually set things up to be somewhat easily portable from one device to another. Well, Vista has actually added symlink support. (Yes, I know. *boggle*) Expect all the same symlink-related security race conditions that Unix has dealt with over the last 15 years to resurface on Vista now. :p
XiaoKJ
04-05-2007, 09:52 PM
Does this mean I don't have to defragment my Windows partition anymore?
No, but that means you don't have to defragment every week --- every month will do just fine...
IsaacKuo & bwkaz: bwkaz is right. I myself has succeeded in such a set up, and now all my data & settings are separated from the main system, in C:\Data. (but it took an arm and a leg)
however, regarding drive letters, its possible to change the assignments these days. That means, if you added a new drive between C: and D:, you can "unmount" the new D:, concurrently "mount" the old drive to D: and E:, "unmount" E:, and later "mount" E: with the new drive. In fact, if you decline to "mount" a drive, it will persist over reboots (and so will the new scheme)
at least, as bwkaz said, there is a workaround. I remember the days there isn't.
note: I'm using "mount" here for the lack of suitable word.
And IsaacKuo: nice vision to use resources so efficiently... :)
bwkaz
04-05-2007, 10:38 PM
however, regarding drive letters, its possible to change the assignments these days. Right. Unfortunately (for Windows :p), this is just about as persistent as device access on Linux can be (depending on kernel and udev and HAL version) -- that is, not at all unless you only use "permanent" media.
If you plug in a USB stick, XP will give it the next drive letter in line, ignoring network drives.
(This is a known issue that they refuse to call a bug, and don't plan to fix last I heard. The workaround is "don't use low drive letters for network drives", and the drive-map UI uses Z as the default drive letter. Gee, thanks, that really helps fix all our accounting department's 1000 old excel files that refer to each other using their E: drive mapping. Good job there. That's another technical reason Linux is better: we don't have to deal with changes like this that break things like this, because the original design is better. (Because we didn't do the original design; much smarter people like Ken Thompson and Dennis Ritchie did. :p))
Anyway, to get the stick to map to a different drive letter, you have to change its properties (and to do that, you need to be a local admin). This gets put somewhere on the local machine, and it's associated to the USB stick by the stick's ID. So that stick will always mount at the lowest letter on any other machine, and any other stick will mount as (say) E: on this machine too. You can't tell Windows "all USB sticks should be given drive letters starting at M". Whereas on Linux, you just have HAL create a directory under /media and refer to it; if you can come up with a way to give the end user an icon that says "all your USB devices will show up under here when you plug them in", then I think this is much easier for them to comprehend. Yay for no drive letters! :D
XiaoKJ
04-05-2007, 11:24 PM
That's another technical reason Linux is better: we don't have to deal with changes like this that break things like this, because the original design is better.
I concur, very much.
Actually, Windows NT was already based on having devices named like /system/harddisc0/partition0. having drive letters is merely for compatibility's sake. And needless to say, the drive letters implementation is designed by monkeys --- its as simple as to automatically map the new drive to a new drive letter with predetermined rules!
and talking about needing admin rights to map drives --- does this mean I cannot map drives for the ministry without editing the registry? And have I mentioned that, in the most probable case, I forgot to uncheck the editing rights to the registry, I'll have to reinstall the system from scratch?
no thanks!
wh666-666
04-06-2007, 06:47 AM
Here ya go, Rute (http://rute.2038bug.com/index.html.gz) is a good place to start.
EDIT: Linux file system (http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/index.html) Here's some E-books (http://anselmo.homeunix.net/ebooks/)
Thanks for that rangerman, brilliant resources and rute is very comprehensive, saves getting a bloody scalp from quite alot of head scratching ;)
mrrangerman43
04-06-2007, 07:07 AM
wh666-666
Glad to be of help:)
Raedwulf
04-06-2007, 05:51 PM
Kinda surprised that this one isn't in the list
It's the one reason why I'm giving Linux a try again; a well known problem inherent especially to Vista, regardless of the flavour (basic all the way up to Ultimate)
Hardware support for older equipment
My old scanner still works, but is unsupported by Vista (too old); it used to work with XP but I had to use an old NT4 driver, the driver had to be loaded by a witchdoctor while the wind was coming from the West and Jupiter had to align with Mars ;)
My two DVD Writers had a problem writing (they didn't, and one of the drives is only a yr old)
IsaacKuo
04-06-2007, 07:12 PM
bwkaz, XiaoKJ, the problem isn't really with manual usage of drives. There are indeed workarounds for that. The problem is that drive letters are used for registry entries and all sorts of file paths created automatically (like with software installation wizards).
It should have been very easy at any point--even today--for Microsoft to implement a feature that allows referring to drives by label name instead of only by drive letter. By providing this option, the OS and other software could gradually migrate to using label names instead of drive letters.
bwkaz
04-06-2007, 07:28 PM
Actually, Windows NT was already based on having devices named like /system/harddisc0/partition0. Those still exist: \Device\Harddisk0\Partition0 is a valid filename (it can be passed to e.g. OpenFile). However, as far as I know, you need to be an admin (or have the appropriate privilege granted to you) to be able to actually open it; the reason is that it's the raw disk device, and opening it bypasses all the NTFS security stuff (assuming you know the layout of NTFS on disk).
And I don't believe you can open \Device\Harddisk0\Partition0\windows\calc.exe (for instance) either; I do not believe it's valid in place of a drive letter. (But then, on Linux you can't open /dev/sda1/usr/bin/xcalc, either; you have to use the mount point. So that's not any different.) The difference is the mount point in Linux is maintained in a simple text file; the "mount point" (such as it is) in Windows is maintained somewhere in the bowels of the OS (probably the registry, but I don't know for sure), and if the "disk management" GUI isn't able to run, you're screwed, because there's no way to edit it. (Plus it encourages admins to run with GUIs.) LiveCDs in Linux can edit a broken system's fstab, because they all have a text editor.
Finally, there's nowhere to get the list of all the \Device\* devices available on the system; it's not exposed to the user anywhere. (Now given that most of these devices require admin privileges, it's not very surprising to hide them from most users, but it's still annoying when you are an admin.)
(And actually, I'm lying -- there is WinObj, by sysinternals, that lets you see the kernel object tree. But that's not part of the OS, either, and it's nowhere near as simple as mounting /sys and getting the same type of tree of kernel objects. Actually the /sys tree seems better organized to me, but maybe that's just me. Seems like everything in Windows is \Device\Blah or \Device\Blah\SubBlah, with many of them (e.g. HID devices) having unrecognizable GUIDs in the names; the stuff in /sys is actually organized according to subsystem, etc., and it's mostly readable.)
and talking about needing admin rights to map drives --- does this mean I cannot map drives for the ministry without editing the registry? Not sure about editing the registry, but you can't open up the "disk management" MMC snap-in thingy unless you're a local admin. It fails to talk to the service that does the actual management, because that service is only open to local admins. I've never tried to do it by editing the registry, and I bet that mapping a drive that way wouldn't be supported in the future either.
And have I mentioned that, in the most probable case, I forgot to uncheck the editing rights to the registry, I'll have to reinstall the system from scratch? You shouldn't have to reinstall; just log on as a local admin. Then you'll be able to fire up the disk management ugly-gui thing, and make your changes. :)
Of course you do have to do this locally, and that's a PITA. That's where a Windows domain helps; all domain members have the domain admins group as a member of their local admins group, so a domain admin is an admin anywhere. But I wouldn't suggest all the overhead (and pain!) of a domain for this little advantage, either.
XiaoKJ
04-07-2007, 05:05 AM
Not sure about editing the registry, but you can't open up the "disk management" MMC snap-in thingy unless you're a local admin. It fails to talk to the service that does the actual management, because that service is only open to local admins. I've never tried to do it by editing the registry, and I bet that mapping a drive that way wouldn't be supported in the future either.
You shouldn't have to reinstall; just log on as a local admin. Then you'll be able to fire up the disk management ugly-gui thing, and make your changes. :)
Of course you do have to do this locally, and that's a PITA. That's where a Windows domain helps; all domain members have the domain admins group as a member of their local admins group, so a domain admin is an admin anywhere. But I wouldn't suggest all the overhead (and pain!) of a domain for this little advantage, either.
The thing is, bwkaz, anything that touches the registry is forbidden by the HP registry file. That means disk management utility won't be able to work if it happens to rely on changing even just 1 aspect of the registry.
And the point is moot --- if I've accidentally rebooted the system with edit rights for the registry, the admin won't be able to even right click on the desktop, let alone run disk management. I cannot even use a live cd to edit the edit rights back to how it should be. I don't know how to not reinstall from scratch in this case.
Security wise, I'll agree that that is the maximum. Root with no privileges, and stuck with no privileges from the filesystem level.
bwkaz
04-07-2007, 08:55 AM
Wow. They better hope that they get every last little setting correct before they apply their changes then. Yikes.
(I'd be surprised if a Windows livecd-type setup that ignored NTFS permissions also failed. But then, I don't know whether any of those exist, either.)
Chess007
04-07-2007, 09:43 AM
Here are some reasons why linux is better than Windows.
1. Resources used
Linux must use hardware resources much more effeciently than Windows. I have a P3 with 128mb ram. Its about 8 seconds from the time I turn it on till it asks for my password (xubuntu). The OS runs fine. Good luck getting that performance with XP...or even getting Vista installed.
On Windows 2000 pro after moving files around and going back through folders for a couple of hours, it starts going really slow.
2. Stability
I use both Windows and linux. I've had about 2 hard crashes on linux. (I.e. things freeze in the gui, nothing works except physically turning the computer off). I 've had so many hard crashes on Windows i've lost count.
After installing Internet Explorer 7, my girlfriends internet connection (that previously wasn't problematic) became unstable; sometimes it worked, sometimes it didn't. Once IE7 was uninstalled, the connection went back to normal. Its so bad that the IT department at her university recommended that people do not update to IE7.
3. Stupid things happening
Windows is the master of this. Sometimes things go really slow when multiple windows are open. And I'm not talking about video encoding or anything cpu intensive. I was editing images in ms paint and copy and paste stopped working. No idea why. It can't be that hard to have 2 instances of ms paint running and copying small images between them. The solution? Restarting the OS... oh joy.
Which reminds me, there are so many restarts needed for installing Windows updates... completely frustrating.
I mod for Age Of Kings The Conquers (best rts ever, if anyone else is interested, pm me). Anyway, modding for that involves having a series of .bmp images. To keep the animations in order it makes sense to use numbers in the file name. I.e. 1.bmp, 2.bmp, etc. How is this correct order, 1.bmp, 10.bmp? Come on. Thats not arranging files by file name. 10 comes immediately after 1?
Updating the OS should be a positive thing right? Yes, but it isn't always. One Windows update made the entire system unstable - frequent crashes.
I completely updated my Blag system and had 0 problems.
4. Security
Linux is more secure. The whole "but its not really more secure, its just less people attack it because Windows has more marketshare" argument doesn't make sense. Linux + apache run on more web servers than Microsoft server. Yet, which one has the most problems?
Ask any programmer which file system is more secure: 1 that has permissions set for every file, or one that has an email client that automatically runs attachments!
An internet browser that automatically does what its told by a site to do (Hello active x) another problem.
Or how about this one? Which OS is more secure; an OS that has a tested/solid tcp/ip stack (linux) or one that has a completely new stack, Vista?
XiaoKJ
04-07-2007, 12:24 PM
To keep the animations in order it makes sense to use numbers in the file name. I.e. 1.bmp, 2.bmp, etc. How is this correct order, 1.bmp, 10.bmp? Come on. Thats not arranging files by file name. 10 comes immediately after 1?
That is actually an artefact of the simple model used for sorting. its supposed to sort alphabetically, and I don't think there is any mainstream system out there that doesn't sort 10 before 2. IIRC, that means *nix sort them this way too.
But luckily, there is a workaround. rename them with 00001.bmp 00002.bmp and so on and it will work. That's how digital cameras work.
bwkaz
04-08-2007, 08:01 PM
Actually, supposedly XP was changed to use the "StrCmpLogicalW" API to compare strings when doing sorting in the shell; the "Logical" part means that 10 is supposed to come after 9, not after 1. You must be using 2000 or older. ;)
(And Linux sorts "normally" too, by default, I am pretty sure (where "normally" means "1 10 2 3 4 5"). But I think there's a way to get ls to sort the other way; it's been forever since I looked it up, though. It had something to do with version-sorting, IIRC. But my point is, there's no way to get XP to sort "normally", if you do want 10 to come right after 1 for whatever reason. At least ls can be changed.)
happybunny
04-08-2007, 08:39 PM
All excellent posts, exactly what i was looking for.
Thanks to everyone who's thrown in so far, but keep 'em coming.
I thought this post http://justlinux.com/forum/showthread.php?p=867204#post867204
also illustrates a technical argument for linux.
teeitup
04-09-2007, 02:17 AM
All the talk about drive letters. UNC paths were allowed and used on servers. 2003 quit support for UNC paths making old software unable to migrate without considerable expense. As far as I know you can't use a drive letter unless your logged in. At least UNC gave you a choice. A big problem for server environment.
They want to play in the enterprise. XP, Vista, and any of the server versions still cannot perform a secure file transfer or a secure remote terminal connection without a third party addon. Sad.
My company has a standing change control to reboot every Windows server weekly. It may be over kill but it's the excepted practice. Were talking 100's of servers.
wh666-666
04-09-2007, 07:51 AM
Yea i was going to say that happybunny. Partly by design and partly because windows is so mainstream there are reportedly over 60,000 bits of wild malware for windows in comparison to around 40 or so for linux
klackenfus
04-09-2007, 01:28 PM
2003 quit support for UNC paths
I use UNC for my Server 2003 boxes everyday. UNC still works. Here's an example to my NAS, which is 2003:
\\nas1-dc-aus
frimann
04-09-2007, 05:16 PM
2 days ago a friend of mine had problems with her laptop, suddenly there was no sound and it frose solid as soon as wxp started up.
I took it home and did all the virus spyware adware scans but nothing but adware came up.
So i googled the error message that windows shoved at every boot up, and the answer to the problem was that the latest windows security update had clashed with the realtec driver for the hd audio and there was a hotfix out from windows.
It is funny that a security update can make windows unusable, though this may be realtecīs foult. And most likely a lot of people had to take there computers in to bee fixed and payed a lot of money:eek:
Can anything like this happen in Linux?
This is one of 2 error messages:
"cpl.exe - Illegal System DLL Relocation
The system DLL user32.dll was relocated in memory. The application will not run properly. The relocation occurred because the DLL C:\Windows\System32\Hhctrl.ocx occupied an address range reserved for Windows system DLLs. The vendor supplying the DLL should be contacted for a new DLL. "
wh666-666
04-09-2007, 05:45 PM
Lol thats another reason. Crap MS updates. Hell, its made me a few pretty pennies in home IT support in my area at least. Im aware of a sound problem just like you described. There are other problems with MS updates like the office update. During the past 6 months ive met so many people with that problem, incorrectly written code in an office update slowing the PC down making it unusable.
Best way to stop those problems is remove automatic updates and update yourself by choosing the updates you want. The above problem can be resolved by reinstalling the sound driver. Also check which adware programs she's using. Some really suck, especially the microsoft ones.
That sounds like im an ms hater but im not. They just cant code as well as a 12 yr old in his room despite being overpaid.
klackenfus
04-09-2007, 06:47 PM
There are two words that MS has never heard: regression testing.
bwkaz
04-09-2007, 07:33 PM
It is funny that a security update can make windows unusable, though this may be realtecīs foult. Well, it's sorta kinda Realtek's fault. They got hit by it because their program loads hhctrl.ocx (the "HTML Help ActiveX", like that's a good idea...) before they load the "normal" user32.dll. And the recent (rushed-out-the-door) patch to fix the ANI-file problems made user32 and hhctrl conflict (they both specify the same base address).
If user32 is loaded first (like almost every program does), then when hhctrl is loaded, it sees that its requested base address is used, and relocates to another base address (just like all the shared libraries on a Linux system would normally do).
But if hhctrl is loaded first, then when user32 loads, it tries to relocate, but it thinks this relocation shouldn't be allowed for some reason (and no, I have no idea how they do it, unless the DLL-loader has special-case code for user32, or there's some field in the PE file format that says "don't ever relocate this DLL"). (The reason that user32 acts like this may be because of win16 stuff, or because of broken programs that load it and try to call directly into it without going through GetProcAddress. Or it may call into itself in some strange way that doesn't work with relocation. I'm not sure.) Anyway, when user32 tries to relocate but fails, you get that message.
The real problem is that the ANI file patch "rebased" user32.dll to an address that was already "taken" by hhctrl. Normally user32 is loaded first, so normally this isn't a problem. (But you might well ask why they bother rebasing a critical DLL like user32 in a security patch. I would ask the same question. Sigh.) But if you have any programs that load hhctrl first, you see this error, and of course the program won't run.
The bug is certainly Microsoft's, but Realtek can work around it by loading the files in the opposite order. Microsoft has a patch to fix the issue, but I see they still haven't released it to WU or Microsoft Update or WSUS (you have to visit the KB article). And I see they didn't rebase user32 back to where it was originally, either; they just changed hhctrl instead. (Sigh.)
See also their KB article: http://support.microsoft.com/kb/935448/
Can anything like this happen in Linux? No, unless you use the (old, probably-unsupported) objprelink compiler setup, which only really helps if your program is loading tons of shared libraries, and starts up lots but doesn't run very often.
Normal prelinking (not objprelink) works like the non-user32 DLLs on Windows work: they specify a preferred base address, but if that address is taken, they relocate without any issues. (Even core system libs do this. The one exception is the pseudo-library linux-gate.so.1, which can't be moved -- but that's provided by the kernel, so it always gets first pick of addresses, so it never has to move.) And of course if you don't do either prelinking or objprelinking, then your shared libraries are perfectly relocatable too.
But the only thing that prelinking helps with is startup time (when the relocations are being applied). If your program starts up infrequently, then it's probably not worth it (unless users will notice), and if your program runs for a long time, it's also probably not worth it (because the startup time is dwarfed by the running time).
frimann
04-11-2007, 09:33 PM
bwkaz
Thank you!
justlinux.com
Copyright Internet.com Inc. All Rights Reserved.