Quote:
Originally Posted by
aarsh
thanks to all.
so can we say that "the terminal program in Linux (unix ) is the same what command prompt program (dos) means to windows?
Terminals and GUI's are both just programs -- linux makes no special distinction between them, a GUI program is just an ordinary program that happens to be talking with an X server... Everything you see and interact with is just programs running inside the OS, the OS is kind of intangible to the user.
What Linux fundamentally is, is a
kernel. That is -- a small program, about a meg or so in size that the system boots raw from disk. It handles all devices and loads programs, runs programs, switches between programs, lets programs talk to each other, and deals with files when programs tell it to. That is
it, there's no shell or GUI built in. Everything like that in a Linux distro are programs that just run
inside Linux.
IOW it's a
completely barebones "utility" to run programs inside. It runs one and only one program automatically, on boot:
init. Think of it like autoexec.bat, except it's optional for DOS to have an autoexec.bat but mandatory for Linux to have an
init; without an autoexec.bat, DOS just drops to a command prompt, but
init would actually
be the command prompt(or at least be responsible for creating one), and if there's nothing there then what? It's also very different from DOS in that it's multitasking, of course.
So, UNIX describes a broad design for two things:
- The kernel(aka operating system)
- The standard set of programs that come with the kernel
This is very different from Windows where it's all treated like one inseperable block.