서버 ?
PC와 구조는 동일하나 CPU, 메모리, 디스크를 좀 더 많이 장착할 수 있어 훨씬 높은 성능과 뛰어난 안정성을 가진 장비
# PCI(Peripheral Component Interconnect) : 컴퓨터 주변 장치를 PC의 마더 보드에 연결하기위한 공통 연결 인터페이스. PCI 슬롯 수를 스펙으로 제시함
# 마더보드(or 메인보드) : CPU나 램과 같은 시스템이 작동되기 위한 주요 부품 장착과 주변 장치를 연결할 수 있는 인터페이스를 제공하는 인쇄회로기판(PCB)
메인프레임 ?
서버보다 먼저 나온 장비로서, 호스트-터미널 구조로 구성되어 단말기(터미널)은 입/출력만, 호스트(메인프레임과 같은 서버)는 컴퓨팅(연산, 저장)을 수행한다.
System 360/370/390 시리즈, Z 시리즈 등이 있다.
지금은 일반 PC에 TN320 프로토콜을 지원하는 에뮬레이터를 통해 메인프레임과 통신한다.
수 많은 사용자와 애플리케이션, 장치를 다수의 사람에게 동시에 지원할 수 있는 컴퓨터이다. 동시성 제어를 위해 다양한 기술을 제공한다.
다만 메인프레임에서 자바를 구동할 때 하드웨어 일부를 전용으로 할당해줘야 하는 등 유연성이 떨어지는 아키텍처를 갖고 있다.
※ Tier 1, 2, 3 아키텍처 구조
- 1티어 : 터미널 — 메인프레임
- 2티어 : 서버 — 클라이언트. 사용자 화면(UI)나 프로그램 처리 등의 비즈니스 로직은 클라이언트에서, 대용량의 배치나 실시간(온라인) 처리는 서버에서 수행
- 3티어 : 클라이언트 — 미들티어 — 데이터서버. 웹브라우저나 클라이언트 머신 상에서 실행되는 애플리케이션을 뜻하는 클라이언트, 웹사이트의 비즈니스 로직을 포함하는 미들티어, 데이터를 갖고 있는(소위 데이터베이스) 데이터 서버로 구성
메인프레임의 장점
- 신뢰성 : 하드웨어와 운영체제 위에 올라가는 서드파티 솔루션까지 검증해서 높은 안정성을 보장한다.
- 안정성 : 과부화 상황에서 처리 성능이나 안정성 저하가 매우 적으며 폐쇄적이기 때문에 보안도 매우 뛰어나다.
- 유연성 : 시스템을 수평적으로 확장할 수 있도록 클러스터링 기술을 제공한다.
*메인프레임에서는 개발 시스템/운영 시스템/검증용 시스템 하나의 장비에서 분리하여 사용하도록 CPU를 갯수대로 나누어 할당하는 파티션 기능(LPAR; Logical Partition)을 제공한다.
메인프레임의 단점
가격이 비싸다.
메인프레임의 동시성 제어 기술
1. 시스템
CF(Coupling Facilty) 장비를 기반으로 두고 여러 메인프레임을 연결하여 하나의 장비처럼 구성한다. CF는 연결된 시스템간의 Lock 정보 관리, 개별 시스템 상호 간의 정합성 보장을 위한 캐시 관리, 데이터 목록 정보 관리를 담당한다.
유닉스환경에서는 CFS라는 솔루션을 통해 제어하는 것을 CF는 하드웨어로 제어하다보니 높은 수준의 동시성 제어나 정합성 유지가 가능하다. CTC(Channel-to-Channel)라는 링크를 통해 데이터를 주고받는데, 노드가 늘어나면 성능 유지를 위해 CF도 같이 증설해야하므로 비용이 비싸다.
유닉스와 리눅스의 MC(Multi Chasis)/SG(Service Guard), 혹은 RHCS(RedHat Cluster Suite)처럼 프라이머리 노드(서버)에 문제가 발생할 시 세컨더리 노드로 대체하는 것이 아니라 여러 서버간의 ‘동시성’을 제어하는 것이다.
2. 정보공유
DASD(Direct Access Storage Device)라는 기술을 통해 CF 내의 다른 메인프레임 장비들이 하나의 스토리지를 공유하도록 한다. 소프트웨어적으로 구현한 오라클의 RAC(Real Application Cluster) 기술과 비슷하다.
메인프레임에서 많이 사용하는 솔루션 중 다른 것으로는 온라인 트랜잭션을 처리하는 CICS도 있다.
파일시스템
일반 Text 파일을 SAM(Sequential Access Method) 파일이라고 부른다. 공식적으로 정의하자면 데이터가 EBCDIC(Extended Binary Coded Decimal Interchange Code)로 작성된 파일, 혹은 DB에서 사용되는 파일이 아닌 것들을 파일이라고 부른다.
데이터베이스
- VSAM(Virtual Storage Accss Method) : SAM에 포인터가 추가된 파일로서 데이터베이스의 중간 형태다.
- IMS(Information Management System) : VSAM에서 한 단계 발전된 계층형 데이터베이스
- DB2 : 지금도 많이 사용되는 관계형 데이터베이스. 유닉스, 리눅스, 윈도우에는 UBD라는 명칭으로 사용된다.
# 프로세스 : '프로그램'은 보조기억장치(하드디스크, SSD)에 존재하며 실행되기를 기다리는 명령어(코드)와 정적인 데이터의 묶음인 반면, 이 프로그램의 명령어와 정적 데이터가 메모리에 적재되면 생명이 있는 '프로세스'가 된다.
# NFS(Network File system) : 네트워크 상에서 파일 시스템을 공유하도록 설계된 파일 시스템의 한종류
# 스플릿 브레인 : 클러스터로 묶여 있는 복수의 노드가 동일한 자원에 대해 서로 자신이 프라이머리로 인식하여 데이터 정합성이 깨지는 현상
'OS > Linux&Unix' 카테고리의 다른 글
[Unix/Linux] GCC / CC 란 무엇인가? (0) | 2022.08.16 |
---|---|
[Unix/Linux] Unix 란 무엇인가? (0) | 2022.08.16 |
[Linux/Unix] Cent OS 란? (0) | 2022.08.11 |
[Unix/Linux] Yum 명령어 / Another app is currently holding the yum lock; waiting for it to exit... 에러 (0) | 2022.08.09 |
[Unix/Linux] 권한 관리 - chown 명령어 (0) | 2022.08.05 |