[ CnUnix ] in KIDS 글 쓴 이(By): dkim (From Hell) 날 짜 (Date): 1993년12월04일(토) 16시17분25초 KST 제 목(Title): ELF ELF 는 제가 알기론 Executable and Linking Format 으로 알고 있어요. 뭐..특징이라고 하면..(저도 잘은 모름..) ELF 디스크립터 라는걸 통해서 프로그램이 통화하는데.. 중요한것은 이 디스크립터가 private 이지만 나눠써야할 데이타의 엑세스를 허용한다고.. 예를 들면 incoming 데이타를 가지고 어떤 화일을 업데이트 하거나 만들어 준다고 할때.. 아웃풋 디스크립터를 만들때 인풋디스크립터의 데이타를 바로 다시 (새로 만들지 않고) 사용할수 있단 말이죠. 즉 이 디스크립터는 프라이빗으로 보호되지만 그 안의 데이타는 나눠 쓰일수 있단 이야기. 즉 이러한 세어링으로 중복되는 버퍼로 인한 스페이스 오버헤드를 줄이고 공연히 데이타 세그먼트를 계속 카피 해야 하는 퍼포먼스 오버헤드가 준다는 원리..음..이거 핸들 이랑 비슷한 개념인가.. 또한가지는 ELF 는 물티프로세서 & 아키텍쳐를 지원하는 오브젝트 화일 패밀리를 정하기 위한 framework 가 있어요. 오브젝트 화일간의 중요한 차이는 CLASS, CAPACITY, 인데요.. 32-빗 클래스는 32-빗 오브젝트가 나타낼수 있는 주소, 화일싸이즈..등등..의 아키텍쳐를 지원. 예) Elf32_Half Unsigned medium integer Elf32_Off Unsigned file offset Elf32_Addr Unsigned address Elf32_Sword Signed large integer Elf32_Word Unsigned large integer unsigned char Unsigned small integer 등등..이렇게 아키텍쳐에 따라 클래스를 정해놓게 되지요.. 그리고 개념상으로 2 개의 다른 오브젝트 셋이 서로 크로스 콤파일이 가능하다네요..쫍..어렵네. 뭐 결국은 플랫폼에 관계없이..오브젝트 포맷을 정하자는 이야기고 아키텍쳐의 변화에 쉽게 대쳐할수 있다던지.. 아주 이상적인 생각을 위주로 하는 포맷인데.. 문제는 아직까지..자기네 OS 에서 또는 자기네 플랫폼에서 ELF 가 완전 지원된다고 주장하는 회사가 없는듯.. 음..모르면서 아는척 하기 무지 힘들군요. 더이상 질문 사절.. |