2진법, 16진법에 대한 이해, 문자열을 다루는 방법과 운영체제의 프로세스, 스레드 개념을 학습합니다.
현대의 웹 서비스에서 쓰이는 캐싱 기법과 종류에 대해서 학습합니다.
2010년 이후, 유니코드라고 불리는 인코딩 방식이 통일된 시대를 살아가고 있습니다. 프로그래밍 언어마다 문자열을 다루는 자료형의 차이를 이해하기 위해 문자열을 다루는 기본적인 방식은 알고 있어야 합니다.
전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준입니다. ISO 10646 문자 집합, 문자 인코딩, 문자 정보 데이터베이스, 문자를 다루기 위한 알고리즘 등을 포함하고 있습니다.
어떤 문자나 기호를 컴퓨터가 이용할 수 있는 신호로 만드는 것입니다.
인코딩과 문자를 해독하는 디코딩을 하기 위해 미리 정해진 기준을 바탕으로 입력과 해독이 처리되어야 합니다.
(디코딩과 인코딩의 기준을 문자열 세트 또는 문자셋(charset)이라고 합니다. 국제 표준이 바로 유니코드입니다.)
영문 알파벳을 사용하는 대표적인 문자 인코딩으로 7비트로 모든 영어 알파벳을 표현할 수 있습니다. 52개의 영문 알파벳 대소문자와, 10개의 숫자, 32개의 특수문자, 하나의 공백 문자를 포함합니다.
(유니코드는 ASCII를 확장한 형태입니다.)
인코딩 방식의 차이를 의미합니다. Universal Coded Character Set Transformation Format - 8 bit의 약자로, UTF - 뒤에 등장하는 숫자는 비트(bit)입니다.
네트워크를 통해 전송되는 텍스트는 주로 UTF-8 인코딩입니다.
UTF-16에 비해 바이트 순서를 따지지 않고, 순서가 정해져 있습니다.
하드웨어에게 일을 시키는 주체가 운영체제 입니다.
운영체제가 없다면, 응용 프로그램이 실행될 수 없습니다. 응용 프로그램은 컴퓨터를 이용해 다양한 작업을 하는 것이 목적이고, 운영체제는 응용 프로그램이 하드웨어에게 일을 시킬 수 있도록 도와줍니다.
하드웨어를 구성하는 일을 하는 CPU, 자료를 저장하는 RAM, 디스크 등의 시스템 자원을 관리하는 주체가 운영체제입니다.
응용 프로그램이 실행되고, 시스템 자원을 사용할 수 있도록 권한과 사용자를 관리합니다.
응용 프로그램이 운영체제를 통해 컴퓨터에게 일을 시키려면, 컴퓨터를 조작할 수 있는 권한을 운영체제로부터 부여받아야 합니다.
권한을 부여받고 난 후에 운영체제가 제공하는 기능을 이용할 수 있습니다. 응용 프로그램이 운영체제와 소통하기 위해서는, 운영체제가 응용 프로그램을 위해 인터페이스 (API)를 제공해야 합니다.
운영체제 차원에서 다양한 함수를 제공하는 것을 시스템 콜(System Call)이라고 부릅니다.
ex) 운영체제가 프린터 사용을 허가해 주지 않는다면 사용할 수 없습니다.
워드프로세서 프로그램도 운영체제로ㅗ부터 프린터 사용에 대한 권한을 부여받아야 합니다.