피엘원 편집하기
최신판 | 당신의 편집 | ||
1번째 줄: | 1번째 줄: | ||
− | |||
− | |||
− | |||
'''피엘원'''<!--피엘 원-->(PL/I)은 Programming Language One의 약자로서, 미국 [[IBM]]이 [[메인프레임]](Mainframe) 컴퓨터에서 사용하기 위해 1964년 개발한 명령형 [[프로그래밍 언어]]이다. PL 뒤에 일(1)이라고 쓰지 않고 아이(I)라고 쓰는 경우가 많다. 간략히 '''PL1'''이라고도 쓴다. | '''피엘원'''<!--피엘 원-->(PL/I)은 Programming Language One의 약자로서, 미국 [[IBM]]이 [[메인프레임]](Mainframe) 컴퓨터에서 사용하기 위해 1964년 개발한 명령형 [[프로그래밍 언어]]이다. PL 뒤에 일(1)이라고 쓰지 않고 아이(I)라고 쓰는 경우가 많다. 간략히 '''PL1'''이라고도 쓴다. | ||
== 개요 == | == 개요 == | ||
− | 피엘원은 컴퓨터의 이용이 고도화됨에 따라 기술적 계산은 | + | 피엘원은 컴퓨터의 이용이 고도화됨에 따라 기술적 계산은 포트란(FORTRAN), 사무적 계산은 코볼(COBOL)이라는 영역구별이 점점 사라지면서 양분야에 공통으로 사용되는 단일 언어의 초판이라는 뜻으로 PL/1이라는 이름이 개발사인 IBM에 의해 1996년에 붙여졌다. 피엘원은 컴퓨터 포트란의 계산 개념과 코볼의 파일 처리 개념을 도입하여 과학 기술 계산과 사무 처리 계산에 적합하도록 만든 프로그래밍 언어이며, PL/1으로 표기한다. |
== 역사 == | == 역사 == | ||
− | 1950년대와 1960년대 초에 비즈니스 및 과학 분야의 사용자들은 각기 다른 프로그래밍언어를 사용하여 다른 컴퓨터 하드웨어를 위해 프로그램을 작성하였다. 비즈니스 분야의 사용자들은 COMTRAN을 경유하는 [[오토코더]]에서 | + | 1950년대와 1960년대 초에 비즈니스 및 과학 분야의 사용자들은 각기 다른 프로그래밍언어를 사용하여 다른 컴퓨터 하드웨어를 위해 프로그램을 작성하였다. 비즈니스 분야의 사용자들은 COMTRAN을 경유하는 [[오토코더]]에서 [[코볼]]로 옮겨가고 있었지만, 과학 분야의 사용자들은 GIP(General Interpretive Programme), [[포트란]](FORTRAN), [[알골]](ALGOrithmic Language), [[조지]](GEORGE)로 프로그램을 작성하였다. IBM 시스템/360 (1964년에 발표하였으나 1966년까지 보급되지 않았음) 이 두 그룹의 사용자들을 위한 공통의 머신 아키텍처로 설계되면서 기존의 모든 IBM [[아키텍처]]들을 대체하였다. 1963년 10월, IBM 과학 사용자 그룹의 세 명의 뉴욕IBM 출신과 세 명의 SHARE 출신에 의해 한 위원회가 설립되었고 포트란에 대한 이러한 확장들을 제안하였다. 포트란의 제약으로 인해 이를 수행할 수 없었고 알골에 어느 정도 기반한 NPL이라는 이름의 새로운 프로그래밍 언어의 설계에 착수하였다. NPL이라는 이름은 영국의 National Physical Laboratory와 충돌되어 MPPL(MultiPurpose Programming Language)로 바뀌었고, 1965년 PL/I으로 바뀌었다. 최초의 정의는 1964년 4월에 등장하였다. |
− | + | 최초의 [[컴파일러]]는 1966년에 보급되었으며, PL/I 표준은 1976년에 승인되었다.<ref> 〈[https://ko.wikipedia.org/wiki/PL/I PL/I의 역사]〉,《위키백과》 , 2019-07-01</ref> | |
− | IBM 시스템/360 (1964년에 발표하였으나 1966년까지 보급되지 않았음) 이 두 그룹의 사용자들을 위한 공통의 머신 아키텍처로 설계되면서 기존의 모든 IBM [[아키텍처]]들을 대체하였다. | ||
− | |||
− | 1963년 10월, IBM 과학 사용자 그룹의 뉴욕IBM | ||
− | |||
− | 최초의 [[컴파일러]]는 1966년에 보급되었으며, PL/I 표준은 1976년에 승인되었다.<ref> 〈[https://ko.wikipedia.org/wiki/PL/I PL/I의 역사]〉, 《위키백과》 , 2019- | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | == 시스템 환경 == |
− | + | 컴파일러와 그것의 오브젝트 프로그램은 멀티믹스 운영체제 내에서 작동한다. 이 시스템에서 제공하는 환경은 많은 수의 [[세그먼트]]로 구성된 가상 2차원 주소 공간을 포함한다. 각 세그먼트는 주소 범위가 0~64K인 선형 주소 공간이다. 전체 가상 저장소는 프로그램에 보이지 않는 페이징 메커니즘에 의해 지원된다. 이 환경에서 작동하는 각 프로그램은 두 개의 세그먼트로 구성된다. <ref> 즉, 순수한 재진입 절차가 포함된 텍스트 세그먼트와 [[아웃 레퍼런스]](링크), 정의(엔트리 이름) 및 프로그램에 로컬인 정적 저장소가 포함된 링크 세그먼트로 구성된다.</ref> 각 프로그램의 텍스트 세그먼트는 시스템의 다른 모든 사용자가 공유할 수 있다. 호출된 프로그램에 대한 연결은 일반적으로 프로그램 실행 중에 동적으로 수행된다.<ref> 〈[https://www.multicians.org/pl1-raf.html PL/I Compiler]〉,《멀틱스》 , 2019-07-01</ref> | |
− | |||
− | |||
{{각주}} | {{각주}} | ||
− | == | + | == 참고 자료 == |
− | * 〈[https://ko.wikipedia.org/wiki/PL/I PL/ | + | *위키백과, 〈[https://ko.wikipedia.org/wiki/PL/I PL/I의 역사]〉, 《위키백과》 , 2019-07-01 |
− | * 〈[https:// | + | *R. A. FREIBURGHOUSE,〈[https://www.multicians.org/pl1-raf.html PL/I Compiler]〉,《멀틱스》 , 2019-07-01 |
− | |||
− | |||
== 같이 보기 == | == 같이 보기 == | ||
* [[IBM]] | * [[IBM]] | ||
* [[메인프레임]] | * [[메인프레임]] | ||
− | {{프로그래밍 언어| | + | {{프로그래밍 언어|토막글}} |