디스플레이
대부분의 개인 휴대용 기기들은 얇고 전력 소모가 적은 LCD(liquid crystal display)를 사용한다. LCD는 스스로 빛을 내는 대신 통과하는 빛을 제어한다. 전형적인 LCD에는 액체 상태의 막대 모양 분자가 있어서 디스플레이에 들어오는 빛을 굴절시킨다.
터치스크린
터치스크린(touchscreen)을 구현하는 다양한 방법이 있는데 오늘날의 많은 태블릿은 정전용량 감지 기법을 사용한다. 유리 같은 절연체 위에 투명한 도체를 코팅하면, 사람이 손을 댔을 때 손에 전기가 통하기 때문에 스크린의 정전기장이 찌그러지면서 정전용량이 변하게 된다. 이 기술은 여러 군데 동시에 손을 대는 것도 허용하며, 손의 동작까지 감지해서 멋진 사용자 인터페이스를 만들 수 있게도 한다.
상자를 열고
프로세서는 프로그램의 지시대로 일을 하는 부분으로 보드 내에서 가장 역동적인 부분이다. 숫자를 더하고, 검사하고, 입출력 장치에 신호를 보내 작동을 지시하는 것 등이 프로세서가 하는 일이다. 프로세서를 CPU(central processor unit)라는 더 관료적 느낌의 용어로 부르기도 한다.
프로세서는 논리적으로 데이터패스와 제어 유닛의 두 부분으로 구성된다. 데이터패스(datapath)는 연산을 수행하고, 제어 유닛(control unit)은 명령어가 뜻하는 바에 따라 데이터패스, 메모리, 입출력 장치가 할 일을 지시한다.
메모리(memory)는 실행 중인 프로그램과 프로그램이 필요로 하는 데이터를 기억한다. 메모리는 DRAM칩으로 구성되어 있는데, DRAM은 dynamic random access memory의 약자이다. DRAM 여러 개를 한데 묶어서 프로그램의 데이터를 기억하는 데 사용한다. DRAM에서 RAM이란 말은 자기 테이프 같은 순차 접근 메모리와는 반대로 메모리의 어떤 부분을 읽든지 같은 시간이 걸린다는 것을 의미한다.
프로세서 내부에는 또 다른 종류의 메모리가 있는데 이것을 캐시 메모리라 한다. 캐시 메모리(cache memory)는 DRAM의 버퍼 역할을 하는 작고 빠른 메모리이다. 캐시는 SRAM(static random access memory)이라는 다른 메모리 기술을 이용한다. SRAM은 DRAM보다 빠르지만 집적도가 낮아서 가격이 비싸다. SRAM과 DRAM은 메모리 계층구조의 두 계층을 구성한다.
추상화는 설계를 개선하는 위대한 아이디어의 하나이다. 제일 중요한 추상화 중 하나는 하드웨어와 최하위 소프트웨어 간의 인터페이스이다. 소프트웨어는 하드웨어와 어휘를 통해 통신을 한다. 어휘를 구성하는 단어들을 명령어라고 하고, 어휘 자체는 명령어 집합 구조(instruction set architecture)라고 한다. 입출력 작업, 메모리 할당 및 기타 저수준 시스템 기능의 세부 사항은 운영체제가 감추어서 응용 프로그래머가 이러한 세세한 부분을 걱정하지 않아도 되도록 해 주는 것이 일반적이다. 응용 프로그래머에게 제공되는 기본 명령어 집합과 운영체제 인터페이스를 합쳐서 ABI(application binary interface)라 한다.
하드웨어와 소프트웨어는 모두 추상화를 이용하여 계층적으로 구성되며, 각 하위 계층의 세세한 부분이 상위 계층에서는 보이지 않도록 한다. 여러 계층의 추상화 중에서 가장 중요한 것은 하드웨어와 하위 계층 소프트웨어 간의 인터페이스인 명령어 집합 구조이다. 이렇게 인터페이스를 추상화함으로써 같은 소프트웨어를 실행하지만 가격과 성능이 다른 여러 가지 컴퓨터를 구현할 수 있다.
데이터의 안전한 저장소
컴퓨터 내부의 메모리는 휘발성 메모리(volatile memory)이기 때문에 컴퓨터 안에 저장된 내용은 전원이 끊어지면 다 없어진다. 반면에 DVD는 비휘발성 메모리(nonvolatile memory)로 DVD에 기록된 영화는 DVD 플레이어의 전원을 꺼도 지워지지 않는다.
실행되는 동안 데이터와 프로그램을 기억하는 휘발성 메모리와 다음번 실행 때까지 데이터와 프로그램을 저장하는 비휘발성 메모리를 구분하기 위해, 전자를 메인 메모리(main memory)라고 하고 후자를 보조기억장치(secondary memory)라고 한다. 보조기억장치는 메모리 계층구조에서 메인 메모리보다 한 단계 아래 계층에 해당한다.
플래시 메모리(falsh memory)는 DRAM보다 느리지만 DRAM보다 훨씬 싸고 비휘발성이라는 장점이 있다. 디스크보다 비트당 단가는 비싸지만, 작고 튼튼하며 전력 소모가 적고 훨씬 소용량으로 생산될 수 있다. 하지만 플래시 메모리는 100,000번 내지 1,000,000번 쓰기를 한 후에는 못 쓰게 된다. 그러므로 파일 시스템은 쓰기의 횟수를 파악하여 저장 기능이 상실되는 것을 피하도록 많이 사용되는 데이터를 이동시키는 등의 정책을 사용하여야 한다.
컴퓨터 간의 통신
컴퓨터 네트워크를 통해서 컴퓨터 전체가 서로 연결되어 사용자의 계산 능력을 확장시켜 준다. 네트워크는 현대 컴퓨터 시스템의 중추가 될 만큼 널리 보급되었다. 네트워크로 컴퓨터들을 연결하면 다음과 같은 장점이 있다.
- 통신 : 컴퓨터끼리 고속으로 정보를 주고받을 수 있다.
- 자원 공유 : 컴퓨터마다 입출력 장치를 따로따로 갖출 필요 없이 네트워크 상의 모든 컴퓨터가 입출력 장치를 공유할 수 있다.
- 원격 접근 : 컴퓨터들을 연결하면 멀리 떨어져 있는 컴퓨터도 쉽게 이용할 수 있다.
네트워크의 연결 거리와 성능은 여러 가지이나, 통신 속도가 빨라지거나 전송 거리가 멀어질 때 통신비용이 상승하는 것은 어느 경우에도 공통이다. 이더넷(Ethernet)으로 연결할 수 있는 거리는 대략 1km 정도이고, 초당 100GB를 전송할 수 있다. 이런 정도의 길이와 속도는 한 건물의 같은 층에 있는 컴퓨터들을 연결하는 데 유용하다. 그러므로 이더넷은 근거리 네트워크(local area network, LAN)의 일종이다. 라우팅 서비스와 보안을 제공하는 스위치를 사용하면 LAN들을 서로 연결할 수 있다. 원거리 네트워크(wide area network, WAN)는 여러 대륙을 연결하여 웹(World Wide Web)을 지원하는 인터넷(Internet)의 근간을 이룬다. 이런 네트워크는 보통 광섬유(optical fiber)로 구성하며 통신회사에서 임대해 준다.