akicode

소개

akicode의 'aki'는 일본어로 가을을 뜻하는 秋あき입니다. 가을이 되면 떡갈나무에 도토리가 열리고, 도토리 안에는 작은 벌레, 즉 bug가 들어 있을 때가 많습니다. 코드에도 언제나 bug가 있고, 그것을 찾아내는 일은 프로그래밍을 배우는 데 중요한 부분입니다. 그래서 로고가 도토리입니다.

akicode는 처음으로 프로그램을 쓰는 사람을 위한 것입니다.

초보자는 대개 코드를 쓰기도 전에 막힙니다. 소프트웨어를 설치하고, 경로를 잡고, 설정을 바꿔야 하는데, 그 방법이 운영체제마다 다릅니다. akicode는 그 단계를 없앱니다. 웹 주소를 열면 코드를 쓰고 실행할 수 있습니다. 가입도 설치도 없습니다. 완전한 프로그래밍 환경이며, 여기서 쓴 코드는 다른 곳에서도 똑같이 실행됩니다.

이 프로젝트는 브라우저에서 돌아가는 디버거로 시작했습니다. 프로그램이 한 단계씩 실행되는 것을 볼 수 있도록 하기 위해서입니다. 디버거에는 진짜 프로세스가 필요합니다. 프로세스에는 가상 메모리, 페이지 테이블, 파일 시스템, Linux 호환성이 필요합니다. 이를 제공하기 위해 운영체제를 바닥부터 만들었습니다. gcc, gdb를 비롯해 보통 컴퓨터에 설치해서 쓰는 도구들이 여기서 돌아갑니다.

완전한 Linux는 아닙니다. 아직 구현하지 않은 시스템 콜이 있고, 세부가 다른 것도 있으며, 실제 기계에서는 되는데 여기서는 안 되는 프로그램도 있습니다. 문제를 발견하는 대로 고치고 있습니다. 발견하시면 알려 주세요.

akicode는 작은 도구이고 아직 개발 중입니다. 첫 프로그램을 쓰는 데 도움이 되기를 바랍니다.