Slashdot Mirror


Replacing the Aging Init Procedure on Linux

SmellsLikeTeenGarlic writes "Seth Nickell (of Storage and Gnome HIG fame) has started a new project which aims to replace the aging Init system on Linux. OSNews has more details on the project, directly from Seth. The new Python-based approach will make booting faster and it will talk to the D-BUS daemon, freedesktop.org's leading project. And speaking of freedesktop.org, it is important to mention the release of HAL 0.1, an implementation of a hardware abstraction layer for KDE, XFce and Gnome, based on a proposal by freedesktop.org's founder Havoc Pennington and being implemented by David Zeuthen. It is innovative projects like Storage, SystemServices and HAL that can bring the kind of integration to the underlying system that current X11 desktop environments lack."

628 comments

  1. Keep this away from my server! by Bryan+Ischo · · Score: 3, Insightful

    Reading this guy's thoughts on replacing init, makes it very clear that this is intended for very tight integration with the Gnome desktop system. It's not a general purpose mechanism built using the thinnest layer with the least dependencies possible (like init is). All you need to run init is a kernel, a filesystem, and for most init scripts, a shell program. This person's SystemServices concept is heavily tied into Gnome and would require a complete Gnome implementation to function properly. On the other hand, most init scripts do seem to be very specific in operation and make many assumptions about the tools available and the locations of files, making them tightly bound to the distribution they are running on as well. But at least init as a service starting program has minimal requirements, even if init script authors choose (typically because they have no other choice due to the lack of standardization of Linux systems) to make their scripts specific to the distribution.

    This makes it unsuitable for the purpose of starting up system services on a Linux system which does not include Gnome. I think that init was designed with very limited requirements and thus runs on every Linux system no matter how it has been customized.

    But that's typically the trade-off in software design: if your software can make more assumptions and be more specific in operation, then often it can be more powerful and integrate better with the specific system it is made to work on. Unfortunately, for something as general and low-level as the service running program, the SystemServices concept seems to specific to be useful for general use.

    Which is not to say that it's a useless project, just don't expect to see it replacing init any time soon.

    1. Re:Keep this away from my server! by Anonymous Coward · · Score: 0

      Unfortunately, Init is one of the SysV Enterprise Features stolen from SCO and put into Linux. It must be returned. How else could Bicycle Linux have scaled to the heights is has except /etc/init.d?

    2. Re:Keep this away from my server! by elmegil · · Score: 2, Insightful
      Exactly. Here's some more of what he says:

      SystemServices has four major goals:

      1. Provide a full services framework (including handling "boot up")
      2. Integrate well with a desktop interface
      3. Start X, and then allow login ASAP
      4. Allow daemon binaries to directly contribute services rather than requiring each distro/vendor to write shell script wrappers

      Items 2 & 3 are the killer. This is clearly a guy who thinks that the only reason to run Linux is to support an X environment, which is absolutely wrong.

      --
      7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
    3. Re:Keep this away from my server! by the_2nd_coming · · Score: 1

      uhhh, no, if you read what he is saying, he wants a tightly integrated boot up system that is backwards compatable with the init system but much more robust.

      what desktop you run will be irrelivant.

      --



      I am the Alpha and the Omega-3
    4. Re:Keep this away from my server! by elmegil · · Score: 5, Insightful

      As far as "most" sysadmins not understanding run levels, he's out of his mind. Maybe he doesn't get it, but it's a long standing thing that works well. In fact, it works SO well, that Linux adopted it from System V after using the older monolithic rc scripts for a long while.

      --
      7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
    5. Re:Keep this away from my server! by sweetooth · · Score: 2, Interesting

      You missed the part where he said

      and checks to see if it should be doing a graphical bootup.

      So, this shows that he doesn't think the only reason to run Linux is to support an X environment. He continues to talk about what would happen IF starting up in a GUI mode were the current choice. He doesn't however ever state that would be the only choice.

    6. Re:Keep this away from my server! by Anonymous Coward · · Score: 0
      Thanks, Mom!

      - Bryan

    7. Re:Keep this away from my server! by __past__ · · Score: 1
      It's not a general purpose mechanism built using the thinnest layer with the least dependencies possible (like init is)
      I completely agree on the dependencies issue, but isn't calling the SysV init mess "thin" a little bit off? Honestly, how many runlevels exept "multi-user", "single-user" and "turned off" do you really need? Do you collect symlinks as a hobby?
    8. Re:Keep this away from my server! by elmegil · · Score: 1

      I'm sorry, but he only includes that as a bone to those who he already realizes are going to resist what he wants to do. The fact that two of four primary design criteria mention the graphical desktop makes it clear that he has no idea of what init is doing, and is very gui-centric.

      --
      7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
    9. Re:Keep this away from my server! by bobKali · · Score: 1

      I don't know about it replacing init (which I find to be quite easy to follow and understand) but he's got some good (or at least insightful) ideas to improve the "perceived" startup that perhaps could be incorporated into init.

    10. Re:Keep this away from my server! by mark_lybarger · · Score: 1

      they're not design criteria, they're goals of the project. linux has uses on the desktop and in the server room. one of this projects's stated goals is giving those desktop users a faster login screen and a faster UI experience.

      another stated goal is to allow service authors (ssh, nfs, etc, etc) to directly provide their startup scripts. today, each distro writes its own scripts, uses it's own lock files, and knows how to check for other needed services on startup. if this were pushed down to the service authors, it would be a GOOD thing. first off you'll get more testing as the startup scripts will get used a lot more than just by one distro. second, the authors know what services their service needs (nfs -> portmap) and work with those services to make sure the checks and balances are all there. the distro doesn't have to worry about it in a "propriatary" manner.

      he may have no idea what he's doing, but it sounds like good stuff to me.

    11. Re:Keep this away from my server! by Horny+Smurf · · Score: 2, Insightful
      Dan Bernstein has a services daemon which can replace init. I use it on my BSD box, and it does have some advantages over init and rc.d files.


      Briefly, there's a service daemon that monitors the /service/ directory (the location can be changed). In the service directory are symlinks (or actual folders) to services that it should monitor.


      Each of those directories has a "run" script which starts the program, and a log/run script which is run to log stdout.


      you can start/stop/hup/etc processes: svc -h /service/tinydns


      If you wnt to add a new service, you just set up the run and logging scripts, and create symlink. No editing config files, restarting init, etc.

      And, like all djb software, no bugs!

    12. Re:Keep this away from my server! by tigga · · Score: 1
      I completely agree on the dependencies issue, but isn't calling the SysV init mess "thin" a little bit off? Honestly, how many runlevels exept "multi-user", "single-user" and "turned off" do you really need? Do you collect symlinks as a hobby? "network" and "nonetwork"?

      ;)))

      Look at Gentoo - they simplified things a lot. Look at NetBSD and FreeBSD - they have start scripts which allow start/stop daemons and allow dependencies but do not have runlevels at all if you don't count single-user and multi-user.

      I agree - current runlevels as in Red Hat or Solaris are messy.

    13. Re:Keep this away from my server! by elmegil · · Score: 1
      So project goals have no relationship to design criteria? They're not, say, top-level criteria? If you don't meet a goal, doesn't that mean you haven't met a criterion?

      Pick nits all you like, but I have to say that this in no way sounds like "good stuff". Given what a bastard mess gnome-config and trying to manage the billion daemons that make up gnome's state are, I cannot imagine that this project is going to do ANYTHING but 1) make a mess out of boot and 2) what it doesn't break will perform badly The only good news is that most people are likely to recognize this and ignore it..

      --
      7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
    14. Re:Keep this away from my server! by miniver · · Score: 2, Insightful
      As far as "most" sysadmins not understanding run levels, he's out of his mind. Maybe he doesn't get it, but it's a long standing thing that works well. In fact, it works SO well, that Linux adopted it from System V after using the older monolithic rc scripts for a long while.

      Sadly, I've met plenty of SysAdmins who didn't "get" SysV-style init scripts. Particularly the in-duh-vidual who thought that "S100weblogic" would start after "S99local". [sigh] Admittedly, I wouldn't let this person administer any of my machines, if I had any say in it (which I don't), but there are plenty of other wannabe-sysadmins out there who are confused by init scripts.

      I'm not overly enthralled by this proposal, but I'm interested in the dependencies aspect -- nothing worse than changing the IP address for an interface and then trying to discover which services need to be restarted when you restart the interface. Or (hypothetically) what should start first: sendmail or its milter-daemons? A standard for specifying this type of information could be useful.

      --
      We call it art because we have names for the things we understand.
    15. Re:Keep this away from my server! by LarryRiedel · · Score: 1

      I never felt very comfortable about "run levels" myself, but from what I have seen, it seems pretty common that in practice there is effectively: off, single user, and default, which is the same as classic BSD/SunOS.

      Having "SNN" and "KNN" symbolic links to ../init.d is a big difference from monolithic rc.boot, rc.single, etc, scripts, but that is independent of run levels.

      Larry

    16. Re:Keep this away from my server! by ePhil_One · · Score: 1
      If you wnt to add a new service, you just set up the run and logging scripts, and create symlink. No editing config files, restarting init, etc.

      So dr Bernstein has finally fixed the "do what I mean not what I say" problem? I no longer need to configure DNSCache to look to my internal DNS servers for local domain lookups, it just spontaneously knows the domains and IP addresses? Where do I buy stock, cause this is going to be huge!

      No editing config files, my ass!

      --
      You are in a maze of twisted little posts, all alike.
    17. Re:Keep this away from my server! by jorleif · · Score: 2, Insightful

      Remember this is open source. Nobody will force it down your throat. If it's any good people will use it, otherwise it will just die silently.

      Even if it becomes popular, I'm sure there will be distros using traditional init.

    18. Re:Keep this away from my server! by Anonymous Coward · · Score: 0

      "Maybe he doesn't get it, but it's a long standing thing that works well. In fact, it works SO well, that Linux adopted it from System V after using the older monolithic rc scripts for a long while."

      Some Linux distributions still use the "monolithic rc scripts". Slackware (as of v9.0 anyway, don't know about 9.1) for example.

      This is reason #812 why you don't call the operating system Linux. Linux is the kernel.

    19. Re:Keep this away from my server! by Anonymous Coward · · Score: 0

      No it would suck forcing the daemon/services authors write some idiotic python init script. On my setup *I* know how the damn thing is configured, and hence how to start my services.

      Also consider the fact that things like sendmail, apache, openssh, etc are NOT linux projects. Thoose things can be configured in numerous ways on a multitude of operating systems.

      let your vendor packager worry about how the init scripts for that app should be, the app author wont know.

      All this without ranting about the absolutely mind-numbing idea of replacing init(8) with some python implementation. what the hell is wrong with the gnome people lately?

    20. Re:Keep this away from my server! by Anonymous Coward · · Score: 0

      Yep, just like many people keep on running the old 50's gas guzzlers etc, just because they are "more elegant" or "The new cars are such a mess" etc....

      Open Source consists of too many idiots like that...

    21. Re:Keep this away from my server! by GeekBoy · · Score: 1

      Love your sig. LMFAO. I'm going to vote right now too....

    22. Re:Keep this away from my server! by phoenix_rizzen · · Score: 1

      Sounds a lot like the rc system in use by NetBSD and FreeBSD 5.x (although I haven't read the article completely yet). Except for the compatibility with SysV.

    23. Re:Keep this away from my server! by zangdesign · · Score: 1

      Is is just me or does this summary sound really similar to the way Windows starts up?

      I guess at some point, operating systems begin to resemble each other.

      Pity.

      --
      To celebrate the occasion of my 1000th post, I will post no more forever on Slashdot. Goodbye.
    24. Re:Keep this away from my server! by Jeremiah+Cornelius · · Score: 1
      This is the kind of needless complexity in the plumbing that has led the gaggle of MS operating systems into hell.

      "Hey, but it makes for a clean Desktop!" Screw all of that. Message-passing framework in init? I hear that Redmond is hiring my friend!

      You want a system that the majority of systems administrators don't understand, then obscure it with additional services that have interdependancies, and pass messages to eachother, instead of stdin/stdout. Oh. Why don't you also include a non-standard, non-posix interpreter here too!

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    25. Re:Keep this away from my server! by Drantin · · Score: 1

      Sounds similar to married couples... (must be from the dual-booting peeps) you know... when two people live together a long time, they start looking and acting like each other....

      --
      Actio personalis moritur cum persona. (Dead men don't sue)
    26. Re:Keep this away from my server! by rodgerd · · Score: 1

      If he wants Windows, why doesn't he just use it?

    27. Re:Keep this away from my server! by shaitand · · Score: 1

      ahem, this is reason #812 why you call the DISTRIBUTION by it's respective name and the Operating system (which consists of only one component in the case of linux, the kernel) linux. Compilation of user apps bundled with the kernel = distro, kernel=operating system=linux.

    28. Re:Keep this away from my server! by shaitand · · Score: 1

      Yes there are outdated and archaic things out there that are relics of the past and people who "don't want to learn something new", but don't think for a minute new = better. The better choice may be the new or it may be the old. I'm all for better, new and old I don't consider relevant.

    29. Re:Keep this away from my server! by norsk_hedensk · · Score: 1

      but runlevels enable you to truly customize your system for your needs. of course, you can have one runlevel startx, while another runs login. from there on you could have an http runlevel where apache would get started, or another runlevel that would be for your desktop use. this would be good for a non-dedicated server that doubles as a desktop machine. and lets not forget halt and restart runlevels, its important to make sure the system gets taken down properly. anyway my point is that systemV runlevels are excellent, and the scripts, while not self explanitory, are easy to figure out when you RTFM!

    30. Re:Keep this away from my server! by elmegil · · Score: 1

      I can say I've met my share as well. But it's unadulterated arrogance to say 1) "Most" don't get the current system and 2) My system will be so much easier (as long as you know Python, I guess).

      --
      7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
    31. Re:Keep this away from my server! by Anonymous Coward · · Score: 0

      I don't want ssh or or nfs or httpd deciding when it's ready to accept connections. I'll tell it when I'm ready to let it flip the sign and open the doors to my system, not before.

    32. Re:Keep this away from my server! by oohp · · Score: 1

      Some other guy has an init replacement called runit written in the DJB style. http://smarden.org/pape/ And for Linux, Felix von Leitner has the coolest init replacement, minit. http://www.fefe.de/

    33. Re:Keep this away from my server! by oohp · · Score: 3, Interesting

      Actually, there's been a huge thread on an OpenBSD mailing list with DJB telling people to "do what he says" and the /package, /doc and /service is better, breaking their filesystem hier(7)archy. The result is that the OpenBSD port maintainers have removed all DJB software from the ports tree, and now DJB is now switching to FreeBSD.

      I'm a happy djbdns user but I find it to be less scalable (backup name servers for a domain) without some amounts of work to write rsync scripts, etc.

      PS: I love UNIX fs hierarchy and do not intend to change it whatever DJB says.

    34. Re:Keep this away from my server! by BrokenHalo · · Score: 1

      Not all Linux distros use SysV init scripts. Slackware uses BSD-style scripts which are a lot easier to get your head around. (They still depend on runlevels, though...)

    35. Re:Keep this away from my server! by Anonymous Coward · · Score: 0

      "kernel=operating system=linux."

      Hardly. Compile a linux kernel and try to use it without any supporting tools whatsoever. Not going to get very far are you? Useful as it is, the kernel is but a single piece in a very large jigsaw.

      Seriously, this is Operating Systems 101. I can't believe I'm having to explain it.

    36. Re:Keep this away from my server! by CaptnMArk · · Score: 1

      Whatever this does, it had better reuse Richard Gooch's work on need/provide.

      http://www.atnf.csiro.au/people/rgooch/linux/boo t- scripts/

      To eliminate a need for bash a "simple" standardized program (let's call it service) is needed that can replace most of bash code in various /etc/rc.d./.... scripts. Written in C, as small as possible.

      Somewhat like this:
      file: /etc/rc.d/init.d

      #!/sbin/service
      NAME=Apache
      EXEC=/usr/sbin/htt pd
      OPTION_1=reload
      EXEC_1=/usr/sbin/httpd -reload # or whatever
      WAIT=1 ... ... (whatever flexibility is needed)

      this service program would parse command line and provide standard start/stop/restart and service specific options

      An important needed feature:

      init should be able to "waitpid" on all running services to see if they crashed and to remove the need for many "sleep 5" during system shutdown.

    37. Re:Keep this away from my server! by WhiteDragon · · Score: 1

      I accidentally installed runit (debian dependencies that I didn't notice) and now my system doesn't boot.. completely. I can't even log in remotely to change it back. Oh well, I guess it is time to go physically use the console.

      --
      Did you mount a military-grade, variable-focus MASER on an unlicensed artificial intelligence?
    38. Re:Keep this away from my server! by oohp · · Score: 1

      I don't like it either as it breaks the fs hierarchy (stupid DJB style /package dirs) but it works. You just have to get it right.

      I would rather replace init with minit if Felix von Leitner had more documentation on doing so, since I'm a stupid user and I'm afraid to break my system.

      USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
      root 1062 0.0 0.0 44 20 ? S Oct01 0:00 /sbin/minit

    39. Re:Keep this away from my server! by Anonymous Coward · · Score: 0

      Yeah... after all, whatever Windows does is the Wrong Thing by definition, so we mustn't have anything at all work in the slightest bit like Windows, must we?

    40. Re:Keep this away from my server! by ePhil_One · · Score: 1
      DJB telling people to "do what he says" and the /package, /doc and /service is better, breaking their filesystem hier(7)archy

      Pretty much exactly why I avoid his stuff. Well, that and the rants on his site about how lame BIND is. Thats also a little sketchy. But I do use his DNScache for some DNS intensive stuff.

      Good software killed by a maniacal maintainer.

      --
      You are in a maze of twisted little posts, all alike.
    41. Re:Keep this away from my server! by miniver · · Score: 1
      Not all Linux distros use SysV init scripts. Slackware uses BSD-style scripts which are a lot easier to get your head around. (They still depend on runlevels, though...)

      Non sequitur. I was talking about SysV-style init scripts, not Linux. BSD-style scripts have their own problems, primarily in the area of packaging. And for that matter, if you can't trust someone to create a properly-named symbolic link, how can you trust them to edit a shell script?

      --
      We call it art because we have names for the things we understand.
    42. Re:Keep this away from my server! by shaitand · · Score: 1

      The kernel is the Operating system, those tools are userland applications. If you use a different kernel than it's no longer the linux operating system, if you use different tools you just used different tools.

      Do not presume to speak as if you are the bearer of "educated enlightenment". There is no universally accepted answer to the question of what constitutes the operating system. My definition is that the operating system is whatever makes up the absolute lowest level software api. And in linux, that's the kernel, everything must speak with the kernel.

    43. Re:Keep this away from my server! by metamatic · · Score: 1
      If you wnt to add a new service, you just set up the run and logging scripts, and create symlink. No editing config files, restarting init, etc.


      emerge apache ; rc-update add apache2 default ; /etc/init.d/apache2 start



      There, that wasn't so hard was it? And all with the standard init procedure.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
  2. Why change what isn't broken by wawannem · · Score: 2, Insightful

    Dare I ask? I mean, I've never had any problems with the init process on Linux, Solaris, or HP-UX... Was there some problem or inefficiency I didn't know about?

    1. Re:Why change what isn't broken by the_2nd_coming · · Score: 0, Flamebait

      because for workstations, the init system sucks.

      --



      I am the Alpha and the Omega-3
    2. Re:Why change what isn't broken by Anonymous Coward · · Score: 2, Insightful

      Because "old" code is automatically "bad" code, regardless of any other considerations. I know far too many programmers who think this way.

    3. Re:Why change what isn't broken by Mrs.Trellis · · Score: 0

      Agreed, and why Python, I don't even have that installed on my home system, nor do I much want to, I mostly use Perl, I'm not saying one is better than the other of course.

    4. Re:Why change what isn't broken by stevesliva · · Score: 1

      Elegance.

      --
      Who do you get to be an expert to tell you something's not obvious? The least insightful person you can find? -J Roberts
    5. Re:Why change what isn't broken by turgid · · Score: 1

      Are you from North Wales?

    6. Re:Why change what isn't broken by js290 · · Score: 2, Insightful

      Because too many "hackers" don't seem to consider the cost and risks of upgrading, or in the manufacturing world, "retooling."

      --
      "Tempers are wearing thin. Let's just hope some robot doesn't kill everybody." --Bender
    7. Re:Why change what isn't broken by Anonymous Coward · · Score: 0
      Dare I ask? I mean, I've never had any problems with the init process on Linux, Solaris, or HP-UX... Was there some problem or inefficiency I didn't know about?

      Open Source projects generally have no central authority or management structure so they tend to spiral out of control and become unusable. For example, the Linux system sucks.

    8. Re:Why change what isn't broken by wawannem · · Score: 1

      How? Why? Could you elaborate? That is my point... I am trying to figure out why some people hate it, since I think it works just fine. I am trying not to be biased toward it, I am just wondering what is wrong in the first place.

    9. Re:Why change what isn't broken by Anonymous Coward · · Score: 0

      Elegance.

      elegant == simple

      Python is about as elegant as a turd.

    10. Re:Why change what isn't broken by Mrs.Trellis · · Score: 0

      Ie, a myfi cael drwg karma, felly hidia befo!

    11. Re:Why change what isn't broken by Fat+Cow · · Score: 2, Interesting

      unnecessarily slow bootup caused by lack of parallelism.

      i'm making a tivo box and i know that the startup times will be appalling compared to windows.

      --
      stay frosty and alert
    12. Re:Why change what isn't broken by Anonymous Coward · · Score: 0

      The init system, while it does do the job, is messy and confusing for people new to linux. I sometimes spend hours just trying to make a service start properly at boot. Often I just give up because I can't work out what the init system is doing or what it wants me to do, and just add another chunk of code to rc.local.

      A system that allows for easy configuration of system startup is essential, in my opinion. The init system does not provide this.

    13. Re:Why change what isn't broken by Anonym0us+Cow+Herd · · Score: 3, Insightful

      Why are we replacing all our punch card keypunch stations with these frickin' interactive terminals? The punch cards have always worked fine.

      Why are we replacing perfectly good command line interfaces with GUI's?

      Why are we trying to replace X with something modern?

      Why are most people dumping FVWM95 for KDE or GNOME?

      Why are our filesystems all getting features such as arbitrary metadata attachments on files, and ACL's? (Metadata in filesystems is a feature that could make desktop systems *way* more friendly.)

      Why this? Why that? Why....? Why...?

      Answer: It's called progress. The things being replaced are being *improved*.

      Nobody is forcing you to use them. That's the nice thing about open source. It can fork or branch as many times as necessary to satisfy anyone.

      Me, I'm hoping for a Free desktop computer system that is as well integrated as both Mac and Windows. For instance, a "services" control panel that really does have an integrated idea of services, knowing more about them than just "start" or "stop". Apache should be able to show me its status. But do so through a mechanism that other deamons use to do the same thing.

      I am always amused at the resistance there is to every single improvement that will make a really good Linux desktop possible. Nobody is taking away *your* Linux system. Why do you want to take away *mine* before it is even born?

      If it ain't broke, then fix it 'till it is!

      --
      The price of freedom is eternal litigation.
    14. Re:Why change what isn't broken by turgid · · Score: 1

      Mornington Crescent!

    15. Re:Why change what isn't broken by hondo77 · · Score: 1

      I am always amused at the resistance there is to every single improvement that will make a really good Linux desktop possible.

      Very amusing...for about two seconds. There wasn't any resistance, just a simple question: Why? I am amused at your resistance to answer that simple question.

      Hey, I know! I'll start a project to replace /etc/passwd with interpreted COBOL. Don't question it. Just accept it because it's new, right?.

      --
      I live ze unknown. I love ze unknown. I am ze unknown.
    16. Re:Why change what isn't broken by Alan · · Score: 1

      It works fine yes, but if it could start up faster, ie: have X up and going at the start of the init startup process instead of the end, for example, and then load the rest of the daemons as X/gnome/kde is starting. Most of the stuff started in the init process isn't needed to work as a workstation, aside from networking maybe.

      I personally find it fine, but I also think it could be made better.

    17. Re:Why change what isn't broken by TheCrazyFinn · · Score: 1

      It's fine on Debian or Slack.

      It's a frikkin mess of crap on RH or MDK. The scripts are not human readable.

      He wants to replace that with something more powerful, and easier to maintain than the rats nest that is SysV init on RH & co.

      --
      "You've got an invalid haircut" -Warren Zevon - Life'll Kill Ya
    18. Re:Why change what isn't broken by Erwos · · Score: 3, Informative

      I don't think Seth's reasoning _ever_ got on this.

      The boot process on Linux is slow. It's one of the few things that seems to be the same about every distribution. Compare boot time on a WinXP box with non-essential services turned off to boot time on a Linux box with non-essential services turned off. WinXP boots a lot faster, at least in my experience. Can the current system be improved enough to compete? At least one person is saying no.

      Seth is proposing a new system that would be faster and have daemons "take care of themselves" without the need for tons of complicated scripts. These are valid and appropriate goals. It's not pushing some sort of desktop agenda (the "GNOME is taking over!" conspiracists amuse me, I must say), or forcing you to run X.

      This doesn't "address the server-side", or so some people claim, but I've seen no reason that you couldn't easily direct text output to console exactly like the current init does. Of course he's addressing the X desktop - because that's the far more complicated problem.

      -Erwos

      --
      Plausible conjecture should not be misrepresented as proof positive.
    19. Re:Why change what isn't broken by Anonym0us+Cow+Herd · · Score: 1

      My particular reaction that you quote is because I have seen lots of resistance to other advances in the past. Plenty of it is even evident in this discussion. So while you may not be resisting, plenty do. There is also the whole thing about something should not be created because *I* don't want to run it.

      Not that long ago on slashdot there was even a very obvious current of "I don't like it because it makes the system too easy to use for normal people".

      So clearly, I am reacting to something. But maybe not anything specific in your post -- other than how I color the question you asked about fixing it if it isn't broken.

      --
      The price of freedom is eternal litigation.
    20. Re:Why change what isn't broken by shellbeach · · Score: 1

      Compare boot time on a WinXP box with non-essential services turned off to boot time on a Linux box with non-essential services turned off.

      What do you call "non-essential" services? If I want to run X, all I need to start is XFS! Everything else is non-essential. And I can assure you, booting this way is very, very fast ...

    21. Re:Why change what isn't broken by grahamdrew · · Score: 1
      Most of the stuff started in the init process isn't needed to work as a workstation, aside from networking maybe.

      If a workstation doesn't need it, a workstation doesn't need to start it. There's nothing stopping you from removing the symlinks to the startup scripts you don't need in the SysV system. Init works fine as it is, it may just take a bit of jiggering.

      As a side note, is there anything stopping you from putting starting X at the beginning of the init stack under the current SysV system?

      --
      // Dumps core here
    22. Re:Why change what isn't broken by Zog+The+Undeniable · · Score: 1

      WinXP cheats a bit. Yes, the desktop appears quicker, but try launching an application immediately and you'll find things are still churning away in the background. Having said that, there were real improvements compared to Win2K and *any* increase in boot speed is a Good Thing.

      --
      When I am king, you will be first against the wall.
    23. Re:Why change what isn't broken by timftbf · · Score: 1

      Why are people so hung up on boot speed? If you're rebooting enough to care, there's something *badly* broken somewhere other than in init.

      If it's a box in the office that you *have* to turn off at night, you just get your first coffee of the day while it boots. Otherwise, just don't shut down for anything other than power outages or kernel upgrades.

      Regards,
      Tim.

    24. Re:Why change what isn't broken by wawannem · · Score: 1

      I am the one that originally posed the question, and I agree with the previous comment. I was just wondering why? I thought I made it clear that I wasn't resisting progress, but I will resist if there isn't good reason. I used to be a SysAdmin before moving into development at a rather large corporation and when I see change my main resistance is the amount of time that will be incurred. If the *improvement* outweighs the costs in time, I am all for it, but my problem was that I didn't see any problems. Someone set for the DHCP example, but I am pretty sure that someone else suggested starting XFS and X right away in the early runlevels. To me, the only reasons for moving away can be easily solved within the existing system. The main problem seems to be that most people aren't comfortable messing around in /etc/init.d /etc/rc*.d if that is so, I didn't see it. I am just use to being in there and found it to be rather simple. I see now that people don't find it as simple as Control Panel/Services in Windoze. If people want more ease of use, maybe really good front-ends should be built to manipulate system startup, but I don't think the init should get bloated by python and an API that even fewer people will understand than the current system.

    25. Re:Why change what isn't broken by sl3xd · · Score: 1

      One reason: Modern desktop computers use a rather large amount of electricity. I'll admit I have a lot of hardware inside my computer, but it still consumes a few hundred Watts. My 19" monitor alone uses more juice than every component of my first system combined. (LCD's are still too expensive, and can't refresh the contents of the screen fast enough; I hate the 'ghosting' I see in LCD's)

      Like it or not, people are beginning to view computers as an appliance -- like a toaster, an oven, a TV, a stereo, or a gaming console. And, at least in my experience, the mantra pounded into us by our parents is "Turn it off when you're not using it! It's a waste of power!", which is probably one of the most universally sound things our parents have taught us. Engineers are not ignorant of this fact, and current hardware is much better able to withstand the punishment of frequent startup & shutdown (mainly in the case of disk drives, whether Hard Disks or CD/DVD's). The resulting waste of power a computer consumes while idle is a bad practice in any event; it has both environmental and social impacts (social, as in not enough power to go around, and nobody is willing to allow power plants to be built within 100 miles of their homes).

      Sure, you can run seti@home, or folding@home, etc. But most people don't. It's an awfully big waste of power (both computational and electrical) to just have your computer churning out numbers for your spiffy 3D screensaver.

      What desktop users need is a 'hibernate' feature in Linux, similar to that provided by OS X and Win32.

      Of course, too many people reguard desktop Linux as heresy, and I usually tell them to go home to Redmond.

      --
      -- Sometimes you have to turn the lights off in order to see.
    26. Re:Why change what isn't broken by tsa · · Score: 1

      Sure, you can run seti@home, or folding@home, etc.

      That also costs power because now the processor must actually do something. I once ran folding@home for a day on my dataserver (a P133 that is only used for sharing drives with NFS and running pine and lynx). I have that machine in a closed cupboard and when I switched it off in the evening the inside of the cupboard was a lot warmer than normal. So I removed folding@home again.

      --

      -- Cheers!

    27. Re:Why change what isn't broken by jgrahn · · Score: 1

      Compare boot time on a WinXP box with non-essential services turned off to boot time on a Linux box with non-essential services turned off. WinXP boots a lot faster, at least in my experience.

      Can't say I've used WinXP, but my aging 450MHz AMD PC boots Debian Woody in a few seconds. The annoying part is the BIOS (and, to tell the truth, Postfix).

      And when the boot is done, you still have to log in, open the stuff you want opened today ... the Linux bootup time is the least annoyance for me.

    28. Re:Why change what isn't broken by sl3xd · · Score: 1

      That also costs power because now the processor must actually do something

      Yes; but it is at least actually doing something with that power, although some would argue the merits of the work being done. (I don't know enough about folding@home to really comment)

      --
      -- Sometimes you have to turn the lights off in order to see.
  3. python, hurrah by Valar · · Score: 0, Troll

    The new Python-based approach will make booting faster
    Oh wait, we forgot to convert back from decades... uh, nothing to see here.

  4. About time by Anonymous Coward · · Score: 0

    Even Windows XP has a way better init process while loading.

    1. Re:About time by DA-MAN · · Score: 4, Insightful

      Whoa an AC with some insight. Windows 2000 had a single-threaded boot, kind of like Linux. Load things one by one and in order. Win XP came out with a multithreaded boot process, which brings the system up faster. However it only appears to be ready sooner, it takes the same amount of time to get into a usable state.

      --
      Can I get an eye poke?
      Dog House Forum
  5. Thought we would overlook your mistakes? by ROBOT+X · · Score: 0, Troll

    Seth his opinion regarding an error code and ultimately drive the screen that custom init system, not required for running KDE/GNOME/whatever. These can contribute services 100x more complex with xinetd so that allows desktop interface. A lot of course they make interfaces a nice all around. For an example of non-desktop-required System Services and more than just bridge to me anyway *wink*. I fear that is one of people who need runlevels, but for most (not all, but for system is to depend on demand" (xinetd) or "run always" (daemon). 2) Integrate well with an "exception" with -zero- gain. They also asked Seth his opinion regarding an org.apache. WebServer DBus service it will only provides the case, as initscripts (SystemServices can be able to it. I fear that in the basic Service interface. I *might* provide a little progress information in the case, as many features as companies where their business depend on much better integration work. My personal agenda is one of Unix tradition, I fear that a million people who have been started (or happen in the system is progressing. We need integration work. My personal agenda, and the project into them (not much :-). SystemServices brings up boot for system has four major goals: 1) Provide a very small percentage of a service can't start (or happen in Gnome libs might result in Gnome being a services framework rather than just "start/stop"... the ability to write shell script wrappers 1) Provide a "stripped down because nobody wants to add the ability to adapt and part of these issues are not just "start/stop"... the Apache service between "run always" (daemon). 2) The way to contribute API that custom init works doesn't fit really only offer as companies where distros work but its nice idea, however it makes sense to, e.g. have never really big thing to get shot down console mode" aka "single" for services are not believe so that is one of the replacement of non-desktop-required System Services (Apache, ftp, etc). The window goes away as soon as many features as the natural language parser needs more robust, esp. for running KDE/GNOME/whatever. These can use them), but most) sysadmins. There are not just a system recovery and ultimately drive the future, which will get shot down because nobody wants to encourage daemons contribute services 100x more than just the event these projects take off will be deferred until after KDE and part of a part of a full services framework for servers. 3) Start X, and part clean architecture. Its silly that what a waste of a regular non-graphical boot for most (not much :-). SystemServices has small concessions to write shell script wrappers 1) Provide a service can flip a system has four major goals: 1) Provide a very small concessions to directly contribute more complex with -zero- gain. They also make the event these projects take off will be deferred until after KDE and cumbersome, even after DBus service between "run on System Services (Apache, ftp, etc). The init works doesn't fit really only provides feedback on much better integration with the "Red Hat is clean architecture. When daemons contribute more complex with xinetd so that provides the "Red Hat Network" is confusing and ultimately drive the basic Service interface. I expect a waste of these issues are not just a client interface. There's already have a services rather than just "start/stop"... the event these projects take off will get shot down console mode" aka "single" for system that this will be able to query status, etc. The way init scripts is part halting constant re-invention of Init: Seth his opinion regarding an example of non-desktop-required System Services (Apache, ftp, etc). The window on Gnome being a nice all around. For an "exception" with initscripts (SystemServices can contribute services 100x more featureful and ultimately drive the interface needs some point!)... the idea of time (optional) dependency to start/stop/restart services. We asked Seth if a few "small" features (small to contribute more clunky). Of cour

    1. Re:Thought we would overlook your mistakes? by tigga · · Score: 2, Funny

      Was that Yoda speaking?

    2. Re:Thought we would overlook your mistakes? by Anonymous Coward · · Score: 0

      Scramble all the internal letters of every word if you want, but please, please, please, hit the enter key now and again! That hurt!

  6. The new init procedure by Anonymous Coward · · Score: 3, Funny

    if $OS [] *linux* or $OS [] *nix* then
    repeat
    SCO.account = SCO.account + yourbankaccount
    until bankvault = empty
    end if

    1. Re:The new init procedure by FuzzyDaddy · · Score: 1
      No, no, PYTHON:


      if os.find("nix") != -1:

      1. while bankvault != empty:

        1. SCO.account += yourbankaccount
      --
      It's not wasting time, I'm educating myself.
    2. Re:The new init procedure by salmo · · Score: 1

      or even more pythonish

      import sys
      if (sys.platform.find("nix") != -1) or (sys.platform[0:4] == "linux") :
      for penny in me.account:
      sco.account += penny

    3. Re:The new init procedure by FuzzyDaddy · · Score: 1
      sys.platform[0:4] == "linux"


      shouldn't that be


      sys.platform[0:5] == "linux"?



      hmmm??? Snake got your tongue?

      --
      It's not wasting time, I'm educating myself.
    4. Re:The new init procedure by vandy1 · · Score: 1

      No, I'm fairly certain that 'l' is the 0th character.....

    5. Re:The new init procedure by FuzzyDaddy · · Score: 1
      >>> x = "linux"

      >>> x[0:4]

      'linu'

      >>>

      The python slice [0:4] includes characters 0,1,2, and 4, but not 4.

      --
      It's not wasting time, I'm educating myself.
    6. Re:The new init procedure by Anonymous Coward · · Score: 0

      you've got your whitespace wrong.

    7. Re:The new init procedure by vandy1 · · Score: 1

      Ahh... sorry. It seems the fact that I did some python a few years ago doesn't inspire my memory to great heights :) Cheers, vandy

    8. Re:The new init procedure by Elbelow · · Score: 1

      No, I'm fairly certain that 'l' is the 0th character.....

      And so it is, but the second index is also
      the first character that is not included in the slice.

  7. Legacy by HermesHuang · · Score: 2, Interesting

    I'm one of the crowd who will probably stick with init. It took me many many tries to tune my scripts the way I like it (and since I'll be reinstalling at some point, I'll have to spend some more time tuning) and I'm just too lazy to learn a new way. This is of course why old stuff is still all over the place, but hey, if it isn't broken, I'm not in a big hurry to replace it.

    1. Re:Legacy by Brummund · · Score: 1

      Yep, same here. But, if they managed to create an organized way of reporting errors or events in the system, it cannot be bad. I for one is sick of tailing, greping, cating etc whenever I try to find out why the fscking printer doesn't work.

      (Not replace the logs, but add something a bit easier to work with. Like being able to say "All services should now output debug information" or "I want to see all WARN messages in the last hour from Postgres, Apache and cups" without digging up a Perl cookbook would be nice.)

      Since most of the 'improvements' mentioned in the article seems to be stuff ripped from Windows NT, one could hope they'd copy and improve NT's event log, too.

      Or maybe just a more standardized way of representing dates in the /var/log-chaos would be a big improvement.

      Examples from my computer:

      Cups:
      localhost - - [30/Sep/2003:23:58:21 +0200] "POST / HTTP/1.1" 200 137

      auth.log:
      Oct 2 22:23:01 localhost cron(pam_unix)[15119]: session closed for user mail

      boot:
      Tue Sep 30 15:52:26 2003: Starting GNOME Display Manager: gdm.

      It's, IMHO, moronic to not at least include the year. I guess this really is distribution specific (and some distros maybe even have a unified way of logging from the different daemons?), and not really Linux specific, but this is pretty high up on my wishlist.

    2. Re:Legacy by dtperik · · Score: 1

      AAGGHH. Not copy NT's event log. Talk about a pain and time-waster to find anything you need to know. I'd take tail/grep/cat on plain text log files over NT's event log anyday.

  8. Cool by mao+che+minh · · Score: 4, Interesting
    That's the strength of open source development: every little component has the potential of being made more efficient at any given time by any given party of developers.

    The current init system is actually fine in my opinion, but if someone comes up with better system that can boot my Linux system as fast as my XP system boots, I'm game.

    1. Re:Cool by truthsearch · · Score: 3, Informative

      He plans on implementing one of the key things which will makes systems bring up the user interface faster: launch only those services required by the system to boot, then launch the desktop (if applicable), then continue loading any "secondary" services. For example, the log rotation script found on some distros doesn't need to run before the interface is launched. I think this has been needed for a long time on the Linux desktop. It's worked that way on Windows for a long time.

    2. Re:Cool by bogie · · Score: 2, Insightful

      "but if someone comes up with better system that can boot my Linux system as fast as my XP system boots, I'm game."

      I do find it interesting that anyone beside embedded developers care about Linux boot times. I guess dual-booters might need this, but then again booting and dealing with two different OS's on the same machine is always going to involve some headache.

      I mean really how often do you have to reboot your linux box? This isn't the days of Win95 where you had to reboot daily. The most your should ever have to do on a linux box is Cntrl-Alt-Bkspace to restart X because something went way wrong. If your actually having to reboot your linux box more than once a month your either playing with too many kernels or have a serious hardware problem.

      While I agree that speeding up boot time is a "good thing" for me just isn't an issue.

      --
      If you wanna get rich, you know that payback is a bitch
    3. Re:Cool by Lane.exe · · Score: 1
      My Mandrake 9.1 system beats the shit out of my XP system as far as from pressing the on button to logging in. Maybe it's the fact that XP loads too much crap at startup, I don't know... but XP's boot time is slower than old cheese through an AC's grandma.

      And what the hell? This is Linux, my man! You only need to boot it once a week or so! Most of the time, anyway.

      --
      IAALS.
    4. Re:Cool by sweetooth · · Score: 3, Insightful

      Some people don't leave their computers on 24/7. They turn them off when they leave the house etc. Hence they are booting their computers once a day probably.

    5. Re:Cool by i_am_nitrogen · · Score: 1

      Turning one average high-end box off at night can save as much as $14 a month. For hardcore system hackers who have 4+ boxes, that can amount to a pretty sizable hardware upgrade every year. It also benefits the environment if your electricity is provided by a coal burning power plant.

    6. Re:Cool by derF024 · · Score: 2

      If your actually having to reboot your linux box more than once a month your either playing with too many kernels or have a serious hardware problem.

      Or you're running linux on a laptop. I reboot my linux machine as often as 3 times a day, because that's how often I go from one place to another with my computer. Waiting 25 to 30 seconds for my desktop to come up each time I boot is annoying to say the least.

    7. Re:Cool by __past__ · · Score: 1
      That's the strength of open source development: every little component has the potential of being made more efficient at any given time by any given party of developers.
      No, it is not. It's the strength of modular software, like Unix-like operating systems. Replacing the init mechanism is not any harder on Solaris that it is on Linux.
    8. Re:Cool by Ianoo · · Score: 1

      Please don't use this argument. There are a LOT of people who switch their computers off at night or when they go out of the house and do not want to be running 24 hours a day.

      A faster boot would be <i>welcome</i> on my systems, simply being able to boot up, read my e-mail and shut down again in 3-5 minutes would be incredible.

    9. Re:Cool by Anonymous Coward · · Score: 0

      I run Gentoo Linux on a laptop. Believe me, I have no hardware problems, no stability problems, and I reboot all the time. A lot of people even with desktop systems also shut down their systems at night or when not in use. I mean really, unless you're running a server, what's the point in leaving the machine on 24/7, often going unused and burning power for hours at a time? Oh yeah, to avoid the boot up time problem that you're sweeping under the rug . . .

    10. Re:Cool by Ianoo · · Score: 1

      That may be so, but proprietary software companies are much more likely to screw you when they decide your third party replacement implementation doesn't fit with their corperate vision. ...Netscape Navigator vs Internet Explorer is the prime example that comes to mind.

    11. Re:Cool by Anonymous Coward · · Score: 1, Funny

      True, but an extra minute or so each day isn't going to make a lot of difference.

      It's rare I switch any of my systems off, but when I do, I usually just go make coffee or something when it boots anyway, so...

      It's not useless, but I don't think it's particularly worthwhile either.

    12. Re:Cool by Anonymous Coward · · Score: 0

      Then there's something broken with your XP box...

      My XP - a gaming rig, at that - botts in about 30 seconds.

    13. Re:Cool by naarok · · Score: 1

      True, but personally, things like Apache, databases, ect. are not "secondary" services. They are the core purpose of most of my linux boxen. I'd be pretty annoyed if Apache took an extra 10 seconds to come up so that X could startup sooner.The desktop is the "secondary" service.

      From the above, it is obvious that I use linux mostly at the server level, not at a user level.

      I think something like this will be great if there are no assumptions about what is primary. If I can say that I need Apache up before my desktop (or even not have X at all) and the person beside me can say that they need the GUI up first, then this will be a great system.

      If assumptions about what is primary and what is secondary are coded into the system, then it won't work for everyone.

    14. Re:Cool by Lane.exe · · Score: 1
      Then there's something broken with your XP box...

      I paid 99 dollars for a shitty OS that I only use for music and MS Office? Yeah that'd be it.

      --
      IAALS.
    15. Re:Cool by Anonymous Coward · · Score: 0

      True, but an extra minute or so each day isn't going to make a lot of difference.

      Six hours a year difference. I think that makes a big difference.

    16. Re:Cool by Anonymous Coward · · Score: 0

      I reboot my linux machine as often as 3 times a day, because that's how often I go from one place to another with my computer.

      The rest of the world just suspends their laptops. There's no need to reboot.

      Fuckwit.

    17. Re:Cool by maxume · · Score: 1

      Let us be realistic. It benefits the environment regardless of how your electricity is provided.

      --
      Nerd rage is the funniest rage.
    18. Re:Cool by __past__ · · Score: 1
      As far as I know, even Microsoft has never made it impossible to replace a random executable with another one that serves the same purpose. init is just that (hence the possibility to get root on a linux box when you have access to the boot loader by passing "init=/bin/sh"), on every unix I ever heard of - it is not tied to any other part of the OS, except by some open, well known interfaces, mostly how it is started and how it reacts to some signals.

      So, the only way for a proprietary software company to screw anyone using or offering an init replacement would be to remove modularity, which kind of proves my point...

    19. Re:Cool by JCMay · · Score: 1
      I run Gentoo Linux on a laptop. Believe me, I have no hardware problems, no stability problems, and I reboot all the time.

      Well, there you go! ;^)

      [I turn my Red Hat box off when I'm not using it, too!]
    20. Re:Cool by Horny+Smurf · · Score: 1

      Netscape is a great example. Like when they added the BLINK tag and all that other shit. Fortunately, MS was kind enough to release a nice browser.

    21. Re:Cool by drunk_as_in_beer · · Score: 1

      2.6.0 is supposedly going to give us hibernate. that will be very nice i think, and i may actually shut down at night for once. i don't like rebooting, but i'm all for hibernating.

      --
      --Drunk as in Beer
    22. Re:Cool by HeghmoH · · Score: 1

      On a crappy laptop, I think you mean. :-)

      I'm not running linux, but OS X, on a laptop. I had an uptime of about 65 days before I screwed something up and it had a kernel panic. I racked up about ten thousand miles of travel during that time too. It has a sleep mode where the contents of memory are preserved while the rest of the machine is turned off.

      My girlfriend's PC laptop supports a similar thing, except it apparently saves the contents of memory to the hard disk, and then very quickly reads that back into memory when you turn the thing on, making it "boot" and go back to where it was in about three seconds. Does Linux support this kind of thing on hardware that supports it?

      --
      Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
    23. Re:Cool by Anonymous Coward · · Score: 0

      Umm...ever heard of sleep?

    24. Re:Cool by benploni · · Score: 1

      As far as I know, even Microsoft has never made it impossible to replace a random executable with another one that serves the same purpose.

      That's precisely what Paladium a.k.a NBGSCB (Next Gen Secure Computing Base) does. Secure bootstrap is a central part of locking you out of your computer.

    25. Re:Cool by Anonymous Coward · · Score: 0

      "The current init system is actually fine in my opinion, but if someone comes up with better system that can boot my Linux system as fast as my XP system boots, I'm game."

      There is nothing wrong with the Linux system with regards to boot speeds. The problem is what programs are run during the init process. From a personal point of view, my particular Linux box boots faster than XP on the same system. I've done nothing fancy, just removed the cruft that gets installed by default by my particular distro (Slackware in my case -- not that there's a lot of cruft in Slackware but it was still excessive for my needs).

      The absolute worst offender is that hardware detecting daemon that runs on boot up on Red Hat systems. When I first came to Linux I used Red Hat and that particular line in the init scripts was commented out very quickly once I realised what was going on.

    26. Re:Cool by wirelessbuzzers · · Score: 2, Insightful

      This feature shouldn't really need hardware support. It should be able to make a memory image in a file on the hard disk, and when it reboots, if the image exists, to reload it.

      --
      I hereby place the above post in the public domain.
    27. Re:Cool by Syberghost · · Score: 1

      If your actually having to reboot your linux box more than once a month your either playing with too many kernels or have a serious hardware problem.

      Or you use your box 8 hours a day and see no reason to put 24 hours worth of energy through it, nor 24 hours worth of heat into the office AC system.

    28. Re:Cool by JerkBoB · · Score: 1

      From the above, it is obvious that I use linux mostly at the server level, not at a user level.

      Why do you have X installed on a server?

      --
      A host is a host from coast to coast...
      Unless it's down, or slow, or fails to POST!
    29. Re:Cool by spencerogden · · Score: 1

      Your Mac Laptop most likely copies the memory to the hard disk as well when it sleeps. Linux has beginning support for this. It is a new feature and not perfect yet, from what I know.

    30. Re:Cool by Anonymous Coward · · Score: 0

      It's people like you that make me glad that I have an insatiable need to plug in every computer I see no matter how old. I have 30 - 40 computers running that are just sitting there not doing anything, just waiting for a job. God bless the USA and nuclear power. Now go back and report to the ELF like a good little commie.

    31. Re:Cool by MsGeek · · Score: 3, Funny

      People like me who live in earthquake-prone areas turn their computers off when not in use. Much safer for the hard drive.

      --
      Knowledge is power. Knowledge shared is power multiplied.
    32. Re:Cool by bninja_penguin · · Score: 2, Interesting

      My XP - a gaming rig, at that - (sic)botts in about 30 seconds.

      That is the thing right there. Your system is a "gaming" rig, and that's probably all you do with it, so you've got it all tweaked and rarely change anything with it. Nothing wrong with that, but, on a "general purpose" machine, or the average XP users machine, I guarantee it slows down to an aching crawl for boot after a few weeks/months of use. This is caused by everything from Quick Books "TSR" bot to default settings in IE that allow every damned search bar/spyware piece of junk to automatically install in the background.

      I work on Windows boxes all day long, and I know this happens. Machines I've built for customers, with nothing but XP loaded will boot in under 20 seconds. Two months later, when they've just purchased a new scanner or what have you, and want me to install it, the boot time of the exact same machine is now over 2 1/2 minutes. They had installed Anti-Virus software, Office XP, a few games, Quick Books, etc., nothing exotic. I checked for viruses, there were none. I ran Spy Bot, and there was 350 (non-cookie) issues found. Even after cleaning, clearing temp files, and defragging, the boot time was still just under two minutes. My Mandrake machines' boot times haven't changed by even 2 seconds in three years. My Mandrake boots from power button on to fully loaded KDE desktop in 40 seconds, and I've only got 256MB RAM in it. The XP box I've been talking about has 1GB.

      No matter what people say, nor what the benchmarks show, Windows XP appears slow, and feels sluggish. Go to the Add/Remove Programs in the control panel. Even with a 2.6Ghz processor with 1GB of RAM, you have to "Please wait while list is being populated." Sure, you can "prove" with benchmarking that XP is faster than 98SE, but my K6-III Win98 machine feels one Hell of alot faster than any XP machine I've worked with.

      So, I guess my point would be, yeah, you are probably right, there's something broken with the parent poster's XP box, but it's probably broken in every other XP box on the planet as well (except for yours.)
      :)

      --
      For those who describe their systems as 'boxen', do you order multiple 'boxen' of corn flakes also?
    33. Re:Cool by ryanvm · · Score: 1

      If your actually having to reboot your linux box more than once a month your either playing with too many kernels or have a serious hardware problem.

      Uh - or you turn your computer off when you're done with it. Is your computer really doing essential functions 24 hours a day?

    34. Re:Cool by Anonymous Coward · · Score: 0
      every little component has the potential of being made more efficient at any given time by any given party of developers.
      Unfortunately this isn't one of them. He's proposing replacing a small, light, tool written in C that allows you to use any language you like to write the user-endable bits (as long as that language supports #!/bin/xxxx execution) with a system written in Python requiring Python to configure. Butt-ugly, inefficient, inflexible, more ideologically up the wazoo than a gaggle of Cato Institute reports, and just plain unnecessary.

      Someone's going to rewrite Linux (the kernel) in Python or Perl next, I can feel it.

    35. Re:Cool by maxume · · Score: 1
      It's people like you that make me glad I have a semi working brain. I could give a shit how much you pollute. My post was actually bashing the environmentalist bent of the OP. Basically, pretending that solar/wind/hydro/fission/fusion don't have an effect on the environment, an effect that is most likely detrimental, is short sited and foolish. Of course they do, so don't go acting like they don't, that won't get you anywhere.

      As for other matters, I thought ELF was used for communicating with submarines. It is one of the things that used to make living in the U.P. of Michigan somewhat riskier than other areas that match it for low population density. Those other things include the Souix Locks, a shipbuilder I can't think of, and used to include K.I. Sawyer AFB, but they closed it, so not so much anymore. Of course, global thermonuclear war is quite a bit less likely nowadays, so it doesn't matter so much.

      --
      Nerd rage is the funniest rage.
    36. Re:Cool by Haeleth · · Score: 1

      > I mean really how often do you have to reboot your linux box?

      Daily. Like most students, my computer and my bed are in the same room. And despite a fair amount of money spent on quiet cooling, I still haven't got the noise down to a level I can comfortably sleep over.

      Plus, as you say, dual-booters (hey! guess who?) care about boot times. My Linux boots don't really take that much longer than my Win2k boots, but I'd sure appreciate a Linux boot system that I understand how to edit.

      > While I agree that speeding up boot time is a "good thing" for me just isn't an issue.

      Lucky you. In that case I advise you not to bother contributing to this project or anything like it. In fact, you could save everyone's time by not even replying to articles on it.

    37. Re:Cool by zdzichu · · Score: 2, Interesting

      Find following line in your /etc/inittab :

      # Script to run when going multi user.
      rc:2345:wait:/etc/rc.d/rc.M

      and change it into

      # Script to run when going multi user.
      rc:2345:once:/etc/rc.d/rc.M

      Much faster, isn't it?

      --
      :wq
    38. Re:Cool by DeathBunny · · Score: 1

      Actually, OSX does not copy the memory to hard disk when it sleep. Instead, the system goes into a very low power mode that preserves the memory (and on Powerbooks and Ibooks a small LED pulses gently to remind you it's in sleep mode). The benefit to this approach is that waking from sleep is instant. I open my Powerbook, hit a key to wake the system up, then start working. The downside is that the computer *is* using some battery life. Not much though. I frequently put my Powerbook to sleep when I leave work on Friday and don't wake it again until Monday morning.

      Theoretically any OS should be able to do this. Your laptop would just need a good low power sleep mode.

    39. Re:Cool by Fat+Cow · · Score: 1

      maybe you'd like to turn off your computer to save energy - or you don't want it making noise when it's not doing anything.

      midori used to have a pretty fast parallel init system and it's a joy compared to debian.

      --
      stay frosty and alert
    40. Re:Cool by Fat+Cow · · Score: 1

      i personally blame that effect on the registry. either registry fragmentation or just filling up with a load of unused crap. try logging the size of your registry from install time to a few months later and watch it expand.

      note that a lot of operations on windows look at the registry - eg right clicking on something in the file explorer.

      --
      stay frosty and alert
    41. Re:Cool by pavon · · Score: 1

      Well, it's the strength of modular software with perfect forward vision.

      Modular design gives the promise that you can improve software by swapping out only the components that you need to change. However, this is only realisable to the extent that you know before hand what sort of things will need to be changed. But often times changes will cut acrossed the boudries of modules. In this case what would be a simple change if one were allowed to refactor the source, becomes much more difficult if one has to reimplement all of the modules that a change effects. Furthermore, with OSS you can tweak the existing modules - something you can't do in modular programming.

      Part of this is learning how to make wise decisions about where the module boundries should be, but part of it is just life - your first design will never be perfect no matter how smart you are, and thus redesigns and refactoring are a normal part of the software life cycle. So while modular proprietary software allows some opportunity for third party improvements, Open Source provides much more. (And modular open-source software is the best :)

    42. Re:Cool by Per+Wigren · · Score: 1

      I have to keep my computer running at night because I rather hear the noise from the computer than the tinitus beeeeeep :P

      --
      My other account has a 3-digit UID.
    43. Re:Cool by baka_boy · · Score: 2, Insightful

      Even if you're using Linux boxen purely in a server environment, having parellelized startup of system services could be a big win: if your SSH daemon could start up before or in parallel with log rotation, hardware monitoring (devfsd, kudzu, etc.), etc., you could log back on to the server that just rebooted much more quickly. I know, in an ideal world, you'd never have to reboot a production system, but we live in the world of failing hard drives and power supplies.

    44. Re:Cool by baka_boy · · Score: 2

      ...or you're using more than one OS on the same machine. I've routinely had as many as four different bootable partitions on my workstation, often running completely different operating systems (Linux, Net/OpenBSD, Win2k, BeOS R5).

      Is it strictly necessary? No. Is it a big part of how I've learned to code for and support all of those systems? Yes. Would I like to shave a minute or two off every Linux boot time? Definitely.

    45. Re:Cool by GlassHeart · · Score: 4, Insightful
      an extra minute or so each day isn't going to make a lot of difference.

      Reminds me of an old story of somebody hired to improve the elevator waiting time that people had been complaining about. Instead of tinkering with elevator algorithms or making it run faster, he simply installed mirrors by the elevator. Nobody complained anymore.

      It makes a difference, because it's something I'm waiting for. It's one more minute before I can read email, or search for something on Google, or whatever I turned on the computer to do.

      An extra three minutes shutting down, on the other hand, isn't that important for a desktop, because I would probably have walked away to do something else. It might be for a laptop, however, because the user might be waiting to unplug it, etc.

      The point is, it's not the amount of time, but whether I'm waiting for it or not. This means that one solution to the problem may simply be downloading Slashdot headlines and showing them while the system boots.

    46. Re:Cool by sketerpot · · Score: 1

      Sometimes white noise in the background can help you get to sleep. However, I won't presume to tell you what sort of noise you want, so I'm just thinking: if you have large desk cabinet type things in your room it might be possible to have the noisy part of the computer in there, and maybe put some foam in there to deaden the sound some. Just a half-assed idea, but I suppose it might help.

    47. Re:Cool by naarok · · Score: 1

      True, in general I don't have X installed on a server, hence my parenthetical comment about not starting X at all. I do have one box that serves content and has X, but that was because the box got retasked after installation and I didn't get a chance to re-install/remove X.

    48. Re:Cool by naarok · · Score: 1

      That would be sweet! Many services could easily be started asynchronously. Now you've got me thinking (damn you)

      I suppose that the old style init (that Slackware still uses), could be parallelized by starting each script as a background process. I don't know about the newer style init though.

    49. Re:Cool by HeghmoH · · Score: 1

      Thanks, but I'm not, in fact, a total moron. I think I would know if my computer copied 640MB of data to the hard disk every time I closed the lid, and loaded 640MB of data off the hard disk every time I opened it.

      My laptop goes to sleep within three seconds of closing the lid, and it's ready for use within three seconds of opening it, all with no hard disk activity.

      It just keeps the memory slightly powered. It doesn't take a lot of electricity, even with my two-year-old battery, one charge will keep the machine safely in sleep mode for several days. Mac portables have been doing this for about ten years now.

      --
      Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
    50. Re:Cool by slasher999 · · Score: 1

      Who really cares how long it takes to boot Linux? Considering I reboot my machines - laptop excepted - about twice a year, the current startup time is fine for me. I like that I have time to watch messages as they scroll by to determine if something is going wrong during the boot process. I'm not against progress, but it's not like the Windows desktop world where many machines are booted once a week or even more often.

    51. Re:Cool by bendawg · · Score: 1

      I'm not sure why he does it, but we have to run X on our Solaris server so it can generate images with AWT.

    52. Re:Cool by fpu · · Score: 1

      No you don't. You need Xvfb, which is a headless X server (vfb stands for virtual frame buffer). The link is for the XFree86 version, but there are implementations for other platforms, including Solaris.

      --
      /usr/games/fortune: command not found
    53. Re:Cool by Ewan · · Score: 1

      You still have to run X though, Xvfb being part of X...

      It's much less memory hungry than doing a full X startup, but it has the same issues with security, reliability, etc.

    54. Re:Cool by bored · · Score: 1
      No matter what people say, nor what the benchmarks show, Windows XP appears slow, and feels sluggish. Go to the Add/Remove Programs in the control panel. Even with a 2.6Ghz processor with 1GB of RAM, you have to "Please wait while list is being populated." Sure, you can "prove" with benchmarking that XP is faster than 98SE, but my K6-III Win98 machine feels one Hell of alot faster than any XP machine I've worked with.

      Some of this is eye candy issues and intentional delays, turn the crap off, and everything will feel snappier. For example, search the registry for MenuShowDelay.Change the default from 400ms to 1. Run your mouse up and down the start menu now. That itself makes the machine feel 100x as fast. Some of the other things are due to the fact that NT is pretty paranoid about updating the registry journal. This requires a full full disk flush before the registry will accept another transaction. Doing a few 10 thousand transactions can really slow whatever your down down quite a lot. Then there is the crappy software virus scanners and such. Primarly the ones made by the big virus scanner companies that are basically big slowdown viruses.


    55. Re:Cool by Nodatadj · · Score: 1

      Why did no-one complain anymore after the mirrors were installed...I think I missed the point of that story.

    56. Re:Cool by iabervon · · Score: 1

      I actually saw someone boot XP for the first time yesterday, and it seemed to take forever. I didn't actually time it, but it seemed to me to take longer than booting Linux does even if you wait for Oracle to start.

    57. Re:Cool by GlassHeart · · Score: 1

      Nobody complained anymore because the mirrors gave them something to do (fix their hair, etc) while waiting for the elevator. While the waiting time did not go away, users no longer feel they're waiting for something.

    58. Re:Cool by shaitand · · Score: 1


      "Turning one average high-end box off at night can save as much as $14 a month"

      And cost you it again when you turn the system on again and all the capacitors have to refill with juice. Not to mention costing you a harddrive every 6-8months because of the massive wear you put on it. The temperature change can also damage components (much more likely than damage due it "being hot" in a system where everything is operating properly), The heat centers of the pc have cooling technologies to rapidly dissapate heat that is produced when operating... this is a balancing factor that keeps the heat more or less at a fixed temperature. When you power off, there is no heat being added but the cooling heat sinks still rapidly dissapate the heat, causing the same kind of rapid temperature change that bursts pipes and cracks sidewalks.

      Boil an egg and take it directly out of the boiling water and throw in ice water. Note the effect on the shell. Then remember you do that to the most critical components of your computer everday.

    59. Re:Cool by derF024 · · Score: 2

      On a crappy laptop, I think you mean. :-)

      I'm not running linux, but OS X, on a laptop. I had an uptime of about 65 days before I screwed something up and it had a kernel panic.


      Yes, my laptop can sleep. I corrupted 2 hard disks and burned a horrible memory into a battery before I realized how stupid it is to actually use the sleep function on modern laptops.

      1) sleep (as opposed to hibernate) doesn't actually shut the machine down, it just puts everything in low power mode, draining your battery. If you sleep your laptop while it's plugged in, go somewhere else and plug in your laptop again, you'll destroy your battery within 2 months.

      2) the machine still generates heat when it's sleeping. With my P4 based laptop, it's enough heat to melt my vinyl bag near the exhaust port when i sleep the machine and put it in the bag for a few hours.

      3) in low power mode, many laptops don't lock the disks (because they take longer to spin back up when they're locked.) Unlocked disks mean that the heads will strike the platters if the laptop gets hit hard enough.

      Beyond that, resuming from sleep on a different network usually means restarting daemons and bouncing interfaces until they realize what's going on. At the very least, my local DNS cache (djbdns) needs to be reloaded.

    60. Re:Cool by shaitand · · Score: 1

      If your linux system using the current init system takes a time measured in MINUTES to boot your running WAY too many services anyway! What did you do, pick the redhat "everything" option and leave it all turned on?

    61. Re:Cool by shaitand · · Score: 1

      Getting the source code, the api, and the right to use it is much harder. Being modular is only a part of it.

    62. Re:Cool by lyphorm · · Score: 0

      It's worked that way on Windows for a long time.

      And I've always hated that about windows... Sure I have the login screen up, but the hard drive light is still pegged. And it takes 5 times as long to log in, unless I wait for everything to finish "loading in the background". I'd rather have it all done up front.

      Of course that's just my opinion, which will make it nice when I can just not use this new "feature".

      --
      ______-___--_-__-_---_-----__-_-___-_-_---_-----_- __--_____
    63. Re:Cool by juhaz · · Score: 2

      And cost you it again when you turn the system on again and all the capacitors have to refill with juice.

      That's bullshit. And you know it. Typical (used for mostly only, they're not batteries or anything...) caps hold a miniscule amount of juice.

      If an average setup draws 200W of power, then over-the-night amount would be around 1.6kWh, if you've got caps that can store that in few cm^3 and be loaded in few seconds, you'd be an instant billionaire. PC power supply would take hours to load them, thouh, or more probably be overloaded and you'd be left with a smoldering wreck.

      Boil an egg and take it directly out of the boiling water and throw in ice water. Note the effect on the shell. Then remember you do that to the most critical components of your computer everday.

      No you don't. Temperature of CPU core on hottest systems might be near boiling point, but rest of the system is not even half of that, and the "throw in the ice water" part is mysteriosly missing.

      How about: boil and egg and take it out of the water. Leave it on the table to cool, wait. Nothing happens.

      Sure. Heat expansion probably does lessen the life expectansy of components somewhat (probably not enough to be significant, you're going to swap it in few years anyway), but you're overstating it so much it's not even funny, only stupid.

    64. Re:Cool by Hatta · · Score: 1

      But I can download more than $14 worth of music/movies/etc overnight.

      --
      Give me Classic Slashdot or give me death!
    65. Re:Cool by _|()|\| · · Score: 1
      Not to mention costing you a harddrive every 6-8months because of the massive wear you put on it.

      Nonsense. Hard drives are rated for tens of thousands of start/stop cycles--more than enough to turn off your computer at night.

    66. Re:Cool by _|()|\| · · Score: 1
      I do find it interesting that anyone beside embedded developers care about Linux boot times.

      Boot times are relevant to availability, which is one reason for the popularity of journaling file systems.

    67. Re:Cool by nihilogos · · Score: 1

      Hey ... that vitrite thing rocks!

      --
      :wq
    68. Re:Cool by Anonymous Coward · · Score: 0

      damn, you had me until God.

      there is no God. Fuck.

    69. Re:Cool by pyrrho · · Score: 1

      except the complete machine state is not all stored in regular memory... some is stored in the hardware... that is, hardware has to be re-inited... this is a hard to do in general, though when you ahve a system that is working this way, it seems easy... but that's just because it's working.

      --

      -pyrrho

    70. Re:Cool by Li0n · · Score: 1

      He's running a 486 you insensitive clod!

      --

      ~
      ~
      :wq
    71. Re:Cool by shaitand · · Score: 1

      After poweroff your cpu and the other components of your system should be ice cold by the time you can crack the case. Because of the materials used and heatsinks (obviously the fans aren't cooling anything after poweroff). Touch a heatsink, ever noticed they are always cold to the touch? That's the "ice water" effect.

      It does not have to be literally boiling temperature for my point to apply. Sidewalks generally (desert aside) don't get anywhere near that hot either, nor do they cool so rapidly as an eggshell in ice water. But the temperature variation in even the coldest climates is enough to crack them over time.

      "How about: boil and egg and take it out of the water. Leave it on the table to cool, wait. Nothing happens."

      Boil the same egg for 8hrs everyday, then leave it on the table to cool everyday. Never change eggs, that would be cheating. The example really doesn't work with an egg of course since the egg would rot, but any physics teacher can explain what I'm talking about. It's also only ONE of types of wear I've already indicated.

      "Sure. Heat expansion probably does lessen the life expectansy of components somewhat (probably not enough to be significant, you're going to swap it in few years anyway)"

      Define "few", I know people who keep any individual component for less than a year (myself), and those who keep the same hardware for 8, 10, or even 12yrs. I'd say the average is probably about 5yrs. We aren't talking about p1's here that get a little warm to the touch and can be kept at even keel with reasonable heatsink. Powersupply, various chips on the board, video chipsets, etc. It's bad stuff and why people who run and shutdown everyday almost NEVER make it 15months without having SOMETHING go bad in their computer and needing to replace it.

      The additional wear and tear over time of repeated boots (combined with video editing and other disk intensive tasks becoming common place) are a BIG part of the reason hard drive manufacturers ganged up and dropped warranty lengths.

    72. Re:Cool by Anonymous Coward · · Score: 0

      0) I have a laptop that I have slept everyday for years now. The batteries slowly die over 2 years but would do so anyway, from being charged and dischaged a 1000 times. I have never corrupted a hard drive from sleeping, but then I have been running reiser on the laptop for over 2 years now.

      1) Yeah, draining your battery at about 1/24th the rate of it being on.

      2) errr, no. The processor is halted and draws almost no power, certainly not enough to melt plastic. Let's say that your laptop would drain it's batteries in 4 hours. In sleep mode they would last for 4 days. This is 1/24 the heat dissipation. This means that if your computer was drawing 50 watts at full power in sleep mode it would draw 2 watts. A night light draws 7 watts and barely gets warm.

      3) Hard drives haven't "locked" in about 15 years. When the hard drive is not in operation they automatically park their heads, all by their lonesome. If you take power from a hard drive, it's heads will swing back around and park automatically.

      4) I pop out my pcmcia network card, then reinsert it. Beep Beep Beep, everything is good. Why would your DNS cache need restarted? Is the IP address for slashdot.net somehow different than it was at your last location?

    73. Re:Cool by shaitand · · Score: 1

      I wasn't referring to starting/stoping in itself, I was referring to the disk load of the boot process.

      Although granted, like virtual memory wear, this is GENERALLY reduced for a linux user.

    74. Re:Cool by shaitand · · Score: 1

      hey now, a proper 486 or p1 with a promise disk controller/drive to go with it can STILL manage to boot a linux box in about a minute.

    75. Re:Cool by Anonymous Coward · · Score: 0

      I'm not sure, but can't we just reorder the services now? Can we just change the number so that some of them start before others? As long as the dependancies are right, what would blow up?

    76. Re:Cool by t0ny · · Score: 1
      There are no flaws with Linux. It has been crafted by the hand of God, and given unto us unworth human beings.

      Praise be to Linux, Amen.

      --

      Manipulate the moderator system! Mod someone as "overrated" today.

    77. Re:Cool by nathanh · · Score: 1
      No matter what people say, nor what the benchmarks show, Windows XP appears slow, and feels sluggish. Go to the Add/Remove Programs in the control panel.

      Snap! I hate that. You click the Start button and I reckon I could read the entire Dune trilogy in the time it takes for something to appear.

      Even worse is when you go to a submenu and it ... just ... takes ... for ... ev ... er ... to appear. This is a Pentium-4 with 512MB ram and I honestly feel like I've been transported back to the 1980s.

    78. Re:Cool by bishop's+farewell · · Score: 1

      In my rather limited experience, FreeBSD boots up and shuts down far faster than Linux. Loading the kernel and hardware probing are about the same, but the init scripts are over in a flash on FreeBSD.

      I found this on 4.8-STABLE. I have recently installed 5.1-RELEASE over this, and this is also fast. 5.x has a new init script system, with dependancies.

      However, to really put this to the test, I need to make sure that FreeBSD is providing all the services that Linux does. On Linux, I try to make sure that no uneccessary services are started. On FreeBSD, I need to add to the services being started to make it do the same as Linux.

      Boot up time is important. Fast boot on my laptop would be very welcome. On my workstations, I experiment with new Linux kernels and FreeBSD, which requires frequent reboots. On a mission-critical server, fast shutdown and reboot reduces down-time when rebooting is the only solution to a problem.

    79. Re:Cool by Nodatadj · · Score: 1

      Ah, gotcha...
      I would have complained because I hate mirrors

    80. Re:Cool by HeghmoH · · Score: 1

      Sorry, but your laptop's badly-implemented "sleep" function is vastly different from my laptop's sleep function.

      Putting your laptop in some "low-power mode" and then using that for storage is, of course, utterly stupid. But on a Mac laptop, sleep is not "low-power mode", the machine is turned off, with the exception of memory. Memory doesn't take a lot of electricity to save its contents.

      So, point 1 is silly, I have no problem with this. Point 2 is stupid, the processor is shut off. no heat is generated. Point 3 is stupid. Of course the disk is "locked", the disk is off. Although I have to say that, due to carelessness, I have dropped my computer once while it was sleeping and once while it was turned on and active, and it was fine after either one.

      Lastly, if your OS has problems resuming from sleep on a different network, get a new OS.

      I will repeat it again: I use the sleep function on my laptop all the time. I never actually keep the machine fully shut down. The computer has sat in bags for days, endured X-Ray machines, trans-atlantic and trans-pacific flights, been manhandled and dropped, and has changed networks more times than I can count, over two years without ever having a problem. My previous laptops have similar experiences, no problems. The only reason I ever have had to shut the computer fully down is to change an internal hardware component, like the wireless card, or RAM, or a hard disk.

      So, no, your laptop cannot sleep, it has some sort of idiotic low-power mode that they call "sleep".

      --
      Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
    81. Re:Cool by Anonymous Coward · · Score: 0

      > I reckon I could read the entire Dune trilogy...

      There are six books in the Dune series.

    82. Re:Cool by jandrese · · Score: 1

      What kind of POS laptop do you have? I have to make sure never to get one of those. Even my crappy Dell laptop knows how to sleep (turn off the display, halt the CPU, leave the memory in refresh-only mode, spin down the HDD, shut down the external interface cards, etc...) correctly. All it takes is closing the lid and I can put the laptop in a bag and take it anywhere. When I pop the lid back up it's running in 2 seconds (the time it takes to reprobe the hardware and get the display framebuffer back up). It takes a bit more power than hibernate mode (which writes the contents of memory to disc and completely shuts down the machine), but the difference is negligable (the batteries are still "full" after 3-4 days in the bag in sleep mode, I've never really tested it harder than that).

      --

      I read the internet for the articles.
    83. Re:Cool by jandrese · · Score: 1

      The problem with this is that laptop HDDs are _slow_ and they're shipping with more and more memory these days. It can take a couple of minutes to write 256MB to the HDD, and another couple of minutes to restore it when the laptop is brought back to life. That's painful.

      --

      I read the internet for the articles.
    84. Re:Cool by ajs · · Score: 1

      What you suggest is quite possible with the current setup. For example, you could simply background many processes while coming up. No need to wait to see how sshd fared, you just keep coming up. Things like named might be touchier so you wait for them.

      This is all doable with the current system. Adding hooks for such "backgrounding" to be controled and reported on as normal would be nice, but is clearly not REQUIRED. But, even if you did do that, it would be far lighter weight than replacing the whole thing with python!

    85. Re:Cool by nathanh · · Score: 1

      > I reckon I could read the entire Dune trilogy...

      There are six books in the Dune series.

      And there are 3 books in the Dune Trilogy.

    86. Re:Cool by CoolVibe · · Score: 1
      I mean really how often do you have to reboot your linux box?

      Never. I use FreeBSD. (*rimshot*)

      But since we're talking init here, having a plaform agnostic init procedure that could parralellize tasks while booting, and have some clue when some service is done starting, so it can kickstart the one depending on it, would be a boon to have on any OS that wants to behave like UNIX.

      For servers, sure, the old init works just fine, but being able to boot quickly would be nice for kernel developers.

      You meddle with pointers in kernelspace, you panic, you debug, and ultimately: reboot. Happens more often than you think if you're meddling with that kinda stuff.

  9. Why ? by Anonymous Coward · · Score: 5, Insightful

    I like python a lot, but why make it a requirement for init ? Just means more stuff has to be installed fort he default system to work. I prefer to sue the base shell.

    1. Re:Why ? by Anonymous Coward · · Score: 5, Insightful

      Remember when everything in /sbin was staticly linked, /bin -> /usr/bin and /usr was a separate filesystem?

      No more.

      The only thing we need still is parallel loading. Methinks a good RC system can do it.

    2. Re:Why ? by Anonymous Coward · · Score: 0

      That's today's mentality, always sue everything... Dammit, when will it stop?!?!!?

    3. Re:Why ? by Anonymous Coward · · Score: 0
      I prefer to sue the base shell

      You see, this is the problem with our society today. Everybody always wants to sue somebody for stuff that really isn't anyone's fault.

    4. Re:Why ? by dcgaber · · Score: 4, Funny

      Sue the base shell? Darl, stop posting as AC!

    5. Re:Why ? by crotherm · · Score: 2, Interesting

      Moderators, mod up this parent!

      I 100% agree that linux can use a parallel service loader, but not with the bloat Seth envisions. All systems come with bash. Why not use it? Python is not needed for this.

      Personnaly I LIKE my init.d scripts.

      --
      "Those who make peaceful revolution impossible, make violent revolution inevitable" - JFK
    6. Re:Why ? by the_2nd_coming · · Score: 2, Interesting

      becasue BASH does not scale well and is dificult to use when needing to expose APIs to an upper layer.

      --



      I am the Alpha and the Omega-3
    7. Re:Why ? by Hatta · · Score: 1

      I always make /usr a separate file system. What's the big deal?

      And why is a speedy init process important? You might save 40s on kernel upgrades, but that's about it.

      --
      Give me Classic Slashdot or give me death!
    8. Re:Why ? by __past__ · · Score: 4, Insightful
      All systems come with bash.
      <rant>
      How about "All POSIX-compatible systems come with a bourne-compatible shell"? I don't see any reason why a developer of an init system, which is so not tied to a specific kernel, should restrict himself to a non-standard embrace-and-extend version when he can also follow open standards, and create something more useful to more people instead.
      </rant>
    9. Re:Why ? by Anonymous Coward · · Score: 0

      Have you ever programmed with BASH?

    10. Re:Why ? by grolschie · · Score: 1

      Why even need a scripting language to do this? Wy not compile a C/C++ app for each arch being released on? Wouldn't this be faster and have less bloat?

    11. Re:Why ? by bill_mcgonigle · · Score: 1

      All systems come with bash. Why not use it? Python is not needed for this.

      The trouble with bash startup scripts is that they wind up calling bash - alot, either directly or through calls for shell expansion of a phrase.

      When this was discussed a couple weeks ago here (where are the dup whiners?) someone pointed to a study showing something like 20% of linux boot time was spent starting bash.

      Presumably, the python solution would load python once and get on with parsing. Of course, if they're not careful they'll wind up calling bash alot. :)

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    12. Re:Why ? by Anonymous Coward · · Score: 0

      That (parallel init scripts excution) SCO OpenServer had in 1995 (BTW, Solaris still does not have it).

      And DON'T touch rc scripts, its a simple and powerful thing, we do not need stnkin Windows "services" mess or some obscure daemons written in C with no source code readily available. It ain't broken, do not fix it.

    13. Re:Why ? by WNight · · Score: 1

      Technically, anything that can execute a daemon can be used for init scripts. Embedded linux (the only reason to not have maybe 20MB of Perl and Python) can get by with a simple shell script, or even lighter weight, just a list of services to run and standardize parameters. (In other words, get rid of the need for a script for each.)

      The reason to write this in Python (or Perl) is that shell scripting is hideously ugly. While it's technically Turing complete it lacks many features that modern programmers feel are essential. When I have to write something in shell script it invariable takes longer, produces longer and uglier code, is less robust, slower to execute, and has less features because everything I want to add is such a pain.

      Something like this is pretty much the exact target application for a language like Python or Perl.

    14. Re:Why ? by shaitand · · Score: 1

      parallel service loading is one of the major reasons for instability in XP. Although even if the initial implementation isnt' done right in linux it will end up being done right thanks to the beauty of open source. So I say bring it on.

    15. Re:Why ? by Anonymous Coward · · Score: 0

      You're nuts. The SysV init system garbage.

    16. Re:Why ? by greed · · Score: 1
      Actually all POSIX-compatible systems come with a Korn-compatible shell. In /bin/sh.

      Sun and Linux are notably different on this one. Linux isn't UNIX, and if you don't like it, return your downloaded ISO for a full refund. Solaris puts the POSIX shell in /usr/xpg4/bin/sh, which really sucks when you're trying to write a portable shell script. (No /bin/ksh by default on linux, /bin/sh isn't always POSIX, and only Solaris (IME) has the POSIX programs totally separate from the OS programs. Yippee!)

    17. Re:Why ? by Tet · · Score: 1
      Remember when [...] /usr was a separate filesystem? No more.

      Speak for yourself. It is on all of my systems, and with good reason -- so it can be mounted read only. I also have several other filesystems (for equally good reasons). I'm disappointed that current distributions seem to take the "Stick it all in one big root fs" approach. I guess it makes their lives easier. But it doesn't make it right, and it's not a good idea.

      --
      "The invisible and the non-existent look very much alike." -- Delos B. McKown
  10. The "ONE"! by Anonymous Coward · · Score: 0

    "It is innovative projects like Storage, SystemServices and HAL that can bring the kind of integration to the underlying system that current X11 desktop environments lack."

    HAL I can see, but Storage is just a substitute for the File System. Now how is the X11 DE environments lacking there? Or is this another example of the MS "One solution" thinking in action?

  11. Interpreter FUD by Soong · · Score: 1, Troll

    Keep Python interpreters out of my system guts!

    System code should only be written in C!

    --
    Start Running Better Polls
    1. Re:Interpreter FUD by heh2k · · Score: 1

      fyi: init scripts are sh/bash (that's why they're called scripts.

      iirc, there was a kernel summit paper about a proper dependency system for init scripts.

    2. Re:Interpreter FUD by Anonymous Coward · · Score: 0

      Write system stuff in C.

      Python programs have a base memory usage of a few megabytes. What happens to the idea that Linux can run on machines that don't have many megabytes?

    3. Re:Interpreter FUD by Anonymous Coward · · Score: 0

      Exactly!

      WHY?!?! Why reinvent the wheel?? Why must people try to convert Linux into a Windows-looking and running OS??

      SysV / BSD Init is fine the way it is.. And C is the best approach.

  12. Good idea by shepd · · Score: 0, Flamebait

    Because of the crappy Sys V init, I use slackware for it's excellent init system.

    Why go to all this effort when it's already done for you?

    --
    If you could be told what you can see or read, then it follows that you could be told what to say or think - BoC
    1. Re:Good idea by shepd · · Score: 1

      >(Score:-1, Flamebait)

      Wooo, the redhat zealots are out there tonite!

      --
      If you could be told what you can see or read, then it follows that you could be told what to say or think - BoC
  13. Nonsense by Anonymous Coward · · Score: 0

    This strikes me as a completely misdirected load of nonsense. Integrating Init into the Desktop ???? Someone is missing the plot somewhere...

  14. RTFA by truthsearch · · Score: 5, Insightful

    SystemServices is not at all tied to Gnome. It will probably not require much more than the kernel and Python. His goal is partly to make a nice set of APIs callable from a desktop like Gnome to ease with management and error reporting. This project is not tightly integrated with Gnome just because someone from Gnome has started it.

    1. Re:RTFA by Bryan+Ischo · · Score: 1

      OK, I apologize if I don't know enough about Python and Gnome to be able to tell what parts of Gnome and what parts of Python this person intends to use. I am not an expert in either Python or Gnome. The author of the article writes:

      Starting a service: ServiceManager, when you tell it "start org.designfu.SomeService" does a check on SomeService's dependencies, loads those first if necessary, and then activates org.designfu.SomeService using normal dbus activation. Ideally this would mean activating the daemon itself which would use DBus, but it could also mean activating a "python wrapper". ServiceManager sends out a signal over DBus announcing a new system service (and providing its name). At this point org.designfu.SomeService is responsible for keeping people notified as to its state.

      I guess I assumed that dbus was some Gnome message passing system. Is it instead something in Python?

    2. Re:RTFA by Anonymous Coward · · Score: 0
      and Python

      Oh. Is that all?

      WTF? Since when did we need a bloated interpreted language to boot our systems?

    3. Re:RTFA by GeoGreg · · Score: 1

      DBus is something currently under development that is meant to serve as a fairly generic message passing system. There's a link in the Slashdot item.

    4. Re:RTFA by be-fan · · Score: 1

      dbus is a freedesktop.org standard for inter-app communication. Its a dependency-free C library with bindings for Python and other languages.

      --
      A deep unwavering belief is a sure sign you're missing something...
    5. Re:RTFA by Bryan+Ischo · · Score: 1

      My apologies again. My eyes glazed over a bit when I saw all of the links in the Slashdot article and I didn't follow them all. I read just enough to decide that this init replacement had some pretty serious dependencies on other software, and assumed it was mostly Gnome related. Mea Culpa.

      But certainly SystemServices does have many more dependencies than init, even if none of them are Gnome specific. Python, D-Bus, all of the naming systems and nomenclatures inherent in his description of how services identify each other ...

    6. Re:RTFA by Bryan+Ischo · · Score: 2, Funny

      This would all be very offensive if it wasn't true.

      Just kidding (of course).

    7. Re:RTFA by Anonymous Coward · · Score: 0, Funny

      My apologies again. My eyes glazed over a bit when I saw all of the links in the Slashdot article ...

      Horseshit. Your eyes glazed over when some guy shot a load of hot cum onto your face. Ischo sounds sorta oriental, so you probably have a big old pan face so it was more than likely several guys to cover all that territory.

      Peace.

    8. Re:RTFA by Tony · · Score: 0

      WTF? Since when did we need a bloated interpreted language to boot our systems?

      Well, the current init system relies on shell scripts.....

      (I agree; I *hate*hate*hate* Python. It sucks, and it blows. If I wanted white-space blocking, I'd program in MUMPS.

      (Everyone knows Perl is the way to go. :) )

      --
      Microsoft is to software what Budweiser is to beer.
    9. Re:RTFA by aminorex · · Score: 1

      Init in Python is a non-starter.
      We don't do Python.

      --
      -I like my women like I like my tea: green-
    10. Re:RTFA by Lennie · · Score: 2, Insightful

      /bin/sh is not interpreted ? You don't consider it bloated ? Look better at Python, it's actually very elegant.

      --
      New things are always on the horizon
    11. Re:RTFA by tigga · · Score: 5, Insightful
      /bin/sh is not interpreted ? You don't consider it bloated ? Look better at Python, it's actually very elegant.

      Python may be elegant as many other interpreters, but Linux supposed to be more or less Unix-compliant and if you already have /bin/sh there then just use it. There is no justification to complicate things.

    12. Re:RTFA by Anonymous Coward · · Score: 0

      D-Bus is a CORBA ripoff with much of the good stuff missing, presumably created because CORBA was NIH.

      "The nice thing about standards is there's so many to choose from" -- and so many people who want to invent their own to add to the many that already exist, it seems...

    13. Re:RTFA by Anonymous Coward · · Score: 0

      I didn't see them suggesting an implementation of Perl or some other junk...

      Getting rid of a lot of the old cruft can make room for a lot of improvements that don't work in the current environment, or if one can get them to work, they are crude hacks that basically do nothing of what they could be able to.

    14. Re:RTFA by k8to · · Score: 1

      In practice, haters of python whitespace are inevitably users who remember bad whitespace experiences from other systems. Whitespace on python is, by contrast, a good experience. Try it and you'll see.

      --
      -josh
    15. Re:RTFA by Jeremiah+Cornelius · · Score: 1
      Yeah! All it needs is Python! Python in /bin ! No thanks.

      I remember how much I /HATED/ the inflexibility caused when Solaris made /bin a link to /usr/bin .

      The idea of Python being a part of essential system services is a real bother. It's much easier to break a full language interpreter and its extensions than it is to break a staticly-linked shell. I get a little uneasy about the "RedHat-centric" quality of this. RedHat needs Python to install and run its Ananconda - so they already have the dependancy. I didn't like this for hardened, edge devices, so I have gone back to reccomending Debian bases when doing this on Linux. If I were to include python on a firewall or proxy, I might as well let gcc live there too!

      This whole plan would fork the start-up styles of embedded appliances, floppy distros, desktops and servers. I understand the benefits that are being touted - I just don't think they are worth the drawbacks. You want something clean, with a set of library functions provided for distros to standardize their initscripts? The NetBSD rcNG is mucho cool in this regard.

      Question for the clueful? How does OS X handle this init? Is it just traditional BSD rc?

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    16. Re:RTFA by Dysan2k · · Score: 1

      Embedded = Busybox or less. I don't even use full init implementations on embedded gear cause it's just too dang big. Python would, of course, be "right out". I do have to admit, another GOOD choice for 'init' is a plausable idea (gods know I'd love to see chkconfig go bye-bye), but whatever the solution, it needs to be fast, clean, and efficient.

      --
      -What have you contributed lately?
    17. Re:RTFA by shaitand · · Score: 1

      /bin/sh is the shell and is already going to be therre. Python is EXTRA bloat, whatever bloat sh has is going to be there either way.

    18. Re:RTFA by Anonymous Coward · · Score: 0

      CORBA is nice in theory, but horribly complex to deal with in practice.

      Besides, dbus was created as something both KDE and GNOME (and other apps) could use. There has been a movement in the GNOME developement community to make things less CORBA-oriented, and thus, the next generation versions of things like gconf will NOT have a CORBA dependency (i.e, orbit). Any CORBA-oriented technology would be a incredibily tough sell to KDE developers, as they have gone that route in the past, and abandoned it for things less complex, faster, and easier to maintain (kde 1.x last used CORBA I beleive, I'm not terribly well versed in KDE related technologies)

    19. Re:RTFA by squiggleslash · · Score: 1

      OSX has a traditional BSD init with /etc/rc, however this hands over control to a service called SystemStarter fairly early on. This does all the complex stuff from what I can work out - runs scripts in /Library/StartupItems which have a sort of SYSVness to them, etc.

      --
      You are not alone. This is not normal. None of this is normal.
    20. Re:RTFA by fault0 · · Score: 1

      638388 bytes /bin/bash*
      817796 bytes /usr/bin/python2.2

      less than 200kb more is hardly any more bloat on modern systems. SystemServices' equivalent of init will probably be as light as init too. It'll just call python scripts rather than bash scripts.

    21. Re:RTFA by Anonymous Coward · · Score: 0

      [/usr/local/lib]$ du -Hs python2.2
      41M python2.2

    22. Re:RTFA by Master+Bait · · Score: 1

      $ ldd /bin/bash
      libncurses.so.5 => /lib/libncurses.so.5 (0x4001a000)
      libdl.so.2 => /lib/libdl.so.2 (0x4005f000)
      libc.so.6 => /lib/libc.so.6 (0x40062000)

      $ ldd /usr/local/bin/python
      libpython2.3.so.1.0 => /usr/local/lib/libpython2.3.so.1.0 (0x4001a000)
      libpthread.so.0 => /lib/libpthread.so.0 (0x4011f000)
      libdl.so.2 => /lib/libdl.so.2 (0x4016f000)
      libutil.so.1 => /lib/libutil.so.1 (0x40172000)
      libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40175000)
      libm.so.6 => /lib/libm.so.6 (0x40228000)
      libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4024b000)
      libc.so.6 => /lib/libc.so.6 (0x40254000)
      /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

      --
      "Only in their dreams can men truly be free 'twas always thus, and always thus will be."
      --Tom Schulman
    23. Re:RTFA by Jeremiah+Cornelius · · Score: 1

      Oh, good. One more flavor. :-)

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    24. Re:RTFA by juhaz · · Score: 1

      sh is (maybe, server system with nobody logged in doesn't have sh in memory. full desktop with granny isn't going to have any shells open either) going to be there after the system boots.

      There is absolutely no need for it during the init, especially not tens if not hundreds of different bash processes each adding to bloat. ONE python interpreter can handle all that with WAY less overhead.

    25. Re:RTFA by shaitand · · Score: 1

      we aren't refering to MEMORY usage. sh is going to be INSTALLED on the system anyway. PYTHON does NOT need to be installed on most systems (is installed and need to be installed are two different things).

    26. Re:RTFA by Anonymous Coward · · Score: 0

      Whitespace on python is, by contrast, a good experience. Try it and you'll see.

      No it's not.

      The mess with "how many spaces is a tab?" isn't worth dealing with.

    27. Re:RTFA by Anonymous Coward · · Score: 0

      what's your basic shell weigh in at these days, 10K soaking wet with it's shoes on and command completion? How about a real lean mean python interpreter? I'd guess several megs, and that before it could actually do anything, like interface with the system.

    28. Re:RTFA by RealRoadKill · · Score: 1

      This seems to be a fork of ideas from common UNIX thought. "No Sir I didn't like it". I say it is too different than your standard SysV UNIX. If they feel that this is SOOOO important then fork a new Linux kernel/distro and call it Desktop Linux, and leave the rest of the world, where we are happy with things the way they are alone. p.s. Yes I am scared of change.

    29. Re:RTFA by timftbf · · Score: 1

      OS X, in as far as I can make out from the couple of init scripts I've had to write for it, is very much like rcNG. Specify "things that must be started before me", and let init sort out what order to run everything in.

      Regards,
      Tim.

    30. Re:RTFA by daecabhir · · Score: 0

      I have tried it, and it sucks sewer water through a straw. There is a good reason why whitespace delimited/blocked languages were abandoned in favor of languages that use things like semicolons or curly braces - because whitespace should be used for making the code clearer to read, not as some syntactic convention. Python is a blight upon the world, and the fact that Red Hat has tied themselves so tightly to this piece of cruft that any inclination I ever had for using Red Hat has gone out the window. Python has a Ll rating of at least 9.5... I cannot even begin to grasp why anyone likes the foul beast.

      --

      -- daecabhir (this mind intentionally left blank)
    31. Re:RTFA by Anonymous Coward · · Score: 0

      What's that with you people and that "horseshit" thing. Not that horseshit is anything bad, but why won't you use, say, "marecum" instead?

  15. Please don't replace me. by Anonymous Coward · · Score: 5, Funny


    Back in my day, young whippersnappers didn't show disrespect to their
    elders by talking about replacing them with fancy-pants code. We were
    shell scripts and we liked it.

    Not Bash scripts either, real life ksh scripts. You hippies and your
    bash shell.. why I outta.. ouch, hurt my arm waving it so.

    Anywho.. back in the day when we were happy little startup systems
    we didn't have to worry about snakes. Python? Who ever heard of that
    back then? We has ksh and csh and WE LIKED IT.

    Damn granola-crunching kids and their need to improve what don't need
    improving.. Stay in school, don't become pot-junkies and enjoy the
    blessed rc that nature intended.

    It started with all this Rock and/or Roll that you ingrates listen to.
    Back in the 70's we rc scripts were appreciated. Then along comes this
    electric gee-tar thing getting so popular and that did it.

    Dag nabbit... where's my crontab..

    where was I? Oh yeah..

    Back in my day, young whippersnappers didn't show disrespect to their
    elders by talking about replacing them with fancy-pants code. We were
    shell scripts and we liked it.
    .
    .
    .

    1. Re:Please don't replace me. by Anonymous Coward · · Score: 0

      What's funny is that the people who write this style of "joke" probably aren't more than 14 years old.

    2. Re:Please don't replace me. by Mr.+Slippery · · Score: 1
      Not Bash scripts either, real life ksh scripts.

      Ksh? Ksh? What's with this new-fangled k-thingie? That something to do with the "katie ee" thing the kids keep going on about? K this, K that...sounds korny if you ask me.

      sh is the only real shell. Remember, you can't spell "shell" without sh.

      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
    3. Re:Please don't replace me. by Anonymous Coward · · Score: 0


      probably aren't more than 14 years old.

      actually I'll be 40 in 2.25 years :))

    4. Re:Please don't replace me. by Anonymous Coward · · Score: 0
      real life ksh scripts

      Even before ksh existed. F'ing newbies.

    5. Re:Please don't replace me. by Anonymous Coward · · Score: 0

      You are completely and utterly wrong. If wrong had an extra synonym listed in the dictionary, it would be your name. Your picture is next to the word "wrong" in the dictionary. You eat, sleep, breathe, shit, and piss wrongness. When you go to restaurants, you order a wrong meal with wrong appetizers because they're on the menu, but are then told "no sir, you are wrong, those aren't on the menu." Not only is your middle name Wrong, your first and last name are Wrong as well.

    6. Re:Please don't replace me. by red+floyd · · Score: 2, Funny

      You had a shell? We had to type things into the ROM monitor!

      --
      The only reason we have the rights we have is that people just like us died to gain those rights. -- Cheerio Boy
    7. Re:Please don't replace me. by Anonymous Coward · · Score: 0

      You had core ! ...

    8. Re:Please don't replace me. by tengwar · · Score: 1
      Yes, we had core!


      When I were a lad, I learnt to program in FORTRAN (none of your poncy lower-case) 4 on a Modular 1 - 64kw of real ferrite core and thirty clanking teletypes smelling of warm oil. When it crashed - which was as often as a low-memory Windows '95 machine running Word - half the time you could reboot without reloading because the OS was still there in the core memory.


      If you did reload, you met the true face of admin hostility. None of these wimpy psychological measures like tempting the sysadmin to type rm -rf while running as root. No, you loaded the OS using a high-speed paper tape reader. Now it seems that no-one ever worked out how to reel in tape as fast as it could be read, so the tape would spew out into a bucket. A plastic bucket. Which would act as a van der Graaf generator to build up a nice large static charge for the next person to try to pick it up.


      And you tell the young these days...

  16. Speedy! by benja · · Score: 1

    Is that part of the ongoing process of making Linux boot faster? :-)

  17. Boot bragging. by Anonymous Coward · · Score: 0

    "The current init system is actually fine in my opinion, but if someone comes up with better system that can boot my Linux system as fast as my XP system boots, I'm game"

    This is Linux. Why are you rebooting so much that boot times are a point of comparison.

    1. Re:Boot bragging. by deck · · Score: 0

      'Cause, if you are an average Joe/Josephine using Linux on a Desktop/Laptop/Notebook Workstation which you shutdown after using it, you want faster boot times. I did a precursory read of the articles and this system (or similar) looks like a "good-thing" for Linux becoming more ubiquitous (everybody's OS) in the general Personal Computer market.

  18. Is it broken enough to need fixing? by ajs318 · · Score: 2, Informative

    The Linux startup process works. Is there any need to muck about with it? On Red Hat et al and Debian, there's the powerful but complicated init.d directory; while Slackware users have a less sophisticated system to contend with.

    And hey, it's not like we have to boot all that often, is it ;-)

    --
    Je fume. Tu fumes. Nous fûmes!
    1. Re:Is it broken enough to need fixing? by xenocide2 · · Score: 1

      Not so much broke as just less efficient than it could be. For some, rebooting is a rare occurance, and parallazing the boot process will do little. For developers, its a win-lose. If what you want to retest needs a reboot, then you'd love it. But the parallal execution can make debugging startup a pain.

      Who this really benefits are the people who don't leave their computer on every moment possible. The people who don't like the noise; the people who are concious about their Mean Time between failures; the people who are concerned about electricial consumption. Not to mention people like me who dual boot.

      --
      I Browse at +4 Flamebait

      Open Source Sysadmin

    2. Re:Is it broken enough to need fixing? by Anonymous Coward · · Score: 0

      On Red Hat et al and Debian, there's the powerful but complicated init.d directory; while Slackware users have a less sophisticated system to contend with.

      OK, I have to nitpick. Slackware's init system is less complicated, not less sophisticated. It has fewer scripts that are easier to read, but it is the same system, sysvinit. If having the init.d, rc3.d, and other directories floats your boat, then make them. If they exist, Slackware's init will use any files in them (provided they don't use lots of Red Hat specific "init functions", all too annoyingly common these days).

    3. Re:Is it broken enough to need fixing? by wolrahnaes · · Score: 1

      The Linux startup process works.
      Agreed. That doesn't mean its the best solution though.

      Is there any need to muck about with it?
      Of course! Isn't that the point of OSS? I can't stand people who look at a new way of doing things (recent example: X replacements) and say that just because the old one works means we shouldnt look at ways to improve or replace the current system to provide a better experience.

      These are along the same lines of what you are saying:
      The Articles of Confederation worked. Why do we need this Constitution stuff?
      Carburetors work fine. Who wants EFI anyways?
      (that was sarcasm for any humorless mods)

      On Red Hat et al and Debian, there's the powerful but complicated init.d directory
      Exactly the point. This article is about replacing init

      And hey, it's not like we have to boot all that often, is it ;-)
      Some people, myself included, like to shut down their computers every now and then. Laptops tend to not like staying on for that long anyways.

      For server admins, doesn't it make sense to spend a little time redoing your boot procedure if it will save a noticable amount of time on the rare occasion of a crash? Less downtime is a good thing last time i checked.

      Obviously if your system is a stability champ, there's no reason to destroy your uptime while tweaking your boot process, but for frequently (re)booted machines (dual-boots anyone?) and any new install, this is a good thing (that is, if it actually does as claimed. I haven't seen any tests yet.).

      --
      I used to get high on life, but I developed a tolerance. Now I need something stronger.
    4. Re:Is it broken enough to need fixing? by jilles · · Score: 1

      Yes, sysadmins are way too expensive for what they do (mostly plugging stuff into other stuff and checking it is plugged in properly). Most of this cost arises from the giant bowl of script spagheti that ties together huge amount of tools with complex, custom command-line interfaces. Sysadmins who have mastered the arcane details of all this rightly feel they have mastered something wickedly clever and deserve all bragging rights. This kind of sysadmin is expensive, however.

      So yes, any kind of way to improve, structure, standardize, polish and optimize all this is worth the trouble. I'm glad to see key linux developers pick up relevant trends from other operating systems.

      Essentially the init.d boot process uses traditional unix concepts like scripts, parsers, commandline options and pipes and filters to emulate a bus (i.e. a means for programs to interact with each other in meaningful ways). Init.d is about sending start/stop signals to programs, intercept error messages, handle depependencies automatically or manually and much more.

      Using a proper bus instead of emulating one removes a lot of complexity and allows for standardized tools to manage the whole thing.

      --

      Jilles
    5. Re:Is it broken enough to need fixing? by arkane1234 · · Score: 1

      Yes, sysadmins are way too expensive for what they do (mostly plugging stuff into other stuff and checking it is plugged in properly).

      Uhhh... I don't know about you, but I do alot more than "plug stuff into other stuff and check if it's plugged in properly" as a sysadmin.

      --
      -- This space for lease, low setup fee, inquire within!
    6. Re:Is it broken enough to need fixing? by jilles · · Score: 1

      I was exaggerating and maybe the fact that you have to do other stuff is part of the problem?

      --

      Jilles
    7. Re:Is it broken enough to need fixing? by ajs318 · · Score: 1

      Points grudgingly accepted. Excuse me while I adjust the wick on my paraffin lamp :-)

      I can see that it's rather inefficient to run all processes sequentially during boot-up. I can see how some of them could be parallelised.

      Maybe I should try some experiments myself - start next to nothing before going multiuser, then login as root and start the real script. This would spawn a bunch of processes to bring each service into play. Some of them wait for an environment variable, or a combination of variables, to be set before proceeding. Some of them set an environment variable as they finish. Just checking an environment variable is not going to take much time, so the unready processes won't hog cycles too many precious cycles.

      But, it still might not be any quicker. After all, the CPU still has to execute the same number of instructions. More if it's switching between tasks .....

      --
      Je fume. Tu fumes. Nous fûmes!
  19. That's a joke, right? by Fefe · · Score: 5, Interesting

    It's "faster", because it's "python based"?!

    The standard Linux init system is based on sysvinit and is slow precisely _because_ it is interpreted (it's basically a ton of shell scripts). The other reason why it's so slow is because glibc is slow and the init system starts several hundred processes during the init process. Just log in on a freshly restarted Linux system and type "echo $$" in a shell prompt to see how many programs were run before you logged in. On my minit based notebook, the number is below 20. On my minit based server, it's still below 30.

    minit takes less than one second to initialize the whole server system, on an aging 466 MHz Celeron box, right from the point where the kernel starts init up to the login prompt. And the server does file sharing, cvs serving, rsync serving, runs a mail server and sshd.

    In fact, because minit does not even depend on glibc, minit can probably initialize a small system in less time than it takes to even load python and glibc on this init system.

    Fast and python based, give me a break. And the freedesktop people should keep their bloat to themselves, if you ask me. With the notable exception of KDE, all the gui systems on Linux have gotten progressively slower and more bloated over the years. KDE has also become slower, but less drastically, so it can be excused IMHO. But Gtk? Give me a break! Even starting the gnome theme engine takes 5 seconds on my 2 GHz Athlon XP!

    1. Re:That's a joke, right? by Anonymous Coward · · Score: 0


      "Just log in on a freshly restarted Linux system and type "echo $$" in a shell prompt to see how many programs were run before you logged in"

      Too bad that won't work on OpenBSD, its PIDs are randomly generated for security.

    2. Re:That's a joke, right? by Anonymous Coward · · Score: 0
      It's "faster", because it's "python based"?!

      No, it's faster because it starts all the process at once and has them block for their dependencies. The faster claim has nothing to do with python.

    3. Re:That's a joke, right? by be-fan · · Score: 5, Informative

      What kind of coke are you on?

      1) Shell-scripting being interpreted is not the bottleneck. The bottleneck is all the processes that most init-scripts start at bootup, as well as stuff like hardware detection, waiting for DHCP leases, etc. Besides, Python isn't interpreted like shell-scripts, it runs on a bytecode-VM. And Python is fast enough that RedHat uses it for its GUI tools, and most people can't tell the difference.

      2)KDE has gotten *faster* since 2.0.x. 3.2 is the fastest release since the 1.x series. In the 2.x transition, GNOME got a lot faster, but people didn't notice it as much because GTK 2.x was so much slower.

      --
      A deep unwavering belief is a sure sign you're missing something...
    4. Re:That's a joke, right? by stevesliva · · Score: 1
      Wait a minute, he said this:
      In other news, reshaped SystemServices around the futile, idealistic goal of having daemons contribute the services instead of silly little shell script wrappers in the future. Ever poked through RH's /etc/init.d/ scripts? Its absurd... they do so much stuff in there that should be included in the bloomin' C code.
      --
      Who do you get to be an expert to tell you something's not obvious? The least insightful person you can find? -J Roberts
    5. Re:That's a joke, right? by Anonymous Coward · · Score: 0
      Too bad that won't work on OpenBSD, its PIDs are randomly generated for security.

      *snicker*

    6. Re:That's a joke, right? by Ianoo · · Score: 1

      You're obviously high on your KDE Kandy, but if GTK engines are taking 5 seconds to start up, your system is broken, my friend.

      Also, glibc is NOT slow.

      Gnome and KDE are both perfectly viable desktop environments and both are improving all the time. It's zealots like yourself that give open source software a bad name.

    7. Re:That's a joke, right? by pmz · · Score: 1

      The bottleneck is all the processes that most init-scripts start at bootup, as well as stuff like hardware detection, waiting for DHCP leases, etc.

      This is very true. Even Solaris will boot in well under a minute when its rc?.d directories are trimmed to a desktop-suitable state. On my seven-year-old Sun workstation, it really seems the POST phase is longer than the actual boot. Seriously, booting is my last concern with Solaris/Linux/BSD/whatever. Especially since my UPS allows very significant uptime even on a crappy home power connection.

    8. Re:That's a joke, right? by scotch · · Score: 1
      And Python is fast enough that RedHat uses it for its GUI tools, and most people can't tell the difference.

      I can tell the difference on my redhat 9 system when the up2date program (written python) doesn't refresh while it's doing its niggly little network fetching tasks. This might be a redhat-coding problem or a python-gtk or a python problem, don't really know. Not a huge deal, I suppose.

      --
      XML causes global warming.
    9. Re:That's a joke, right? by Anonymous Coward · · Score: 0

      3.2 is the fastest release since the 1.x series

      you're running alpha software a lot, eh?

    10. Re:That's a joke, right? by Fefe · · Score: 2, Informative

      Oh yes it is. When I log in a user with bash as shell, you can _feel_ the delay while bash and the dynamic libraries of it are loaded. Yes, even on my Athlon XP. Why? Because my init system loads neither glibc nor bash.

      KDE is only faster than 2.x if you disable all the new eye candy that is now available, like translucent menus and the flashy theme stuff. Yes, that's comparing apples and oranges, but it's also comparing the default desktops. Keramik is themed with large pixmaps, the kde 2.x default layout wasn't (or I'm on crack and didn't notice).

    11. Re:That's a joke, right? by Fefe · · Score: 1

      My desktop environment is fvwm and rxvt. I installed KDE 3.1.4 and 3.2 alpha and GNOME 2.4 to know what I'm ranting about.

      Now that that's out of the way, I invite you to read this PDF to learn why I say that glibc is slow.

    12. Re:That's a joke, right? by frantzdb · · Score: 1

      That sounds like the behavior of a single-threaded application.

    13. Re:That's a joke, right? by scotch · · Score: 1

      I think it's more of a toolkit/X11/window manager/backing store issue. Many signle threaded apps get it right. I'm no expert though.

      --
      XML causes global warming.
    14. Re:That's a joke, right? by LordHunter317 · · Score: 1

      Oh yes it is. When I log in a user with bash as shell, you can _feel_ the delay while bash and the dynamic libraries of it are loaded. Yes, even on my Athlon XP. Why? Because my init system loads neither glibc nor bash.
      Now I know you're talking out of your ass. bash(1) depends on libc6 (glibc), and ncurses 5. init(8) depends on glibc, so glibc is already loaded when bash starts up. All the kernel has to do is spawn a new data segment for the new process, which takes nearly 0 time.
      The only new library it has to load is ncurses, which is small (241k).
      The delay you are seeing is more likely PAM running all its login modules and scripts, not bash being loaded.
      If you're gonna try to be smart, at least think before you post.

    15. Re:That's a joke, right? by leviramsey · · Score: 1

      Have you been reading the thread?

      The poster you're replying uses his own init system which doesn't link against glibc.

    16. Re:That's a joke, right? by frantzdb · · Score: 1

      It is possible to do with one thread, but if you have a UI thread and a network thread, you get everything redrawing nicely for free.

    17. Re:That's a joke, right? by shaitand · · Score: 1

      "bytecode-VM"

      So what your saying is, first it's compiled to a language which is passed to an interpretor err emm overbloated interpretor, err I mean vm.

    18. Re:That's a joke, right? by shaitand · · Score: 1

      I'm sorry but KDE and GNOME are only not BOTH FUCKING SLOW compared to other extremely bloated arse systems like XP and OSX.

    19. Re:That's a joke, right? by be-fan · · Score: 1

      That's because the up2date program is chronically broken. It seems to stall the entire UI waiting for a complete download to finish. The correct solution would be to bust out another thread to handle the UI, or at the very least, make sure you process input or update the window several times a second.

      --
      A deep unwavering belief is a sure sign you're missing something...
    20. Re:That's a joke, right? by be-fan · · Score: 1

      There is a difference between languages that are interpreted (generally referring to languages where the interpreter operates on a syntax tree directly) and languages that run in a bytecode VM. In the latter catagory are several very fast languages like forth. Python is no forth, but its more than fast enough to completely saturate the I/O system of your average PC.

      --
      A deep unwavering belief is a sure sign you're missing something...
    21. Re:That's a joke, right? by be-fan · · Score: 1

      Running 3.2 CVS (slightly after alpha2) right now. It rocks. Its extremely stable for me, I'd consider it beta quality at this point. Its much more stable than WinXP for me at this point, which has taken to crashing (something called mmod.exe) *every* time a visit a web-page.

      --
      A deep unwavering belief is a sure sign you're missing something...
    22. Re:That's a joke, right? by juhaz · · Score: 1

      The standard Linux init system is based on sysvinit and is slow precisely _because_ it is interpreted (it's basically a ton of shell scripts).

      You're seriosly trying to bundle python's speed into the same league with _SHELL SCRIPTS_ because both are "interpreted"? Get real, please?.

      The other reason why it's so slow is because glibc is slow and the init system starts several hundred processes during the init process.

      This is probably the main reason it's slow, those tons of shell scripts are ran by a ton of different bash processes and each rans tons of daemons they are supposed to start. Those billions of bash processes are eliminated, one python interpreter can run all scripts.

      Have you ever even used python, or just bashing something because it's interpreted without any real knowledge about it's performance?

    23. Re:That's a joke, right? by Zenki · · Score: 1

      You have spyware running on your machine.

      http://simplythebest.net/info/spyware/ezula_topt ex t_spyware.html

    24. Re:That's a joke, right? by Nevyn · · Score: 1
      It is possible to do with one thread, but if you have a UI thread and a network thread, you get everything redrawing nicely for free.

      It's pretty easy to do right with one thread, it's _much harder_ to do right with more than one thread ... however it is often implemented badly quicker with multiple threads (like mozilla, I'm sure it was easier to start with to multithread it ... but it's now years later and the best addon is still that galeon allows you to restore you session when mozilla deadlocks or crashes).

      --
      ustr: Managed string API with ave. 44% overhead over strdup(), for 0-20B
    25. Re:That's a joke, right? by oohp · · Score: 1

      GTK2 seems really fast with XFCE, wonder why. People say GTK2 is too bloated.

    26. Re:That's a joke, right? by Anonymous Coward · · Score: 0

      Holy crap- you're right! I'm running a heavily-modified Mandrake install (eg I changed *ALL* the default themes and I'm even using a custom desktop pic) and this is what I got:

      [leetbastard@localhost /]$ echo $$$$$$
      231023102310

      Wow!!! That is really expensive! By the way I added the extra dollar signs for inflation since you're on a crappy old Celeron box and I have a brand new, shiny case-modded champ.

      p.s. I wanted to run that command with Euros instead of dollars to see how process-expensive it would be in France, but I couldn't find how to make the Euro sign. Later I figured out that since Mandrake is headquartered in France this would already be built-in. I love Unicode!

    27. Re:That's a joke, right? by kris · · Score: 1

      In fact he is the author of dietlibc, which he wrote precisely to successfully demonstrate that glibc is a bloated piece of shit.

      Kristian

    28. Re:That's a joke, right? by Anonymous Coward · · Score: 0

      Sure. I dismissed konqueror2 because it was slow, and I started using KDE3.1 because konqueror was fast (same machine).

      Go hide in the bushes you little gnome...

  20. Hurd Linux by Anonymous Coward · · Score: 0

    If you're going to re-invent a major wheel, why not just use adapt Hurd to run with the Linux kernel?

    1. Re:Hurd Linux by Anonymous Coward · · Score: 0

      Do you even know what the Hurd is? Or the Linux kernel for that matter? If you did you would know how stupid that sounds.

  21. Doh. by jensend · · Score: 5, Interesting

    A replacement for the current init system, while necessary, should have fewer, if possible, dependencies than the current init, not more. Unices are being deployed across more and more diverse kinds of systems, and dependencies on python and d-bus, both of which projects I support in themselves, are not going to be welcome in the init of the majority of unix systems today, especially in servers or embedded systems.

    1. Re:Doh. by pmz · · Score: 5, Insightful

      Unices are being deployed across more and more diverse kinds of systems, and dependencies on python and d-bus, both of which projects I support in themselves, are not going to be welcome in the init of the majority of unix systems today, especially in servers or embedded systems.

      This still won't stop the GNU folks from fucking it up, though, because more dependencies ensure GPL-lock-in (you didn't think it could happen to us, too, did you?). This isn't a troll, but a very serious issue, where lots of software is becoming very GNU-specific rather than UNIX-specific (I hope everyone can see this distinction).

    2. Re:Doh. by AME · · Score: 2, Funny
      GNU-specific rather than UNIX-specific (I hope everyone can see this distinction)

      Well, if GNU is not Unix, isn't the distinction explicit?

      --
      "I have a good idea why it's hard to verify programs. They're usually wrong." --Manuel Blum, FOCS 94
    3. Re:Doh. by pmz · · Score: 1

      Well, if GNU is not Unix, isn't the distinction explicit?

      Only in the commercial sense...otherwise, GNU's aim for POSIX compliance would be kind of odd. My main gripe is people who use non-standard defines from header files, put broken assumptions into configure scripts, etc. This is a cultural problem, where there is a vast naivte/ignorance/arrogance among OSS programmers who think only GNU/Linux counts for anything and that people who use Solaris/BSD/whatever should go rot somewhere. GNU/Linux is becoming the Windows of the OSS world...I guess because that's the type of people being attracted to it.

    4. Re:Doh. by Anonymous Coward · · Score: 1, Insightful

      Never attribute to malice, what can be attributed to sheer ignorance.

      I suspect that most of those problems are people not knowing enough about the Solaris/BSD platforms to write portable code... not merely being careless.

    5. Re:Doh. by Kashif+Shaikh · · Score: 1

      "becoming very GNU-specific rather than UNIX-specific (I hope everyone can see this distinction)."

      Hey! You ate your own words! Everyone knows that: GNU is GNU is Not Unix and UNIX is well, Unix. So the distiction is clearly within the ackronym.

      Kashif

    6. Re:Doh. by Anonymous Coward · · Score: 0

      Well, GNU software is mostly just _better_ in a lot of important aspects. Why suffer?

    7. Re:Doh. by groomed · · Score: 3, Insightful

      GNU software is better, cheaper and freer than its UNIX counterparts. It's no wonder that GNU is finishing off the lame and deaf UNIX moloch. Besides, that has always been the project's goal. It's not like that's a secret or anything.

      As for "lock-in", well, if GNU's the prison, I don't mind being a criminal.

    8. Re:Doh. by Zan+Lynx · · Score: 1

      Because it is Open Source, if those Sun and BSD people want to run GNU software, they are welcome to fix it.

      In defense of GNU specific programmers: It's really hard to write portable code. It isn't taught in schools or in any classes I've ever seen. It only comes with experience developing for multiple platforms. It's a serious investment of time to install and learn a new OS, so most people don't do it. It takes even more time to learn each system's little development quirks.

    9. Re:Doh. by Brandybuck · · Score: 1

      Yes, it's hard to write portable code. It's damned near impossible when GNU keeps changing the libc API between minor releases. But when you have a portable standard, it's foolish to ignore it. There's no reason to write bash-only scripts when there's a POSIX shell standard to write to. There's no reason to write GNU make files when there's a perfectly reasonable and standard make format. Examples abound.

      --
      Don't blame me, I didn't vote for either of them!
    10. Re:Doh. by Nevyn · · Score: 1
      My main gripe is people who use non-standard defines from header files, put broken assumptions into configure scripts, etc.

      Do you want some cheese with that wine? autoconf scripts are there explicitly for portability, otherwise we'd just write crappy makefiles that don't run anywhere else ... like most *BSD software (see openssh for the obvious example, but if I want an RPM for FreeBSD's make can I get it easily -- hell no).

      This is a cultural problem, where there is a vast naivte/ignorance/arrogance among OSS programmers who think only GNU/Linux counts for anything and that people who use Solaris/BSD/whatever should go rot somewhere.

      I'll buy some ignorance, sure. However here's a clue, only a very small amount of Linux developers have access to a *BSD box. So do you make it easier ... no. A couple of weeks after Linux got a sendfile() syscall, FreeBSD discussed it and then introduced a version that was incompatilby different ... for no good reason. TCP_CORK ... introduced into Linux, happily ignored in FreeBSD (well hey they have TCP_PUSH which does almost the same thing, but is just different enough to break anything that would try and use both). getsockopt(SO_PEERCRED), introduced into Linux ... getpeereid() in openbsd. And let us not forget mremap in Linux ... NIH in FreeBSD land. And you really don't want to discuss the make "issues", I mean we only provided portability to all your OSes, a nicer syntax, and then a social move to automake so you could use your crappy variant with our software.

      So after all this pain and suffering you make the majority of us go through, do we get any help porting to or installing *BSD ... hell no, it's much more fun to heckle from the cheapseats.

      In case you've forgotten, you're in the minority ... we don't "owe" you anything ... we aren't going to have to conform anytime soon. However the majority of us will respond to kind words and offers of help (even if it's only, I've got no time/idea but here's a login ... or even just here's the error message).

      --
      ustr: Managed string API with ave. 44% overhead over strdup(), for 0-20B
    11. Re:Doh. by dvdeug · · Score: 1

      This still won't stop the GNU folks from fucking it up, though, because more dependencies ensure GPL-lock-in [...] a very serious issue, where lots of software is becoming very GNU-specific rather than UNIX-specific

      Oh yes, the GNU folks are such evil, evil people because they write such good, portable code that other people would rather say "use Bash 3.04" rather then fight with less featureful, POSIX utilities and find out that the utilities that come with Bobix aren't POSIX complaint/have some odd bug, and Bobix users have to install Bash anyway.

    12. Re:Doh. by pmz · · Score: 1

      autoconf scripts are there explicitly for portability

      In reality, anymore, it is there for people who can only manage "./configure; make; make install" on a GNU/Linux system. It doesn't stop the programmers from putting asinine assumptions into the autoconf script in the name of convenience when it breaks every platform other than Ret Hat and SuSE. Also, the configure and libtools scripts are together 15000 LOC. This is absurd for any shell script. On top of that, they are speghetti code. They'll break, I'll find that the advertised command-line switches don't work, and, then, my only option is to hunt through 7000 lines of script to figure out where to force the value of a variable.

      Autoconf helps portability as long as the system is GNU/Linux.

      otherwise we'd just write crappy makefiles that don't run anywhere else

      No, we'd write POSIX makefiles and use easy-to-edit text files containing whatever environment variables and defines needed to be set. A 15 line shell script can launch the build. It would be much easier for the OSS community to set up a website of system profiles for different versions of operating systems (Solaris 6/7/8/9, Red Hat 5/6/7/8/9, etc. etc.) and, for systems that don't fit this mold, it would be transparent and easy for people to hand-edit the configuration to meet their needs.

      It's called good software engineering.

      only a very small amount of Linux developers have access to a *BSD box.

      Dual boot?

      A couple of weeks after Linux got a sendfile() syscall, FreeBSD discussed it and then introduced a version that was incompatilby different ... for no good reason.

      Then, either don't use sendfile() or take these things and isolate them to one module of the program. Just because there is a man page for something doesn't mean that feature has to be used.

      Portability just takes some planning. Then, whatever fires are left to fight will be fewer and farther apart. If after all the effort, there are thousands of fires cropping up endlessly, then the planning stage failed.

      In case you've forgotten, you're in the minority ... we don't "owe" you anything ... we aren't going to have to conform anytime soon.

      I didn't ask for anything (suggestions are not requests). Regardless, this is one of the failure modes of pure democracy, but I digress.

    13. Re:Doh. by pmz · · Score: 1

      GNU software is better, cheaper and freer than its UNIX counterparts.

      Must this turn into a BSD license flamewar?

    14. Re:Doh. by pmz · · Score: 1

      Oh yes, the GNU folks are such evil, evil people

      I never said anything about them being evil, only ignorant or arrogant or short-sighted in their quest for "freedom." I guess their form of freedom is that proposed by the Democrats (you can be free...but we'll take away your ability to choose regarding these miscellaneous political issues....and if you refuse to pay for our social programs we'll put you in prison).

      Bash

      It removes backward compatibility with the very essential and very mature UNIX tool: the shell. Also, it would be better to work around that Bobix bug by eliminating the use of that feature in the shell scripts, rather than adopt a more complex tool. Unless, of course, the bug is so horrendous that Bobix is trash, anyway, making those who chose it look foolish (if "Bobix" even exists, for that matter).

    15. Re:Doh. by dvdeug · · Score: 1

      I never said anything about them being evil, only ignorant or arrogant or short-sighted in their quest for "freedom."

      Whatever you think about their license or their opinions, one of the reasons GNU won is because they made better products then the proprietary systems, as shown by the number of people who install GNU tools on their proprietary Un*x as well as by stuff like the fuzz tests.

      They weren't the only people to want better, extended tools. While Brian Fox was writing bash, David Korn was writing ksh. While RMS was writing GNU Make, BSD people were writing pmake. The only difference between using gmake features and pmake features is that Linux, and with it gmake, is more common.

      Also, it would be better to work around that Bobix bug by eliminating the use of that feature in the shell scripts, rather than adopt a more complex tool. Unless, of course, the bug is so horrendous that Bobix is trash, anyway, making those who chose it look foolish (if "Bobix" even exists, for that matter).

      Bobix was any Unix. GCC developers have officially given up on compiling with HP/UX's cc, as it's buggy and doesn't support C89. The GCC target-specific installation instructions mention dozens of cases where "HP-UX version 8.0 has a bug in the assembler that prevents compilation of GCC." or "The Solaris 2 /bin/sh will often fail to configure libstdc++-v3, boehm-gc or libjava." It's an incredible job tracking all these bugs, much less trying to be bug-compatible with every version of Un*x ever released. GCC developers try, to some extent, to build on every C compiler and shell, but eventually punted on make, requiring GNU make. If you think that Joe Developer, who wrote a program with 300 users and 1 or 2 not running Linux or BSD, should going to worry about those bugs, I think that Joe has better things to do with his time.

    16. Re:Doh. by dvdeug · · Score: 1

      There's no reason to write GNU make files when there's a perfectly reasonable and standard make format.

      Really. If that's so, then maybe you can explain why FreeBSD's make is massively extended from that same standard, incompatibily with GNU make, but in the same fashions?

  22. Re:OFFTOPIC, BUT IMPORTANT NEWS FOR DEAN SUPPORTER by Anonymous Coward · · Score: 0


    Where do people get the time for this crap?

    What? The people taking the time to paste goatse.cx text-pics or the people replying to the pic asking about it?

  23. Someday by butane_bob2003 · · Score: 1

    I will no longer have to explain init.d and runlevels to noobs. I like init, once you understand how to use it, it kind of makes sense. It does look like a 2 decade old silly way of starting/stopping services, and I dont see how anyone could grok it without reading some man pages.

    --


    TallGreen CMS hosting
    1. Re:Someday by Anonymous Coward · · Score: 0

      init q

    2. Re:Someday by Feyr · · Score: 1

      i'm not sure about you, but i never had a problem with the way init work. it's pretty straightforward... maybe it's just me though

    3. Re:Someday by __past__ · · Score: 1

      SysV init is stupid, but that doesn't mean that you have to adopt this bogus proposal. There are lots of other inits, like those used by the BSDs, minit, or tons of others - some even work well. Writing an init isn't rocket science, and replacing it is trivial. The only tedious thing is writing the neccessary scripts, and I would expect it to be easier to write most of them as shell scripts than in python.

    4. Re:Someday by Anonymous Coward · · Score: 0

      I will no longer have to explain init.d and runlevels to noobs. I like init, once you understand how to use it, it kind of makes sense. It does look like a 2 decade old silly way of starting/stopping services, and I dont see how anyone could grok it without reading some man pages.

      Yeah, once it's been implemented in Python it'll practically explain itself to n00bs.

  24. Re:OFFTOPIC, BUT IMPORTANT NEWS FOR DEAN SUPPORTER by Anonymous Coward · · Score: 0
      • [offensive ASCII art none ASCII'ed to see]
    • Where do people get the time for this crap?
    You mean replying to troll posts? I don't know. Work, maybe?

    "Raise the standard of Humanity -- Support the arts." - R. Maplethorpe

  25. Python, the prototype language by Anonymous Coward · · Score: 0

    Why do so many projects use Python? Lots of people hate it, and for good reasons. Yuck.

    1. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      The old school c programmers don't like python because it is to damn easy. The rest of the world with a clue, loves the shit out of python.

    2. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      And clue us in what would be that reason? Is it perhaps because you cannot spend the measly 5 minutes of time it takes to learn python.

    3. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      Because its supporters are very very very very vocal.

      I agree with you, Python is a hideous abortion of a language.

    4. Re:Python, the prototype language by LWATCDR · · Score: 4, Insightful

      As an old school programner let me say I do not hate Python. I just do not know it. So far I have found noting about Python that makes me want to take the time to learn it.
      I do tell people just learning to program that it sounds like a good first language.
      For internal programming that requires a GUI I tend to use Java. Netbeans is just too good of an IDDE to give up.
      For non-gui internal programs I tend to use Perl. Why perl over Python? I know Perl.
      For programs that end up in the hands of our customers I use C++.
      I really doubt that Python sucks. I have seen too many really good programs written in it.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    5. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      because folks were sick of Perl, and computers are getting faster and faster, and they wanted a scripting language that could be used for big projects.

      Python was pretty much the only decent choice at the time. So all these folks learned it and now are trying hard to convince themselves and everybody else that it's really the greatest thing in the world, where really the only strength it has is that it is cleaner than Perl. Which isn't saying much.

      So, just smile and say "that's nice" and just be glad these "programmers" aren't writing your boot scripts in Perl.

      (I'm into Ruby myself, because I actually like Perl very much but am getting tired of the pseudo-object support).

    6. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      What's the point of learning a language that provides no benifit? So what is the benifit of Python over other languages that make it worth learning?

    7. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      what a useless comment

    8. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      The rest of the world with a clue, loves the shit out of Lisp

    9. Re:Python, the prototype language by Anonymous Coward · · Score: 0

      > For internal programming that requires a GUI I tend to use Java. Netbeans is just too good of an IDDE to give up.

      surely you are kidding, netbeans sucks, real men use eclipse

  26. login by panxerox · · Score: 2, Funny

    for god's sake make it so we dont have to log in each time we turn it on.

    --
    "It's so convenient to have a system where everyone is a criminal" - A. Hitler
    1. Re:login by ivan256 · · Score: 1

      I don't know if you're a troll, just trying to be funny, or if you're serious, but there's nothing in linux forcing you to log in every time you boot beyond some simple configuration. It certainly isn't required by init.

    2. Re:login by Bill+Quayle · · Score: 1
      for god's sake make it so we dont have to log in each time we turn it on.

      What are you running? Under redhat 7.2 +gnome, (yes, I know RH7.2 is old) you just go to the gnome icon on the panel and click programs->system->GDM configurator. Enter the root password and click on the automatic login tab. Check the box that says "Login a user on first bootup" and enter the username in the text window. I wouldn't expect it to be much harder than this in other environments, but who knows...at any rate, if your distribution's website doesn't have any documentation, maybe you'd be better off with some other distribution...? :)

      -Bill

      (disclaimer: I haven't tried this procedure; I guess I just like entering my password when I log in or something)

  27. HAL?? by heh2k · · Score: 2, Insightful

    why would you need it on nix*? devices are standardized. eg, except for a few ioctl quirks, ide and scsi devices are the same, from userspace. usb devices often look like serial char devs (pda cradles) or blk devs (cameras).

    1. Re:HAL?? by multi+io · · Score: 1
      except for a few ioctl quirks, ide and scsi devices are the same

      SCSI too? I always have to fiddle with strange SCSI IDs directly in userspace. I never understood what part of the CD burner's functionality is accessed through the device node, and what part is accessed using those strange dev= parameters to cdrecord. I wonder why this can't be dealt with in a more unixish way, i.e. using a device node and bunch of ioctls alone.

      That said, I also don't know what this "HAL" thing is supposed to be useful for.

    2. Re:HAL?? by Jeffrey+Baker · · Score: 1

      Because a CD recorder has two fundamentally different modes of operation. In one mode, you can treat the CD recorder as just another block device, in which case you are using the block device nodes (e.g. /dev/sr0) and simply telling the operating system that you want the contents of file so-and-so, which only happens to be located on a CD-ROM. In this case the kernel takes care of talking to the device and you don't have to worry about it.

      In the second case, you want to speak directly to the CD recorder in its native language. That's what the SCSI generic device nodes are for. The program is telling the kernel to get out of the way, because it knows how to speak the device's protocol.

    3. Re:HAL?? by multi+io · · Score: 1
      In the second case, you want to speak directly to the CD recorder in its native language. That's what the SCSI generic device nodes are for. The program is telling the kernel to get out of the way, because it knows how to speak the device's protocol.

      Now what are those SCSI IDs in the dev= parameters for? Why are they needed? What you say seems to imply that accessing the sg device node should be sufficient. Why do I have to say "dev=x,y,z" instead of "dev=/dev/sgx"?

    4. Re:HAL?? by Jeffrey+Baker · · Score: 1

      There's something weird, which I'm not really too familiar with, about how the sg nodes get allocated. It isn't straightforward finding out which sg node belongs to which scsi device. So it's easier to just hand over the SCSI bus/id/lun. Most people don't have this problem because they only have one SCSI device, so they don't need to provide device= to cdrecord.

    5. Re:HAL?? by greed · · Score: 1

      You'll like Mac OS X then:

      dev=IOCompactDiscServices
      dev=IODVDServices

      And start appending '/1', '/2' and so on if you have multiple burners.

      Mac OS X has kernel support for sending generic SCSI commands to a particular device. For non-Mac OS X, imagine if you could open a regular /dev/sr device node and do an ioctl to access the generic SCSI interface, but only to that device. (And there's no reason why an ATAPI device couldn't give you the same thing; after all, ATAPI is basically SCSI over ATA.)

      That would also mean you wouldn't have to have your CD burning program running as root and able to access every device on the bus, just because one of them is a CD burner.

    6. Re:HAL?? by multi+io · · Score: 1
      You'll like Mac OS X then:

      dev=IOCompactDiscServices
      dev=IODVDServices

      And start appending '/1', '/2' and so on if you have multiple burners.

      Hmm, this doesn't look consistent to me at all... There seem to be half a dozen naming schemes for naming SCSI devices? What if you want hardware-independent, symbolic names for your devices? When using device nodes, you just create symlinks...

      Mac OS X has kernel support for sending generic SCSI commands to a particular device. For non-Mac OS X, imagine if you could open a regular /dev/sr device node and do an ioctl to access the generic SCSI interface, but only to that device. (And there's no reason why an ATAPI device couldn't give you the same thing; after all, ATAPI is basically SCSI over ATA.)

      Actually, I like Unix's universal naming scheme, namely "everything is a file", and consider any other approach for accessing devices a misfeature (at least on Unix-like systems) :-)

      The issue you mentioned (cdrecord must be SUID root) is just part of the problem. cdrecord doesn't use device nodes which you could apply owner and group rights to, and thus must run with root privileges, re-implementing all security checks normally done by the kernel.

  28. Re:OFFTOPIC, BUT IMPORTANT NEWS FOR DEAN SUPPORTER by Anonymous Coward · · Score: 0
    • That's classic! The first ASCII-Goatse that I felt safe enough to show my boss!
    How did she react? I mean, to the fact you were reading Slashdot (at -1, no less) while "at work"?
  29. Another Gentoo feature by Otter · · Score: 4, Informative
    Gentoo has a number of great modifications over traditional Linux distributions that don't get nearly as much hype as the nebulous performance increases from building everything from source.

    The relevant one here is the management of services -- far easier than anything similar I've ever dealt with in the Unix world. I realize that 1) this proposed replacement goes beyond what the Gentoo system manages and 2) real sysadmins running real servers aren't going to leave the existing system any time soon, but for desktop users today, it's a great advance that doesn't get the credit it deserves.

    1. Re:Another Gentoo feature by Chardros · · Score: 2, Informative

      I'm in agreement. I read this a few days ago, when it appeard on footnotes. It talked a lot about dependancies, etc, which the Gentoo init structure already accomplishes well. As a matter of fact, extend the Gentoo init structure SLIGHTLY (to accomidate things like "starting" and "stopping" like this guy is talking about, and pretty names or whatever else you want) and all the information he's looking for could be published in /mnt/.init.d. Accessible by every shell/desktop/scripting service on linux, without the need for the CORBA-wannabe D-BUS stuff. Simple file i/o (fopen(), fread())... ya know... the Unix way.

      Oh well. I'm not preaching the Gentoo way here... I'm simply saying this way should be looked at before starting down the convoluted sounding path the article talks about.

      My $0.02US.

    2. Re:Another Gentoo feature by Anonymous Coward · · Score: 0

      word

    3. Re:Another Gentoo feature by xchino · · Score: 1

      Gentoo doesn't use any specialized startup system. The rc-update script simply adds or removes services from startup. These are still good ol' init scripts that can be modified to suit your purpose. You aren't required to use rc-update to add or remove services easier, just like you aren't required to use emerge to install software. Redhat has management capabilities like this, I beleive within serviceconf.

      But you do make a good point about Gentoo, in a round about way. While the install isn't neccessarily for newbs, Gentoo is the easiest distro I have found to maintain and administor. In fact, it's made me somewhat lazy, to the point where I get annoyed having to download, extract, configure, compile, and install software manually.

      --
      Everyone is entitled to their own opinion. It's just that yours is stupid.
    4. Re:Another Gentoo feature by Otter · · Score: 1

      Sure -- like I said, the Gentoo system isn't a complete reinvention like is being discussed here. What it is, though, is a nice way of papering over the complexities of the existing system by easily adding, ordering and removing services, and managing their dependencies. It's something other makers might want to look at while the wheel is being reinvented in Python and a grandiose new daemon.

    5. Re:Another Gentoo feature by wyndigo · · Score: 1

      Assuming you are talking about dependencies, then you obviously haven't spent much time in the *BSD camps. NetBSD has had this forever, and I know that both FreeBSD and OSX have this sort of system. It originates in *BSD land.

      I think gentoo does a lot of good things, and if it can keep from spinning out of control due to the sheer mass of users I see a bright future for it, but it owes much of the nice things in its design to *BSD world.

      --wyn

    6. Re:Another Gentoo feature by Anonymous Coward · · Score: 0

      No one in gentoo camp that I know of denies this.
      Portage even in name resembes BSD.
      init.d also cribbed.

      We're just pointing out that this article is not new linux features.

  30. Not very *nix-ish by MobyDisk · · Score: 4, Insightful

    His approach isn't very *nix-ish, it is very Windows-ish. It assumes you have a GUI. It relies on a large complex framework of interfaces. It assumes you have Python scripting. This may work very well for many desktop distros, but it can't become some great unifying thing like he wants, since he chose dependencies that are not the least common denominator. I believe that his goals can all be achieved with minor changes to the existing init system, rather than a megalithic rewrite.

    This approach sounds like he is trying to push some specific technologies he is interested in, and so he decided a new init system that uses them would be a nice PR way to push them.

    1. Re:Not very *nix-ish by J.+J.+Ramsey · · Score: 4, Informative

      "His approach isn't very *nix-ish, it is very Windows-ish. It assumes you have a GUI."

      Please read the article again, especially the part where Seth Nickell wrote "I *will* provide a way to boot into a "stripped down console mode" aka "single" for system recovery and backup, and a regular non-graphical boot for servers."

      From what I can tell, SystemServices in and of itself only depends on D-BUS and libc. There are Python bindings for D-BUS, so that may make it easy to write a script for SystemServices using Python, but that's the extent of Python's relationship to SystemServices.

    2. Re:Not very *nix-ish by Anonymous Coward · · Score: 0

      He's just another guy that doesn't want a unix system, he wants a free replacement for Windows...

    3. Re:Not very *nix-ish by Taurine · · Score: 1

      All the way! This is why I feel so much dislike for GNOME, other than the reason they started the project - to put someone else's project out of action - many of the leading developers of the project talk about developing the Linux desktop but want to make it more like Windows. Why do they think people use Linux? If we wanted something like Windows... Oh look over there, its Windows! Miguel in particular has talked about how Windows does so many things better, he spent time at Redmond a year before he began that MS-shill of a project, Mono. Then there's that argument that they want to create something exactly like the Windows registry, with no compelling argument in its favour, plenty against, but no, it will be better because the GNOME project is doing it...

      Face front true believers, don't let key GNOME developers' Windows fetish become Linux's dirty secret.

    4. Re:Not very *nix-ish by nvrrobx · · Score: 5, Informative

      If you RTFA, you'll see this is aimed at desktops with a GUI, which is somewhere that startup time is very important.

      To quote the article:

      "SystemServices has four major goals:
      1) Provide a full services framework (including handling "boot up")
      2) Integrate well with a desktop interface
      3) Start X, and then allow login ASAP
      4) Allow daemon binaries to directly contribute services rather than requiring each distro/vendor to write shell script wrappers"

      Yes, this is very Windows like, but just because it's Windows like does NOT imply it's a bad thing!

      FreeBSD, for example, has relied on Perl being available in the past. Gentoo relies on Python. Relying on a scripting language to provide extensibility is not a bad thing.

      I'll agree that init works well for servers. I love how DB2 installs itself in the inittab, so init makes sure it's always running. This is a good thing.

      Init does not work as well for desktops. My laptop takes incredibly longer to boot Linux than Windows XP. My iPAQ takes a long time to boot Linux, compared to the startup of WinCE. (Yes, I realize that you don't have to restart Linux very often on the iPAQ, but that's not the point)

    5. Re:Not very *nix-ish by Multispin · · Score: 1

      I don't think that there is a good reason to basically fork things at such a low level. So, now Apache will need to maintain two methods of starting itself? It's bad enough with all the different distros.

      As for embedded devices, they are totalyl different animals. CE is *totally* different than Windows. However, one of the bigest attactions to linux on embedded systems is that it's *very* similar to its biger brothers. This makes development much easier.

      The iPAQ you have is *designed* to run CE not Linux. Grab a Zaurus, and note the boot time.

      While I agree that init needs some work, it doesn't exactly need a HUGE change. Init has no control over hardware detection, etc. D-BUS, etc are *great* for doing things like that. Let 'em do it.

    6. Re:Not very *nix-ish by mckyj57 · · Score: 1

      > FreeBSD, for example, has relied on Perl being available in the past.
      > Gentoo relies on Python. Relying on a scripting language to provide
      > extensibility is not a bad thing.

      Yes, it is. When you do that, you lock the scripting language to a
      particular revision level, thereby stagnating its use.

      If it was all standardized on a /usr/vendor/lib and /usr/vendor/bin
      scheme, where the scripting langauage version comes with the OS and
      stays that way, with another version installed for apps development, it
      might approach usability.

      Red Hat uses both Perl and Python, and their hacks, contortions, and
      customizations to make that work for Anaconda and redhat-config-* make
      the version of the language unusuable for any real application development.
      Red Hat routinely ships Python several revs back from the latest, and
      routinely ships a Perl with major bugs in it due to hacked modules and
      merging from the devel tree. I use Red Hat Linux, and like it, but they
      do a *terrible* job of providing Python and Perl. All because they
      do use it for that type of stuff.

    7. Re:Not very *nix-ish by Istealmymusic · · Score: 1
      FreeBSD, for example, has relied on Perl being available in the past.
      The FreeBSD base system no longer relies on Perl. This is a good thing.
      --
      "The lesson to be learned is not to take the comments on slashdot too literally." --Vinnie Falco, BearShare
    8. Re:Not very *nix-ish by Anonymous Coward · · Score: 0

      BZZZZZ. FreeBSD-CURRENT has moved Perl completely into ports, and it's never coming back. And I'm glad.

    9. Re:Not very *nix-ish by Tom · · Score: 1

      If you RTFA, you'll see this is aimed at desktops with a GUI, which is somewhere that startup time is very important.

      Since when? This system goes from power button to wdm login in about 30 sec. If installing and tweaking a new init system takes 15 minutes and saves me 10 sec. on bootup, I need to boot a lot just to recover that time.

      My laptop takes incredibly longer to boot Linux than Windows XP.

      And you blame that on init? My notebook takes about 38 sec. until wdm login, and I could certainly reduce that by at least 10 if I would spend some time optimizing the boot process. But, as above, if I spend half an hour doing that, what is the net gain?

      My iPAQ takes a long time to boot Linux, compared to the startup of WinCE.

      The least part of the startup process on the iPAQ is wasted on init. QPE (if you use it) takes much longer than the whole init process that precedes it.
      Besides, it really doesn't matter on the iPAQ, where you reboot once every few months at most.

      Init works perfectly well for desktops. You can even tweak it very easily. You can speed it up with minimal effort, if you want to spend a little time (especially figuring out dependencies).

      Most importantly: It's a generic mechanism. It works reasonably well for all systems. Yeah, maybe you can do 5% better with a custom tool geared to one specific use. Please do if you want. Please don't sell that is The Right Thing(tm) to the rest of the world.

      --
      Assorted stuff I do sometimes: Lemuria.org
    10. Re:Not very *nix-ish by nvrrobx · · Score: 1

      If you can tweak the boot process, you're not the kind of user these changes are targetted towards. Geeks don't care about boot time as much as your normal end user. Where does Microsoft own the market? Not amongst geeks.

      Please don't sell that the generic process which needs mass tweaking to speed it up is "The Right Thing(tm)" to the end users of the world.

    11. Re:Not very *nix-ish by Brandybuck · · Score: 1

      Ditto. I remember finding perl scripts and not being able to run them because I couldn't upgrade the existing perl without breaking the OS. Getting perl out of the FreeBSD base system was a Good Thing(tm).

      Does anyone in the Linux community remember the anguish over the switch from bash-1.x to bash-2.x? I can't imagine them wanting to go through that all over again, but if core OS scripts are written in python, they will.

      --
      Don't blame me, I didn't vote for either of them!
    12. Re:Not very *nix-ish by Anonymous Coward · · Score: 0

      Errrr, Gentoo doesn't rely on a GUI, negating your point. It's not an either/or scenario. And XP 'fake' boots, bringing up a desktop long before everything underneath is done. Big deal.

    13. Re:Not very *nix-ish by oohp · · Score: 1

      FreeBSD, for example, has relied on Perl being available in the past.

      Yes, and they removed Perl from the base distribution in 5.x. So it was a bad thing they relied on perl, bloating things up.

    14. Re:Not very *nix-ish by pmz · · Score: 1

      it can't become some great unifying thing like he wants

      If someone uses the word "unified" in his/her proposal for anything, odds are it will fall far short of expectations and become a kludge.
      The real result is dozens of "unified" interfaces all overlapping in functionality yet not fufilling the needs of the users.

      Ambition leads one's eyes to be bigger than their stomach, frequently.

    15. Re:Not very *nix-ish by Anonymous Coward · · Score: 0
      I can't imagine them wanting to go through that all over again, but if core OS scripts are written in python, they will.

      Come on, just run "python2.2 SystemInit.py" as the #1 process. I have several versions of python on this machine (1.5.2, 2.1, 2.2, 2.3) with zero problem.

  31. Already done by Tony · · Score: 1, Offtopic

    Uhm....

    This feature has been available for a long time. If you use gdm, run gdmconfig as root, and in the "general" tab, check the box labeled "Login a user automatically on first bootup", and select a username from the dropdown box.

    I'm sure kdm has similar features.

    --
    Microsoft is to software what Budweiser is to beer.
  32. Great idea if it reduces startup times by Captain+Morgan · · Score: 1

    If this is well thought out and reduces startup times it will be a welcome change. Windows XP starts up quite a bit faster than my linux machine does and is usable quicker, and I'm counting AFTER bios post.

    Chris

    1. Re:Great idea if it reduces startup times by Theatetus · · Score: 4, Informative

      Hmmm... Windows XP gives me a desktop (somewhat) more quickly than Gentoo does, but I have to wait for about 90 seconds to actually do anything or run a program.

      It's a tortoise-and-hare thing; Windows (and lately Gnome) give you eyecandy early on at the cost of having to wait with what looks like a perfectly functional desktop while the rest of your base loads. That's why I use Windowmaker. Once I get to GDM it's rare that it takes more than 5 seconds to have a desktop with nothing stalling on me. YMMV, and this is fairly OT anyways since once I'm at GDM, init's not automatically loading stuff anymore.

      --
      All's true that is mistrusted
  33. Re:OFFTOPIC, BUT IMPORTANT NEWS FOR DEAN SUPPORTER by Anonymous Coward · · Score: 0

    I was on my union-mandated 3-hour lunch break. What better time to schmooze with the boss?

  34. Keep It Simple Stupid by yancey · · Score: 3, Insightful

    One of the great strengths of unix-like operating systems and the thing that makes them easy to port from one platform to another is that the core system components are very simple, not based on some relatively huge and complex thing like Python.

    --
    Ouch! The truth hurts!
    1. Re:Keep It Simple Stupid by Ianoo · · Score: 1

      I'd love to know a platform that has a UNIX, Linux or BSD port that doesn't have Python available.

      The Python interpreter is written in a lower level language (I don't know whether it's C or C++, but it doesn't matter). If your port doesn't have a C compiler, then it's not going to get very far.

    2. Re:Keep It Simple Stupid by msaavedra · · Score: 1
      the thing that makes them easy to port from one platform to another is that the core system components are very simple, not based on some relatively huge and complex thing like Python.

      Python runs on a great many systems, including just about every Posix system, Windows, Mac OS, etc. Being portable is not a problem. As far as far as being huge and complex, it's not like init scripts are currently written in ANSI C; they rely on a shell interpreter ( eg. bash). On my system, bash uses about 1.3 MB of RAM, python uses 2.1 MB. Hardly a big difference. Python is so much more powerful, easy to read, and less error-prone that I've wished someone would do this for years.

      If for some reason you hate python, though, I don't think it is a necessary part of this process. I believe they are using it because it has bindings to D-Bus. Theoretically, anything else that can talk to D-Bus would work too. Now whether D-Bus is worth using remains to be seen, but it seems that lots of folks from both the KDE and Gnome camps like it, and they've been pretty far apart on this issue for years.

      --
      "Any fool can make a rule, and any fool will mind it."
      --Henry David Thoreau
    3. Re:Keep It Simple Stupid by yancey · · Score: 1

      You know, X-Windows is available on just about any unix-like operating system, and gosh, I think it's written in C or C++ too, but then so was just about the entire system.

      The point is not whether Python is available, the point is that init is extremely small and simple. It works reliably on every platform because it is small and simple. The more complex you make system startup, the more often someone will break it.

      That one little piece of code is the first and last process to run. It must be as reliable as possible.

      --
      Ouch! The truth hurts!
    4. Re:Keep It Simple Stupid by Ian+Bicking · · Score: 1
      Shell scripting shouldn't qualify as simple. Shell scripting is a language in itself, and a stupid language at that. Because it is a naturally sloppy language it only appears simple -- it is actually complex and error-prone. Maybe if the current system was written in Tcl I'd be more impressed -- not a very powerful language, but it is simple.

      Maybe the whole thing could be rewritten in C someday -- easier to do once the functionality is completely worked out. Maybe it won't turn out to be a problem -- Python is standard on modern desktop operating systems (which is what this proposal targets). Maybe bash/sh is more standard, but standards only come about because developers demand new dependencies (at least that's how it happens in Linux).

    5. Re:Keep It Simple Stupid by yancey · · Score: 1

      I have nothing against Python or any other language and Python's availability is not the point. However, the relative size of init to Python is very much my point. Take a look at the source code for init vs the source for Python or bash, quite a difference in size and complexity.

      I am a huge fan of keeping critical parts of the operating system as small and simple as possible. In fact, I am fascinated by the 14KB QNX kernel that fits entirely into the 16KB processor cache of an i486 processor. As you can imagine, QNX is remarkably quick for this reason. Linux and Windows and MacOS kernels are immense and complex by comparison. This is why QNX can be considered a "real-time" operating system and the others mentioned cannot.

      Also, the QNX kernel has no bugs in it because it is so small that it can be easily debugged by a single person who knows the exact purpose of every line of code.

      That is the point of keeping it simple.

      --
      Ouch! The truth hurts!
    6. Re:Keep It Simple Stupid by Anonymous Coward · · Score: 0
      I have nothing against Python or any other language and Python's availability is not the point. However, the relative size of init to Python is very much my point. Take a look at the source code for init vs the source for Python or bash, quite a difference in size and complexity.

      That's true and that's exactly the problem with init. It is too simple for a laptop for instance, where a various mix of events can occur (Ethernet plugged in, battery added, battery running out, magic button pressed, USB device added, PCMCIA device added, Bluetooth device sensed ...), while init only sees "powerfailure" and the runlevels.

  35. Re:Open Source development by thedillybar · · Score: 1

    "if someone comes up with better system that can boot my Linux system as fast as my XP system boots, I'm game."

    The real strength of open source is that you can choose to use the new init, I can choose to use the old one, and Joe Blow can write his own.

    If someone designed a "more efficient" init for Windows XP, everyone would be stuck with the decision made at M$. With efficiency being relative in almost everything, the freedom of choice is unbeatable.

  36. D-BUS, and NIH by avdi · · Score: 5, Insightful

    So I skimmed through the D-BUS spec and, as I expected, they are simply reinventing CORBA.

    When will Open Source developers figure out that just because the OS community didn't come up with a technology, doesn't mean it has to be re-written with fewer features?

    I gaurantee that whatever aspects of CORBA the D-BUS developers found unnacceptable - complexity, overhead - will be reintroduced into D-BUS by the time it reaches maturity. That's just how these things go - someone decides that Standard X is "cool, but too complicated", and then five years later they realize that their solution has become just as complicated as Standard X because, lo and behold, all that complexity was there for a reason. Real-world solutions never stay simple, because real-world problems aren't simple.

    --

    --
    CPAN rules. - Guido van Rossum
    1. Re:D-BUS, and NIH by ajm · · Score: 1

      You are so right. Some things are complex and reinventing the wheel isn't going to make the road any smoother.

    2. Re:D-BUS, and NIH by Anonymous Coward · · Score: 0

      Agreed. It's the same reason why a lot of programming languages get developed (i.e., python, perl). Someone thought Lisp and ML were cool, but too complicated. So lets make a new language...and after 3 revisions we're still catching up in features to twenty year old languages.

    3. Re:D-BUS, and NIH by pmz · · Score: 1

      So I skimmed through the D-BUS spec and, as I expected, they are simply reinventing CORBA.

      What are the problems with a slightly souped-up syslog?

    4. Re:D-BUS, and NIH by avdi · · Score: 1

      What are the problems with a slightly souped-up syslog?

      Nothing, I imagine. syslog-ng and metalog come to mind. However, they have nothing to do with what CORBA and D-BUS do.

      --

      --
      CPAN rules. - Guido van Rossum
    5. Re:D-BUS, and NIH by Anonymous Coward · · Score: 0

      I concur.

      This has happened time and again.

      The classic example is the Linux VM system.

      "Other people's VM systems are much too complicated! We'll stick with simple and because it's simple it'll be efficient, and because it's efficient, it'll be fast!"

      And what does Linux use today?

      A copy of FreeBSD's complicated-but-incredibly-bloody-fast VM system...

      At least someone (Van Riel) was finally smart enough to talk to Matt Dillon, the man behind FreeBSD's VM, instead of suffering NIH...

    6. Re:D-BUS, and NIH by forgotmypassword · · Score: 1

      Normally I would agree with you

      but I hate CORBA

      and its not just because I am dyslexic and CORBA is hard as fuck to read and write instead of COBRA

    7. Re:D-BUS, and NIH by Anonymous Coward · · Score: 0

      but I hate CORBA

      What's wrong with CORBA? It's not very hard to use. It might be hard to implement a CORBA implementation. I don't know, I've never tried. But to use an existing implementation isn't very hard at all.

    8. Re:D-BUS, and NIH by Rob+Riggs · · Score: 1

      This is especially true given the project's dependency on Python, the absolute simplicity of the Python bindings to CORBA and availability of a great Open Source CORBA implementation for Python, omniORBpy. The Python bindings to CORBA make writing CORBA-based applications a breeze.

      --
      the growth in cynicism and rebellion has not been without cause
    9. Re:D-BUS, and NIH by jmac880n · · Score: 2, Interesting

      I cannot leave this alone without citing a significant counter-example where a simplification of a complicated system was a tremendous success.

      Unix as a less complex replacement for Multics.

    10. Re:D-BUS, and NIH by be-fan · · Score: 1

      Um, CORBA sucks so much ass its not even funny. Its one of the worst designed-by-committe standards ever produced. The C++ mapping is completely non-standard and retarded. Ugh...

      See ICE for a CORBA replacement that doesn't suck.

      --
      A deep unwavering belief is a sure sign you're missing something...
    11. Re:D-BUS, and NIH by Vellmont · · Score: 2, Insightful

      I agree with you, but I don't think complicated is a very descriptive word. Lots of things are complicated, but you don't always need to understand the complicated stuff to do most of what you have to do.

      Ideally a system should follow the 80/20 rule. That is you can do 80% of what most people want to do by only learning 20% of the system. SQL is a good example of this. You can learn only a little bit of SQL and immediatlely put it to use. SQL only gets complicated when you need to do that last 20%.

      In other words, a system can be complicated, but there are different ways to seperate out the complex parts from the simple parts. The goal is to end up with a system that's complicated when it needs to be, and simple at all other times.

      Now, I'll qualify this by saying I don't know anything about CORBA or D-BUS, so I've no idea how this applies to the situation at hand. I just thought it might add something to the discussion.

      --
      AccountKiller
    12. Re:D-BUS, and NIH by be-fan · · Score: 2, Informative

      Reasons why CORBA sucks (mostly from the C++ mapping):

      1) The whole distinction between servants, object references, etc, might be nice in whatever fantasy world the standards makers lived on, but its far too complex. A proper standard (POSIX is an excellent example) should scale. Simple things should be simple, and implementation complexity should scale linearly with problem complexity. Objects are a pretty simple idea. CORBA makes them anything but.

      2) The C++ mapping is completely braindead. I'm someone who finds C++ itself to be rather simple and straightforward, and I still can't always get the parameter passing conventions correct. It also doesn't use the STL. Being released in 1994 is no excuse. We're thankfully leaving the stone-age of C++ behind us, and unless the CORBA C++ mapping is updated, it should be one of those relics we leave bhind.

      3) The standard is full of "gee, wouldn't this be nice" features, while missing some very basic conveniences (offering string-representations of error messages in exceptions).

      --
      A deep unwavering belief is a sure sign you're missing something...
    13. Re:D-BUS, and NIH by i_am_nitrogen · · Score: 1

      Maybe it had something to do with the BSD advertising clause. Until that was removed, Linux couldn't borrow BSD code under the GPL.

    14. Re:D-BUS, and NIH by Saucepan · · Score: 3, Informative
      I like CORBA itself -- I found it fairly easy to work with, and it has the pleasant property that most of the complex features can be ignored (or at the very least papered over) until you need them for something. When you do dig deeper, you'll find that the interfaces for the sophisticated optional services like messaging and distributed transactions are clean, well designed, and fairly well documented.

      But, I'd hesitate to call it easy to use. The standard C++ language bindings in particular are astonishingly bad:

      • they were originally designed long before C++ had standard string and container types and so use char * (with invisible attributes like the const-ness of a pointer controlling vital behaviour like who is responsible for freeing the object) along with their own unique way of dealing with arrays and iterators
      • early CORBA implementors supported either fast-but-dumb pointers or slower-but-safe reference-counted smart pointers, so when the standard finally caught up it standardized both (typename_ptr and typename_var), with predictably disastrous results (crashes or memory leaks if you mix-n-match them, which may be unavoidable if you use third-party libraries)

      The situation is reported to look better from other languages, and I can personally confirm that the Java bindings are a delight to work with by comparison (of course in Java it's even easier to just use RMI).

      As for the wire-level protocol, I have no complaints about IIOP now that it has readable corbaloc: URLs (the CDR marshalling details are still messy but unless you are writing your own ORB they are taken care of for you). I'm actually a bit surprised that IIOP isn't more widely used on the Internet and in the open source world (outside of GNOME of course) -- it's the distributed computing open standard, it interoperates across languages and OSes, it has numerous open-source implementations, and It Just Works(tm).

      Instead we are getting stuff like web services and SOAP, whose wire format is just as incomprehensible to humans (don't kid yourself that XML is easy to read -- have a look at a fully-decked-out SOAP message some day) while using many times as much bandwidth and memory and taking at least ten times as long to parse. (And I say this even though I currently write SOAP gateways for a living.)

    15. Re:D-BUS, and NIH by Istealmymusic · · Score: 1
      Agreed. It's the same reason why a lot of programming languages get developed (i.e., python, perl). Someone thought Lisp and ML were cool, but too complicated. So lets make a new language...and after 3 revisions we're still catching up in features to twenty year old languages.
      And which languages caught on?
      --
      "The lesson to be learned is not to take the comments on slashdot too literally." --Vinnie Falco, BearShare
    16. Re:D-BUS, and NIH by Anonymous Coward · · Score: 0
      When will Open Source developers figure out that just because the OS community didn't come up with a technology, doesn't mean it has to be re-written with fewer features?

      When it becomes possible to

      • Find decent documentation (including tutorials) for the existing technology,
      • Read and understand said documentation,
      • Obtain easy-to-use and cheap/free software tools for the new technology, and
      • Come up to speed on the existing technology, e.g. by experimenting with it
      ...all in less time and with less effort than creating your own new technology from scratch.

      A lot of NIH is justified, I think.

    17. Re:D-BUS, and NIH by Saucepan · · Score: 1
      Back in the 1.x days, the Linux bootstrap messages used to be festooned with advertisements for various bits of code whose developers had copied the then-current BSD license, obnoxious advertising clause and all.

      I assume all that stuff has since been removed?

  37. Score 2 Interesting? by Anonymous Coward · · Score: 0

    Is it too much to ask to require an IQ test before receiving moderator points?

    1. Re:Score 2 Interesting? by Anonymous Coward · · Score: 0

      You don't get karma for "funny". It may be that the moderator was going for the workaround.

    2. Re:Score 2 Interesting? by Anonymous Coward · · Score: 0

      anonymous posters don't get karma either

  38. Reinventing the wheel? That's the Linux way!! by 44BSD · · Score: 3, Insightful

    This is a dumb idea.

    It is antithetical to the UNIX design philosophy, and it betrays an ignorance of history.

    IBM tried to "improve" the init sequence in AIX, which was a godawful mess. The concept has not improved over time.

  39. Transparency should be goal #1 by GeoGreg · · Score: 5, Insightful

    If someone comes up with a whizbang new boot system. great. Just make sure that if something goes wrong, or something needs to be changed, it's:

    1. Easy to determine where the problem is.
    2. Easy to fix using minimal tools available in single-user mode (i.e., vi).

    I don't want some horrific equivalent of the Windows Registry lurking in the background. There should be no mysteries about what gets started and when. I'm not a Windows guru, so maybe this stuff is easy to determine in XP or Server 2003, but I've always found plain ol' text files to be much easier to deal with than fancy-dancy databases. Or at least compile the databases from plain ol' text files.

    1. Re:Transparency should be goal #1 by pmz · · Score: 1

      If someone comes up with a whizbang new boot system. great. Just make sure that if something goes wrong, or something needs to be changed, it's:

      1. Easy to determine where the problem is.


      The OSS communitiy dispensed with this long ago. Or do people really and truly love libtool and configure scripts?!? How about the hard-coded path names in dozens of GNOME files?!? Not only are people recreating the look-and-feel of Windows but the very things that made us dispise Microsoft and Windows in the first place!

    2. Re:Transparency should be goal #1 by Luyseyal · · Score: 1
      Can you give me an example of a hard-coded path that wasn't specifically put in place to defeat LD_LIBRARY_PATH, an oh-so-fun vulnerability? Shared libs require certain agreements among code: you can't just expect to move everything around and assume it'll work. Besides, if you do need that capability, you have sufficient need to compile a static binary and use that. Problem solved.

      -l

      p.s., a staticly compiled init is probably a good idea anyway...

      --
      Help cure AIDS, cancer, and more. Donate your unused computer time to worldcommunitygrid.org. Join Team Slashdot!
    3. Re:Transparency should be goal #1 by moncyb · · Score: 2, Interesting

      Your complaints seem to be about GNU projects. They do some strange things. Not all of it is incompetence either. Some of it is politics.

      Not only are people recreating the look-and-feel of Windows but the very things that made us dispise Microsoft and Windows in the first place!

      That's why you have to take an active stance in avoiding script kiddie projects like GNOME or KDE. Just say no to crap!

  40. Dumb Idea by Anonymous Coward · · Score: 1, Insightful

    This person needs to be hit with a clue stick. Init is used much more than at boot time. If he has a problem with the scripts it runs, well there is nothing saying they have to be scripts. He can rewrite the scripts that run as "services" or whatever he wants to call them. I've seen plenty of inittabs with executables in them. It seems like he is reinventing something that doesn't need reinventing just because he doesn't understand it.

  41. MacOSX? by Anonymous Coward · · Score: 0

    Isn't this guy just just copying MacOSX? The terms remind me of what I read about MacOSX. And the delayed startups remind me of Windows, and all the complains about unsable machine for 30 seconds after typing password. And isn't just focusing just in the desktop? I recomend KISS, a GUI can be put on top of scripts fine, and I do now want to imagine "but I upgraded this app [which upgraded python cos otherwise it does not work] and now it does not boot". He complains a lot about coders knowing zero about GUI, but he doesn't seem a pro in the non-GUI.

  42. the Grumpy Old Man on computers.. by caveat · · Score: 1

    In my day, when you wanted to start your computer, you had to use a SHELL SCRIPT! And TYPE! With your HANDS! And WEEEEE LIKED IT!

    --

    Facts do not cease to exist because they are ignored. - Aldous Huxley
  43. Hmm by stratjakt · · Score: 2, Insightful

    I know it's people perogative to write whatever they feel like writing, but I cant help wishing that desktop linux had some sort of omnipotent boss who could order the dev community around, thusly: "Quit wasting your time on that until cut and paste works, and all the desktop apps look like something other than shit!"

    I mean, thats how OSX and Windows got where they are.

    --
    I don't need no instructions to know how to rock!!!!
    1. Re:Hmm by Ianoo · · Score: 1

      Cut and paste seems to work okay for me!

      My standards-compliant Mozilla-based browser with beautifully antialiased subpixel rendered bitstream fonts sitting in a similarly pretty desktop environment with PNG scalable icons, proper human interface guidelines and a fully skinnable user interface kicks the ass of anything I've ever seen on a Windows machine WRT eye candy.

      Sure, OSX looks purdy, but at what cost? Very limited hardware support and a tightly controlled platform.

      Your cut and paste problems and your apps looking like crap is probably down to the apps being badly written. And guess what, there are plenty of badly written apps for Windows too!

    2. Re:Hmm by moncyb · · Score: 1

      I don't think you want this. The current system guides the clueless programmers into working on clueless projects (perhaps learning something) and leave the real ones alone. If just anyone was allowed to work on every project, you'd see a lot of shoddy programs no matter how good the original design was. One bad programmer can really screw up the code.

      The problem is trying to find the "real" projects. I suppose it would be great to have a magic oracle to tell us which projects are good and which are script kiddie fodder without having to try them out.

  44. Booting systems too often by MerlynEmrys67 · · Score: 1
    Of course you are missing Option C on why I reboot systems too much (windows, Unix, Linux, whatever)

    When the damned kernel code I am currently working on panics and I have to debug it

    Of course this only applies to about .1% of people doing development - but I hate watching systems boot - it happens WAY too often for me

    --
    I have mod points and I am not afraid to use them
  45. An even better idea. by Anonymous Coward · · Score: 0

    Write a kernel level x-driver and gtk module, and get a fully working gui as soon as the kernel is loaded. Come on, beos did it, so can linux?

    Heres the concept boot sequence.
    GCX 590-Motherboard
    YHBT BIOS
    Intel(r) 786(tm) processor 5000mhz.
    Checking RAM : 2097152Kb OK
    *beep*
    LILO loading
    $ linux gui=yes vga=799 init=/bin/gdm
    Loading linux ...........

    [Gnome desktop manager ]
    Welcome to Linux!

  46. In one ear, out the other by kingLatency · · Score: 1

    I don't think I've ever understood less of an article's description on /. ever. I think I caught maybe 10 words of that thing.

    --
    "I've got to stop masturbating! It makes me too lazy! Stop it, Albert. Stop it." -- Albert Einstein
  47. Look a shiny new wheel I just invented... by ajm · · Score: 1

    looks very similar to all the other wheels that are already out there but this one's newer and shinier.

    OK, this may be the greatest thing since sliced bread but why does it have to be done? I know it's more fun to go off and implement something from scratch than to incrementally fix something that's already out there so that existing users get the benefits as well but is that reason enough to do it?

    If the author want's to do this that's great, after all this is their time they're spending on their own software. Making it out to be a great boon to the rest of us, well that's pushing it.

    There are lots of rough edges in linux desktop world at the moment. Smoothing them off isn't as glamorous as building a new init system but it's probably more useful.

    1. Re:Look a shiny new wheel I just invented... by Tumbleweed · · Score: 1

      If nobody ever reinvented the wheel, we'd all still be using those old wooden ones.
      - I forget who said this

      Something to think about. Reinventing the wheel isn't necessarily a bad thing.

    2. Re:Look a shiny new wheel I just invented... by ajm · · Score: 1

      No, it's not always a bad thing. I just sometimes think it's done too often, and for the wrong reasons.

    3. Re:Look a shiny new wheel I just invented... by Anonymous Coward · · Score: 0

      If nobody ever reinvented the wheel, we'd all still be using those old wooden ones.

      Actually, that's "If nobody ever reinvented the wheel, we'd still be using those old round ones."

      Makes much more sense.

  48. Other init alternative by elFarto+the+2nd · · Score: 5, Interesting

    The only init replacement i've seen that seem to have some sense is: http://www.atnf.csiro.au/people/rgooch/linux/boot- scripts/index.html elFarto

    1. Re:Other init alternative by Ann+Elk · · Score: 2, Informative

      Here's one from IBM: Parallelize Linux system services to improve boot speed. It's not so much as "replacement" as an "enhancement" to speed up the boot process. Interestingly, it uses make to manage service dependencies.

  49. ya, and... where is it? by dermusikman · · Score: 2, Interesting

    i first read this article last night on Newsforge and did some cursory searches for the project. i couldn't find anything. has anyone else had any luck?

    the only things i've yet found are blog entries. he seems to be a reliable hacker but of what news is this until there's downloadable source-code? i'm planning on working on a new MUD; i'll be sure to submit that to /. right away!!

    so if you have a link for us, please pass this along. also, like so many others have asked, how closely will this be tied to GNOME? even my desktop system uses WindowMaker ; why should a foundational mother-program rope me into a DE i don't like? or be reliant on the GUI in the first place?!

  50. What about all the other Unices? by caveat · · Score: 1

    process 1 on my OS X box is init, same with the IRIX server i'm logged onto, and I'd imagine Solaris, AIX, HP-UX, *BSD, yadda yadda all use init. So, when do I get to use this on my Mac or Origin? (Just kidding...you can have my init when you pry it from my cold, dead fingers :D)

    --

    Facts do not cease to exist because they are ignored. - Aldous Huxley
  51. This makes as much sense as ... by jkorty · · Score: 1, Funny

    In related news, Ford has started a project to replace the aging wheel design (3,000 years out of date now) with a new python-transport. With only four of these powerful snakes, every vehicle will be able to slither around more reliabily and across all sorts of terrain forever untraversable by the obsolete and despicible wheel design.

  52. Why is "aging" used in the pejorative sense.. by andy1307 · · Score: 1

    The wheel is an "aging" idea too..Don't get me wrong: I support the new process if it makes the bootup process better/faster...you should be pointing out the limitations in the init process.

  53. He misses the concept by Todd+Knarr · · Score: 1

    Best exemplified by his statement that runlevels aren't important. Maybe runlevels as explicit runlevels aren't, but the idea is. Remember, we started with one big monolithic init script, and runlevels and such were introduced because lots and lots of admins had the same need: to start a system with a predefined set of things turned on or not, eg. a single-user mode with no system services running so major things can be replaced without interference or major system breakage that prevents normal startup from happening can be fixed. If he leaves out "profiles", they will be reintroduced for the same reasons runlevels were introduced.

    1. Re:He misses the concept by chess · · Score: 1

      Can somebody please moderate this up?

      And yes, I've RTFA:
      1) All You need is a utility to tweak both inetd and init configuration.
      2) This is funny. Numbered Runlevels may return as named "Service Profiles".
      3) Change those pesky numbers after S and K!
      Maybe even use make to minimize dependencies and speed up booting.
      If You fear bored users, hide information, instead cue in fancy graphics and muzzak during boot time;-)
      4) This is why he misses the concept. Linux is a reality on all sizes of Computers,
      from Supercomuters to watches.
      Having a bootstraping mechanism that is both simple, adaptable and not too specific across all system sizes and *NIX flavours is the key to administrability.
      Simplicity: One can debug with a very limited set of tools; try to debug code running in a VM when the shit has hit the fan. The less dependency on some infrastructure type of resources there is, the more robust the system will be.
      That's why there is a mode with few disks, a mode without networking and a non-graphical mode.
      Adaptability: Though there are differences, bash/sh scripts port rather well. This is because shell script just present the basic *NIX concepts in the most simple ways: files and pipes, forks and signals. No fancy stuff _any_ *nix does not understand, plus a natural way to execute external commands.
      chess

  54. Not Natural by turgid · · Score: 1, Funny
    This just isn't natural.

    When the Good Lord created the Universe, He created Nature and all the Beatiful Things it contains.

    The Good Lord created the Laws of Nature (physics) and of Mathematics

    And He saw that they were Good.

    Wanting worship and appreciation of His great Works, the Lord created Man.

    He created intention, free will and and enquiring mind in this Man.

    Aeons passed and Man lived as a child of Nature and God.

    Man worshipped God and saw His greatness and the Truth and Beauty that God had created in Nature.

    When Time was right, God endowed Man with great Reason, such that Man could comprehend Nature's great Mathematical Beuty.

    Lo, man now logical and rational could move out of childhood into adolescence.

    In a mere blink of God's mighty eye, Man beheld the Great Truth of Mathematics and studied Creation with great insight and insiration and was propelled forthwith into adulthood.

    Man took his first tentative steps onto another cellestial body, and through Mathematics discovered the divine UNIX.

    May years passed and Man took UNIX and made it Free as God has intended.

    In this UNIX, God had in his great Divine Scheme begat Emacs and init.

    The one day Satan came along and tried to ruin it all by replacing init with some rubbish written in Python.

    There endeth the lesson for today.

    1. Re:Not Natural by tigga · · Score: 4, Informative
      In this UNIX, God had in his great Divine Scheme begat Emacs and init.

      Oww, gawd!

      Not Emacs, vi!

    2. Re:Not Natural by Anonymous Coward · · Score: 0

      This is even funnier since the guy writing the new init stuff is called Seth. :)

    3. Re:Not Natural by Knos · · Score: 1

      Vi satanic's roots are clearer once you realize that VI VI VI, the incantation you often hear in the reptilian mouths of its worshippers, is actually the number of the beast.

      --
      . . . . . . . .. . . . . . . .
      may u!sh 2 sm!le at dz!z bad nn.!m!tat!ion
    4. Re:Not Natural by TeknoHog · · Score: 1
      The one day Satan came along and tried to ruin it all by replacing init with some rubbish written in Python.

      How ironic. The snake in the paradise is portrayed as evil, whereas he was only bringing more knowledge for the people. Makes Adam and Eve look like nice, obedient DRM-welcoming consumers who are scared by any extra information. Perhaps the Bible was written by M$ after all?

      --
      Escher was the first MC and Giger invented the HR department.
  55. Wow .. did someone actually read the paper ? by BESTouff · · Score: 5, Insightful
    As always on /. there are loads of uninformed comments just based on the title :)

    I think Seth's idea is a good one. Of course, there are some things to refine: the dependency shouldn't be external (e.g. SystemService knowing the dependancy tree) but dynamic (e.g. GDM sees that its config requires network login, so it asks SystemService to start network), etc.

    But overall rethinking the init is a good thing. Even just opening the debate is a very good thing. The mess of shell scripts is more a giant hack than a well-thought bootstrap system.

    1. Re:Wow .. did someone actually read the paper ? by Anonymous Coward · · Score: 0

      Yes, I did read the paper. Obviously though, both you and him are uninformed about how init really works. RTFM! It does more than just run scripts at startup. On the Sun box under my desk, init not only ran the start up scripts, it makes sure that the console process is always running along with some monitoring programs. You should also realize that the init process and the scripts it runs are two different animals. Init can run compiled programs, perl/python programs, bash programs and anything that is executable. If you don't like the scripts that a distro ships, go ahead and rewrite them in the language of your choice. Decide what problem you are trying to solve here before you start writing code.

    2. Re:Wow .. did someone actually read the paper ? by BESTouff · · Score: 1

      Agreed, init does some getty magic and some stuff, but this could well be handled by another daemon or something, it doesn't really matter. The true problem is the inextricable tree of shell scripts which traditionnaly goes with it. A good robust framework to handle priorities/dependencies/parallelism, GUI/console/whatever frontends, simplicity of manipulation and coding would be good. I imagine we can all live with the current status quo some more years, but some bright minds can do better. I'm sure.

  56. It's A Good Idea by Anonymous Coward · · Score: 0

    If you're going to boot into a desktop environment such as Gnome, why would you want to run 40 or 60 shell scripts (in serial no less) before starting the DE? Why not just do the minimal work to get the devices, kernel, and desktop going as early as possible? Then start launching services.

    Coupling the desktop to the boot process should decrease boot time (or perceived boot time). It makes sense for Linux users who are only ever going to use a single desktop (and always use a desktop).

    That ain't me, but it's probably a large and growing fraction of linux users....

  57. init buffer overflow exploit by codepunk · · Score: 1

    Yea that is a great idea just write everyting in C, what a dork..

    --


    Got Code?
    1. Re:init buffer overflow exploit by Anonymous Coward · · Score: 0

      Oh no! That means init, bash, ifconfig, and friends must ALL have buffer overflow exploits!

      Idiot.

    2. Re:init buffer overflow exploit by CarrionBird · · Score: 1

      "Yea that is a great idea just write everyting in C, what a dork.. " Eh, sounds fine to me, let's go for it! :-P

      --
      Free Mac Mini Yeah, it's
    3. Re:init buffer overflow exploit by Anonymous Coward · · Score: 0

      Only bad programmers leave their C code exploitable. It's easy to avoid that, if you're not too lazy.

  58. Replacing the Aging "Wheel" Device by avdi · · Score: 4, Insightful

    Apparently freedesktop.org has devolved from a desktop standards initiative to a home of pointless wheel-reinvention. Here's a list of the projects listed above, followed by their existing, more mature counterparts:

    Init Replacements: simpleinit, minit, jinit, runit, daemontools, serel. Progeny also has their own system based on Gooch's need/provide architecture.

    D-BUS: CORBA

    HAL: Discover

    --

    --
    CPAN rules. - Guido van Rossum
    1. Re:Replacing the Aging "Wheel" Device by Anonymous Coward · · Score: 0

      I reject the notion that D-BUS is a reimplementation of CORBA. That's just silly. D-BUS is a simple message bus, not a *colossal* distributed object architecture. The D-BUS spec is a few pages long (82k). If I remember correctly, the complete CORBA spec is over 1,000 pages.

      Anyways, no one is forcing you to use this. If this fizzles out, no harm to you. If it succeeds, well, we'll have some nice, new features for desktop users.

      And what'd Larry Wall once say? "Historically speaking, the presence of wheels in UNIX has never precluded their reinvention."

      UNIX has ALWAYS been about reinventing wheels. Competition and the availability of alternative implementations lead to evolution and a strong software ecology.

      We have a couple of desktops, a few kernels, a handful of web browsers, and a metric shitload of text editors... This is what we do. We are stronger for it.

    2. Re:Replacing the Aging "Wheel" Device by Anonymous Coward · · Score: 0

      Ok, one by one, but let me reorder a bit :)

      HAL:
      Dicover does not pop up a window "could not find driver for the just plugged in usb device. What now?" It doesn't even update my Rhythmbox when I plug in an iPod.

      CORBA:
      Well, there are two desktops and both are running circles around CORBA, but they don't embrace it. From everything I've heard most of them think it sucks for some reason or other. KDE even invented DOCP for that reason and in Gnome embedding is very rare.

      Apart from that orbs like Orbit are considered a bit overhead for

      Init Replacements:
      What the desktops want but don't get right now is a user friendly interface to the lower layers of the system. If something goes wrong in your init scripts, you end up staring at a terminal screen with some cryptic messages in English. While you might have no problems knowing what to do, my mum would certainly have problems.

      All these initiatives by the freedesktop.org guys just aim at bridging the gap - and it is a big gap right now - between the desktops and the legacy stuff from the good old Linux-is-a-server-OS days.

      They only want to help the clueless desktop users somehow. And they'll probably annoy you and some other die-hard oldschool unix guys to no end. But so is life.

      PS: Debian, Redhat, FreeBSD and whoever else use different init systems
      You didn't complain about reinventing the wheel there, did you? Why is that?

    3. Re:Replacing the Aging "Wheel" Device by ajm · · Score: 1

      It's a replacement. It's just not a fully functional one. It doesn't do as much as CORBA. There's a reason the CORBA specs so big. It has to be in order to fully specify all of the stuff that it needs to specify to describe a working system. As D-BUS approaches CORBA in functionality either the spec will approach CORBA's in length, or, more likely, there will be lots of badly documented or undocumented features in D-BUS that no one really understands and that preclude more that one implementation or any sort of interop.

    4. Re:Replacing the Aging "Wheel" Device by avdi · · Score: 1

      The D-BUS spec would be less than a page long if it were specified as an application of CORBA, would gain an emourmous amount of flexibility by deriving from CORBA, and would require little if any extra code to be written beyond what is already available in multiple open-source CORBA implementations. Just as a single example of flexibility: D-BUS is bound to a specific protocol and marshalling spec. CORBA would make the protocol and marshalling transparent and pluggable, enabling, for example, the ability to choose ultra-low-latency communication via shared memory with no extra coding needed.

      And this idea that because something has a long spec it shouldbn't be used - I don't know where that comes from. The XML specs aren't exactly miniscule, and no one seems to be having trouble creating XML apps. Hell, RFC2616 by itself is no picnic, but there's no shortage of interoperable HTTP apps out there. The point of standards like CORBA is to abstract away complexity so that we can focus on the interesting problems. Projects like D-BUS merely create unecessary coupling between boring, alread-solved middleware issues and the actual domain problems being solved.

      --

      --
      CPAN rules. - Guido van Rossum
    5. Re:Replacing the Aging "Wheel" Device by Anonymous Coward · · Score: 0

      You're wrong. D-BUS is a message bus. It's more like msgsnd/msgrcv, JMS, or even MQ than CORBA. Listen to me again: D-BUS is a message bus. CORBA is a distributed object architecture. You can use CORBA for a message bus, but that doesn't mean that D-BUS is a CORBA replacement, nor does it mean that D-BUS will grow into a CORBA replacement. CORBA does a million things that D-BUS will *never* have to do.

      Why isn't anyone saying "this is a replacement for RPC" or "this is a replacement for msgsnd"? Because this CORBA-issue is a giant red herring, that's why. Some upstream post says "they are reimplementing CORBA" and everyone repeats it.

      Unless D-BUS gets *seriously* repurposed in the future, it will remain a simple message bus, and will not grow into CORBA.

    6. Re:Replacing the Aging "Wheel" Device by avdi · · Score: 1

      You haven't read much about CORBA, have you? CORBA *is* a message bus, just as much as it's distributed object architecture, and just as much as it's an RPC framework. CORBA facilitates the passing of messages between objects - whether they be actual objects in an OO language, or simply applications; whether they be on the same mechine or different. That's pretty much the definition of a message bus.

      --

      --
      CPAN rules. - Guido van Rossum
    7. Re:Replacing the Aging "Wheel" Device by Ian+Bicking · · Score: 1
      The intelligent free software programmer should not be afraid to rewrite software, but should do so with the wisdom of past successes and failurees. Available source code and an active group of developers experimenting with ideas provide a great deal to learn from. However, in order for that learning to be effective you must use it.

      Yes, you can improve existing projects. But source code is not some magical thing, to be preserved at all cost. It is not a limited resource. Rewriting is frequently easier and can lead to more robust code. You don't have to use old code to learn the old code's mistakes.

      Or, since this is free software, you can use the old code. Use a collection of old code, copy and paste to your hearts delight. But if you are going to get people to use it, you usually have to give it a name -- so that people can find it, discuss it, etc. So just because it has a new name does not mean it is all new code.

      And if CORBA was such a great thing, why isn't everyone using it? It's not that it's obscure, or that implementations don't exist. Lots of implementations exist, there's lots of documentation, and yet people still don't use it. It's hardly like these GNOME people have never heard of CORBA. But perhaps they want to create something that free software developers will actually use. Not paid programmers who do what they have to because that's what mangement wants -- people will struggle with all sorts of things when they are being paid to do it. But free software developers -- even when paid -- are generally motivated more by aesthetic, incremental, intrinsically satisfying programming.

      CORBA could be technically great, or horrible, or whatever... but the fact is that people aren't using it. It's had its chance, its time has passed.

  59. W-T-F by blunte · · Score: 1, Troll

    Ok, obviously the poster doesn't speak English as their first language, so no complaints about the odd word choices.

    But most languages I've seen make at least some use of linebreaks and paragraph breaks...

    Geez.

    --
    .sigs are for post^Hers.
  60. Wow by theendlessnow · · Score: 1

    So we decided to replace something that isn't broken with something that arguably is broken. Author would appear to be VERY inexperienced. Does he understand the flexibility of the current init system vs. the very rigid and inflexible one he has proposed? Oh well, I'm sure he'll have fun writing it, even if only deployed by the younger set. An example of the youth's inexperience, Seth Nickell states "The whole runlevels concept is confusing and cumbersome, even for most (not all, but most) sysadmins." This is absolutely FALSE. I teach Unix at a local college and my only comment is that perhaps some people like to believe that init is "cumbersome" and some may actually say so because they never bothered to learn it, but even students in my INTRODUCTION TO UNIX class FULLY comprehend Unix runlevels. In my Systems Administration class we use runlevels (which define the operational state for Unix, what daemons get run, etc.) to create our own kiosk runlevel. Runlevels are easy, flexible (much more so than Seth's "replacement").

  61. XP by blunte · · Score: 4, Interesting

    Oh, you mean until you find another OS that can "fake" boot as fast as XP...

    XP has some serious issues in some cases with the way it "optimizes" the boot order. It appears quick, but in a corporate environment that can lead to weird timing problems. That's probably why MS left/added a feature to disallow logins until XP was really booted.

    --
    .sigs are for post^Hers.
    1. Re:XP by Mitchell+Mebane · · Score: 1

      Really? Where is that option?

      --

      The roots of education are bitter, but the fruit is sweet.
      --Aristotle
    2. Re:XP by Anonymous Coward · · Score: 0

      The one thing I hate about Windows is the fact that no matter how many useless features, services and whatnot you disable, you still have to wait a couple of seconds after logging in for the mouse to respond properly. I don't understand how XP's boot is any more "optimized" than Linux/BSD.

    3. Re:XP by Anonymous Coward · · Score: 0

      I believe that setting is described here:

      "It's important to note that Windows XP clients can apply their group policies asynchronously during boot and logon, which enables them to process their cached policies even when they cannot detect the network. Compared to Windows 2000 synchronous work during the boot and logon processes, this gives faster boot and login times to Windows XP clients which don't have to wait for the network. While this is essentially a good thing, some administrators don't want to delay applying software installations or folder re-directions, and may wish to convert this behavior (as in Windows 2000). You can make Windows XP Professional work synchronously during boot and logon processes by enabling the setting Always wait for the network at computer startup and logon, which is located in the Group Policy snap-in at "Computer Configuration", under \Administrative Templates\System\Logon."

  62. Re:The day I use Gnome... by Ianoo · · Score: 1

    Where in the article does it say this depends on GNOME? You're asserting that the skilled GNOME devs can't help out and work on other projects? People like Havoc Pennington are interested in making the LINUX desktop a useable, viable environment to replace windows, and if it's lacking somewhere other than the desktop environment, why shouldn't they apply their skills and help out with that, too? This kind of scare-mongering went on some months back when people were convinced Keith Packard was collaborating with GNOME to integrate GConf and Glibc into X. As usual, it was all FUD, mostly on the part of anti-GNOME zealots who have no idea what the GNOME devs are trying to achieve. The point with OSS is that you don't have to use it, and there are usually at least three alternatives for everything you happen to want. But it really doesn't help when people go around spreading FUD about other projects that some of us just happen to like and to which a lot of people have contributed time, effort and money.

  63. ksh and csh? by blunte · · Score: 1

    real men use sh.

    --
    .sigs are for post^Hers.
  64. Re:Reinventing the wheel? That's the Linux way!! by Baki · · Score: 2, Informative

    Yes this is a horrible perversion and deviation of UNIX.

    Also, the so called disadvantages of init are void. It looks like he does not understand what init is.

    Init is very simple: the kernel calls a program called "init" as soon as the kernel-part of booting is ready.

    The "normal" init (there is a SYSV and a BSD variant, the SYSV variant being somewhat more complex) only reads a config file /etc/inittab to see what further program it should call. For each runlevel there is such a program.

    Usually these are the init.d/rc shell scripts that sequentially carry out a number of initializations. Often there is a kind of master script such as rc2 (for runlevel 2) that calls further scripts in some order (those are usually in /etc/rc2.d/S*). But all this is just "usual" and could be completely modified without throwing away the standard init system.

    If you want, you can configure inittab to call some multithreaded language to carry out some initializations or start background daemons (yes, a UNIX "service" is a daemon, heretic!) in parallel, speeding up the init process.

    You can also simply use shell scripts instead of threads, but use shell background jobs (&) to do some things in parallel and then wait for each of them afterwards (the shell wait command), so you don't even need some multithreading for speeding up your boot process (the difference between multiple processes versus threads in this context is measured in milliseconds, not really a worthwhile advantage when it comes to boot time).

    In short: it is an insane and heretic idea, that can only be bred by evil plans or by ignorance.

  65. simpleinit by Sharkeys-Day · · Score: 5, Informative

    There already is a better init system: simpleinit. I've worked with it on embedded systems, and it rocks.

    It's dependency-based, so you only start up the services you need. Read all about it.

    Dependancies are a big improvement over runlevels, although you could implement runlevels on top of it.

  66. symlinks are already not needed by Anonymous Coward · · Score: 0

    The "file-rc" system is a replacement for the symlink method. It lets you define what runs when, in a single file.
    Debian fully supports this alternative boot method in their policy. All packages are required to call update-rc.d, which in turn either adds/deletes/modifies symlinks or edits the file-rc if you're using that.
    The "symlink mess" is already taken care of.
    See file-rc package info for details...

  67. But, Why!?!? by mcrbids · · Score: 1

    Init may be old, but what's to improve on?

    Init is solid, reliable, and standard. Best of all it works. What about systems where python is not installed?

    cat article | sed -e s/"aging"/"tested and reliable"/g;

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
  68. cripes! by Anonymous Coward · · Score: 0

    I used to laugh at folks who wanted to re-implement the whole OS in Perl .. now we've got folks wanting to do the same in Python?? Argh.

    Look the "init" system in Unix is a pretty basic concept. A small program runs another program at boot. Everything else is just variations on the theme.

    Let's concentrate on dependency systems, preferablly handled by a program in C that reads a simple text file and launches services in the right order so that the GUI can be up as fast as possible. That's all we need. Sure it's not sexy and it won't get on Slashdot but some distro author out there is going to do it and it's going to kick this Python business out the door.

    Damn, I'm just trying to imagine installing Linux on my embedded 486 board.. not only do I have to copy the kernel, init, a shell, and some utils, but AN ENTIRE PYTHON RUNTIME?? Yow!

    These kids today!! *shakes fist*

  69. Yeah, sure by Anonymous Coward · · Score: 0

    And the first minute is painfully slow, like in Windows, where it keeps loading things after you loggin. Or worse, some parts of the DE don't work without things like network, so I predict a nice mess (hunt in archive list, you will find how problems with DHCP or a bad configuration of the resolver makes GNOME puke).

  70. .hoD:eR by forgotmypassword · · Score: 2, Informative

    Python is not GPL

    "Python is absolutely free, even for commercial use (including resale)"

    http://www.python.org/doc/Copyright.html

  71. you're way off base by Ender+Ryan · · Score: 1
    You're way off base. The init process in Linux is not slow because it uses so many shell scripts, most of the time is spent waiting for daemons to start. Parallelizing this could speed things up a little maybe.

    I always clean up my system so only the things I need start, and it boots extremely quickly. Less than 5 seconds after the init process starts.

    Also, I don't know where you get this stuff about GNOME being slow and KDE being so fast, because the GNOME 2 series has gotten progressively faster. It loads in about 3 seconds on my machine, while KDE takes significantly longer(but not aggravatingly long).

    --
    Sticking feathers up your butt does not make you a chicken - Tyler Durden
    1. Re:you're way off base by Fefe · · Score: 1

      Yes, the Linux init process is also slow because of the artificial serialization.

      But it is also slow because of the shells, many processes and glibc. I invite you to measure the difference yourself if you don't believe me. minit will do both, by the way, start stuff in parallel, and allow you to get rid of glibc and bash in your start up scripts.

  72. There is great vision here by Anonymous Coward · · Score: 0

    (DANGER: Rant ahead!)

    I can tell that Seth has the right idea: More API in the kernel, less hectic scripting that requires those irritating scripts. They're one more thing to break! I personally spent a lot of time with my newly-installed Mandrake system trying to get ALSA to work and it still isn't great. The OSS layer (another thing to break) also doesn't load right because of the init script.

    I think there is vision here because it allows the system to start services without some outside script - everything rolled into the services themselves, where they belong. I hate having to track down a dozen different files to figure out how to make a tone come out of my sound card, or get my USB Cameras and scanners to work. Mandrake's distro works really well for this. But there are some flaws when you have 2 or more APIs up the totem pole to interface the same hardware. Why doesn't my video hardware scaler work in Mplayer through the "Vidix" interface when I'm not Mr. Root? Sure, there's some kernel-level workaround, but I'm not happy with the idea of re-compiling the kernel: It's a remarkable amount of work to do any tiny thing, and it always comes with the potential to break my distro.

    That's a way-out-there example, but the point is that having a good set of APIs makes system management easier. ALSA's got a good API. X11 is a good API. Gnome and KDE seem to work fine, but the existance of both gives me a royal headache. It's like having a Mac and Windows inside the same OS and makes me dizzy. And when I'm dizzy, Joe User is passed out. Joe User wants click-go computing. It starts up in the preverbial morning, files are kept on the hard drive, no need to reconfigure it because of your network. No guessing what program will come up when you double-click a file.

    No one has what Joe User wants. But Joe User wants something that includes an idea like what Seth wants. Want a web server? Click. It's running, and you don't have to guess whether it's in /sbin, /usr/sbin, /usr/distro-hacked-name/application-bins or whatever. Install a program? No user in their right mind wants to run some haphazard installer like "Installshield" or whatnot to get a program installed. Just annoyances, and at least Mandrake has that part taken to term - almost (I royally hate having the package management program in over three pieces). OS X is pretty good at this too. Windows is a nightmare. Sure, there's a directory of vendor-supplied installers/uninstallers to help you traverse the bloat. But installing/uninstalling apps should be a system function like RPM, not bloatware tag-alongs with the application. Installed Flash for Linux lately? YUCK! A shell script and some unknown archive in a tarball.

    The point of this rant, is: If we offer Joe User an OS that doesn't require a management headache, and offers Joe Software-Vendor an easy, straightforward way to program under it, and organizes everyone's clutter - Linux will take the day. OS X is way out ahead of the pack on this one, Mandrake is great but still kinda clunky, and Windows is barely holding. Who cares about "performance" when no one's in the audience?

  73. close, close.. by Anonymous Coward · · Score: 0

    echo "/tmp/.ICE-Unix should be owned by root"
    sleep 5

  74. Hope it's just a prototype by Jerf · · Score: 1

    Speaking as a certifiable Python lover... I hope they're just using Python as a development langauge with the intent to switch to compiled C later, once the design solidifies.

    Other people have already observed this locks out embedded applications; if this is the intent then eventually the C version would be available to all, in a shorter period of time.

    Also, just as a general feeling, that seems like a very heavyweight startup procedure for something that ought to be done as files dumped somewhere with a simpler interpreter for booting. A complicated interface can later be implemented on top of that for remote management or whatever while the system is already on and running, but the stuff needed to actually boot up should be as stripped down as possible, and I just don't see why all that other stuff should be there at bootup. (This would allow other motivated developers to create other methods of manipulating this data, instead of locking it away in a monolithic, non-UNIXy, inaccessible format.)

    I don't know any more about the system then what I see on the gnome.org page, but that's my call: Head for C and keep the data firmly seperated from the manipulation so others can play too.

  75. Why Bother? by shadowpuppy · · Score: 1

    I reboot every over month. Sometimes theres a power outage. Sometimes I upgrade my kernel. Once the FS is journaling, boot times are more than managable.

    Also all the dependencies you add to the boot process have to be on the root partition. I had a friend who upgraded bash once and his system wouldn't boot. Apparently he had a symlink from /bin/bash to /usr/local/bin/bash. Works real well provided /usr is mounted.

  76. editors note! by Yonder+Way · · Score: 1

    One of the links in this headline has been pulled, and replaced with a simple link to the goatse man.

    Folks at work, watch what you click in this story!

    Either someone at freedesktop.org is dicking around, or someone hacked freedesktop.org.

  77. Init written in Python? Don't think so. by jjackson · · Score: 2, Interesting

    I would agree that the init system in general could use an overhaul, however, the idea of writing a replacement init for "*Linux*" in Python is not going to fly. Maybe a replacement init for Red Hat, Suse, Mandrake, or other large distro.

    Neither of my distros will benefit in the slightest from this sort of system. Coyote Linux and the Wolverine Firewall and VPN Server use a busybox init application. Coyote fits on a 1.44Mb floppy and Wolverine installs in 7.5Mb. This would not be possible if either system's init relied on Python.

    The embedded Linux market will have no use for something that requires a Python interpreter. Not to mention, Bash shell scripting and Python source code are very different animals. Having to learn the basics of shell scripting to reconfigure the way your system boots is a far cry less complex than having to learn Python.

    As an embedded Linux developer, this project gets an emphatic thumbs down (as do most interpreted programming languages, though). They have their place in larger systems, but "Linux" is no such system, it is just a kernel. If he wants to write an init replacement, he should target a given set of distros, not the kernel itself.

  78. DBus project page compromised by jmcneill · · Score: 2, Informative

    Welp, looks like the DBus project page has been compromised -- visiting it contains a link saying 'This file has moved here', the 'here' linking to goatse.cx. Anybody have a mirror of their site?

    1. Re:DBus project page compromised by BobaFett · · Score: 2, Interesting

      They must be checking the Referer because the same link works fine when you come there through the main site.

    2. Re:DBus project page compromised by La+Camiseta · · Score: 1

      Until it gets fixed, you can read it at http://www.freedesktop.org/bin/rdiff/Software/dbus

    3. Re:DBus project page compromised by jmcneill · · Score: 1

      Thanks!

  79. OpenBSD comes with pdksh. by emil · · Score: 1

    And they don't even like it, so let's not start assuming anything about our particular member of the Bourne family.

    Besides, Bash is rather bloated and doesn't implement a few important features. Why can't we all just use ksh93? It is really better.

    1. Re:OpenBSD comes with pdksh. by Anonymous Coward · · Score: 0

      Yes, KSH is really better, but I restrict my shell programming to those that run in both, so it doesn't really matter.

  80. Using Make sounds better than python. by aliensexfiend · · Score: 2, Interesting

    "There was an interesting idea posted on slashdotregarding using make to handle the boot process (Parallelize, and dependency handling) The original slashdot post is here."

  81. F!@#$ moderators. by Anonymous Coward · · Score: 0

    Who are the morons moderating this off-topic? Now my current post is off-topic. The parent though, is quite on-topic. Gentoo reproduces most of these features.

    1. Re:F!@#$ moderators. by Anonymous Coward · · Score: 0

      Yeah, I was wondering the same thing. I think this is a case of a moderator not understanding what the topic _is_ and saying, "Hmmm, this post talks about Gentoo, not GNOME! Offtopic!"

  82. Good God, not Python! by Anonymous Coward · · Score: 0

    AAAAIIIIEEEEEEEE!!

    1. Re:Good God, not Python! by Anonymous Coward · · Score: 0

      Amen. Mod parent as insightful!

  83. CORBA and D-BUS by Anonymous Coward · · Score: 0

    Since several GNOME people are involved in these projects, I assume they had good reasons not to go with CORBA. After all, GNOME uses CORBA extensively, so they probably had bad experiences with it.

    Unless of course KDE would block the use of CORBA since that's what GNOME does...

  84. Keep it simple - Keep it standard by BanjoBob · · Score: 1

    I use the old Bourne scripts for just about everything because 1) they work. 2) They run on ANY *nix system in a consistent way. 3.)they don't require a lot of work to maintain. 4.) they're portable (excluding things like ps -ef / ps -aux).

    Any new run-level mechanism needs to have ALL of the functionality that the current init/simpleinit/telinit have. You need to be able to monitor them from a TTY device - not a bitmapped GUI. If it works well, and can be edited with a WY50/VT100 type interface, can be monitored on-the-fly, they it can be usable.

    Adding fancy stuff to a boot-up routine doesn't make any sense as its just more stuff to deal with during boot. Keep it as simple as possible.

    After almost 30 years playing with *nix systems, I've seen enough problems from V7, Sys5.0, BSDx.x, SunOS, Solaris, Ultrix ... ad nauseum to realize that problems do happen and if you can't manage things at a TTY level, you can really have your hands full.

    --
    Banjo - The more I know about Windoze, the more I love *nix
  85. Been done before by ofgencow · · Score: 4, Informative

    ETLinux replaced init several years ago with an entirely scripted version. Different scripting engine (Tcl instead of Python) and for different reasons (keeping an embedded Linux kernel tiny.)

    Making this happen was that the ETLinux folks ... added Tcl equivalents for some common syscalls and services: sys_dup, sys_exec, sys_fork, sys_kill, sys_nice, sys_pipe, sys_reboot, sys_sync, sys_wait, sys_chmod, sys_umask, sys_mknod, inp, inw, outp, outw, setleds, mount, umount, uudecode, uuencode, time, ifconfig, route, udp. The introduction of these commands allowed the rewrite of the initialization scripts in pure Tcl, avoiding the inclusion of large binary programs.

    More on ETLinux architecture here.

    1. Re:Been done before by ofgencow · · Score: 1

      Sorry, mistyped the url for the scripted version of init.

  86. How'd you work that out? by ZxCv · · Score: 1

    My x86 box is an Athlon XP 1800 with 1GB DDR and a 40GB drive split evenly between Win XP Pro and Red Hat 9. Win XP on this machine boots easily twice as fast as Red Hat 9. And by boot, I mean the desktop is fully loaded and ready to use (both machines auto-login). Even after disabling all of the non-essential things being started by Red Hat's default install, the Win XP machine still boots faster, although by much less. Then again, I don't have any extra crap (tray applications, typically) starting up with Win XP besides AIM.

    And even though its Linux, some of us turn our machines off after using them, so boot time does matter. ;-)

    --

    Perl - $Just @when->$you ${thought} s/yn/tax/ &couldn\'t %get $worse;
  87. In my day... by Anonymous Coward · · Score: 0

    In my day (2000, yes Y2K) we had to toggle in our bootloader on the switches on the front panel of our Honeywell 316 at our nukular powerstation and then boot the OS off of paper tape.

  88. bitch and moan by pizza_milkshake · · Score: 1

    yes, change is scary. why mess with what works? if the project fails miserably as many would hope then great! no one will use it. but hell, you never know, maybe it'll be useful. just because something's been around forever doesn't mean you shouldn't try to improve / replace it. i wish the guy luck.

  89. Wha? by kputnam · · Score: 1

    Did anyone else happen to see the "This page has moved here" with a link to goatce on the FreeDesktop.org D-BUS page!? I hit the refresh button and now it's gone!

  90. Remind me to file this by tjw · · Score: 1

    ...next to xinetd under "Complex Replacements For Simple Things That Don't Need Replacing" (one of my aliases for /dev/null).

    --

    XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UB E-TEST-EMAIL*C.34X
  91. MOD PARENT UP! by Anonymous Coward · · Score: 0

    It needed saying.

  92. It's faster because it's parallel. by i_am_nitrogen · · Score: 1

    If two programs don't need one another to run, but they sleep a long time waiting for i.e. network resources, they can both be started at the same time. Running all non-interdependent tasks in parallel speeds init times, because while one daemon is sleeping another can be doing its thing, rather than starting everything serially.

    Parallel initialization is nothing new. This is something we were working on for U4X back in the day. Too bad U4X never took off; all of us developers had school and work to keep up with.

  93. "Boot Linux faster" at IBMs developerworks by Anonymous Coward · · Score: 1, Interesting
  94. They r doing it by cnf · · Score: 1

    in PYTHON?

    man, i am doing my best to ban and bar any and all python from my systems ...

    i dont want a lot of different scripting languages on my system

    it get so bloated after a while

    python, ruby, blah blah blah

    shell and perl is all i want on them

    man, i cant wait for parrot ...

  95. I'm a certifiable Python zealot by rk · · Score: 1

    and I think this is a bad idea.

    The less stuff my computer has to depend on to actually boot, the better. I like the fact that relatively modern Linux systems can still run effectively on old hardware.

    My python library is about 62 megabytes in size. Are we going to create a separate boot-mode python that is minimal? In my opinion, we've just taken out one of the best features of python: All that cool stuff that comes free with python. In addition, now I have two python install to maintain. If not, I run the risk of upgrading python making my system unusable. Not likely, but not zero probability, either.

    As much as I generally hate shell scripting, I'm happy to do it for init.

  96. They're not alone! by Montreal+Geek · · Score: 1
    There are several init replacements in progress, including mine.

    I'm not too sure about the choice of Python, though, seems awfully high-level and library encumbered for something that likely has to run before many filesystems containing libraries are fscked and mounted.

    I tought I was courageous when I decided to go with C++. (But it did allow me to write very flexible code while keeping it clean).

    -- MG

    PS: My daemond is blindlingly fast, but not known to work on any box except my own. I'd enjoy people trying it out and seeing how it breaks, but don't rely on it just yet!

  97. oh, really nice. by morelife · · Score: 1

    Another fork in the linux kernel tree -sigh-.
    "ServiceManager" sounds like it came out of Redmond.

    "does a check on SomeService's dependencies.."

    Tell me how that is going to end up being simpler than init and scripts in place now. If ServiceManager ends up being written in C, it's going to need initialization/configuration in the form of text files - or something!!

    What do you mean "as soon as X is runnable we start GDM" ? A lot of us run servers, don't even use X and want defaults to default to NO X.

  98. Response from SystemServices author by nullity · · Score: 4, Insightful

    SystemServices: Hardly wheel re-invention. If you read the linked-to article you'll find that none of the listed "init replacements" address any of my four major goals. They addressed their own goals, which are nice ones I'm sure, but not things that the desktop needs. In fact, the only thing they really add over init that's interesting to me is a dependency system + parallelization. And RH's internal work on init scripts has suggested this results in only small improvements (neighborhood of 30% I believe) in boot time... which is better but not dramatic. Dependency systems are pretty trivial to implement and a dime a dozen, in any case.

    DBus: yeah, its a lot like CORBA. Its even more like KDE's DCOP. In fact, its a lot like DCOP. You could even think of it as a major iteration of DCOP. So look, GNOME has been using CORBA for IPC for several years and its still something people avoid using whenever possible. KDE used CORBA for a while, and even with the comparatively nice CORBA/C++ bindings found KDE devs avoided it when possible. CORBA is a freaking PITA to use for lightweight desktop-style stuff. DCOP was the solution (its a good solution, GNOME should have done this ages ago): make it easy enough to use that developers will actually readily communicate over DCOP. Communication protocols have no inherent value on their own. They acquire value when there's things to talk to. Developers won't use the API unless its simple. You can write very simple comm layers for KDE and GNOME around DBUS. Even if we GNOME folk wanted to use CORBA (we don't), KDE wouldn't, and a requirement for DBus being truly useful is that KDE+GNOME have to be willing to use it. End of story.

    HAL: I'm not really familiar with discover, so I'm not going to shoot my mouth off (much *grin*). From ransacking the web page you linked to, it doesn't look like discover really supports the sort of "central daemon with notification signals" model that we need to provide good hardware support on the desktop side. Without that... its sort of useless to us. It looks a lot like Kudzu, which is a good thing (and trust me, Havoc who proposed HAL in the first place knows about Kudzu, and probably discover) but it simply isn't what those of us who are in the ditches writing this desktop code need.

    Moral of the story: a superficially similar "solution" does not necessarily address the issues that we as desktop developers face. We propose these things because we have concrete problems to solve. Sometimes the problems are not obvious until you try to do something and end up butting into them. We're lazy people, just like anyone, and we don't like :-)

    1. Re:Response from SystemServices author by avdi · · Score: 2, Insightful

      Regarding D-BUS: I've seen nothing so far that explains why D-BUS couldn't have been implemented on top of CORBA. There's no reason for a lightweight desktop-integration bus to specify low-level crap like the protocol used, bit-ordering in packets, etc. There's no need for any coupling at all between passing messages between apps and how those messages are passed. Marshalling, dynamic service repositories, naming services, protocol abstraction, QoS issues - it's all been solved already. Why invent yet another TCP publish-and-subscribe protocol when you can build on one that's already there - and in addition, be able to swap shared-memory for TCP if TCP turns out to be too slow, or choose synchronous semantics when you discover that certain messages really need to have gauranteed delivery. Sure, put an extra-simple facade on it if developers don't like working with IDL; but don't reinvent RPC. It's been done too many times already, and half of the stuff that makes CORBA complicated you're going to wind up recreating by the time you're done anyway.

      --

      --
      CPAN rules. - Guido van Rossum
    2. Re:Response from SystemServices author by Anonymous Coward · · Score: 0

      Sure. D-BUS could have been implemented over CORBA, but we don't need dynamic service repositories, naming services, protocol abstraction, or QoS for this. It's not an e-commerce suite. It's used to tell your desktop apps that you've plugged a digital camera in. I'm just not sure what type of QoS I'm gonna need for that.

      Anyway, if it had been implemented in CORBA, this thread would either read "I've seen nothing so far that explains why D-BUS couldn't have been implemented on ${something-else}" or it would read "CORBA is too complex for this." They'll be flamed no matter what they do. At least they are trying to do something, which is more than I can say for 99.999% of the people on Slashdot.

      I think there is another syndrome related to NIH. It's NIHIWDI - Not Implemented How I Would Do It. If you want this on top of CORBA so bad, become a D-BUS developer or write your own CORBA based init system. I'll use whichever one is better. Competition is good. It drives evolution.

    3. Re:Response from SystemServices author by avdi · · Score: 2, Insightful

      You list back the services that I listed, and say they aren't needed - and yet when I read the spec, it described some of those very services. Not to mention the many, many TBDs remaining in that spec. This is why I'm encouraging understanding existing technologies - you don't know you've reinvented the wheel until you're aware of what else is out there. And then a year later you read over the existing technology's specs and realize "wow, these guys were dealing with exactly the same issues we had, only they gave them different names. I wish I'd read this back then!"

      And in response to your camera example? I can give a good guess: probably ordinary-priority, asynchronous best-effort semantics. But just because the camera-plugged-in signal just requires asynchronous best-effort semantics doesn't mean some other event won't require different semantics. Sometime later someone may decide that an event needs high-priority delivery. That's the advantage of having a solid messaging infrastructure - you don't have to worry too much about what kind of message passing semantics you'll need down the road, because you know that no matter what they are, you'll be able to specify them and have them taken care of, transparently.

      --

      --
      CPAN rules. - Guido van Rossum
    4. Re:Response from SystemServices author by Anonymous Coward · · Score: 0

      Do you think the D-BUS developers are just blisfully unaware of CORBA? I find that hard to believe considering the D-BUS team is a bunch of core GNOME developers and GNOME uses CORBA. It seems more likely to me that they have legitimate concerns over using CORBA and are now building this. It would be nice if they would list those concerns in the D-BUS specification, though.

    5. Re:Response from SystemServices author by nullity · · Score: 2, Insightful

      I'm not as knowledgable in this area as the DBus developers, so I can't tell you all their reasons.

      So one thing is that CORBA tends to take a lot of memory, at least relative to DBus and DCOP. A lot of developers will not add a small feature (and lots of lost small features is a big loss) if it means linking with a big library.

      For this technical reason, and probably for other really good ones too, but also probably political/historical... I don't think a CORBA based solution would fly with KDE. A system DBus that daemon / linux platform developers can target to communicate with "desktop land", regardless of what desktop people use, is very important. Both KDE, GNOME et al need to be willing to *use* this bus. It doesn't even have to replace their old system (CORBA + Bonobo for GNOME and DCOP for KDE), though IMO it would be nice if it did.

    6. Re:Response from SystemServices author by Anonymous Coward · · Score: 0

      Do you think Microsoft developers were just blissfully unaware of CORBA when they developed DCOM and SOAP? Of course not -- but there's plenty of political reasons to define your own standard rather than building on top of someone elses.

      These guys want D-BUS to be a 'universal' Linux standard to enable Gnome/KDE/everything else interop.

    7. Re:Response from SystemServices author by Anonymous Coward · · Score: 0

      These guys want D-BUS to be a 'universal' Linux standard to enable Gnome/KDE/everything else interop.

      Dear god! They must be stopped at all costs!

  99. This is really simple. by Anonymous Coward · · Score: 5, Informative

    Some of you may not have written your own dists, so here is a breif overview of why this is the stupidest thing I have heard in a very long time.

    1) Bootloader straps a kernel
    2) Kernel mounts a filesystem ro, and loads init from it
    3) init forks a single shell
    4) that shell launches everything found in the inittab
    5) that shell then procedes to run your init scripts

    From that shell what you do is up to you.
    In single user {runlevel S/s} you stop at #4, and start from that shell.

    Any other runlevel will be started from that shell. It doesn't matter if your scripts are written in perl, csh, sh, php, tcl or python.
    It doesn't even matter if you write them in a language that you can compile for extra speed.

    99% of your time is in loading the interpreter, and waiting on the daemons themselves.
    sendmail is extremely slow on loadup, so are other apps. Try setting dhcp, and having it time out.
    or RedHat's retarded Kudzu tool.

    Calling those from a faster interpreter, doesn't make them load or run any faster. It never will.

    If you think runlevels aren't important... Try patching a running system sometime.
    -- Sir Ace

    1. Re:This is really simple. by Cid+Highwind · · Score: 2, Informative

      Calling those from a faster interpreter, doesn't make them load or run any faster. It never will

      No, but a slightly smarter init can start them in parallel, so you can be waiting on dhcp, hotplugd, and kudzu all at the same time. That would make things fater.

      If you think runlevels aren't important... Try patching a running system sometime.

      Why bother? Time spent in runlevel 1 is downtime to your clients anyway; from a normal user's perspective, a system in single-user mode might as well be powered off.

      --
      0 1 - just my two bits
    2. Re:This is really simple. by xenocide2 · · Score: 2, Insightful

      And you're completely ignoring the BASIC FOUNDATION of why this is USEFUL: other SERVICES only have to WAIT on those they DEPEND on. Does loading X require a working DHCP lease? God, I hope not! So what happens is, that fundamental property of modern operating systems, "multitasking" switches between services starting in parallel.

      For the record, right now my init system waits for a dhcp lease before making progress. In essence, everything is started up as if it depends on everything before it. In reality, they often don't. Maybe you think that startup screen is nifty, but most people who've seen init booting my desktop think that 1) its slow 2) its crappy. They just might be right.

      --
      I Browse at +4 Flamebait

      Open Source Sysadmin

  100. The joy of open source by ca1v1n · · Score: 1

    The wonderful thing about open-source software is that someone can rewrite init in python, and the rest of us can laugh at them. Everyone wins.

  101. Pointless waste of effort by njdj · · Score: 1

    Ask every Windows user in the world why they are not using Linux and ...

    Some will say they need better office apps

    Some will say they need better device support

    Some will say they need more games

    Some will say the desktop should look sharper

    Not one will say that Linux needs a better init mechanism.

    This is a totally pointless project, let's ignore it and hope it just goes away.

    1. Re:Pointless waste of effort by Anonymous Coward · · Score: 0

      Duh.
      Of course not one will answer it in such a specific way ("Linux needs a better init mechanism").
      Instead, people will do it much more inconsciously:
      thousands of people probably choose XP over Linux every day when coming back home from work because they get their internet browser to load faster:
      1 minute XP (ok, I don't know how long it actually takes - you wouldn't believe me if I used that CRAP anyway!) vs.
      1 minute 30 Linux init time plus 1 minute KDE init time plus 10 seconds Mozilla init time == 2 minutes 40 seconds or so.

      As such, a replacement for the aging stupid serialised and bash-spawning-delaying-sleeping init system is sorely needed, and I strongly welcome any *well-organized* and *well-thought-out* efforts to do so.
      (the current effort does not seem to be that well-organized yet, BTW, since such an important system part improvement effort should have its own organizational web site IMHO)

      Let's face it, Linux HAS to have good measures to compete with XP on the desktop, otherwise we'll end up having our whole IT infrastructure put into chains by truly despisable companies.
      And most people do NOT keep their systems running all day long, for very good reasons of conserving power or to reduce system wear).

  102. Slackware's "excellent" init system by i_am_nitrogen · · Score: 1

    Dude... Slackware's init system is not excellent. It's a mess! You add/remove things to/from startup by editing the startup scripts themselves! It doesn't even have dependency tracking. Yeah, Slackware's supposed to be "leet" and all, but it's not the init system that makes it so.

    Gentoo's intelligent SysV-based init system is much more useful IMO.

    1. Re:Slackware's "excellent" init system by shepd · · Score: 1

      >You add/remove things to/from startup by editing the startup scripts themselves!

      That's a mess? Only if you choose to make it one!

      >It doesn't even have dependency tracking.

      I need that for scripts... why?

      >Yeah, Slackware's supposed to be "leet" and all, but it's not the init system that makes it so.

      Sure it is.

      If I want to add something, I can either make up a quick rc file, or simply add the binary to the rc.local file. I'll put a little comment above it explaining when/why it was added, and boom, simple and easy administration, with as much detail as you need.

      >Gentoo's intelligent SysV-based init system is much more useful IMO.

      Nothing sucks worse than an init system that programs automatically add themselves too. Perhaps I *want* to start my ftpd by hand! Up to now, I've not seen software that'll add itself to the slackware init system.

      On that thought, I *hate* install scripts that modify my inetd files. Keep your fingers outta there!

      --
      If you could be told what you can see or read, then it follows that you could be told what to say or think - BoC
    2. Re:Slackware's "excellent" init system by caluml · · Score: 1

      You listening to this, Kos? :)

    3. Re:Slackware's "excellent" init system by i_am_nitrogen · · Score: 1

      None of the gentoo ebuilds will add their programs to startup. You have to, for example, rc-update add mysql default. There's also /etc/conf.d/local.start and /etc/conf.d/local.stop for running stuff similar to rc.local.

    4. Re:Slackware's "excellent" init system by arkane1234 · · Score: 1

      Nothing sucks worse than an init system that programs automatically add themselves too. Perhaps I *want* to start my ftpd by hand! Up to now, I've not seen software that'll add itself to the slackware init system.

      On that thought, I *hate* install scripts that modify my inetd files. Keep your fingers outta there!


      You can "not like it" all you want, but unless you know what your talking about, please don't comment. Gentoo in no way screws with the init system automatically. It doesn't even overwrite unless you specifically tell it to. It goes *out of it's way* by making .cfg000_filename and letting you update them at your leisure.

      You can run ftpd by hand if you want, don't add it to your default runlevel. If it's there (you put it there if it is) then run "rc-update del ftpd default". Want to add it back? rc-update add ftpd default. Or edit the stuff by hand if you don't want to use a simple rc-update script to do it. But don't, I repeat, don't, say that Gentoo in any way automatically updates your (inetd?) files.

      By the way, what ARE inetd files, anyway? init.d files, xinetd files, or even rc files I understand... but inetd files? inetd only used/uses one file....

      --
      -- This space for lease, low setup fee, inquire within!
    5. Re:Slackware's "excellent" init system by shepd · · Score: 1
      >By the way, what ARE inetd files, anyway?

      A totally separate thing. I only brought them up while I was on the topic of software modifying my basic files.

      Inetd uses several files, actually. A few from the top of my head:

      • /etc/inetd.conf
      • /etc/services
      • /etc/hosts.allow (ok, ok, used by tcpd which uses inetd)
      • /etc/hosts.deny (same again)
      I am glad gentoo doesn't do this. My experience with other Sys V init linux systems tells me this is unusual behaviour, though. But still good.
      --
      If you could be told what you can see or read, then it follows that you could be told what to say or think - BoC
    6. Re:Slackware's "excellent" init system by Anonymous Coward · · Score: 0

      Uhm, tcpd does not use inetd. You might say it works the other way around, but even that is not precisely correct. /etc/services is not an inetd file, its a file that is used by libc to provide service lookups, inetd is just one of many clients of this file. By your definition of inetd file, practically any file used for any daemon on your system qualifies as an inetd file.

    7. Re:Slackware's "excellent" init system by Anonymous Coward · · Score: 0

      Without /etc/services, inetd is totally useless. As in none of it will work at all.

      If you feel that means services and inetd aren't linked, that's YOUR problem. NOT mine. I have better things to do than pick your balls on this issue.

  103. Because it can be done by ultrabot · · Score: 4, Insightful

    This is what is great about Open Source - people can innovate, create new systems, and if they prove to be good, they can be widely deployed. That's how progress happens, and the heart of a developer rejoices on seeing things like this. In the end, superior technology will triumph, and seeing that he is using Python, he is already well on his way :-).

    And as for all of you sticking to the old stuff, because it's good enough: are you sure you are not just getting old? The time I start to whine about progress ("the old way was good enough") will be a sad day indeed. Or perhaps this is the difference between sysadmin-types and programmer-type: sysadmins like to stick to old shell script based system because it's uniquity, while developers see the opportunities of new technologies and have a certain inborn respect for technological superiority.

    Linux will evolve, live with it. If the old system is indeed better, it will be used indefinitely, but unless we try something different, we will never know. Having some distros doing the thing in an alternative way is a good way to hash this out.

    I for one welcome our new freedesktop.org overlords. I'm really liking the direction that Havoc Pennington and other Gnome-related people are taking as far as desktop things go. We need more dynamic & motivated people like them on powerful positions.

    --
    Save your wrists today - switch to Dvorak
    1. Re:Because it can be done by Rasta+Prefect · · Score: 1
      The time I start to whine about progress ("the old way was good enough") will be a sad day indeed.

      Newer is not nessecarily better.

      Other examples:

      Windows ME vs Windows 98

      Windows NT vs Unix on the server.

      --
      Why?
    2. Re:Because it can be done by southpolesammy · · Score: 1

      Ok, progress good, stagnation bad. But that doesn't answer the original question -- what exactly is wrong with the current init process that requires a replacement? I mean, it's been in use for -- well -- as long as I've been using UNIX-type systems (about 12-13 years now), and I just don't see the deficiency.

      So diatribes aside, why is init obsolete? Enlighten this dinosaur.

      --
      Rule #1 -- Politics always trumps technology.
    3. Re:Because it can be done by sketerpot · · Score: 1
      sysadmins like to stick to old shell script based system because it's uniquity,

      That's a nice word: "uniquity". Unique and ubiquitous. I like it. :-)

      As for what you were actually saying, I agree completely. Shell scripts are easy (for simple things), though.

    4. Re:Because it can be done by Anonymous Coward · · Score: 4, Informative

      But that doesn't answer the original question -- what exactly is wrong with the current init process that requires a replacement?

      Say you are on an enterprise that uses a DHCP server for the network. Say the DHCP server is down, but people still can boot their desktops and do work with no network connection, so productivity doesn't go to hell while they don't get an IP.

      Now if you're using dhcp clients on your computer, unplug the network wire. Reboot. See it try for minutes to get a dhcp lease before it continues boot. Now think of services that could trigger the same wait.

      Current init: good for servers, not so for desktops.

    5. Re:Because it can be done by shaitand · · Score: 2, Insightful

      old vs new is irrelevant, it's better vs not that matters. "The old way was good enough" is a horrible reason to want the old way back!! There is no such thing as "good enough", just "good enough for now".

    6. Re:Because it can be done by shaitand · · Score: 2, Insightful

      I'm not sure if this IS progress. But is the question really what's wrong with the current system? is that ever the right question? That's the thought process that leads to stagnation, whether or not new systems should be developed isn't really questionable, of course they should. The question is what advantages and disadvantages do they offer compared to the old.

      If the new system is able to rival the configurability and flexiblity of init (and it sounds like it leaves that at the whim of app developers who are likely to throw in those stubs as an afterthought) AND accelerate boot time and desktop time in one system, one which is equally efficient in terms of cpu, memory, and disk storage and reduced number of depencies... I'll go with it.

      Unfortunately it sounds like this won't be that answer, it sounds like he is reducing flexiblity for the sake of usability. It sounds like he's adding dependencies, and offloading the service startup times to be done at a different point (which feels faster but isn't, it's slower with his added dependancies, especially when done in a bloated language like python.) And it looks like added complexity in terms of code which = bugs out the arse and microbloatlike "technology".

      But hey, we can still hope right?

    7. Re:Because it can be done by DanielJH · · Score: 1

      I'm sorry, but I can't remain quiet. Gnome, and sections of Linux, are headed in the wrong direction. We in the Linux community are adopting overly complex code and structures that only a few years ago we laughed and cursed at Microsoft for, and Gnome is heading this charge. They have produced a less stable and more complex desktop with less features, while calling it technically superior and it is. Flat files or groups of flat files are the best solution for configuration, but a repository is technically superior, and someone at my company (with only a few linux boxes) rebuild their dot files from backups every few weeks because it blow up. Multiple box logins are hard, and heterogous systems not even thinkable. (I know there will be many replies that I don't know what I'm doing, but I didn't have this many issues with 1.x. And I don't have time to f*** with it.) BTW: It works wonderful on my home desktop, but I need a corporate workstation with all the benefits of Unix, not something that looks like a MS machine. If I wanted that, I would run MS windows.

      This is not the only example, and I see it across the spectrum (ex. NIS+, LDAP, Active Directories, Tape backups, etc.) were we have things that are technically superior, but are more error prone, overly complex with less features. The real beneficiary of this changing technology are the IT specialist who are required for all but the simplest of jobs. I used to laugh at my MS Administrator when he had these kinds of problems. Now I only shake my head, because I am now having these same problems with Linux.

      I have no problem with progress and Linux has many great projects that are building on the ideals of an easy to administer power user OS. My hats off to you. To the rest, KISS (Keep it Simple Stupid) that is may go well with your projects.

      An update of the init system may be in order, but its replacement must be simple, or we are no longer Unix, we are Microsoft. Complex and worthless.

    8. Re:Because it can be done by Anonymous Coward · · Score: 0

      change your dhcp client timeout. Or move it to another runlevel. Multi-user mode doesn't necessitate reading slashdot.

    9. Re:Because it can be done by Anonymous Coward · · Score: 0

      unix is neither unique nor ubiquitous.

    10. Re:Because it can be done by Ian+Bicking · · Score: 1

      On a similar thread, I've had a service stall due to a broken package, and make it very difficult to start up my system. It's a heavy service (Zope) which was annoying enough to wait for -- having it mess my system up was insult to injury. Or injury to insult? Anyway, it was dumb.

    11. Re:Because it can be done by Spiral+Man · · Score: 1
      umm, two things:

      first, dhcp does not try "for minutes" to get a lease, it tries for about a minute, and you can change the timeout to whatever you want it to be.

      second, you could get rid of the problem altogether by changing the line in your rc script that says:

      dhcpcd
      to
      dhcpcd &

      and then other stuff will continue to run while dhcpcd is trying to connect (which isnt necessarilly a good thing, but its the only way you could do it in python either. there are only two ways a program (and python and bash are both programs) can run another program. either exec it and wait for it to finish, or fork then exec it and keep on executing)

      --
      "we demand rigidly defined areas of doubt and uncertainty!" --Douglas Adams, The Hitchhikers Guide to the Galaxy
  104. Bytecode vm??!! Nightmares of Java come to mind. by Anonymous Coward · · Score: 0

    Sure, lets increase the start-up time by 20+ seconds while waiting for a vm to load in an attempt to shave off 5 seconds from system start-up.

    Just use C.
    See C run.
    C be good.

  105. Apple knows how to boot a system by bill_mcgonigle · · Score: 1

    Init Replacements

    I say we just 'borrow back' SystemStarter from Apple/darwin.

    It's got everything most people want and it's massively field tested. 'Not invented here' is its main problem.

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    1. Re:Apple knows how to boot a system by robin · · Score: 1
      --
      W.A.S.T.E.
  106. boot faster by SHEENmaster · · Score: 1

    for a "tivo box" you can get quick startup times by starting your tivo app before anything else.

    If you want a fully bloated User Friendly GUI, then of course it'll take longer to boot! Most Linux distros are anything but a minimal "weenie" gui coupled with some card games and a DOS-era text editor or two.

    Try building everything unnecessary as a module, loaded after your UI starts, and make the UI as high a priority as possible.

    Also look into hybernation, whereby a minimal kernel loads a ram image from a booted system and lets it go.

    --
    You can't judge a book by the way it wears its hair.
    1. Re:boot faster by Anonymous Coward · · Score: 0

      'scuse me, but that's ALL lame excuses/workarounds for a fundamental, real problem with SysV init.
      This problem (lack of parallelisation) needs to be fixed, now (especially since we're on a Desktop Linux voyage, where we really cannot lose valuable boot time by waiting for stupid serialised execution, and don't forget that Win XP does the same thing in lightning speed!).
      And especially since SysV init is not exactly user friendly to begin with...

      Just when I thought that someone ought to start a real community project about replacing oooold SysV init, someone is actually doing it:)
      (although from the looks of it I think the intended design is rather "strange" so far...)

  107. What happens if python upgrade has bugs? No boot? by Anonymous Coward · · Score: 0

    What happens if Python gets an update and has a major bug. Will the system never boot again?

  108. Needless redundancy by CAIMLAS · · Score: 1

    WTF?

    What's the point in this? We can already get linux to boot in under a second using various tweaks. Why do we need more speed than that?

    Additionally, what's the point of making a functional and simplistic design such as the current init more complex? It doesn't need to be more complex to do what it does. It starts your computer and the processes.

    The design is flat for a reason - it doesn't need to be anything but flat. Reimplimenting it is about as aburd as using PowerPoint for a bulleted list of things you need to accomplish in a day, when notepad or a pad of paper will do just fine.

    Most linux systems reboot, what, once every month, if that? (desktops varying frequency, of course) Seems like a hell of a lot of effort for nothing.

    --
    ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
  109. Why this should not be python by ajs · · Score: 4, Insightful

    Ok, so I'm not the best person to say this because anyone who looks for my publishing credits will immediately realize that I'm a "Perl guy" and thus, I must hate Python (I'm not really a Perl guy, and I don't hate Python, but that's beside the point). I'll go on anyway because this is important, and folks who don't do sysadmin for a living may not have had to think about this.

    init itself is so lightweight and small that it rarely, if ever, fails. This is a good thing, since it's init's job to start a ton of very heavy-weight services.

    That said, I see the logic in bloating init with some of the features that are almost always implemented in a distribution built around it. For example, it would be nice to see init perform some service tracking such that it could be told directly to kill a service, and it could do so.

    Keep in mind that every time you increase the size of init, you remove a class of systems that can now no longer use it because of it's footprint. This matters a lot for some kinds of embeded systems that have just enough brains (that is, RAM and installed libraries/software) that it makes sense to have init today.

    You certainly could not achieve this minimal-growth by re-coding init in Python, Java, Perl, Lisp or any other high-level language. That's not a slam against high-level languages, it's a simple fact of life that their flexibility comes with costs.

    As for the shell-script init-scripts, I certainly feel that all of that should be moved out of init's domain. Each application should have a control program (like apachectl) which knows how to start it, stop it, get status, reload configs, etc. That program can be written in C for speed; a high-level, general purpose language for ease of maintenance; or even in shell. But, the point is that that should not be a constraint of init.

    init, might well provide a library and/or command-line tools to make writing those controlers easier and more modular, but I don't think there should be any REQUIREMENT that your program know anything more than the calling conventions of an "init controler". The more constraints you heap on, the less software is going to ship ready to integrate with your init system, and that way lies far too much integration work to create a workable OS (and thus MORE variants between distributions, not less).

    Once you've done all of that, THEN you can think about the high-level glue so that things like a desktop integrate better.

    1. Re:Why this should not be python by k8to · · Score: 1

      Firstly, you can set Linux up differently for different systems. An embedded system need not use the same init as a server or desktop, and probably already doesn't, if the engineers know what they're doing.

      Secondly, the Python runtime isn't going to break. This kind of application just isn't going to strain it at all.

      But, you're right of course. Adding all this complexity and logic to init seems sketchy. For it to have any chance of reliabiliy, the interfaces and logic have to be very narrowly and simply defined, and that's not the impression I'm getting out of this incomplete description.

      --
      -josh
  110. what a boring troll by Anonymous Coward · · Score: 0

    so if python is too complex/difficult for you, what would you call elegant?

    perl? c? c++? bash? simple/clean?

    HAHAHAHAHAHAHAHAHAHAHAHAHA... nice one!

  111. did you even read the article? by Anonymous Coward · · Score: 0

    come on, this is so sad, he addresses the need for the change in the FUCKING ARTICLE. init is confusing, archaic and slow as hell to start. there is NO NEED for a modern system to take 2 full minutes to startup, with this new idea it could take 15 seconds.

  112. that has nothing to do with this by Anonymous Coward · · Score: 0

    he has a well thought out system of dependancies... so if your services needs to wait for other ones to be started, make them depend on them. problem solved.

    1. Re:that has nothing to do with this by shaitand · · Score: 1

      That's not the only problem though, because of XP's lack of TRUE protected memory space the processes loading in parallel can cause eachother problems, they can invade eachother's memory space in various ways when initializing.

    2. Re:that has nothing to do with this by Anonymous Coward · · Score: 0

      Please explain.

  113. divide and conquer! by Anonymous Coward · · Score: 0
    by allowing an environment where the choice of window manager (and actual layout, functionality, look, mappings, etc) is still there but with the ability to share common UI plugs, then gaming can become more common on non-Window systems. This in turn means more non-gaming desktop followup especially in respects to modelling and CAD types of design.

    Actually, this could also potentially lend itself to encouraging GUI designers to allow for more customization outside of just themes (colors and skins) and give administrators the ability to specify "enterprise" wide common controls without going through painful middleware processing and ugly hacks.

    Or... this could all just end up making GUI designers create more unintuitive and hardcoded crap that can interface with multiple GUI's, who knows?

  114. No, you give us a reason as to WHY NOT? by Anonymous Coward · · Score: 0

    python is a great, powerful language. its small and light enough for the job... so why shouldn't he use the right language for the job? surely he shouldnt because luddites like you refuse to admin its *2003*

  115. It's cool when it's Linux by Anonymous Coward · · Score: 0

    People complain that Mac OS X can't be Unix because it doesn't use the same init routines as other Unixes, so it's a lame operating system. But when someone tries to change the Linux init, suddenly it's cool and bold step forward.

    It reminds me of the PC users who complained when the iMacs shipped without a floppy drive in 1998. How can you have a computer without a floppy drive? (Never mind that iMacs had integrated modems and ethernet controllers when ethernet cards were $50 add-ons for new PCs.) But when PC companies started doing the same thing 4 years later, suddenly it was a great step to throw away useless legacy systems (even though it was really just an attempt to squeeze out and extra $5 profit per unit).

  116. READ THE ARTICLE, YOU CHUMP by Anonymous Coward · · Score: 0

    jesus christ, you people are all morons, can't you fucking read??? this is pathetic.

  117. Re:Reinventing the wheel? That's the Linux way!! by zangdesign · · Score: 1

    In short: it is an insane and heretic idea, that can only be bred by evil plans or by ignorance.

    Which, of course, means that lots and lots of people will leap on it and exclaim "Great Sega! Why hasn't this been done before?!"

    Of course, insane and heretic ideas frequently become a great and wonderful thing. Christianity? The automobile? GPL?

    Food for thought.

    --
    To celebrate the occasion of my 1000th post, I will post no more forever on Slashdot. Goodbye.
  118. congrats. if you read the article, you would know by Anonymous Coward · · Score: 0

    that *of course* X is not required, and you can choose what order things boot. but reading the article would be too much to ask, wouldnt it.

  119. boy... those 4 megs of disk space are SO PRECIOUS by Anonymous Coward · · Score: 0

    gosh, having python installed is such a burdon.

  120. I have a serious hardware problem... by efti · · Score: 1
    I mean really how often do you have to reboot your linux box? This isn't the days of Win95 where you had to reboot daily. The most your should ever have to do on a linux box is Cntrl-Alt-Bkspace to restart X because something went way wrong. If your actually having to reboot your linux box more than once a month your either playing with too many kernels or have a serious hardware problem.

    I have a serious hardware problem. I run Linux on my laptop you insensitive clod!

    --
    I signed up for a /. account and all I got was this crappy sig
  121. DUH! by Cid+Highwind · · Score: 1

    Don't like it? Then don't use it! That seems simple enough to me.

    It's not like init is just going to disappear as soon as something newer comes out.

    --
    0 1 - just my two bits
  122. backwards by Anonymous Coward · · Score: 0

    could we for just a second think about compatibility ?
    if you have something better than sysV init procedure, that nice and sweet, but I dont give a shit as long as you dont provide a proof of superiority by sheer compatibility.
    embrace and extend, not such a bad idea. The difference is only between the kiss of death and the kiss of love.

  123. booti-time IS an issue with laptops by locus_standi · · Score: 1

    While boot time may not be an issue for servers and some desktop users, it _IS_ an issue when it comes to laptops. Laptops and other such devices are the future of computing for the masses and boot-time (boot to GUI) remains a bottleneck with these devices. I have a fairly powerful laptop. Even with all the boot-time optimizations with mandrake/redhat, it still takes much longer to boot compared to XP.

    1. Re:booti-time IS an issue with laptops by Li0n · · Score: 1

      I think I read a few months ago that something like 60+% of all new systems sold lately were laptops.

      --

      ~
      ~
      :wq
  124. Put everything in rc.local! by Anonymous Coward · · Score: 0

    I just put everything in rc.local

  125. Re:Reinventing the wheel? That's the Linux way!! by TeknoHog · · Score: 1

    Gnu's Not Unix. Linux Is Not UniX. RMS said in the GNU manifesto that copying Unix is not essential, and GNU will have improvements where appropriate.

    --
    Escher was the first MC and Giger invented the HR department.
  126. Re:Reinventing the wheel? That's the Linux way!! by Istealmymusic · · Score: 1
    Of course, insane and heretic ideas frequently become a great and wonderful thing. Christianity? The automobile? GPL?
    The wonderfulness of the examples you listed is questionable.
    --
    "The lesson to be learned is not to take the comments on slashdot too literally." --Vinnie Falco, BearShare
  127. Re:Bytecode vm??!! Nightmares of Java come to mind by k8to · · Score: 1

    Right. Starting python's "Virtual Machine" takes an ungodly amount of time, I mean, look at this:

    Here I am on my machine, there aren't any python processes running.

    jrodman@Skonnos:~> ps aux |grep python

    (Yes, there could be tools written in python which don't have it in the process name, but there aren't.)

    Okay, here's my python program:

    jrodman@Skonnos:~> cat test.py
    #!/usr/bin/python

    print "hello world"

    Okay, here I am running my program:

    jrodman@Skonnos:~> time python test.py
    hello world

    real 0m0.050s
    user 0m0.040s
    sys 0m0.010s

    Wow, you're right, it really does take 20 full seconds to start up a "virtual machine". Well, maybe 1/20th of a second. Close enough.

    --
    -josh
  128. Re:boy... those 4 megs of disk space are SO PRECIO by Mrs.Trellis · · Score: 0

    If you run a tight system, every package is a burdon, and a quantifiable risk. I don't want have to keep track of any more patches than I need to.

  129. it's 2003, not 1997 by axxackall · · Score: 2, Insightful
    All systems come with bash. Why not use it? Python is not needed for this.

    I still remember systems where bash scripts did not work as bash was broken or bash accidently was disabled for the user running the scripts. That time (3-5 years ago) there were many flamewars bash-vs-sh. What's happen? Bash is everywhere. Not precisely everywhere, but more systems have bash today.

    I think the evolution of unix-like operating systems (especially Linux ones) is moved far forward enough to begin flamewars python-vs-bash. Yes, Python is not everywhere, but so isn't bash, Python has just a little bit smaller % of system with no Python, but still many of them have it. Especially if it will be required.

    Why Python? Several years ago Bash won a simple sh just b/c it has a little bit more convinient programming extensions. Even with that Bash is still not exactly general programming language and if you try anything complex on it - you know what I mean. Python is much better for scripting complex tasks. Dependency checking is one of reasons to use it. String parsing, regeneration of config files - another ones. With bash you don't have a good luck to do it.

    Evolution of system tools wasn't frozen these years. Get over it. It's time for real tools to come to the scene. If you don't like it - choose an OS more conservative than Linux, for example BSD - sure they will stisk to a simple sh for a couple of more decades. No wonder it's dea... sorry... :)

    Well, thanks to the project like this, and Gentoo as well, in few years someone will point on this flamewar and say: "remember some conservators did not want to use Python? Now it's time for ..." Who knows, will it be Erlang or Haskell? :)

    --

    Less is more !
    1. Re:it's 2003, not 1997 by Anonymous Coward · · Score: 0

      Why not simply use make(1) to deal with dependancy checking ? It is designed to do just that. Some *BSD use it and it's working fine.

    2. Re:it's 2003, not 1997 by axxackall · · Score: 1
      B/c make is so unfamous by its two decade obsolte design that many people has already created many projects dealing with dependencies in a much better way without any harsh and using much better (and more programmable) syntax.

      As for BSD and make - it's pretty balanced combination, where everything old-and-well known (even when it's too obsolete already) is considered as good.

      --

      Less is more !
  130. Better init Replacement by Vagary · · Score: 2, Funny

    So you're saying that the big complicated scheme this story is about could be skipped if the kernel let you play Tetris while it booted?

    1. Re:Better init Replacement by Anarchofascist · · Score: 1

      ...let you play Tetris while it booted?

      That's not funny, that's Clever!

      --
      Once more unto the breach, dear friends, once more, Or close the wall up with our American dead!
    2. Re:Better init Replacement by Anonymous Coward · · Score: 0

      Hmm... Can't remember which distro which let you play Tetris while it installed. Anyone?

    3. Re:Better init Replacement by Anonymous Coward · · Score: 1, Informative
      "As the installer continued to copy files, its best feature appeared: a Tetris-like game that provided a welcome diversion from a monotonous task."

      Caldera OpenLinux 2.2 -- see the review

    4. Re:Better init Replacement by Lars+T. · · Score: 1

      Only if you start on the fastest level. Else the computer has to wait until you finish.

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

    5. Re:Better init Replacement by peterpi · · Score: 1
      Remember those games for the Commodore 64 that let you play space invaders as the proper game booted?

      ... and everybody thought they were the only ones to stop the tape and just play the loading game.

  131. Au Contraire by Spy+Hunter · · Score: 1
    This is a great idea.

    It is trying to innovate past the ancient Unix ways, and it shows a willingness to look toward the future instead of stagnating in the past.

    IBM tried once and failed, but that doesn't mean everyone should just give up. One of the several open-source init replacements available today (or in the planning stages) will eventually turn out to be better than kludgy old Unix init, and it will be replaced, as it should be.

    Personally, I hope that within 10 years Linux will hardly even be recognizable as a Unix anymore. If Linux stays exactly like Unix forever, it will never be able to become the next-generation operating system we all want to use. Unix isn't the best possible operating system, and Linux has the potential to become more than Unix ever was.

    --
    main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
    1. Re:Au Contraire by Anonymous Coward · · Score: 0

      >IBM tried once and failed

      What is wrong with it?
      (AIX is the only unix I've been admining personally/professionally - I am confused every time I try to tinker with my linux init stuff.)

      -Borge

    2. Re:Au Contraire by Spy+Hunter · · Score: 1

      Beats me. Talk to the guy who made the comment I replied to, he's the one who said IBM's init scheme was bad. I've never used it myself, I was just refuting his argument.

      --
      main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
  132. well... by ShadowRage · · Score: 1

    New stuff is nice, and to those who call this bloated, do you realize that the current system is pretty bloated as well? *gasp* *shock*
    using shell scripts that execute a shitload of commands means a bunch of (unneeded) processes are started up at boot up.
    now this new system looks bloated as well, here's the thing, why not fix the current init system?
    instead of using shell, use C binaries instead, but have a package that has the C sources for these binaries, be much faster and efficient. wouldnt hurt at all.
    this systemservices thing looks nice, but for some reason, the term "microsoft" comes to mind when I see that name.
    of course we're trying to pull away fro the whole SCO deal too to make them really look like jackasses.

    personally, I think ths should replace init on "desktop" linux systems, for sysadmin and hardcore geek systems, regular init should stay, or at least tinkered with, it hasnt changed much, it should be changed.
    think it's funny how he uses redhat as an example, redhat isnt a good example for anything, he should look at slackware or debian.

    whatever, I have a headache.

  133. thats just sad and pathetic. by Anonymous Coward · · Score: 0

    psch. we are talking about one package of 4 megs here, if thats a big deal to you, you are clearly incompetant.

    1. Re:thats just sad and pathetic. by Mrs.Trellis · · Score: 0

      Competency has little to do with it, likewise disk space. To download, read and digest the documentation, make sure latest patches have been applied, configure and compile software which I have no other use for, to me, is plain stupidity. You obviously think other wise, I wish I had that much time to spare, you're a lucky individual if you do. Thank you for sharing your thoughts with me.

  134. Interesting... by anlprb · · Score: 1

    I like the MacOSX init sequence myself. Plus, you don't have to replace init. They did it the right way, change what init does, not remove init. Leaves room for embedded systems to have lightweight init sequences, possibly with init calling everything itself, or complex boot sequences for desktop machines. Remember, the black boxes are there for a reason, it makes replacing each part that fails a LOT easier.

    http://developer.apple.com/documentation/MacOSX/ Co nceptual/SystemOverview/BootingLogin/chapter_4_sec tion_2.html#//apple_ref/doc/uid/20000981/TPXREF106

    --

    One Token Ring to Rule them All, One Search Engine to Find Them, One WAN to bring them in, and TCP/IP Bind them...
  135. The wheel is constantly reinvented by Chuck+Chunder · · Score: 1

    Of course, we do get new wheel designs all the time. Sure they have the same basic principles (ie they roll) just as this new init system has the same basic principles (it starts things up).

    But wheels today are radically different to those 3000 years ago. They are different from wheels of 10 years ago. They will be lighter, more efficient, provide better grip or in some other way be better suited to the task they perform than the wheels that have gone before them.

    It's called progress and it is desirable.

    --
    Boffoonery - downloadable Comedy Benefit for Bletchley Park
  136. Let's create a config database. by lonesomeprole · · Score: 1
    I've got an idea. We can have a huge file act as a database and programs can 'register' at startup to run various scripts.

    Wow, we can even store all configuration information in a non-human readable format!

    Then all we need to do is add a default mode to fix problems with this 'registry' and fallback to a backup registry.

    Oh wait, someone has already done this and it sucked.

    Damn, I guess we can overcomplicate using python. It's just one more scripting language for us all to learn.

    Wooooooo.......Whoooooooo!!!! Another resume bullet point.

    Kernel Guys, please make this optional if you every put this in a release kernel. I'll just stick with what works.

  137. requiring python is just as bad. by Anonymous Coward · · Score: 0

    python isn't minimal.

  138. sorry.... more appropriately by Anonymous Coward · · Score: 0

    [/usr/local/lib]$ du -hs python2.2
    39M python2.2

  139. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  140. Re:Bytecode vm??!! Nightmares of Java come to mind by be-fan · · Score: 1

    Java and Python aren't even in the same league as far as these things go. Python is 870k and depends on 7 standard libraries. The JavaVM comes with a 75MB libs directory. Python takes 0.007s to give me the usage message. javac takes 0.264 seconds, even with a warm filecache.

    --
    A deep unwavering belief is a sure sign you're missing something...
  141. thumbs down by jmason · · Score: 2, Insightful
    Gotta say, I hate the idea. I've dealt with unusual apps in charge of starting services in the past (AIX had some kind of DCE-based service control daemon) -- and it was a world of hell. Shell scripts, by comparison, are comprehensible, tweakable, and very very easy to deal with. I know -- this sounds very unlikely -- but any system that has to deal with as many settings/dependencies/external hooks etc. as the boot scripts, is going to be that confusing anyway no matter what language it's in!

    But I do like the idea of parallelization of the boot scripts, and starting X a whole lot earlier (like before the daemons are all started); I hacked up the init scripts to do this on my desktop linux machine a few years ago, and on Solaris and SunOS machines before that, and it was great for boot time.

    Richard Gooch's need(8) and provide(8) tools look like a fantastic way to do this simply, comprehensibly, and without rewriting everything in a new language. that's available here, and that page notes that it should be in versions of init in util-linux since 2.10q.

  142. Look at Mac OS X (SystemStarter) by a1291762 · · Score: 2, Informative

    The SystemStarter process that Mac OS X uses is based on the Next init/rc system which is similar in principle to how FreeBSD does it's init/rc system. Since it's part of Darwin it should be available under a BSD license. I'm sure it could be rewritten to use X rather than WindowServer for it's graphics.

    I think that's a more worthwhile replacement for linux's init/rc system IMHO.

    Link

    1. Re:Look at Mac OS X (SystemStarter) by Anonymous Coward · · Score: 0

      You're right. Darwins SystemStarter has the ability to support X11 or something else. The service executables or scripts do their output to screen via an application which - so there is no big deal in replacing that...

      BTW: the SystemStart's concept of "bundles" - XML description file with hints for startup order, language translation file, and script - has ALL advantages:

      - its clean and simple
      - its powerfull
      - its flexible
      - its compatible

      I can't understand why they don't use this. Seems to me wasted time on writing all of SystemStarter's functionality again, wasting developers time by supporting more startup schemes (MacOS X is a Unix too!) instead of focusing the efforts on making the services usable to the end users.

      Sort of Not Invented Here Syndrome of which pre-Next Apple was known for...

  143. Parallel loader by DarkOx · · Score: 2, Insightful

    A smarter startup process would be good, perhaps a binary one could really save some time over shell scrips(I doubt this, Most boxen these days are so fast even the most complicated bash scripts for init you can imagine take no time to parse and execute). He plans to use python which is still an interperated languge and not much faster then bash for simple stuff. Still why reqire X and GDM and python and app of the month. Why not wirte a nice little C program with a GUI interface to configure it if you must but make sure it can be configured from the command line or config file as well. I don't see what real advantage in going graphical and therfore more fragile in the init process offers. I don't care if your grandmom or Sysadmin if the console messages had like two modes friendly and verbose everone could be happy. Imagine if it was just like,
    Friendly mode:

    Starting Priniting support
    Starting Sound support
    Printing is ready
    Starting Webserver
    Webserver Ready
    Sound support Ready

    Verbose mode:
    Starting lpd with /r /s
    Loading cs46xx module
    Done: Loading cs46xx module no error
    Done:lpd lp ready.

    you get the idea. If init needs replaceing there are lots of ways to do it and make something everyone can use, for all types of systems heavy server through desktop. I usually don't advocate one size fits all solutions but if your going to start writing custom extensions to deamons that call "services"/init to do stuff I want those apps to work on my desktop so I can experiment with them as well as the server in the back room, that means init needs to be compatible. A separte system for desktops is a BAD idea IMHO.

    --
    Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
    1. Re:Parallel loader by Todd+Knarr · · Score: 1

      There's only one problem with a parallel loader: system load. You've seen it before. When you run a massive compile or some other heavy-duty job, the system slows down. When you're copying tons of files around, disk access from other programs slows down. The same thing happens during boot: the more things you're starting in parallel the harder the disk and CPU get hit and the slower each individual service starts.

    2. Re:Parallel loader by superchkn · · Score: 1

      While I basically agree with this, there are of course some exceptions:
      --Network startup (especially involving DHCP)

      OK, so there's only one init script where the CPU and disk probably aren't under much load on my system. Otherwise I presume they take as long as they do because the CPU (i.e. hotplug) or the disk (i.e. xfs) is the bottleneck. I'll time how long XP and Linux take to boot and be usable (XP seems to fake this, often explorer takes > 30 seconds to load while enumerating my USB devices if I login right after booting [I think that's what it's doing]).

      I'm thinking that parallel loading would benefit an SMT system much more.

      Still, how many of us really care? If a desktop user is shutting down their computer while it's not in use wouldn't suspend to disk be a better & faster solution? The only reason I shutdown Linux is to boot into XP or switch kernels (rarely). The only time suspend to disk wouldn't work would be switching kernels or if the system gets corrupted, which are both rare (for me at least ;-). I doubt parallel loading would have any effect on a headless Linux proxy I setup for my dad that can boot up and dial out in under 25 seconds (including reiserfs replays). (It would never reboot if I could get my dad to stick it on a UPS.) This isn't a high end system: P233MMX, 64MB FP-RAM, 1.2GB Quantum Fireball, and 430HX chipset.

      Even in a server environment, I would think in the case of needing to reboot a machine, the reason it needs to be rebooted (or is rebooting) probably contributes much more to downtime than the period it spends booting.

      So basically, in my long-winded post, I see faster booting to be a dubious goal at best. At least on my rather meager system (K6-2 400, 384MB) the gap between being able to use the system on Linux or XP seems pretty slim after I take into account that upon logging into XP, I must wait an additional 15-30 seconds before I can really do useful work. I don't see the length of time it takes to get to the login prompt as a valid comparison since as soon as I see my GNOME desktop, I can start using it, whereas with XP I must wait this additional time. I'll post some hard numbers as soon as 2.6.0-test6-mm2 gets done compiling ;-)

    3. Re:Parallel loader by Anonymous Coward · · Score: 0

      XP ->2:22
      Linux ->3:00

      I could probably narrow the gap if I got rid of apache and mysql (which incidently I only use for internal testing). Linux is also already connected to the internet. Hotplug adds a good 20 seconds that I don't remember having with kernel 2.4, so I could probably fix that if it mattered to me.

      I'm not sure how those times scale as the processor speed increases, whether the time difference as a percentage grows or shrinks. Still, I don't think it's that big of a deal. It's not like I have restart Linux several times a week (or day) like I have to XP... Even if XP was stable, I'd still have to reboot for all those patches. That's something that I don't have to do in Linux unless it affects the kernel.

  144. OT: Dalton McGuinty by elmegil · · Score: 1

    Did you see the story about that, where the Tories sent out a press release saying exactly what's in my sig? They meant it as a joke, but it's pretty over the top....

    --
    7 November 2006: The day Americans realized corruption and incompetence weren't addressing 11 September 2001
  145. Like the info pages debacle. by Anonymous Coward · · Score: 1

    Goddamnit Stallman, manpages work fine and can be parsed with a text editor. Info was a solution in search of a problem. I shouldn't have to learn yet another tool to read the fucking documentation.

    No more info pages that have more information than the man pages!

    1. Re:Like the info pages debacle. by pmz · · Score: 1

      manpages work fine and can be parsed with a text editor.

      And when used with a good pager, they'll work with the vi command set, too.

      I think info was an attempt to force book-sized documentation into a man-like interface. Once the information threshhold of a man page is surpassed, the timesavings of info over other documentation methods is debatable.

      Info was a solution in search of a problem.

      Exactly. Linux is almost looking like it was the result of a pork-barrel government contract. It's "to save the children", so it must be the right solution, right?

  146. doesn't usually work by Anonymous Coward · · Score: 0

    dumshite

  147. Mac OS X, NetBSD rc.d, rcNG, and so on by Guy+Harris · · Score: 4, Informative

    As someone else noted (in an article with a link done as text, not as an , and with an extra blank in it), Mac OS X has a possibly-interesting scheme for starting and stopping system services. Here's the section on System Initialization in the Mac OS X online documentation; in particular, look at the Startup Items stuff.

    It's a dependency-based scheme, like at least some of the other proposed system services mechanisms; see the section on adding your own startup items.

    Note also that Boring Old Init isn't itself changed; /etc/rc runs SystemStarter as its last act, and that starts up the system services. SystemStarter can also be used as a command to start, stop, or restart services, so this isn't just a system startup mechanism.

    NetBSD 1.5 and later have a new rc-based system for controlling services; it's also dependency-based. FreeBSD 5.x has rcNG, which is derived from the NetBSD scheme.

    (Note that all of those systems have a BSD-style init, and thus don't have run levels.)

    Those schemes don't address one of Seth's complaints, however - according to his description in his blog, he doesn't like having shell script wrappers doing the configuration, he wants it done in the service's process itself:

    In other news, reshaped SystemServices around the futile, idealistic goal of having daemons contribute the servicesinstead of silly little shell script wrappers in the future. Ever poked through RH's /etc/init.d/ scripts? Its absurd... they do so much stuff in there that should be included in the bloomin' C code. If you need a check for something, just have the program itself do it.... But of course, these programs were designed to be run with lots of magic brittle flags rather than running and situating themselves intelligently.

    (I express no opinion on this one way or the other; if you like or don't like the idea, send bouquets or brickbats to him, not me.)

    Note also that it appears that he is not designing something just for desktops - in particular, he says:

    The boot process: So first the kernel loads itself, and calls ServiceManager (instead of "init"). The ServiceManager starts the DBus service manually,

    and checks to see if it should be doing a graphical bootup. If it should be, it starts the GraphicalLogin service (which of course may have dependencies to start first).

    Now, whether the kernel should start ServiceManager directly, or whether it should continue to run init and have ServiceManager started from an rc file, is another issue; I'm not sure that there's a compelling argument to eliminate init other than to discourage people from continuing to use the current rc script scheme (which might be Seth's motivation for running ServiceManager as process 1 - he might want to discourage rc script tweaking).

    Perhaps one of the reasons why people thought of ServiceManager as being purely for desktop systems is that they thought that, as D-BUS is somewhat associated with freedesktop.

    1. Re:Mac OS X, NetBSD rc.d, rcNG, and so on by Guy+Harris · · Score: 1
      Note also that it appears that he is not designing something just for desktops

      In addition, in the OSnews article on SystemServices, Seth says

      1) The init system has small concessions to being a services framework rather than just a "boot-up-tool", but it really only provides the ability to start/stop/restart services. We need a system that is both more featureful and and more robust, esp. for desktop integration, but its nice all around. For an example of robustness, if a service can't start (or if it crashes at some point!)... the interface needs to get an "exception" with an error code and a message. For an example of a feature: we need integration with xinetd so you can flip a checkbox to switch a service between "run on demand" (xinetd) or "run always" (daemon).

      which addresses an issue that might also apply to non-desktop systems, i.e. starting/stopping/restarting services after system startup. (Note that the System V rc scheme, Mac OS X scheme, and rc.d/rcNG scheme have a similar notion, i.e. in those schemes you have scripts to start/stop/restart services, and one time that they happen to be run is at startup time, from init, but they can also be run once the system has started.)

    2. Re:Mac OS X, NetBSD rc.d, rcNG, and so on by LordNite · · Score: 1

      There is nothing to say that SystemServices can't be used on a headless server. That does not mean that it is good software, a good idea, or a good thing to run in a server environment.

      On my servers I need all the RAM I can spare. That means there is no place for D-Bus. It is just one added piece of complex software to break my servers, consume valuable system resources, and cause security problems.

      Init is simple, robust, stable, lightweight and stays out of my way. It works and works well. The wheel is not broken. There is no need to fix it. Init fits with the UNIX philosophy, SystemServices does not.

      I have to agree with many of the posters here and on OSnews.com. This project appears to be born of a very poor understanding of the existing init setup and a dislike of shell scripts. Runlevels are not a difficult concept to grasp and init already can support all the features that he is looking to add.

      --
      If it looks like a duck, and quacks like a duck, it must be a duck.
  148. Re:Bytecode vm??!! Nightmares of Java come to mind by Anonymous Coward · · Score: 0

    the problem is that now I have to have python installed with all of it's megs of space just to run the fscking init. I was bad enough that I had to install perl for this a while back. Pretty soon I'll need a 60G drive to install the base system. Hmmm, sound like another OS I've heard of.

  149. making or faking? by Tom · · Score: 1

    Point was made repeatedly about elevators and XP:

    Does it really matter if the boot process is fast, or should it simply appear fast?

    Here's the simple one:
    First thing init should do is fire up X with a login prompt. Start everything else in the background. By the time most users have entered their credentials, the other services have started up.

    You'd probably gain 30% speedup. With no need to rewrite the init system.

    --
    Assorted stuff I do sometimes: Lemuria.org
    1. Re:making or faking? by Tom · · Score: 2, Interesting

      Tested that just now.

      Boot time before change: 41 seconds (*)
      after Change: 31 seconds

      That was a change that took about 15 seconds.

      (*) not 30 as I remembered. Well, I've changed some stuff after I last checked.

      --
      Assorted stuff I do sometimes: Lemuria.org
  150. That was easy, next problem please. by devphil · · Score: 1


    I solved the "3) start X and allow login ASAP" problem by taking advantage of the extreme flexibility that the ancient, limping, oh-no-it's-not-a-gui-it-must-die init procedure gives me by moving S90kdm to S21kdm.

    1) sounds like gibberish to me, even after reading their site.

    2) would be interesting to see.

    4) sounds like (1) repeated.

    What's the quote? "Those who do not understand Unix are condemmed to reinvent it, poorly."

    --
    You cannot apply a technological solution to a sociological problem. (Edwards' Law)
    1. Re:That was easy, next problem please. by Haeleth · · Score: 1

      > What's the quote? "Those who do not understand Unix are condemmed to reinvent it, poorly."

      True in a sense, but more generally, those who do not understand Unix are condemned to use Windows or MacOS, because they can't get $UNIX_STYLE_OS to work properly.

      Any new option which makes it in the slightest bit easier to get a Unix system to work better is worth introducing. So you know what "moving S90kdm to S21kdm" means? I'm very happy for you, but I don't, and I don't want to have to care about that sort of thing. If this new system can speed up my boot process without requiring me to study advanced system administration, then I'm all for it.

  151. Why are run levels confusing? by Skapare · · Score: 1

    From the OSnews article:

    The whole runlevels concept is confusing and cumbersome, even for most (not all, but most) sysadmins.

    Could someone, preferrably someone who is a sysadmin, and preferrably someone who is confused, and most preferrably someone who is both a sysadmin and confused, please explain why this is confusing, to one of those "not all" sysadmins who is not confused by runlevels at all?

    --
    now we need to go OSS in diesel cars
    1. Re:Why are run levels confusing? by swordgeek · · Score: 1

      Sorry, can't help you. The whole concept of runlevels was one of the first real 'sysadmin' things I came across back when, and it made such delightful, elegant sense to me that I became a professional admin.

      Runlevels aren't confusing--they're SMART! They're really remarkably brilliant, and conceptually as simple as possible.

      --

      "People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
    2. Re:Why are run levels confusing? by Skapare · · Score: 1

      Ironically, BSD systems don't generally have runlevels. Still, I find them very clear and easy to understand. But I also find they are not essential, either. I did include runlevels when I rewrote my own init system a few years ago. What I didn't include was all the symlinks in separate directories, using instead a script naming scheme that included the runlevels that script is to run in. A dependency based system might be interesting, but I don't want to be forced into a GUI to use it (e.g. its entire state should also be clearly manipulatable in some combination of file names, symlinks, and editable text files). Then if you put a GUI on top of that for those that prefer GUI, that's OK.

      --
      now we need to go OSS in diesel cars
  152. Please don't fuck up init! by swordgeek · · Score: 2, Insightful

    inetd got buggered until it became xinetd. cron was forced to run side-by-side with the abortion known as anacron. In its defense, vim at least can be made to behave like vi, entirely UNLIKE bash, the sh-incompatabile sh replacement.

    To the Linux developers: QUIT BREAKING THINGS from a "unix-like" perspective. If Linux is going to be an entirely unrelated OS, then fine. If it's going to strive to behave similarly, then quit adding features that break expected behaviour, especially for the reason of being 'really cool.'

    --

    "People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
    1. Re:Please don't fuck up init! by Anonymous Coward · · Score: 0

      Good Lord, yes. We can't go round _improving_ things now, can we? Let's stay in our 1970s timewarp, lest we break compatibility!

    2. Re:Please don't fuck up init! by ryanvm · · Score: 1

      Uh, none of those programs are inherently tied to Linux. Linux is the kernel, NOT the OS.

  153. Y not Windows? by sameerds · · Score: 1

    A new init, Storage, HAL, D-Bus ... seems like we're looking at stage where the GNU is about to undergo some major overhauling at every level. So will Y Windows find a place in all this?

  154. This is what I'm always talking about by Overly+Critical+Guy · · Score: 1

    Linux users absolutely resist any change or progress whatsoever. They claim they are open-minded and free because they use an alternative OS, but when it comes to actually improving and moving forward by doing things differently, people are vehemently opposed and quite happy to use aging protocols like X11, etc.

    --
    "Sufferin' succotash."
  155. Remember the FHS by Anonymous Coward · · Score: 0

    Like the idea, but hate the consequences. Doing it in Python will force Python on the root fs. If you like reliability and the ability to recover from disk crashes, thats a big no no.

  156. The "Aging" init process? by DickeyWayne · · Score: 1

    I wondered why it was called the "aging" init procedure, so I did some checking. Sure enough, it was the oldest process on my box! I guess they were right! (Who'da thunk it!)

  157. This idea is fucked by Anonymous Coward · · Score: 0

    Just as fucked as the stupid idea to reverse the ok/cancel buttons in gnome.

    Seth should go and study krill or something, and leave us alone.

  158. What? by huma · · Score: 1

    Python-based init? Hey, i don't think SysVInit it's
    the best init out there, and there are other init
    clones that are smaller and faster, but the last
    thing i want is init DEPEND o Python. Whoaa, i don't
    know what these guys are thinking when designing
    new software...

  159. Sys-V inits by Anonymous Coward · · Score: 0

    >You add/remove things to/from startup by editing the startup scripts themselves!

    That's a mess? Only if you choose to make it one!

    Man, I don't understand these people either. I learned linux on Slackware, saw Sys-V inits for the first time, and almost lost my lunch. It's a really great way to use 10 lines to accomplish things that can be done in 1.

    Also, why are people so afraid about actually editing their own startup scripts? I thought that was part of what linux was about.

  160. MOD PARENT UP by wawannem · · Score: 1

    I guess this is what I was trying to convey with my original point. Init is a system that calls shell scripts in a defined manner... When it comes to doing that, it does great. Performance of the scripts it is calling should not factor into the decision.

  161. notebook computer by yerricde · · Score: 1

    Why are people so hung up on boot speed?

    Because leaving a notebook computer on all the time is a waste of battery power, and coming out of hibernation takes even longer than booting the darn thing much of the time.

    --
    Will I retire or break 10K?
  162. How about some hard facts? by Anonymous Coward · · Score: 0

    How about some action instead of talk?

    When I use a simple shell script as init, it is faster when I start daemons serially as opposed to in parallel (which is very simple in a shell script, just use &).

    This is probably because the disk scheduler can work much better in the serial case, because it is much easier to anticipate what will be read next.

    That's my fact. What is yours?

  163. Advanced System Administration 101 by Anonymous Coward · · Score: 0

    cd /etc/rc.d/rc5.d
    mv S90kdm S21kdm

    If you don't know the first thing about what the Linux init system is or how it works, why the fsck are you contributing your total lack of knowledge to the discussion?

    And please don't tell me the above two commands couldn't be wrapped in a GNOME GUI shell just as easily as the proposed Python init replacement.

  164. Re:Bytecode vm??!! Nightmares of Java come to mind by k8to · · Score: 1

    the problem is that now I have to have python installed with all of it's megs of space just to run the fscking init. I was bad enough that I had to install perl for this a while back. Pretty soon I'll need a 60G drive to install the base system. Hmmm, sound like another OS I've heard of.

    For starters, you don't need all of python installed to run a python program, there's a python compiler which can bundle all the necessary components into a single executble file. So we can toss that argument out.

    But more importantly, this is a straw man. The problem was that the grandparent was spewing nonsense about VM startup times that had no relation to reality, which was disproved. I don't like this idea of an init system any better than you do.

    The problem isn't python, but sysadmin-unfixable binary network interfaces and a lot of sysadmin-inaccessable frameworks without a clear explanation of any particular benefit.

    --
    -josh
  165. GNU is a BSD clone by yerricde · · Score: 1

    According to a section from the GNU Coding Standards, the GNU system is supposed to be a BSD clone: "With occasional exceptions, utility programs and libraries for GNU should be upward compatible with those in Berkeley Unix" in preference to System V. So now that *BSD is free, has the GNU OS project (apart from GCC, which *BSD uses) lost much of its reason for being?

    --
    Will I retire or break 10K?
  166. Try w3m by yerricde · · Score: 1

    And when used with a good pager, they'll work with the vi command set

    The w3m pager/WWW browser has both Emacs-style and vi-style key bindings.

    I think info was an attempt to force book-sized documentation into a man-like interface.

    True, the structure of a manpage limits the amount of detail in documentation, and Mr. Stallman was tired of having the system's detailed documentation tied up in expensive printed material. Info solves this problem by providing book-length electronic documentation with chapters and hypertext links.

    Once the information threshhold of a man page is surpassed, the timesavings of info over other documentation methods is debatable.

    Though HTML and DocBook now solve the same problem as Info, they weren't widespread when the GNU team designed Info. The Texinfo system can now generate HTML if you prefer to read your manuals in w3m.

    --
    Will I retire or break 10K?
  167. That would be easy to GUIfy by yerricde · · Score: 1

    So you know what "moving S90kdm to S21kdm" means? I'm very happy for you, but I don't, and I don't want to have to care about that sort of thing.

    Then run a GUI tool that reads /etc/rc.d/rc5.d and lets the user drag daemons across a timeline to start earlier or later. I don't know if such a tool exists, but creating it would be a good starting point.

    --
    Will I retire or break 10K?
  168. Why not use make? by sl3xd · · Score: 1

    Honest query: make allows me to handle all build dependancies, and is able to parallelize its operations to make efficient use of an SMP system. (ie perform multiple build operations @ the same time)

    So, it can handle dependancies, ensuring a necessary daemon loads before its dependant does, and can also dispatch commands to start operations that do NOT have a load dependancy.

    My only 'issue' with init is that you can't specify that daemon A requires daemon B to be loaded first. Sure, it does have a load order, but there's nothing to stop you from being stupid and changing the order (guilty), and no way to really know if the way the init is ordered is necessary, or simply arbitrary.

    A simple makefile can at least provide a language to show dependancies, clearing things up.

    At least reading the basic makefile syntax, this shouldn't be overly difficult...

    --
    -- Sometimes you have to turn the lights off in order to see.
    1. Re:Why not use make? by Anonymous Coward · · Score: 0

      Perhaps because make is overpowered for the job, and make script syntax sucks?
      Since this is the gentoo thread of this, I'd like to point out that gentoo has this.
      depend() {
      need net
      use mysql dns logger netmount
      }

      At the start of my apache2 startup script in init.d.
      Any process can provide certain things, or use certain things. Gentoo works out the start order, can even do simultaneous starts.

  169. 666 != 6 6 6 by yerricde · · Score: 1

    You'll also hear some people claim that the World Wide Web belongs to the Beast, making reference to WWW == VI VI VI == 6 6 6. But actually, the number of the beast is not the vector [6 6 6] but rather the scalar 600+60+6.

    Read More...

    --
    Will I retire or break 10K?
  170. Forget Python use make by Fujisawa+Sensei · · Score: 1

    IBM has an article on using make to parallelize your init scripts.

    --
    If someone is passing you on the right, you are an asshole for driving in the wrong lane.