목록공부/운영체제 실습 (2)
The Way
컴파일을 하기 위해서는 보통 gcc를 사용한다. gcc의 컴파일 과정은 다음과 같은 순서로 이루어지는데, a.c (작성한 코드)→ a.i (#define이나 #include 같은 것을 처리함)→ a.s (어셈블리어로 번역)→ a.o (어셈블리 파일을 오브젝트 파일로 번역)→ a.out (오브젝트 파일을 linking까지 완료) 중간 단계까지만 진행하는 것도 가능한데,-E 옵션을 주면 전처리만, -S 옵션을 주면 어셈블리어로, -c 옵션을 주면 오브젝트 파일까지만 완료할 수 있다. 1) 어셈블리어먼저 어셈블리어로 번역되는 과정에 주목해보자. 어셈블리어는 파고들자만 한도끝도 없을 정도로 복잡하지만, 대표적으로 다음과 같은 명령들은 알아둘 만 하다. mov src des: src를 des로 복사 add, su..
요즘 운영체제 수업을 듣는다. 작년 이맘때에도 들었지만 중간에 휴학을 하는 바람에 다시 듣는다.컴퓨터공학과에서 운영체제는 보통 3학년 1학기에 듣는 듯 하다. 막학기가 되어서야 듣는 나는 그만큼 기본기가 부족하다는 뜻이다. 다행히 존경스런 교수님이 정말 세세히 알려주셔서 감사한 마음으로 기본기를 쌓을 수 있다. 실습은 항상 1등으로 풀고 나가지만 여기서 만족하지 않고 더 열심히 해나가야겠다. 아무쪼록, 실습 내용을 앞으로는 그날그날 간단히 정리를 해보려고 한다. 친숙하지만, 그 속에 많은 유용한 정보를 담고 있을 수 있다. 가장 첫 번째는 비트 연산이다. 컴퓨터는 태생적으로 0과 1로밖에 데이터를 저장하지 못하기 때문에, 이진법을 필연적으로 사용할 수밖에 없다.컴파일러마다 약간 차이가 있긴 하지만 cha..