How small can you make FreeDOS?

Поділитися
Вставка
  • Опубліковано 14 вер 2020
  • DOS is a small operating system, but how small can you make FreeDOS and still call it "DOS"? You only need the kernel and a way to run programs. Let's destroy a running FreeDOS system to see how small we can make it, and still run a DOS program.
    Download FreeDOS
    www.freedos.org/
    Join us on Facebook
    / freedos
    Follow us on Twitter
    / freedos_project
    Consider supporting me on Patreon
    / freedos

КОМЕНТАРІ • 72

  • @dr.shuppet5452
    @dr.shuppet5452 3 роки тому +44

    I would say DOS is more like a library and bootloader than a kernel, because in real mode there's no separation between kernel space and user space - what is DOS is defined by the library functions.

    • @eekee6034
      @eekee6034 Рік тому +13

      It's a common belief, but you're forgetting that organizing files and formatting disks are not jobs for a library or a bootloader. Besides, in the world DOS was created for, it was all an operating system needed to be.

    • @PaulFisher
      @PaulFisher Рік тому

      ​@@eekee6034even in that case, you can look at the filesystem as analogous to a SQLite database-an application has unfettered access to the entire thing, but DOS just turns the raw bytes into files, much as the SQLite library turns a string of bytes into tables and rows.

    • @ahG7na4
      @ahG7na4 6 місяців тому

      I think the single most OS-y thing is IPC

  • @ropersonline
    @ropersonline Рік тому +21

    The lowest-capacity of floppies supported by old DOS is 160KB. It might be useful for FreeDOS too to keep that in mind and not blow past that size for its minimum configuration. What's currently shown is a little over 110KB, which is still good.

    • @sbrazenor2
      @sbrazenor2 Рік тому +1

      Who is actually using floppies that small anymore though?

    • @ropersonline
      @ropersonline Рік тому +17

      @@sbrazenor2 Once you resort to _"who is actually using floppies that small anymore though",_ that becomes a slippery slope to _who is actually using DOS anymore though._
      I think for a retrocomputing OS like FreeDOS, it's useful to try and maintain maximum compatibility with the entire DOS era. Otherwise you might just as well write your own operating system according to your own ideas - which is okay too, but TempleOS isn't DOS.

    • @_Thrackerzod
      @_Thrackerzod Рік тому +4

      I don't think it's a huge issue. Even the original IBM PC supports 360k floppy drives and every one I've ever used had them. I think 160k drives are probably as rare as unicorns now; I've never seen one in person in my life.

    • @ropersonline
      @ropersonline Рік тому +11

      ​@@_Thrackerzod The only way you're not wrong is if we really get into semantics: It depends e.g. on how you define "the original IBM PC". It is true that the IBM 5150 _can_ be fitted with 360K floppy drives, aka DSDD drives, and most 5150s were. But you should google the product fact sheet IBM issued with the original IBM PC release announcement in 1981: It makes NO mention of DSDD drives. DSDD drives can support 320K or 360K diskettes depending on DOS version; the difference being support for either just 8 or 9 sectors/track, the latter requiring DOS v2.0 and up. Likewise, the earlier SSDD (singe-side, double density) drives could support 160K or 180K floppies (with DOS 1.x or 2.x+, respectively). _The only diskette drives IBM mentioned in their original announcement's product fact sheet are 160K._ I agree SSDD drives and 160K/180K floppies are now very rare. But cross that 160K threshold and abandon support for them, and you are no longer compatible with the entire DOS era, and at least in some sense no longer compatible with the actual original IBM PC.

  • @oso2k
    @oso2k 3 роки тому +23

    You could probably mention that when deleting all those folders and binaries, that it is safe to do on a VM but maybe not a real PC or laptop. The only devices FreeDOS would be able to use are those that have built-in support (usually 360KB - 2.88MB floppies, MFM/(P)ATA/(E)IDE HDDs under 128GB, Serial Port, Parallel Port, keyboard, CGA/EGA/VGA) by FreeDOS and the machine's BIOS. Things like CD-ROM, DVD-ROM, sound cards, mice, etc. might not be functional after stripping FreeDOS down.

    • @freedosproject
      @freedosproject  3 роки тому +24

      Yes, that's a good point. I completely wiped out my ability to use a mouse or other hardware when I was deleting everything. Maybe I'll do a followup video to talk about the "aftermath"

    • @nuk1964
      @nuk1964 3 роки тому

      Wasn't there a story about how Linux came to be due to a "happy accident?"
      augustl.com/blog/2019/linus_and_linux_happy_accident/

    • @KallePihlajasaari
      @KallePihlajasaari Рік тому +2

      @@freedosproject Perhaps you could create a minimum bootable FreeDOS memory card for a R-Pi that uses the remaining available space on the card for logging sound from a mic as a bug for the maximum amount of time to make a useful embedded application.

    • @XXDarkDrekXX
      @XXDarkDrekXX Рік тому +1

      raspberry pi is not x86, so dos can’t run
      even then you can make linux so small it doesn’t make sense to spend the time in making it work

    • @KallePihlajasaari
      @KallePihlajasaari Рік тому +1

      @@XXDarkDrekXX Good point. I was just throwing idea out there to make some use of the compact OS. I expect this is really only of use for legacy hardware or software.

  • @GroundhogGrafix
    @GroundhogGrafix 3 роки тому +8

    I’m not a FreeDOS user, not yet anyway. I’m still running MS-DOS on my 486 but I find these videos interesting. Keep up the good work!

  • @Seacat17
    @Seacat17 Рік тому +6

    FreeDOS+OpenGEM=potentially a great Windows+Linux+MacOS alternative.

    • @eekee6034
      @eekee6034 Рік тому +3

      I've always found GEM a bit of a pain, personally. :) It had 2 improvements on the Atari ST with TOS 1.04, but only one of those has made it into OpenGEM. That one was the option to stop menus opening on mouse-over. The one which didn't make it was the ability to keep files selected when you scroll. In OpenGEM, as with earlier versions of GEM on the ST, selected files will be deselected as soon as you scroll. It's insane!

    • @Theineluctable_SOME_CANT
      @Theineluctable_SOME_CANT Рік тому

      Lol....

    • @Seacat17
      @Seacat17 Рік тому +1

      @@eekee6034 so sad I can't do programming... I would try my best to fix that.

    • @eekee6034
      @eekee6034 Рік тому +1

      @@Seacat17 Yeah, I struggle with programming. Maybe one day I'll be able to fix it. :)

  • @FloydMaxwell
    @FloydMaxwell Рік тому +3

    My main program, to this day, is Microsoft Word 5.0 for DOS.

    • @freedosproject
      @freedosproject  Рік тому +1

      Word for DOS is a really good word processor! I didn't really use it at the time (I used WordPerfec, then Galaxy Write) but I was pleased to see how "modern" it felt when I went back to explore it: ua-cam.com/video/xIXZtThIkF0/v-deo.html

  • @nasigoreng553
    @nasigoreng553 3 роки тому +5

    my biggest goal is to run dos and be able to do some assembly programming

    • @freedosproject
      @freedosproject  3 роки тому +6

      You should try the NASM assembler on FreeDOS. It's very nice.

    • @nasigoreng553
      @nasigoreng553 3 роки тому +1

      @@freedosproject Are you sure that FreeDOS will run on an 8088 with 640kb of ram?
      I am currently restoring some old clunkers slowly and was hoping to be able to do this

  • @andrejrockshox
    @andrejrockshox Рік тому +2

    can it work with HDDs larger than 4 TB? can it work on GPT partition layout?

  • @Ghent2007
    @Ghent2007 2 місяці тому

    i am here today!!!

  • @leandrotami
    @leandrotami 3 місяці тому

    I just installed FreeDOS 1.3 on real hardware with floppy disks, but it seems the default install leaves very little conventional memory free (only 490KB) and mem/c shows this is because of system (takes 68k) and command (takes 69k). It would really of help any pointers about how to improve this since my msdos tricks don't work here.

  • @anon_y_mousse
    @anon_y_mousse Рік тому +1

    Have you seen Rob Landley's talk on a minimal Linux setup? I'd love to see dual booting on a floppy.

    • @freedosproject
      @freedosproject  Рік тому +1

      I haven't, I'll have to look it up. Thanks for the pointer.

  • @yash1152
    @yash1152 Рік тому +3

    1:49 if its just a kernal running applications, then some version of it can be made to use UNIX like commands too right?
    i do not like (1) MS-DOS styled paths with backslashes and (2) commands having no help option.

    • @freedosproject
      @freedosproject  Рік тому +4

      You can definitely do that - and in fact, you can find the GNUish tools (most of these are ports of the GNU tools, or workalike versions of GNU tools) and install those. That would make this a minimal "Unix-like" system with the Unix commands. You're stuck with a few DOS things, like CONFIG.SYS for the kernel, and backslash for paths. But you can make it look as much like Unix as you like, by stripping it down to a kernel and CONFIG.SYS that points to whatever Unix-like shell you want to use.

    • @yash1152
      @yash1152 Рік тому

      @@freedosproject awesome. thanks a lot for detailed info :)

    • @Meshamu
      @Meshamu Рік тому +1

      @@freedosproject Does FreeDOS have a switchar command available? Could you then use hyphens for command switches, making the forward slash available for the directory separator?

    • @freedosproject
      @freedosproject  Рік тому +1

      @@Meshamu Yes, but unfortunately not every DOS command uses it. Even MS-DOS stopped using SWITCHAR

  • @dannygjk
    @dannygjk Рік тому +1

    Can I use freedos to run old DOS apps? (Win10 computer).

    • @freedosproject
      @freedosproject  Рік тому +3

      You can run FreeDOS in a virtual machine on Windows10 - and then yes, you can run classic DOS apps in FreeDOS.

  • @petevenuti7355
    @petevenuti7355 Рік тому +1

    What is a good compiler if I wanted to experiment with it's source code?

    • @freedosproject
      @freedosproject  Рік тому +7

      Many FreeDOS programs are written in OpenWatcom (if you write in C) and NASM (if you write in Assembly). I'm also very fond of IA-16 GCC on FreeDOS (for C programming). I know some other folks like the classic Borland C Compiler or Borland TurboPascal Compiler - you can get TurboPascal for free (gratis) from their "museum" website.

    • @petevenuti7355
      @petevenuti7355 Рік тому +1

      @@freedosproject lisp, basic, Cobol, theb later c++ no pascal or fortran though, I'll look into that version of GCC ,(//edit is that a version or compiler setting / build environment?*/), might be my best best, yeah?
      I do want to learn assembly though..
      Thanks!

    • @freedosproject
      @freedosproject  Рік тому +2

      @@petevenuti7355 IA-16 GCC is a package that we include in FreeDOS 1.3. You can find it on the Bonus CD.

    • @anon_y_mousse
      @anon_y_mousse Рік тому +1

      @@petevenuti7355 Go for it. If you restrict yourself to 16-bits it's really easy.

  • @nasigoreng553
    @nasigoreng553 3 роки тому +3

    I think you have stated it could run on an XT and I really need it to do that just so I can say I am not running anything microsoft on it

  • @kurusb7792
    @kurusb7792 Рік тому

    Not the expectation raised. I thought he was going to cut the object module down, deleting support files... made a fool of us

  • @kneekoo
    @kneekoo 3 роки тому +3

    Wow, why can't edit open a 70kb file?

    • @nuk1964
      @nuk1964 3 роки тому +10

      Long story short -- it's an artifact of the way memory is handled on the 8086 processor. Memory is addressed using segment:offset pairs, where the segment value (16 bits) selects a particular 64K "chunk" of memory and the offset (16 bits) specifies a location within that "chunk"

    • @freedosproject
      @freedosproject  3 роки тому +5

      @@nuk1964 Came to make the same reply. Many DOS editors are limited to loading a 64k file.

    • @kneekoo
      @kneekoo 3 роки тому

      Many, but not all editors? Can this be addressed in edit? And what editors can handle bigger files?

    • @nuk1964
      @nuk1964 3 роки тому +5

      ​@@kneekoo It generally depends on the "memory model" (i.e. how it manages the memory) that the program operates in. If the program is a .COM file, then it is generally limited to operating within only one segment -- thus limited to 64K for both the code and data. EXE files generally can operate with more than one segment, and will usually have separate segments for program code and data. The way to be able to handle more than 64K (total) in data, is to handle it in "chunks" -- for example holding each line of text in a separate segment (you still have the limit that no single line of text can exceed 64K of memory).

    • @nuk1964
      @nuk1964 3 роки тому +2

      Of course, it might not help you much to have a text editor capable of handling text files larger than 64K if none of your other tools could handle files of that size as well.. There's also the other bit about alll this memory shuffling does come at a cost. Indeed there were text editors capable of handling larger files, but these programs tended to be a bit larger, took more memory, and the disc activity (especially if you're using floppy diskette) you will start noticing how slow things start getting.

  • @jeffwise8194
    @jeffwise8194 2 роки тому +2

    I like these videos. But I am not ready to overwrite my OS with freedos. Freedos gives a warning. Your OS will be killed. Stop now. I would need another computer for that. Preferably a 90s thing.

    • @freedosproject
      @freedosproject  2 роки тому +5

      These days, most people run FreeDOS in a virtual machine, not on real hardware. That actually makes things a lot easier, since you don't have the problems of running on more recent hardware (for example, DOS games from 1990s expected SoundBlaster sound cards .. which you don't have today). VirtualBox is a very popular virtual machine, and is available for Mac, Windows, and Linux. www.virtualbox.org/

    • @eekee6034
      @eekee6034 Рік тому +1

      Yep, what @@freedosproject said. I run FreeDOS on real hardware; a 2007 Thinkpad laptop, and I miss sound support. The laptop's display is also not very good for DOS, scaling poorly and having entirely the wrong gamma, but I've now got an old VGA-capable TV which is much more suitable.

    • @vadnegru
      @vadnegru Рік тому +1

      ​@@eekee6034 i would say that you can emulate it even there. My 2006 PC had no trouble emulating XP.

    • @eekee6034
      @eekee6034 Рік тому +1

      @@vadnegru Yes, I could, but then I'd have to install and maintain a complicated operating system for DOSBox to run on. ;)

  • @nasigoreng553
    @nasigoreng553 3 роки тому +1

    hahahahaha

  • @MsDuketown
    @MsDuketown 3 місяці тому

    Config.sys has line-numbers? Are these insert-points?
    1? Seems to start with device...
    Yeah, DOS means disk operating system. So the kernel needs to understand the file system.
    Lol, Microsoft is known for tying. In this case Visual Basic, however Basic should be enough.

    • @freedosproject
      @freedosproject  3 місяці тому

      Look at the menu options in this config.sys file. You have options 1-4. So a line that begins "1?" will run only during menu option 1 (but not 2, 3, or 4). A line that begins "12?" will run only during menu options 1 or 2 (but not 3 or 4). And a line that begins "123?" will run only during menu options 1, 2, or 3 (but not 4).
      When troubleshooting, you can also press F8 to single-step through config.sys. The lines that start with "!" will always run during this process.