Page 1 of 2 12 LastLast
Results 1 to 10 of 20

Thread: Operating System critiques

  1. #1
    Join Date
    Jul 2002
    Posts
    1,395
    Rep Power
    0

    Default Operating System critiques

    What do dislike most about the OS you know/use? How would you like to see it fixed?

    I dislike the obscurity of everything in Windows: the commands that are available, the commands that you execute, the documentation for available commands; the hiding of useful features of filesystems, like Alternate Data Streams and self-healing; the trickery that you cannot handle your own security (you need a yet-to-be-provided app for that); promotion of bad user habits(most pronounced in HTML e-mail).

    Do you think simply having easy to find documentation on everything (just like Windows 98SE?) would fix this?

    Your turn. What do you dislike most about any OS you use, and how would you see it fixed?

  2. #2
    Join Date
    Nov 2004
    Posts
    5,192
    Rep Power
    25

    Default

    How would you see it fixed? Or how would you LIKE TO SEE IT FIXED?

    For Windows I wish they would stop being dicks about the activation and such. Fix up that and have their things done more smoothly. That and some of what you mentioned - bearing in mind that the OS is for "average users" as well, so as a power user you should do what is needed to get access to the features you want.

    For *NIX I wish there were more drivers available. If I could get good GPU and wireless support on *NIX then I'd have little use for Windows. Most games would run on *NIX if this were true across the board. While the OSes are easy to use (Ubuntu, OpenSUSE, Mint, etc) the availability of drivers makes things hard. What makes things harder as well is installation when it's not through the repository interface or RPM/DEB files. Users don't want to learn how to ./ or sh to get things to install - they want to use something similar to Windows - something that they are familiar to use.
    Knowing the solution doesn't mean knowing the method. Yet answering correctly and regurgitation are considered "learning" and "knowledge".

  3. #3
    Join Date
    Jul 2002
    Posts
    1,395
    Rep Power
    0

    Default

    Quote Originally Posted by khat17 View Post
    How would you see it fixed? Or how would you LIKE TO SEE IT FIXED?
    Not wishful thinking, like a programmer is asking, "what is your wish?". But, what behaviours to you would be considered fixing it.

    For Windows I wish they would stop being dicks about the activation and such. Fix up that and have their things done more smoothly. That and some of what you mentioned - bearing in mind that the OS is for "average users" as well, so as a power user you should do what is needed to get access to the features you want.
    There is always the options of basic, intermediate and expert interfaces?

    For *NIX I wish there were more drivers available. If I could get good GPU and wireless support on *NIX then I'd have little use for Windows. Most games would run on *NIX if this were true across the board. While the OSes are easy to use (Ubuntu, OpenSUSE, Mint, etc) the availability of drivers makes things hard. What makes things harder as well is installation when it's not through the repository interface or RPM/DEB files. Users don't want to learn how to ./ or sh to get things to install - they want to use something similar to Windows - something that they are familiar to use.
    We could help each other here. I don't know if I have come across a wireless device I couldn't find a driver for. Graphics is as always another story. Even has Mr. Torvalds telling Nvidia to f*** off.

    We could compile source packages with the required driver for each other here and sign them with GPG keys for authenticity?

  4. #4
    Join Date
    Nov 2004
    Posts
    5,192
    Rep Power
    25

    Default

    Quote Originally Posted by carey View Post
    There is always the options of basic, intermediate and expert interfaces?
    Not really. You can customize your installation using tools like nLite to ensure that garbage is not installed. The next step is to setup backups using third party apps - free or paid - and ensure that you have a restore available. I use Paragon. After that I run lots of my apps portable - nothing to install - and I replace a lot of the built in garbage. For images I use irfanview and fsviewer - for video I use MPC-HC, VLC & PotPlayer and so on and so forth. All running portable. Then I use a keystroke launcher like LAUNCHY or EXECUTOR or FARR to quickly bring up my shortcuts from the portable apps. I only install what I need to install - video editing apps and such - the rest is portable.

    If you want to take it a step further you can use sandbox software like Returnil or Deep Freeze when you decide to mess with the system.

    Quote Originally Posted by carey View Post
    We could help each other here. I don't know if I have come across a wireless device I couldn't find a driver for. Graphics is as always another story. Even has Mr. Torvalds telling Nvidia to f*** off.

    We could compile source packages with the required driver for each other here and sign them with GPG keys for authenticity?
    I'm not that good with *NIX yet. I say yet but I've been very lax about the learning. Truth is that I've gotten some games to work with *NIX (Ubuntu/Debian) since third party drivers are available for ATI. Where nVidia is concerned I couldn't say - haven't used one of their cards in a while since the 8800GTS.

    The main issue with *NIX is finding the drivers for wireless IMO (outside of the editing apps) as gaming is going into *NIX much more now thanks to STEAM. Part of the issue is the manufacturers of the cards - for example a NEXXT card may have a RALINK chip and you could probably get the *NIX driver to be compiled from RALINK when NEXXT doesn't support it. Problem comes in when you have one that no drivers are available for. Ubuntu has some option I believe to use Windows drivers but I've not tested that to see if it works or how well if it does.
    Knowing the solution doesn't mean knowing the method. Yet answering correctly and regurgitation are considered "learning" and "knowledge".

  5. #5
    Join Date
    Feb 2003
    Posts
    3,184
    Rep Power
    0

    Default

    I don't like having to restart my computer just to get it to free up memory. I don't like pressing the back button and explorer forgets which file I had selected. I don;t like having to buy a new version of windows just so they can fix the bugs in explorer.exe

  6. #6
    Join Date
    Jul 2002
    Posts
    1,395
    Rep Power
    0

    Default

    Quote Originally Posted by owen View Post
    I don't like having to restart my computer just to get it to free up memory. I don't like pressing the back button and explorer forgets which file I had selected. I don;t like having to buy a new version of windows just so they can fix the bugs in explorer.exe
    How would you see those fixed? What solutions have you tried? Looks like you need another shell or to go CLI? Though that "new version of Windows" thing is probably unsolvable.

  7. #7
    Join Date
    Feb 2003
    Posts
    3,184
    Rep Power
    0

    Default

    The problem with operating systems is that all the software is tied together so you either have to wait until the os is updated or write you own operating system from scratch. yeah shells are ok but its often the little things that annoy.

  8. #8
    Join Date
    Nov 2011
    Posts
    263
    Rep Power
    0

    Default

    OK. Let's start with UNIX , then move on to Linux.

    Everything is text - til it isn't

    Everything in a file is a stream of bits encoded as 7 bit ASCII. This may be a problem if you are one of the 2.5 billion people who happens to be Indian or Chinese. The sensible thing to do would be to encode it as typed binary data that shold be sent to the screen. This is also a problem because.....

    Everything is a file - til it isn't.

    Files in UNIX have no metadata. They're just text. At least the people who made Windows had the good idea to use a .manifest in XML that lets the OS know about the file in question. That is one of the ways that Notepad++ can open source code without knowing the filetype. And of course, there is matter of objects that are not files. Like pipes, sockets and devices. This used to be a big issue, because close2() was broken, and would lead to memory leaks, but recent (2010 vintage) and especially FreeBSD, has fixed this. Somewhat.


    Faillan... er I mean Wayland is not the solution

    In the beginning, their was X11. And it sucked ***. Its network transparency only made sense on a fast connection . It had no human interface guidelines, no scrollbars, no widgets, no nothing - just pixels. Sun themselves fixed this back in the '80s when they created NeWS. They based it on PostScript, if you could put i in a printer, you could snd it to the screen. It also could run UI components like those described above. So the Linux people want to fix this with Wayland. Which will break backwards compatibility with a whole set pf older programs. Typical Linux. If you're going to make an API, at least try and be backwards compatible, you know, like Windows.

    Signals and System Calls.

    select() is a thing of the devil. pselect() will explode on contact with holy water.Don't tell me any foolishness about self-piping. Make a proper a way to make asynchronous system calls that doesn't use signals. Signals are a evil thing from a long, long tine ago - before SMP and parallel computing. Hell Win32 API doesn't even support signals.

    C can die now.

    C was originally created by Richie and co. for use on a PDP-11. And it shows. No concurrency. No parallelism. Unlike modern languages like Erlang and C#, C has no means for creating different threads of execution, and sending messages among them.

    Its integer size is fixed, and is thus a source of buffer overflow errors. This is why security issues Adobe, the Linux kernel and Java are so frequent - someone overloads strcat(). The sad thing is that the OpenBSD guys fixed this with strlcpy()., but know, the Linux people wont use it because "its too slow." Fine then, continue to get owned. And don't even letme start on the preprocessor.

    Linux next time. Windows NT after.
    Phone: Nokia 1200 with Satantendo ROM v.3.3
    Laptop: (Pentium III 850 MHz, 512 MB, 60 GB)
    Console: Sega Dreamcast
    Check out my blog: http://satanforce.wordpress.com/

  9. #9
    Join Date
    Jul 2002
    Posts
    1,395
    Rep Power
    0

    Default

    Quote Originally Posted by Satanforce View Post
    OK. Let's start with UNIX , then move on to Linux.

    Everything is text - til it isn't

    Everything in a file is a stream of bits encoded as 7 bit ASCII. This may be a problem if you are one of the 2.5 billion people who happens to be Indian or Chinese. The sensible thing to do would be to encode it as typed binary data that shold be sent to the screen.
    Isn't this very much alleviated by UTF8?
    This is also a problem because.....

    Everything is a file - til it isn't.

    Files in UNIX have no metadata. They're just text. At least the people who made Windows had the good idea to use a .manifest in XML that lets the OS know about the file in question. That is one of the ways that Notepad++ can open source code without knowing the filetype. And of course, there is matter of objects that are not files. Like pipes, sockets and devices. This used to be a big issue, because close2() was broken, and would lead to memory leaks, but recent (2010 vintage) and especially FreeBSD, has fixed this. Somewhat.
    So another file exists that tells me what a file is/is not? *nix already has that. It's called magic. Every proper file format has it. If a program properly checks the first 2-bytes of a file, it will know if it could open it or not. (http://linux.about.com/library/cmd/blcmdl5_magic.htm) Functions even better in *nix than with Win32. Can be enhanced much further with binfmt. Let me guess: that .manifest has magic capability but encourages dependency on file extension. Extensions dependency is not good practice. What identifies that .manifest XML file? Isn't close() and co glibc? The C libraries are at fault, hence even Windows should suffer from it.


    Faillan... er I mean Wayland is not the solution

    In the beginning, their was X11. And it sucked ***. Its network transparency only made sense on a fast connection . It had no human interface guidelines, no scrollbars, no widgets, no nothing - just pixels. Sun themselves fixed this back in the '80s when they created NeWS. They based it on PostScript, if you could put i in a printer, you could snd it to the screen. It also could run UI components like those described above. So the Linux people want to fix this with Wayland. Which will break backwards compatibility with a whole set pf older programs. Typical Linux. If you're going to make an API, at least try and be backwards compatible, you know, like Windows.
    How would you see it fixed? There is no such thing as THE solution. There is only A solution. Setting one way of doing this makes it a single point of failure. The thing that *nix does that Windows doesn't allow is multiple solutions. Have you personally tried remote access of X11? Can't pick on X11. It is technology made for pre-dialup that is still running post-ADSL. RDP was better made, but how many types of Windows did it have to run across anyway? ssh -Y/ssh -X was fun too. Don't you think it is time for a solution to replace X to be sought? Pitching and patching old cloth doesn't stop it from rotting.

    Signals and System Calls.

    select() is a thing of the devil. pselect() will explode on contact with holy water.Don't tell me any foolishness about self-piping. Make a proper a way to make asynchronous system calls that doesn't use signals. Signals are a evil thing from a long, long tine ago - before SMP and parallel computing. Hell Win32 API doesn't even support signals.
    GlibC again. Changing these would break lots of old code. I know nothing about signals, semaphores and calls. I missed that in schooling, and haven't been able to recap yet. But from the similes, how do you establish templates for responses without code redundancy and simultaeneously establish systems-wide definitions?
    C can die now.

    C was originally created by Richie and co. for use on a PDP-11. And it shows. No concurrency. No parallelism. Unlike modern languages like Erlang and C#, C has no means for creating different threads of execution, and sending messages among them.

    Its integer size is fixed, and is thus a source of buffer overflow errors. This is why security issues Adobe, the Linux kernel and Java are so frequent - someone overloads strcat(). The sad thing is that the OpenBSD guys fixed this with strlcpy()., but know, the Linux people wont use it because "its too slow." Fine then, continue to get owned. And don't even letme start on the preprocessor.

    Linux next time. Windows NT after.
    Are you able to do everything in other languages that you can do in C? They say coding is a way of thinking. That is just like human language. You code (I don't). Do you think only one way? In that specific language that you use? or do you think in input-process-output? (http://worrydream.com/LearnableProgramming/) C was designed to be machine-agnostic. It still has much life in it. And the creators of C have already promoted Go as a modern alternative. There are 100s of other *modern* languages, but modern doesn't mean they do concurrency, parallelism and all of that properly. KISS is always the best practice. C is emperor of KISS.

    Would musl be a good alternative to glibc? How about Newlib?

  10. #10
    Join Date
    Jun 2008
    Posts
    74
    Rep Power
    0

    Default

    I do not like the fact that they trying to support so many Kernels (Even ones that could be considered obsolete).

    I think they should just target the following kernels for now:

    Linux x86/x86_64/ARM
    Fiasco.OC x86/x86_64/ARM
    Nova x86/x86_64
    Custom ARM kernel

    I would also see them switch from the GNU toolchain to a more FreeBSD-ish(10) one.

    Also, I wish they would develop their own toolkit rather than relying on Qt for native application development.
    Those who do not understand UNIX are condemned to quote Henry Spencer.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •