Continuing Create File 2/2 | 32 Bit OS Dev (in C)
Finishing create file logic, and starting printing a directory, which doesn't work.
Errata:
- Checking if the bit is set in the chunk of data in the parent directory, should have _not_ as the if condition. If the bit is NOT set. Currently it checks if the bit _is_ set, and goes to use that bit, which is wrong!
- Other things I forgot but are probably wrong
OS Dev playlist:
https://www.youtube.com/playlist?list=PLT7NbkyNWaqajsw8Xh7SP9KJwjfpP8TNX
Git Repos:
Sourcehut: https://git.sr.ht/~queso_fuego/quesos
Github mirror: https://github.com/queso-fuego/amateuros
Repo state before open() syscall (this will be updated when open() and creating new files is mostly done):
git clone -n https://github.com/queso-fuego/amateuros
cd amateuros
git checkout 4255fe96f1efb69498eec2a55417dd3eca3eb2de
Join the Community Discord: https://discord.gg/yKm4T89QFn
Contact:
email: fuegoqueso@gmail.com
twitter: @Queso_Fuego
twitch: https://www.twitch.tv/queso_fuego
Next video:
- Mostly debugging and fixing open() syscall, printing dir, and finally creating files.
- Let me know if there's anything specific you'd like to see!
Outline:
0:00 changes since last video
2:28 Check if bit is free for expanded parent inode size
27:23 update rest of parent inode data
48:28 small bug fixes, refactor adding new file to parent inode
1:28:40 start read_dir()
Questions about setup/software/etc.?
Check the FAQ: https://queso_fuego.srht.site/about.html
Music credits:
When I Was A Boy by Tokyo Music Walker | https://soundcloud.com/user-356546060
Music promoted by https://www.chosic.com/free-music/all/
Creative Commons CC BY 3.0
https://creativecommons.org/licenses/by/3.0/
#osdev #filesystem #inodes