AIX는 4.3BSD 호환 확장이 포함된 유닉스 시스템 V를 기반으로 한다. AIX 5.3 버전과 7.2 TL5 버전부터 각각 단일 유닉스 규격의 UNIX 03 및 UNIX V7 사양을 인증받았다. 이전 버전은 UNIX 95 및 UNIX 98 사양을 인증받았다.
AIX는 저널링 파일 시스템을 구현한 최초의 운영체제였다. IBM은 프로세서, 디스크 및 네트워크 가상화, 동적 하드웨어 리소스 할당(부분 프로세서 단위 포함), 메인프레임 설계에서 파생된 신뢰성 공학 개념 등의 기능으로 소프트웨어를 지속적으로 개선해 왔다.
역사
1990년대 IBM.com에서 사용된 IBMRS/6000 AIX 파일 서버AIX 버전 4 콘솔 로그인 프롬프트
유닉스는 1970년대 초 AT&T의 벨 연구소 연구 센터에서 DEC미니컴퓨터를 구동하며 시작되었다. 1976년까지 운영체제는 프린스턴 대학교를 포함한 여러 학술 기관에서 사용되었으며, 그곳에서 톰 라이언(Tom Lyon) 등은 이를 S/370으로 포팅하여 VM/370 상에서 게스트 운영체제로 실행되도록 했다. 이 포팅은 IBM의 메인프레임 라이벌이었던 암달(Amdahl)의 UTS가 되었으며, 이 회사는 1980년대 후반부터 이를 점점 더 우선시했다.
IBM의 유닉스 관련 활동은 1979년 벨 연구소가 5ESS 교환기 소프트웨어의 빌드 호스트로 사용하기 위해 S/370 플랫폼으로 유닉스를 포팅하는 것을 지원하면서 시작되었다. 이 과정에서 IBM은 유닉스를 더 잘 지원하기 위해 TSS/370 상주 슈퍼바이저를 수정했다.
1984년, IBM은 인터랙티브 시스템즈 코퍼레이션(ISC)이 유닉스 시스템 III를 사용하여 개발한 S/370 플랫폼용 자체 유닉스 변형인 VM/IX를 도입했다. 그러나 VM/IX는 PRPQ(가격 견적 요청 프로그래밍)로만 제공되었으며 범용 제품은 아니었다.
1985년까지 대부분의 컴퓨터 회사는 사유 운영체제와 함께 유닉스를 제공했다. 그해 업계 분석가는 IBM이 유닉스에 열성적이지 않다고 묘사했으나, 회사는 1985년 UTS와 경쟁하기 위해 AT&T 유닉스 시스템 V를 기반으로 하고 ISC가 개발한 완전 지원 제품인 IBM IX/370으로 VM/IX를 대체했다.
ISC는 또한 1986년 1월에 도입된 IBM RT PC 워크스테이션용 AIX를 개발했으며, 이는 유닉스 시스템 V 릴리스 1 및 2를 기반으로 하고 4.2 및 4.3 BSD 유닉스의 소스 코드를 통합했다. AIX 버전 2는 1987년 RT PC용으로 뒤따랐다. AIX는 IBM PC AT 및 IBM PC XT/286용으로도 제공되었다.
1990년, AIX 버전 3이 새로운 POWER 기반 RS/6000 플랫폼용으로 출시되었다. 그해 관찰자들은 IBM이 공식적으로 유닉스를 승인했으며, 자사의 사유 AS/400과 유닉스 기반 RS/6000이 미드레인지 시스템 시장에서 서로 경쟁하도록 할 의지가 있다고 언급했다. AIX는 RS/6000 시리즈의 주력 운영체제였으며, 이는 나중에 IBM eServer pSeries, IBM System p, 그리고 최종적으로 IBM 파워 시스템으로 이름이 변경되었다.
1994년에 도입된 AIX 버전 4는 대칭형 다중 처리를 추가했고 1990년대 내내 발전하여 1999년 AIX 4.3.3으로 정점에 달했다. 버전 4.1의 수정된 버전은 애플 컴퓨터의 애플 네트워크 서버 라인을 위한 표준 운영체제로도 사용되었다.
1990년대 후반, 몬터레이 프로젝트 하에서 IBM과 샌타크루즈 오퍼레이션은 AIX와 유닉스웨어를 인텔IA-64 아키텍처용 다중 플랫폼 유닉스로 통합하려고 시도했다. 이 프로젝트는 상업적 성공이 제한적이었던 후 2002년에 중단되었다.
2003년, SCO 그룹은 AIX 내의 유닉스 시스템 V 소스 코드 도용을 주장하며 IBM을 상대로 소송을 제기했다. 이 사건은 2010년 배심원단이 유닉스에 대한 권리는 SCO가 아닌 노벨에게 있다고 판결하면서 해결되었다.
RT 설계의 새로운 측면 중 하나는 가상 리소스 관리자(VRM)라는 마이크로커널을 사용하는 것이다. 키보드, 마우스, 디스플레이, 디스크 드라이브 및 네트워크는 모두 마이크로커널에 의해 제어된다. Alt-Tab 키 조합을 사용하여 한 운영체제에서 다음 운영체제로 "핫키"를 전환할 수 있다. 각 OS는 차례로 키보드, 마우스 및 디스플레이에 대한 점유권을 얻는다. AIX v2 외에도 PICK OS도 이 마이크로커널을 포함하고 있다.
AIX v2 커널의 많은 부분은 PL.8 프로그래밍 언어로 작성되었는데, 이는 AIX v3로 마이그레이션하는 동안 문제가 되는 것으로 판명되었다. AIX v2에는 완전한 TCP/IP 네트워킹뿐만 아니라 SNA 및 두 개의 네트워크 파일 시스템인 썬 마이크로시스템즈에서 라이선스를 받은 NFS와 분산 서비스(DS)가 포함되어 있다. DS는 SNA 위에 구축되어 있으며, 따라서 IBM i를 실행하는 미드레인지 시스템의 DS와 완전히 호환된다는 특징이 있다. 그래픽 사용자 인터페이스의 경우, AIX v2에는 MIT의 X 윈도 시스템 X10R3 및 이후 버전인 X10R4와 X11이 Xaw와 함께 제공되었다. 포트란 및 C용 컴파일러를 사용할 수 있었다.
이 제품은 1988년 9월 기본 태그 가격 595달러로 발표되었지만, UUCP와 같은 일부 유틸리티는 250달러의 별도 확장 패키지에 포함되었다. AIX용 nroff 및 troff도 200달러짜리 텍스트 포맷팅 시스템 패키지로 별도 판매되었다. AIX PS/2용 TCP/IP 스택은 300달러에 추가로 소매 판매되었다. X 윈도 시스템 패키지는 195달러였으며, IXI Limited의 X.desktop을 기반으로 하는 AIXwindows 데스크톱이라는 그래픽 환경이 있었다. C 및 포트란 컴파일러는 각각 275달러였다. Locus는 또한 AIX 내에서 MS-DOS 3.3 애플리케이션을 실행할 수 있는 AIX용 DOS Merge 가상 머신 환경을 제공했으며, DOS Merge는 250달러에 별도로 판매되었다. IBM은 또한 PC DOS 3.3을 실행하는 클라이언트 컴퓨터에 파일 서버 및 인쇄 서버 서비스를 제공하는 150달러짜리 AIX PS/2 DOS 서버 프로그램을 제공했다.
PS/2 AIX의 마지막 버전은 1.3이다. 1992년에 출시되었으며 IBM이 아닌(마이크로 채널이 아닌) 컴퓨터에 대한 지원도 추가되었다. PS/2 AIX에 대한 지원은 1995년 3월에 종료되었다.
IBM 메인프레임
1988년, IBM은 Locus가 개발한 AIX/370을 발표했다. AIX/370은 IBM 메인프레임 라인, 특히 IBM 시스템/370에 대해 유닉스 계열 기능을 제공하려는 IBM의 네 번째 시도였다(이전 버전은 1980년경 AT&T와 공동 개발한 TSS/370 기반 유닉스 시스템, 1984년경 ISC와 공동 개발한 VM/370 기반 시스템인 VM/IX, 유닉스 시스템 V와 호환되도록 업그레이드된 VM/370 기반의 TSS/370 버전인 IX/370이었다). AIX/370은 시스템 V 릴리스 2 및 4.3BSD와 기능적으로 동일하게 1990년에 출시되었으며 IBM의 기능 향상이 포함되었다. ESA/390 아키텍처가 도입되면서 AIX/370은 1991년 OSF/1 기반의 AIX/ESA로 대체되었으며, 이는 IBM 시스템/390 플랫폼에서도 실행된다. AIX/370과 달리 AIX/ESA는 호스트 운영체제로 기본 실행되며, VM 하에서 게스트로 실행된다. AIX/ESA는 기술적으로 진보했지만 상업적으로는 성공하지 못했는데, 이는 부분적으로는 기존 메인프레임 운영체제인 MVS에 MVS/ESA SP 버전 4 릴리스 3 OpenEdition이라는 이름으로 1994년에 유닉스 기능이 옵션으로 추가되었고, OpenEdition에서 유닉스 시스템 서비스로 이름이 변경되면서 MVS/ESA SP 버전 5, OS/390 및 z/OS의 필수 부분으로 계속되었기 때문이다. IBM은 또한 VM/ESA 버전 2를 통해 z/VM까지 OpenEdition을 제공했다.
IA-64 시스템
몬터레이 프로젝트의 일환으로 IBM은 2001년에 IA-64(아이테니엄) 아키텍처용 AIX 5L 베타 테스트 버전을 출시했으나, 관심 부족으로 인해 공식 제품이 되지는 못했다.
애플 네트워크 서버
애플 네트워크 서버(ANS) 시스템은 스왑 가능한 하드 드라이브, 중복 전원 공급 장치, 외부 모니터링 기능 등 당시 표준 애플 하드웨어에는 없는 수많은 하이엔드 기능을 갖추도록 애플에서 설계한 파워PC 기반 시스템이다. 이 시스템은 당시 제공되던 파워 맥 하드웨어를 기반으로 하지만, ANS 전용의 특수 버전인 '애플 네트워크 서버용 AIX'를 네이티브 운영체제로 사용하도록 설계되었다.
AIX는 네트워크 서버와만 호환되며 표준 파워 맥 하드웨어로 포팅되지 않았다. 이는 68k 기반 매킨토시용 애플의 이전 유닉스 버전인 A/UX와 혼동해서는 안 된다.
POWER ISA/파워PC/Power ISA 기반 시스템
1998년 초 IBM.com을 실행하는 AIX RS/6000서버들1998년 초 IBM.com을 실행하는 AIX RS/6000서버들
AIX 버전 3(때때로 AIX/6000이라고 함)의 출시는 1990년 최초의 POWER1 기반 IBM RS/6000 모델 발표와 일치했다.
RT PC의 AIX v2와 호환되지 않는 AIX v3는 소프트웨어 측면에서 여러 가지 혁신을 이루었다. 부팅 시 디스크의 파일 시스템 일관성을 확인할 필요(참조: fsck)를 없애 빠른 부팅 시간을 가능하게 하는 저널링 파일 시스템인 JFS 개념을 도입한 최초의 운영체제이다. 또 다른 혁신은 애플리케이션에서 사용되는 라이브러리에 대해 정적 링킹을 할 필요가 없는 공유 라이브러리이다. 결과적으로 더 작아진 바이너리는 실행을 위해 하드웨어 RAM을 적게 사용하고 설치를 위해 적은 디스크 공간을 사용한다. 성능 향상 외에도, 실행 파일은 C 표준 라이브러리에 정적으로 링크된 실행 파일이 메가바이트 단위인 것과 달리 수십 킬로바이트 단위일 수 있다. AIX v3는 또한 AIX v2의 마이크로커널을 폐기했는데, 이는 v3에 PL.8 코드가 포함되지 않게 하고 v2보다 다소 더 "순수"하게 만드는 결과를 가져온 논쟁적인 움직임이었다.
다른 주목할 만한 하위 시스템은 다음과 같다.
IRIS GL: OpenGL의 전신인 3D 렌더링 라이브러리이다. IRIS GL은 1987년 당시 수천 대의 기기만을 판매했던 작은 회사였던 SGI로부터 IBM이 라이선스를 받았다. SGI는 또한 초당 20,000개의 구로 셰이딩 삼각형을 그릴 수 있는 RS/6000용 로우엔드 그래픽 카드도 제공했다. 하이엔드 그래픽 카드는 메인프레임에 연결된 IBM 5080의 후속 제품으로 IBM이 설계했으며 초당 990,000개의 벡터를 렌더링할 수 있었다.
IBM은 수수료를 내는 고객에게 RS/6000용 AIX 소스 코드를 제공했다. 1991년 IBM 고객은 60,000달러의 일회성 비용으로 AIX 3.0 소스 코드를 주문할 수 있었고, 이후 IBM은 1992년에 AIX 3.1 소스 코드를, 1993년에 AIX 3.2 소스 코드를 출시했다. 이러한 소스 코드 배포판에는 IBM이 재배포할 권리가 없는 제3자가 작성한 특정 파일은 제외되며, MS-DOS 에뮬레이터 및 C 컴파일러와 같은 계층화된 제품도 제외된다. AIX 소스 코드에 대한 라이선스를 취득하기 위해 고객은 먼저 AT&T 및 캘리포니아 대학교 버클리와 소스 코드 라이선스 계약을 체결해야 했다.
SMIT은 AIX를 위한 시스템 관리 인터페이스 도구이다. 사용자가 명령줄을 사용하는 대신 명령의 메뉴 계층 구조를 탐색할 수 있게 해준다. 일반적으로 smit 명령을 사용하여 호출한다. 숙련된 시스템 관리자는 F6 기능 키를 사용하여 SMIT가 완료를 위해 호출할 명령줄을 생성한다.
SMIT는 smit.script 파일에 수행된 명령의 로그를 생성한다. smit.script 파일은 사용된 명령 플래그와 매개변수를 자동으로 기록한다. 이 파일은 시스템 구성 작업을 다시 실행하기 위한 실행 가능한 셸 스크립트로 사용할 수 있다. SMIT는 또한 프로그래머가 SMIT 시스템을 확장하는 데 사용할 수 있는 추가적인 상세 정보가 포함된 smit.log 파일을 생성한다.
smit과 smitty는 동일한 프로그램을 가리키지만, smitty는 텍스트 기반 버전을 호출하고, smit은 가능한 경우 X 윈도 시스템 기반 인터페이스를 호출한다. 그러나 smit이 X 윈도 시스템 기능을 사용할 수 없다고 판단하면 실패하지 않고 텍스트 기반 버전을 표시한다. X 윈도 시스템 기능의 결정은 일반적으로 DISPLAY 변수의 존재 여부를 확인하여 수행된다.
데이터베이스
객체 데이터 관리자(ODM)는 AIX에 통합된 시스템 정보 데이터베이스이며, 마이크로소프트 윈도우의 레지스트리와 유사하다. ODM에 대한 이해는 AIX 시스템 관리에 도움이 될 수 있다.
ODM에서 관리되는 데이터는 관련된 속성을 가진 객체로 저장 및 유지 관리된다. ODM과의 상호 작용은 프로그램을 위한 애플리케이션 프로그래밍 인터페이스(API) 라이브러리를 통해, 그리고 셸 스크립트와 사용자를 위한 odmshow, odmget, odmadd, odmchange, odmdelete와 같은 명령줄 유틸리티를 통해 가능하다. SMIT 및 관련 AIX 명령을 사용하여 ODM의 정보를 쿼리하고 수정할 수도 있다. ODM은 버클리 DB 파일을 사용하여 디스크에 저장된다.
12Felton, W. A.; Miller, G. L.; Milner, J. M. (1984). “A UNIX System Implementation for System/370”(PDF). 《AT&T Bell Laboratories Technical Journal》63 (8). 2015년 6월 11일에 원본 문서(PDF)에서 보존된 문서. 2015년 9월 1일에 확인함.
↑“AIX for PS/2”. 《Computerworld: The Newsweekly of Information Systems Management》 (Computerworld): 55. 1988년 2월 22일. ISSN0010-4841. 2017년 2월 27일에 원본 문서에서 보존된 문서. 2016년 5월 18일에 확인함.
↑Scott Vetter, Navdeep Dhaliwal, Ahmed Mashhour, Armin Röll, Liviu Rosca (2020년 2월 4일). 〈Chapter 2.2 AIX Secure boot〉. 《IBM AIX Enhancements and Modernization》. IBM Redbooks. ISBN978-0738458281. 2022년 4월 12일에 원본 문서에서 보존된 문서. 2020년 9월 25일에 확인함. CS1 관리 - 여러 이름 (링크)