Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Questions - Process Management & I/O Scheduling

52 views
Skip to first unread message

jaso...@gmail.com

unread,
Apr 5, 2009, 2:12:15 PM4/5/09
to
In my operating systems class in college we are doing a case study on
an OS of our choice, I picked FreeDOS since I though it might be
interesting. I have a few questions regarding Process Management and I/
O Scheduling to see if what I have figured out is correct and if there
is any thing I might be missing.

For Process Management I know that FreeDOS is a single user system.
And I am fairly sure it is a single process system, but the majority
of the code for process management is in assembly, which I have a hard
time reading. So am I correct and have I missed anything?

For I/O Scheduling I am having troubled figuring out much of anything.
It looks like FreeDOS has the whole IRQ thing and just deals with
devices on that basis, but I didn't know if there was anything else.

Michael B. Trausch

unread,
Apr 5, 2009, 2:30:35 PM4/5/09
to
On Sun, 5 Apr 2009 11:12:15 -0700 (PDT)
jaso...@gmail.com wrote:

> In my operating systems class in college we are doing a case study on
> an OS of our choice, I picked FreeDOS since I though it might be
> interesting. I have a few questions regarding Process Management and
> I/ O Scheduling to see if what I have figured out is correct and if
> there is any thing I might be missing.
>
> For Process Management I know that FreeDOS is a single user system.
> And I am fairly sure it is a single process system, but the majority
> of the code for process management is in assembly, which I have a hard
> time reading. So am I correct and have I missed anything?

History may be a better source of reference than assembly language for
this one. :)

Microsoft's DOS implementation, which is the de facto standard for DOS
systems in the x86 world, is a single-user, single-tasking operating
system. It provides raw access to hardware, and only a minimal layer
for OS APIs for things like the file I/O. This is a good thing when it
comes to embedded systems, because you often just need to get something
done without an operating system in your way.

DOS has (natively) no concept of threads and no concept of multiple,
on-going processes. Application software makes system calls via the
use of an interrupt interface, calling various hardware interrupts to
handle things like video and audio, and calling software interrupts to
handle various things like reading a directory, executing a file, and
so forth.

That said, there can be multiple processes in memory. They just
execute linearly, in a default system without any sort of task
manager. You can, for example, write a program that will provide a
multi-tasking environment for application software. For example, when
DOS boots, you have the command shell (command.com, usually). You can
then spawn another program (say, PC-File, or Volkov Commander). Then
you can spawn command.com again, and as you exit the processes, you go
back up the chain.

> For I/O Scheduling I am having troubled figuring out much of anything.
> It looks like FreeDOS has the whole IRQ thing and just deals with
> devices on that basis, but I didn't know if there was anything else.

I/O isn't really scheduled, I don't think---or, perhaps more
accurately, the scheduling technique is "it happens when its
requested," unless there is caching hardware or software that
intervenes and changes that.

--- Mike

Chiefbutz

unread,
Apr 5, 2009, 2:55:59 PM4/5/09
to
On Apr 5, 1:30 pm, "Michael B. Trausch" <m...@trausch.us> wrote:
> On Sun, 5 Apr 2009 11:12:15 -0700 (PDT)
>

Thank you, that is what I wanted to double check. I appreciate your
help.

Fabian Walker

unread,
May 16, 2022, 3:35:16 AM5/16/22
to
Hi Jason

I am in the same situation as you were over 10 years ago. I, too, have chosen FreeDos as the subject of a case study and find it difficult to obtain certain information.

Would it be possible for you to publish or send me the case studies you wrote so that I can validate my findings?

Thank you very much and have a good day.

Fabian
0 new messages