- OS의 개념과 기능에 따른 목적을 이해한다.
- OS의 구성을 파악한다.
- 커널
- System Call
- 드라이버
- 인터페이스
- OS의 작동 방식을 이해한다.
- OS : 컴퓨터 사용자와 컴퓨터 하드웨어 사이의 인터페이스
- 하드웨어를 관리하며, 각종 소프트웨어가 작동할 수 있는 환경을 제공한다.
OS 기능 및 목적
- 사용자가 컴퓨터를 편하게 이용할 수 있도록 한다.
- 키보드/마우스 등의 하드웨어 인터페이스, GUI 제공
- 컴퓨터의 자원이 효율적으로 사용되게 한다.
- Process Management : 컴퓨터 작업 관리
- Memory Management
- Storage Management
- Protection and Security
- 이러한 기능을 통해, OS는 다음과같은 목적을 이룬다.
- 처리 능력 향상
- 응답 시간 단축
- 신뢰도 향상
- 사용 가능도 향상
- 운영체제는 커널과 인터페이스로 이루어져 있다.
- 커널 : 위에서 설명한 핵심적인 기능들을 담당한다.
- System Call : 시스템의 안전을 위해, 자원에 직접적인 접근을 차단하고 사용자의 요청을 받아 처리한다.
- 드라이버 : 커널과 하드웨어의 인터페이스를 제공한다.
- 인터페이스 : 사용자의 요청을 커널에 전달하고, 사용자에게 응답을 보여준다.
- 일괄처리 방식 : 작업을 한 번에 하나씩 순서대로 처리한다.
- Multi-Programming 방식 : 여러 작업을 메모리에 올려놓고, CPU를 나누어 사용한다.
- Time-Sharing 방식 : 여러 명의 사용자가 CPU를 돌아가면서 사용한다.
- Multi-Processing 방식 : 여러 개의 CPU를 사용하여 여러 작업이 동시에 진행된다.
- Real-Time 방식 : 데이터를 짧은 시간 안에 처리하여 응답한다.
- 분산 처리 방식 : 각 시스템이 각자의 OS를 가져 독립적으로 운영하고, 필요할 때 통신한다.
인터넷
인터넷 작동 원리HTTP란?브라우저 동작 원리DNS 작동 원리도메인 네임이란?호스팅이란?
기본적인 프론트엔드 지식HTMLCSSJavaScript
OS 및 일반적인 지식터미널 사용방법OS 작동 방식- 프로세스 관리
- 스레드와 동시성
- 기본적인 터미널 명령어
- 메모리 관리
- 프로세스간 통신 (IPC)
- 입출력 관리
- POSIX 기초
- 기본적인 네트워크 개념
버전 관리- Git 기본 사용법
DataBase- PostgreSQL (변경 가능성 있음)
- MongoDB
DataBase 상세 정보- ORM
- ACID
- Transaction
- N + 1 Problem
- DataBase 정규화
- Index와 작동 방식
API- 인증
- REST
- JSON APIs
캐싱- CDN
- Server side
- Client side
웹 보안 지식- MD5, SHA family, scyrpt, bcrypt
- HTTPS, CORS, SSL/TL, 보안 정책
Testing- 통합 테스트
- 단위 테스트
- 기능 테스트
- CI/CD
개발과 설계 원칙- SOLID
- KISS
- YAGNI
- DRY
아키텍처 패턴- 모놀로틱 앱
- 마이크로서비스
- SQA
- Serverless
검색 엔진- ElasticSearch
메세지 브로커- RabbitMQ, Kafka
컨테이너화 vs 가상화- Docker
GraphQL- Apollo
- 웹 소켓
- 웹 서버
확장성- 측정, 모니터링, 원격측정
- 마이그레이션 전략
- 수평적 확장 vs 수직적 확장
- 관찰 가능성을 고려한 확장