OS v2020 (file system subsystem and FAT32 LBA)
Posted: Tue Jan 05, 2021 12:15 am
https://sourceforge.net/projects/lowest ... r/download
Extract the TAR to a FAT32 LBA root directory with DOS (hard disk, bootable USB/SD) and run c:\start.bat. It works even in the newest laptops (they have PS/2 keyboard/mice).
This version of my OS contains code in ATA-ATAPI, Storage, FS and kconsole directories. It supports dir and type commands for the first partition as FAT32 LBA in the primary master. The idea was to write logs to the disk for debugging, but I still have to make sure to write to disk without bugs, or I will destroy the disk. It will serve me this year to debug my code to disk to record complex actions from the point of view of machine resources.
It builds on the v2019 kernel which implemented simple malloc/free to handle the sort of requests of file systems and other more complex instances that are created and destroyed.
The mass storage subsystem is simply a chain of file system elements (files, directoryes, dirents), partitions and storage device IDs in their own lists from which the code resolves which other actual functions to call to handle the request. From the highest to the lowest level of structs and functions it's easy to know what we need to call transparently.
The idea is to make the code as clean as to make it easy to explain how to handle FAT in 8.3 and LFN name mode, and make it easier for beginners to pick up faster and dedicate time to other topics with this resource available in a fully implemented and educative fashion.
Extract the TAR to a FAT32 LBA root directory with DOS (hard disk, bootable USB/SD) and run c:\start.bat. It works even in the newest laptops (they have PS/2 keyboard/mice).
This version of my OS contains code in ATA-ATAPI, Storage, FS and kconsole directories. It supports dir and type commands for the first partition as FAT32 LBA in the primary master. The idea was to write logs to the disk for debugging, but I still have to make sure to write to disk without bugs, or I will destroy the disk. It will serve me this year to debug my code to disk to record complex actions from the point of view of machine resources.
It builds on the v2019 kernel which implemented simple malloc/free to handle the sort of requests of file systems and other more complex instances that are created and destroyed.
The mass storage subsystem is simply a chain of file system elements (files, directoryes, dirents), partitions and storage device IDs in their own lists from which the code resolves which other actual functions to call to handle the request. From the highest to the lowest level of structs and functions it's easy to know what we need to call transparently.
The idea is to make the code as clean as to make it easy to explain how to handle FAT in 8.3 and LFN name mode, and make it easier for beginners to pick up faster and dedicate time to other topics with this resource available in a fully implemented and educative fashion.