Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
User Journal

Journal Sloppy's Journal: If it ain't broke, fix it 12

Anyone seen this lately?

$ nice -20 yadda yadda...
nice: `-20' option is obsolete; use `-n -20' since this will be removed in the future

Gee, thanks. Let's arbitrarily change a UI that people have been using for years.

Back in the 80s I used to just use the 'nice' command without any sort of priority argument. But then the Amiga days spoiled me, and I got used to a static priority scheduler. I like to be able to completely starve less important processes (or to put it another way: I like for important processes to get all the CPU time that they want, without becoming "jerky" and getting preempted by stuff I don't care about).

When I finally moved away from the Amiga to Linux, I found the dynamic scheduling to be annoying. My first reaction was to run unimportant stuff at just the lowest priority I could (nice -20), but they still didn't starve enough. In the 2.2 days I even hand-modified the scheduler to never run a lowest-priority process if there was anything else to do. (No, this doesn't make me a uber-elite kernel haxx0r; if you haven't ever taken a look at the Linux source (at least as of 2.2) you might be surprised just how small, managable, and simple it is.) But it was a pain in the ass to keep doing this every time I updated my kernel, and I eventually stopped.

But I still retained the habit of passing that -20 arg to nice, to at least minimize the amount of unjustified preemption that happens. If you can't eliminate, then mitigate. This became especially important when I moved to Gentoo about a year and a half ago, since it's now a lot more common that I have CPU-intense stuff (e.g. emerge -uD world) going on, which I don't want slowing down my actual use of the computer at all. (My 50 MHz Amiga could run over 100 processes, with plenty of them CPU-bound, and still be 100% snappy. Why can't Linux on my GigaHertz machine do that?!?)

But I digress... I didn't mean this Journal Entry to be about how dynamic schedulers annoy me. I just want to rant about a UI issue.

Someone, somewhere, has decided that nice's -20 argument is too terse and convenient, and I should use -n and some number, instead. I can adapt, but why the heck did some busybody bother doing this? There are plenty of things that could be improved in Linux or GNU userspace tools, and someone decided that changing the nice command's user interface was a good use of their time? And the maintainers decided that everyone else should get this "improvement"??!?

Bewildering.

This discussion was created by Sloppy (14984) for no Foes, but now has been archived. No new comments can be posted.

If it ain't broke, fix it

Comments Filter:
  • nice of them. ;-)
  • Someone, somewhere, has decided that nice's -20 argument is too terse and convenient, and I should use -n and some number, instead. I can adapt, but why the heck did some busybody bother doing this? There are plenty of things that could be improved in Linux or GNU userspace tools, and someone decided that changing the nice command's user interface was a good use of their time? And the maintainers decided that everyone else should get this "improvement"??!?

    C++ programmers by any chance?

  • Comment removed based on user account deletion
  • But it was a pain in the ass to keep doing this every time I updated my kernel, and I eventually stopped.

    diff( ) / patch( )?

    • Yeah, well, for some reason I didn't do that. It was a few years ago. I don't remember why. Maybe because it was still an extra step.

      And I'm sure the diff wouldn't work with the new scheduler anyway. They rewrote all that stuff in 2.6 for the hyped O(1) feature (I guess some people run a lot of processes), then it got backported to 2.4 (at least in gentoo-sources), so the scheduler I run now is totally different than it was the 2.2 days.

      • If I recall, I think they're trying to get that sort of thing into /proc, where you can set the swappiness factor between 0 and 100, which keeps the stuff you're using in memory, and other stuff paged to disk, thus you avoid the percieved latency issue.

        Also, I think nice plays havoc with the new scheduler and they're trying to get rid of it.
  • On Debian:

    stern@stern:~$ tar xyvf blah.tar.bz2
    tar: Warning: the -y option is not supported; perhaps you meant -j?
    Try `tar --help' for more information.

    henry@triscuit:~$ tar xjvf blah.tar.bz2
    tar: invalid option -- j
    Try `tar --help' for more information.

    This is just anal on their part and it pisses me off to no end. It's not like they don't know that people will use that option, they are deliberately not accepting it. Why should I have to use j on a Debian box and y on everything else?
    • It's j on Red Hat... probably on others too. I'd never heard of y before your post. Of course, the only other unixes I use don't even have a tar that supports decompressing at the same time.
      • What irritates me about all this myself is gnu tar, in its entirety. OSS zealots scream and yell about Microsoft's "embrace and extend" strategies to lock people into their tools (as rightly they should) but then turned around and made a tool that is specifically not backward compatable with the rest of the world. I get frustrated every time I get a naively made tarfile to my Solaris box (I work for Sun don'cha know) and get checksum errors all over and have to go dig up gnu tar somewhere to extract the a
      • tar in Slackware 4.0 uses y.
  • $ nslookup slashdot.org
    Note: nslookup is deprecated and may be removed from future releases.
    Consider using the `dig' or `host' programs instead. Run nslookup with
    the `-sil[ent]' option to prevent this message from appearing.


    That's from Slackware 8.1. I patched the source, I think, to make it not do this on one of my servers, and I've noticed that newer versions no longer do this, so somebody somewhere (Slackware? ISC?) apparently got a clue.
  • How about using a dash? Older versions of tar require it; newer versions get confused, and I'm pretty sure I've seen a warning about it somewhere.

    phroggy@boffo:~$ tar -xfj foo.tbz
    tar: j: Cannot open: No such file or directory
    tar: Error is not recoverable: exiting now
    phroggy@boffo:~$ tar xfj foo.tbz
    phroggy@boffo:~$


    I think what I heard about the j/y thing was, the y option was never official, it was just something some people threw in when they made it work with bzip2, and the official GNU tar didn't sup

Disraeli was pretty close: actually, there are Lies, Damn lies, Statistics, Benchmarks, and Delivery dates.

Working...