안녕하세요. 방금 가입한 에오닐입니다.
사이트 주제에서 벗어날지도 모르겠으나, 국내에서는 고수들이 모여있는 사이트여서 도움을 구하고자 합니다.
제가 Mac OS X에서 C로 코루틴 작성을 시도했는데, ucontext.h 가 지원되지 않아서 상당히 고생을 하던 중, 코루틴이란 놈이 C의 추상화 수준을 벗어난다는 느낌을 받았습니다. (실제로 그렇다는 주장을 하는 게 아닙니다. 단순히 제 느낌입니다.)
이를 제대로 제대로 이해하고 사용하려면 더 하부인 기계/어셈블리 수준에서의 이해가 필수적일 것 같더군요.
제가 전산전공이 아니라 C보다 하부인 어셈블리나 CPU는 거의 모릅니다. 그런데 여기저기서 자료를 구하다보니 Program Counter, Register 등의 용어가 마구 튀어나오는데, C 함수가 호출되고, 프로그램 흐름이 전달되는 방식에 대해서 원형에 대한 이해가 필수적이더군요. 대략적인 개념만 알지 실제로 완벽하게 이해하지는 못하는 것들이라 제대로 공부해야겠다는 생각이 들었습니다.