1. Должен быть драйвер для работы с диском (если ты не в real режиме)
2. Придумай какой-нибудь формат, как ты будешь данные на диски хранить
3. Нужно реализовать какие-то системые вызовы для обращения к файловой системе, чтобы программы для твоей ОС тоже могли работать с диском
Чтобы не придумывать что-то совсем с нуля - возьми какой-нибудь FAT12/16/32, они хорошо задокументированы.
Если с виртуальной машиной или эмулятором работаешь, то проще всего будет реализовать драйвер для чего-нибудь древнего типа IDE / ATA / PATA.
Драйвер для SATA и уж тем более nvme будет реализовать тяжело.
Читать тут:
https://wiki.osdev.org/Expanded_Main_Page