| |
Oswald
Registered: Apr 2002 Posts: 5094 |
kernal or kernel
In computer science the kernel is the core of an operating system. It is a piece of software responsible for providing secure access to the machine's hardware and to various computer processes (computer programs in a state of execution). Since there can be many processes running at the same time, and hardware access is limited, the kernel also decides when and how long a program should be able to make use of a piece of hardware: this function is called scheduling. Accessing the hardware directly can be very complex, since there are many different hardware designs for the same type of component. Kernels usually implement some hardware abstraction (a set of instructions universal to all devices of a certain type) to hide the underlying complexity from the operating system and provide a clean and uniform interface to the hardware, which helps application programmers to develop programs that work with all devices of that type. The Hardware Abstraction Layer (HAL) then relies upon a software driver that provides the instructions specific to that device's manufacturing specifications.
...
a kernel is/does:
- a core of an operating system
- secure access to the machine's hardware
- secure access to various computer processes
- scheduling (when and how long a program should be able to make use of a piece of hardware)
- usually implements some hardware abstraction
which of the above is applicable to kernal ?
none.
kernal does basic IO stuff. |
|
... 26 posts hidden. Click here to view all posts.... |
| |
trident
Registered: May 2002 Posts: 91 |
The KERNAL can definitely be called the kernel of the C64 OS as it provides the basic I/O hardware abstractions (disk, tape, serial lines, keyboard, screen). Since we have no multiprogramming on the C64 it is pointless to talk about scheduling or processes in this context.
A much more interesting discussion is why the Commodore people chose to call it the KERNAL instead of the kernel. As we've read on Wikipedia, the origins of the name is somewhat of a mystery even though plausible explanations exist. Did they see it as an inside joke? Did they smirk every time they typed the characters K E R N A L into the Programmers reference guide? Are there any old retired Commodore engineers reading this thread, chuckling wildly at us? ;-) |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
Quote: Plus, strictly speaking the c64 is a p.c. as well .. I even have some old magazines from the early 80's with ads that use that term.
Yup, any computer which can load programs from some external media is a "personal computer". The "personal" relates to the way a computer can be adapted to personal needs (loading software etc). A pocket calculator is usually no PC, and a games console is also too limited to be called a PC (although you can swap software, you are not quite free with that).
And the KERNAL vs kernel matter: I agree with Oswald that "the KERNAL" is the C64 OS and is not identical to a kernel similar to a Linux kernel. Parts of the KERNAL may be called kernel, but at some parts it seems a bit too high level while at other parts it lacks stuff to be a kernel. |
| |
trident
Registered: May 2002 Posts: 91 |
Quote: Yup, any computer which can load programs from some external media is a "personal computer". The "personal" relates to the way a computer can be adapted to personal needs (loading software etc). A pocket calculator is usually no PC, and a games console is also too limited to be called a PC (although you can swap software, you are not quite free with that).
And the KERNAL vs kernel matter: I agree with Oswald that "the KERNAL" is the C64 OS and is not identical to a kernel similar to a Linux kernel. Parts of the KERNAL may be called kernel, but at some parts it seems a bit too high level while at other parts it lacks stuff to be a kernel.
I would argue that the C64 OS consists of the KERNAL and the BASIC, just like a Linux OS consists of the Linux kernel and a bunch of user space programs. The KERNAL is the kernel of the C64 OS - it is the only definition that makes sense, really. |
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
ok, so some of you think: kernal is the core of the c64 OS.
nice little core we have here, takes HALF of the ENTIRE OS. And what does the 2nd half of the OS do ? its a BASIC INTERPRETER.
Also if you have a core of an OS, where are the other layers using it ? nowhere ? hmm
kernal is not an OS CORE in any way, while kernel is.
but lets assume I agree that kernal in some sense is a kernel too.
calling it then based upon this all the way kernel, is like
calling Windows ALL the time "Operating system".
I think there's only one reason for everyone starting to use kernel. Its the linux hype. And its so much easyer to remember only one word, which is also connected to the "cool" system linux, and sounds so hackerish eh ?
IMHO ppl should show pay some respect, and not to call it kernel.
I *think* one of the possible explanation to this word is that C= engineers didnt think of it as a real kernel, but it did similar things, so they changed one letter, and we got kernal.
kernel=the essence of something, the inner part of a nut
kernel was always used as the innermost part of an OS with several abstraction layers and stuff. Kernal is not the innermost part of the c64 OS. its atleast the half of it. |
| |
trident
Registered: May 2002 Posts: 91 |
The KERNAL is the lowest layer of the C64 OS (if we agree that the KERNAL + BASIC is the C64 OS). This has nothing to do with the size of the code of the KERNAL, nor with the size of the executable code of any other parts of the system. The KERNAL provides an abstract API that most definitely has been designed to be useful for applications other than the BASIC interpreter (the "user space" of the C64 OS), much like any other OS kernel. |
| |
TNT Account closed
Registered: Oct 2004 Posts: 189 |
Quoting Oswaldnice little core we have here, takes HALF of the ENTIRE OS.
Not really, as BASIC uses $e000-$e4b6 of kernal ROM :)
|
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
BASIC is definitely not the OS of the C64. You also don't call "bash" the OS of the Linux-kernel :D |
| |
trident
Registered: May 2002 Posts: 91 |
Quote: BASIC is definitely not the OS of the C64. You also don't call "bash" the OS of the Linux-kernel :D
KERNAL + BASIC is the OS of the C64, just like the Linux kernel + bash (and most of the other stuff in the directories immediately below /) is a Linux OS. |
| |
hannenz Account closed
Registered: Nov 2002 Posts: 24 |
BASIC is NO OS. It's an interpreter. nothing more.
In my eyes, KERNAL is the OS of the C64 - whether you call it a kernel or not - well, who cares??!
|
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
I do :). Everyone should take respect, and learn a lesson, the c64 ROM is called KERNAL, and it should be called that. The term kernel is used for 1000 times more sophisticated OS'es, and in meaning is not close enough. |
Previous - 1 | 2 | 3 | 4 - Next |