컴퓨팅에서 진입 점이 무엇입니까?
컴퓨터에서 진입 점은 코드가 시작되는 프로그램, 모듈 또는 기능의 지점입니다. 특히 메모리 주소가 시작되는 위치입니다. 프로그램에서 이는 첫 번째 코드 모듈이거나 실행되는 첫 번째 코드 행입니다. BASIC 또는 COBOL과 같이 선형 인 프로그램에서 진입 점은 문자 그대로 첫 번째 코드 행입니다. 그런 다음 코드는 일종의 점프 또는 호출이 실행될 때까지 순차적으로 따릅니다. C 프로그래밍 언어의 모든 변형과 같은 모듈 식 프로그래밍에서 시작점은 시작 모듈입니다. C에서 이것은“Main ()”함수입니다.
이전 프로그램 및 운영 체제에서는 실행중인 기능 또는 시스템에 따라 프로그램에 여러 개의 진입 점이있을 수 있습니다. Windows® 및 Unix를 포함한 대부분의 최신 운영 체제에서 프로그램은 단일 진입 점을 지원하는 언어로 작성됩니다. 현대 컴퓨팅의 초기에도 BASIC과 같은 언어는 프로그램에 대한 단일 진입 점을 가지면서 프로그램이 한 모듈에서 다른 모듈의 진입 점으로 무차별 적으로 "점프"할 수있는 "긴 점프"를 지원할 수 있습니다. 이것은“스파게티 코드 (spoetti code)”라고 불리우며, 유지하거나 수정하기가 어렵다.
진입 점은 프로그램의 진입 점을 참조하지 않을 수도 있지만 다른 프로그램과 공유되는 일종의 미니 프로그램 인 동적 링크 라이브러리 (DLL)의 진입 점일 수 있습니다. 키보드 입력을 제어하는 DLL이 한 예입니다. 프로그램, 모듈 또는 기능의 유형에 관계없이 진입 점은 해당 코드에서 처리되는 단일 지점입니다. 언어를 이해하거나 프로그램을 수정하고 지원하는 핵심은 해당 특정 프로그램이나 운영 체제에서 진입 점이 어떻게 식별되는지 이해하는 것입니다.
진입 점 개념은 컴퓨터 프로그래밍이 초기의 완전히 선형적인 방법을 떠날 때 구현되었습니다. 당시 컴퓨터 프로그램은 첫 번째 코드 줄에서 시작하여 한 번에 한 줄씩 진행하여 프로세스가 끝났습니다. 곧 루핑, 조건부 분기, 재귀 등과 같은 프로그래밍 구조는 기능적으로 더 효율적인 프로그램을 만들었지 만 코드 내에서 처리가 튀어 나왔습니다. 이러한 프로그램의 특성상 처리가 실제로 시작되기 전에 많은 코드 행 또는 섹션이있을 수 있습니다. 이러한 이유로 진입 점이 작성 및 식별되었습니다.
C에서는 이것이 main () 함수가되었습니다. 코드에서이 함수가 존재하는 위치에 관계없이 처리가 시작된 위치입니다. 다른 언어에서는 진입 점이 위치와 위치가 아닌 위치에 의해 식별되지 않습니다. 프로그램의 시작 부분에는 변수 선언 및 서브 루틴 섹션이 포함될 수 있습니다. 이러한 영역이나 기능을 따르는 첫 번째 코드 줄은 기본적으로 진입 점이됩니다.