해결된 질문
22.03.10 19:50 작성
·
399
1
답변 1
0
2022. 03. 10. 21:59
안녕하세요 jglee81님!
질문에 시스템 프로그래밍과 연관된 질문이 많아서 제가 자세히 설명드리기 어려운 부분도 있습니다.
제가 실무에서 직접 다뤄보지 않은 부분은 인터넷의 힘을 빌려 답변드리겠습니다^^
시스템 콜을 사용하는 부분에서 컨텍스트 스위칭이 발생한다고 예측할 수 있습니다.
하지만 모든 시스템 콜에서 컨텍스트 스위칭이 발생하는 것은 아닙니다! 시스템에 따라 조금 다릅니다.
입출력 시스템콜이나 뮤텍스를 호출하면 컨텍스트 스위칭이 해당 위치에서 발생한다고 예측할 수 있습니다.
이 부분은 컴파일러와 관련되어있습니다.
C라면 gcc를 사용하실거라고 생각이 드는데요.
gcc에서 -fstack-usage를 이용하셔도 될 것 같습니다.
각 함수에서 발생할 수 있는 최악의 상황의 크기로 메모리를 할당한다고 하네요.
또 -fstack-check로 한번 보시면 좋을 것 같습니다!
운영체제 강의를 다 보시면 시스템 프로그래밍 공부를 할 준비가 된 것이니 jglee81님께서 시스템 프로그래밍도 배워보시면 실무에 많은 도움이 될 것 같습니다!