{"version":1,"pages":[{"id":"-LYkbneqpX0Ab_T1yyRm","title":"Introduction","pathname":"/how-to-create-an-operating-system","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonP1d_ScU3z66UR","title":"Introduction about the x86 architecture and about our OS","pathname":"/how-to-create-an-operating-system/chapter-1","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonQ6-f3_n-kY-ck","title":"Setup the development environment","pathname":"/how-to-create-an-operating-system/chapter-2","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonR_uh7K6PICDDT","title":"First boot with GRUB","pathname":"/how-to-create-an-operating-system/chapter-3","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonSwqp9kEq_7nxS","title":"Backbone of the OS and C++ runtime","pathname":"/how-to-create-an-operating-system/chapter-4","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonTfktBroA_b5Vf","title":"Base classes for managing x86 architecture","pathname":"/how-to-create-an-operating-system/chapter-5","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonUE6h0kCq1M6hg","title":"GDT","pathname":"/how-to-create-an-operating-system/chapter-6","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonVMQaiZ_0A1ji7","title":"IDT and interrupts","pathname":"/how-to-create-an-operating-system/chapter-7","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonWMm1UL8upMNBg","title":"Theory: physical and virtual memory","pathname":"/how-to-create-an-operating-system/chapter-8","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonX9WfN8TR5cz0o","title":"Memory management: physical and virtual","pathname":"/how-to-create-an-operating-system/chapter9","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonYcUcRScx8Ryib","title":"Process management and multitasking","pathname":"/how-to-create-an-operating-system/process-management-and-multitasking","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonZW-wIv5Lc49P8","title":"External program execution: ELF files","pathname":"/how-to-create-an-operating-system/external-program-execution-elf-files","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbon_H6FDRi2547K2","title":"Userland and syscalls","pathname":"/how-to-create-an-operating-system/userland-and-syscalls","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonaNNDYJHLNgdhH","title":"Modular drivers","pathname":"/how-to-create-an-operating-system/modular-drivers","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonbLvfLYEBUSQJj","title":"Some basics modules: console, keyboard","pathname":"/how-to-create-an-operating-system/some-basics-modules-console-keyboard","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkboncHCW3GMcB3DPM","title":"IDE Hard disks","pathname":"/how-to-create-an-operating-system/ide-hard-disks","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonduvy7NZOnQcS9","title":"DOS Partitions","pathname":"/how-to-create-an-operating-system/dos-partitions","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbone27amB1g35Eo2","title":"EXT2 read-only filesystems","pathname":"/how-to-create-an-operating-system/ext2-read-only-filesystems","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonf_nQ2haRL5zUq","title":"Standard C library (libC)","pathname":"/how-to-create-an-operating-system/standard-c-library-libc","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbong43P5dRsXK1nS","title":"UNIX basic tools: sh, cat","pathname":"/how-to-create-an-operating-system/unix-basic-tools-sh-cat","siteSpaceId":"sitesp_LkjAu","description":""},{"id":"-LYkbonh9Y0G6pjbmBpX","title":"Lua interpreter","pathname":"/how-to-create-an-operating-system/lua-interpreter","siteSpaceId":"sitesp_LkjAu","description":""}]}