검색 결과로 가져오거나 참조 링크를 통해 생성된 지 얼마 되지 않은 문서를 자주 접하게 됩니다. 몇 달, 몇 년. 때때로 문서는 다음과 같이 표시됩니다.더 이상 사용되지 않음또는 기타 부적절한 상황이지만 항상 그런 것은 아닙니다.
그러나 그것이 역사적이라 할지라도 어느 정도까지는 여전히 적용됩니다. *nix 환경의 변화하는 역학에 대한 전체적인 그림을 그리는 것이 가능합니까? 특정 영역이 변경될 가능성(또는 미래에 변경될 예정)은 얼마나 됩니까? 얼마나 변경될 것이며 얼마나 자주 변경될 것입니까?
이 질문은 다음과 유사합니다. Linux 문서화 프로젝트는 얼마나 최신이고 관련성이 있습니까?, 그러나 더 일반적입니다. 제가 원하는 기준은 다음과 같습니다.
(단 예시일 뿐 실제와는 아무런 관련이 없습니다)
"주요 파일 시스템 구조는 25년 동안 변하지 않았고, POSIX가 보장하는 것처럼 향후 25년 동안에도 변하지 않을 것입니다. 왜냐하면 그것이 *nix 세계를 뒤집어 놓을 것이기 때문입니다. 최대 25년 동안 문서에 의존할 수 있습니다. 연령."
"C 라이브러리의 API는 몇 달에 한 번씩 변경됩니다. 특히 네트워킹 공간에서는 엄청나게 발전하고 있기 때문입니다. 하지만 표준으로 간주되는 핵심 기능은 그 이후로 계속 동일하게 유지되고 있으며 결코 변경되지 않을 것입니다. 바퀴의 재발명이다.”
간접적으로 이 질문은 Q&A 사이트(예: 이 사이트)의 팁이 시간이 지나도 어느 정도까지 유효한지 묻습니다.
답변1
귀하가 게시한 두 인용문은 "문서화"가 아닌 누군가의 의견처럼 들립니다.
표준은 움직이는 목표입니다. 사람들은 이를 구현하는 것을 목표로 할 수도 있지만 몇 년마다 업데이트되며 의도적으로 표준을 따르지 않는 확장 및 사례가 항상 있습니다. 이는 "적절한 표준"과 "임시 표준" 모두에 적용됩니다.
그래도 POSIX와 같은 표준은 변할 것입니다.느리게시간이 지남에 따라 유용하고 수요가 많으며 널리 받아들여지기 때문에 새로운 것이 도입되는 반면, 오래된 것들은 더 이상 사용되지 않는다는 이유로 폐기됩니다. 그렇기 때문에 U&L의 일부 사람들은 일부 쉘 항목(예를 들어)이 POSIX와 호환되지 않고 특정 도구 구현의 특정 버전에서만 작동(경우에 따라 작동하지 않음)한다는 점을 지적하고 싶어합니다. 이는 GNU나 다른 공급업체가 제공하는 특정 구현보다 답변을 더 효율적으로 만드는 방법입니다.
시스템의 인터페이스 및 도구에 대한 문서를 찾을 수 있는 가장 좋은 장소는 항상 온라인 설명서입니다.귀하의 시스템에서, 사용 중인 소프트웨어와 함께 배포될 수 있는 기타 모든 형태의 문서.
sed
특정 플래그 나 grep
유틸리티가 무엇을 하는지, Perl에서 어떻게 사용하는지 웹에서 검색할 수 있지만 Getopt::Long
, 이는 실제 유틸리티나 라이브러리와 함께 설치되는 매뉴얼입니다.귀하의 시스템에서이것은 명확한 문서입니다.
과거 문서가 동일한 기존 시스템을 실행하는 사람들에게 유용할 수 있다는 점은 부인할 수 없지만 문서는 일반적으로 이 기사가 작성된 시점의 시스템이나 도구에 특정한 것입니다. 예를 들어, 새로운 OpenBSD 5.9 시스템을 사용 중이고 sudo
기본 시스템에 있어야 한다는 웹 페이지를 읽고 있는데 왜 작동하지 않는지 궁금하다면 다음 내용을 읽어 보십시오.afterboot(8)
수동(프롬프트에 따라) 설명방금 설치한 시스템. 이것은 당신에게 말할 것입니다doas
유용.
내 요점은 유닉스가 어디로 가는지, 어디서 왔는지는 중요하지 않다는 것입니다. 당신은 그것을 작동시키는 기계 앞에 있습니다지금, 여기에서 최신 문서를 찾을 수 있습니다.
호스트 간에 이메일을 교환하기 위해 UUCP를 설정하는 방법이나 PostgreSQL에서 데이터베이스 복제를 수행하는 방법을 설명하는 내용을 웹에서 본다면 문서의 대상 독자가 누구인지, 이러한 도구의 목적과 동작이 무엇인지 고려해야 합니다. 시간으로 인해 이유는 다를 수 있습니다. 시스템 설명서는 다음과 같습니다.너, 대상 고객은 시스템 사용 방법을 눈앞에서 이해하고 싶은 사용자입니다.
제 답변이 주제에서 조금 벗어난 것이라면 죄송합니다만, 최근에 제가 많이 생각하고 있는 부분입니다.
답변2
나는 아니오라고 말하고 싶습니다. 안전하게 탐색하기 위해 선험적으로 지도를 그릴 수는 없습니다.
Q&A 사이트를 언급하셨습니다. IME Q&A 포럼은 일반적으로 이에 대해 형편없습니다. 몇 가지 의견을 얻을 수 있지만 완전히 합리적인 설명은 없습니다. 웹 검색을 통해 찾은 제3자 "문서"(예: 사람들의 블로그 게시물)는 품질이 유사한 경우가 많습니다. 물론, 이러한 답변은 당시에 유용합니다. 다른 사람의 경험과 독서에 눈을 뜨게 해줍니다. 그러나 완전히 오래된 것이라도 건전한 설명을 위해 기본 소스를 참조하는 것이 교육적일 수 있습니다.
당신이 물었으니까요. 나는 그것이 POSIX와 같다고 말하고 싶습니다. 많은 공급업체에서는 기존 애플리케이션과의 호환성을 유지하기 위해 앞으로도 계속 작동할 1) 시스템 호출과 2) 유틸리티 명령을 표준화했습니다.
다시 말하지만, 권위는 표준 그 자체입니다. 내가 상위권 대학에서 수강한 컴퓨터 공학 과정은 POSIX 스레딩 표준을 Linux의 원래의 일관성 없는 구현 시도와 혼동했습니다. 두 번째 구현(NPTL)에 대한 반례를 무시하세요. 이러한 강좌에 대한 자료는 종종 온라인에서 구할 수 있습니다...
문제는 일단 합의되어 표준에 통합되면 반드시 관련성과 흥미를 유지할 수는 없다는 것입니다. 리눅스 표준 라이브러리의 실패가 그 예라고 생각합니다. (xdg 태블릿 패키지 앱과 같은 유사한 최근 노력이 목표로 삼고 있다는 점에 유의하세요.버전이 매겨진실행 시간. GTK가 얼마나 빨리 변하는지 살펴보세요.)
보안에 집중하는 것이 강력한 사례라고 생각합니다. 우리는 아직 보안 시스템을 구축하는 방법을 찾지 못했습니다. 이 버그에 완화가 적용되지 않은 오래된/패치되지 않은 시스템오늘의 신문완전히 손상된 것으로 간주됩니다. 그래서 그들은 계속 변합니다.
POSIX 애호가를 위한 경고: 실제 세계에서 사용되는 운영 체제~ 할 것이다어떤 면에서는 기준에서 벗어났습니다. OS X, POSIX 인증 - fsync()
구현이 합법화되었으며 다른 사람들이 생각하는 의미를 수행하지 않습니다. 일부 Linux 회색 수염은 성가신 파일 이름(예: 제어 문자 포함)을 사용하는 응용 프로그램을 중단해야 한다고 생각합니다. 등.