고등학교 때 파스칼로 프로그램하는 법을 배웠습니다. 최근에는 샌드 박스에서 나와 내 컴퓨터가 실제로 어떻게 작동하는지 알아 내려고했습니다. 그래서 우분투를 iMac (i686)에 설치하고 C를 배우기 시작했습니다.이 기능은 "두포 모드"를 얻는 좋은 방법처럼 보였습니다.왜 내 시스템에는 헤더 파일이 너무 많은 버전이 있습니까?
내가 알아 내려고하는 기본적인 것 중 하나는 커널이 끝나고 표준 라이브러리가 시작되는 곳입니다. 책은 리눅스 시스템 호출 (커널과 라이브러리 사이의 인터페이스로 이해할 수 있음)이 헤더 파일 unistd.h
에서 발견 될 수 있으므로 시작하기에 좋은 장소 인 것처럼 보였습니다. - 다른 헤더 파일 - 내 시스템에 도대체이 파일의 많은 버전이 왜
/usr/include/unistd.h
/usr/include/asm-generic/unistd.h
/usr/include/i386-linux-gnu/asm/unistd.h
/usr/include/i386-linux-gnu/bits/unistd.h
/usr/include/i386-linux-gnu/sys/unistd.h
/usr/include/linux/unistd.h
/usr/lib/syslinux/com32/include/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/alpha/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/arm/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/avr32/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/blackfin/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/c6x/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/cris/include/arch-v10/arch/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/cris/include/arch-v32/arch/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/cris/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/frv/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/h8300/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/hexagon/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/ia64/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/m32r/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/m68k/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/microblaze/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/mips/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/mn10300/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/openrisc/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/parisc/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/powerpc/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/s390/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/score/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/sh/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/sparc/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/tile/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/unicore32/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/x86/include/asm/ia32_unistd.h
/usr/src/linux-headers-3.5.0-27/arch/x86/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/arch/xtensa/include/asm/unistd.h
/usr/src/linux-headers-3.5.0-27/include/asm-generic/unistd.h
/usr/src/linux-headers-3.5.0-27/include/linux/unistd.h
/usr/src/linux-headers-3.5.0-27-generic/include/linux/unistd.h
: 나는 (locate unistd.h
사용) 내 시스템에서 헤더를 찾을하려고 할 때, 나는이 결과를 얻었다 ? 그들 중 일부는 sparc와 같은 다른 CPU를 사용하는 것 같습니다. 우분투는 왜 내 컴퓨터에 설치해야합니까? 에릭 레이몬드 (Eric Raymond)가 SPOT 규칙이라고 부르는 내용은이 모든 것이 어떻게 적합한 것입니까? "모든 지식은 시스템 내에서 단일하고 모호하지 않으며 권위있는 표현을 가져야합니다." (유닉스 프로그래밍의 기술, 91 쪽)
어떤 도움을 주셔서 미리 감사드립니다. 필요한 경우 큰 책을 읽게되어 기쁩니다.
"우분투는 왜 내 컴퓨터에 설치하지 않습니까?" 모든 아키텍처에 대해 전체 소스와 함께 제공되는 커널 소스 패키지를 설치 했으므로 (이를 호출 함). –