| 검색 | ?
대문 / 프로그래밍 / Linux환경에서의 StartUpCode (Assembly)

Linux환경에서의 StartUpCode (Assembly)

2. 개요

이 소스는 Linux에서 간략하게 구현된 startup코드입니다.
이것은 인자를 받기 위해서 DOS처럼 공백을 구분해서 만들어야 하는 불편함이 없습니다.
Linux에서는 프로그램이 구동되면 마치 하나의 함수를 호출한것같이 스택에 해당 PSP(Linux에서도 이렇게 부르는지는 잘 모르겠네요.)를 넘겨주게 됩니다.
때문에 DOS 보다는 상당히 편하게 사용할수 있습니다.
그리고 아래의 예제에서 env는 인자로 넘겨주지 않았습니다.
사실 저는 쓸일이 없어서 예제를 이따위로 만들어 놓았습니다. 너그럽게 용서하시길 바라면서 다음과 같이 예제를 올려봅니다.

NOTE: Startup 코드는 Linux에서 C를 할때 링크과정에서 항상 포함되는 crt<0..1>.o 를 말합니다.
즉, 이것이 하는 일은 프로그램이 기동되고 몇가지 기초과정(아래에서는 빠졌지만 이것보다 훨씬 많은 일을 해야 합니다.)를 초기화 하고 마지막으로 main을 호출하게 됩니다.
그리고 main에서 return되었을때 exit(0)함수를 호출하는 것과 같은 역할의 코드를 수행해주도록 합니다.




Copyright ⓒ MINZKN.COM
All Rights Reserved.