1장. 소개

차례
1.1. Legal Blurb (법적문제에 관한 잔소리)
1.2. 서문
1.3. 이 문서에 기여하는 법

참고: 하우투 문서에 친숙하다거나 어셈블리와 무관한 잔소리 :-) 들을 보기 싫으시면 이 장을 건너뛰어도 좋다.

1.1. Legal Blurb (법적문제에 관한 잔소리)

이 문서의 복사, 배포 혹은 수정은 GNU Free Documentation License Version 1.1 에 따른다. with no Invariant Sections, with no Front-Cover Texts, and no Back-Cover texts. A copy of the license is included in the GNU Free Documentation License appendix.

이 문서의 가장 최근의 공식판은 Linux AssemblyLDP 에서 구할 수 있다. 문서의 새로운 버젼을 확인하는 것을 잊지 밀라.

참고: 역자 주 : 현재 최신 버젼은 0.6d 이다. 번역문은 0.6 을 번역한 것이다.

1.2. 서문

이 문서는 free 소프트웨어를 사용한 32비트 x86 어셈블리 프로그래밍이나 프로그램들에 대해 질문하는 사람들에게 답변하기 위해 제작되었으며, 특히 리눅스 운영체제를 타겟으로 삼고 설명을 진행하고 있다. 문서의 여러 부분에서 특정 소프트웨어나 문서를 구하기 위한 url 들을 잠조하고, 언급하고 있다. 이 문서는 또한 주된 목적이 아닌 자유 소프트웨어가 아니거나, x86 기반이 아니거나, 32비트 어셈블러가 아니기도 한 것들에 대한 언급을 하기도 한다. 여러분이 좋아하는 플랫폼에서의 프로그래밍에 대한 FAQ 와 문서들이 있음을 항상 기억하라. 여러분이 그에 대한 내용을 발견하려면 그(특정 플랫폼에서의)에 관한 문서 들을 참조하도록 하라. (어셈블리 프로그래밍을 바로 찾지 말고, 특정 플랫폼에 관한 문서를 찾으면 된다.)

어셈블리 프로그래밍의 주된 목적은 운영체제, 인터프리터, 컴파일러, 게임 등과 같은 분야에서 C 로 구현하기 힘든 부분을 (퍼포먼스가 주된 issue 가 되는 부분) 건드리기 위한 것이기 때문에 이 문서에서는 그러한 종류의 소프트웨어 개발과 관련된 부분에 촛점을 맞출 계획이다.

만약 여러분이 free 소프트웨어가 무엇인지 모른다면, GNU General Public License (GPL 혹은 copyleft)주의깊이 읽어보기 바란다. 아주 많은 free 소프트웨어(역자 주 : 자유 소프트웨어 라고 번역하겠다.)들이 GNU GPL 을 따른다. 배포되는 자유 소프트웨어의 소스 중에 COPYING(혹은 COPYING.LIB) 이라는 이름의 파일에서 읽어볼 수 있다. 또한, 자유 소프트웨어 재단 (Free software foundation : FSF) 에서 제공하는 문서들도 도움이 될 것이다. 이러한 자유 소프트웨어가 아주 흥미있는(!) 이유는 그 소프트웨어들이 소스코드와 함께 제공되기 대문이다. 게다가 여러분은 소스코드를 수정하거나, 버그를 잡아서 다시 배포할 수도 있으며, 심지어 그 코드에서 차용한 코드를 가진 프로그램을 만들 수도 있다. (출처를 밝히고, 자신의 코드를 GNU GPL 하에 공개한다면)

1.3. 이 문서에 기여하는 법

이 문서는 진화(!)해 가는 문서이다. 여러분은 자유롭게 이 문서에서 다루는 주제에 대해 질문할 수 있으며, 또한, 답도 해 줄수 있다. 또한 주어진 답의 오류를 정정해서 다시 답해줄 수도 있다. 새로운 소프트웨어를 알려줄 수도 있으며, 이 문서의 버그나 비효율적인 점을 저자에게 알려줄 수도 있다.

제발!! 기여해 달라!! 문서의 저자에게 메일을 : maintainer.

참고: 이 글을 쓰는 시점에, 이 문서의 관리자는 Francois-Rene Rideau 가 아니라 Konstantin Boldyshev 이다.(버젼 0.5부터 그러했다.) 나(저자)는 이 문서를 나를 대신해서 유지/보수할 진지한 해커를 한동안 찾아 왔으며, Konstantin이 나의 후임이 되었음을 기쁘게 발표하는 바이다.