C++ Web Server on my custom hobby OS
13 days ago
- #hobby-os
- #web-server
- #networking
- Author successfully implemented a web server on their hobby operating system after a long break.
- Initial focus was on the networking stack, including Ethernet, IP, ARP, UDP, TCP, DHCP, and DNS.
- Encountered issues with terminal buffer implementation and E1000 network driver handling incoming packets.
- Resolved performance errors related to TCP, especially handling RST packets from browser refreshes.
- Developed an HTTP engine to parse requests, moving beyond static responses.
- Porting a standalone HTTP parser from another project (c-web-modules) to the OS.
- Created a web engine with routing capabilities, allowing path and method matching with handler functions.
- Implemented a FileRepository for serving static files with caching support.
- Next steps include improving UI, graceful shutdown, and eventually developing a web browser.