학습/Computer Science(12)
-
웹 서버(Web Server)와 웹 애플리케이션 서버(Web Application Server)
웹 서버(Web Server)와 웹 애플리케이션 서버(Web Application Server)는 웹 기반 애플리케이션에 있어서 핵심 구성 요소입니다. 두 서버 모두 웹 클라이언트와 서버 간의 정보를 주고받습니다. 웹 서버(Web Server) 웹 서버는 HTTP 프로토콜을 통해 웹 브라우저(클라이언트)로부터 요청을 받아 정적인 자료 (HTML, CSS, 이미지, 자바스크립트 등)를 제공하는 서버입니다. 웹 서버의 대표적인 예로는 Apache, Nginx, Microsoft IIS 등이 있습니다. 웹 애플리케이션 서버(Web Application Server) 웹 애플리케이션 서버는 동적 자료와 서비스를 생성하기 위해 웹 서버와 연동되며, 서버 사이드 스크립트나 프로그램 실행을 지원합니다. 이러한 웹 애..
2023.06.15 -
트랜잭션(transaction) 제어
트랜잭션 제어 트랜잭션 정의 DB를 조작하는 논리적 연산들(주로 DML)이 하나 이상 모인 단위 작업 분해할 수 없는 최소 단위로, 트랜잭션의 완료 및 회복의 기준 단위 DB관리 시스템은 트랜잭션이 성공과 실패가 분명하고 상호 독립적이며, 일관되고 믿을 수 있는 시스템을 의미 트랜잭션 특징 원자성(Atomicitiy) : 모든 연산이 수행되거나 하나도 수행되지 말아야 함 일관성(Consistency) : 시스템 고정 요소는 트랜잭션 이후에도 같아야 함 고립성(Isolation) : 트랜잭션 실행 도중 다른 트랜잭션의 영향을 받지 않아야함 지속성(Durability) : 트랜잭션의 결과는 항상 유지(영구 반영) 되어야 함 트랜잭션 상태 제어 트랜잭션은 수행 즉시 반영되는 것이 아니므로 진행 상황에 따라 다..
2023.06.14 -
객체 지향 기술의 구성 요소
객체 지향 기술의 구성 요소 클래스(Class) 객체의 타입을 정의하고 구현(Instantiation) 하는 틀(Frame) 유사한 성격을 가진 객체들의 공통된 특성을 추상화한 단위이다. 객체가 가지는 속성과 객체가 수행하는 메소드를 정의한 것이다. C언어의 구조체와 구조체를 연산하는 함수를 하나로 묶어 발전시킨 것이다. 객체 (Object) 클래스에 의해 구현된 각각의 대상들을 총칭하는 것이다. 객체마다 고유한 속성을 가지며 클래스에서 정의한 메소드 수행이 가능하다. 인스턴스(Instance) 특정 클래스에 의해 구현된 (좁은 범위의) 객체 메세지(Message) 객체 간 통신 (상호작용)을 위해 서로 주고받는 인터페이스 객체들은 요청 메세지를 통해 메소드 수행을 시작 메소드(Method) 요청 메세지..
2023.06.14 -
CS - 가상메모리
질문 예시 1. 가상 메모리의 관리 정책은 어떤 것들이 있나요? 2. 가상 메모리 페이징 기법의 유형에 대해서 설명보세요. 3. 가상 메모리의 페이지 교체 알고리즘 3개만 설명해보세요. 4. TLB(Translation Lookaside Buffer)란 무엇인지요? 가상메모리 주기억장치 안의 프로그램 양이 많아질 때 사용하지 않는 프로그램을 보조기억장치 안의 특별한 영역으로 옮겨서, 그 보조기억장치 부분을 주기억장치처럼 사용할 수 있는데 이 때 사용하는 보조기억장치의 일부분을 가상기억장치라고 함. 가상메모리의 장점 1. 사용자 프로그램이 물리 메모리의 제약에서 벗어남 => 사용자 프로그램이 물리 메모리보다 커져도 됨. 프로그래머는 물리 메모리 크기를 신경쓰지 않아도 되기 때문에 실제 해결하고자 하는 문제..
2023.05.29 -
CS - Linux) Linux 리눅스 기본
질문 예시 Linux의 구성요소 Linux의 기본 디렉토리 구조 Linux의 퍼미션 값 틀 Linux 보안 설정에서 권장하는 UMASK 022는 무엇이고 이유는? Linux 개요 Linux는 1991년 Linus Torvals가 개발. Unix 운영체제를 기반으로 만들어진 유닉스의 클론 운영체제라 할 수 있음. Unix와 마찬가지로 다중 사용자, 다중작업 다중 스레드를 지원하는 네트워크 운영체제를 의미 Linux는 자유 소프트 라이센스로 누구나 소스코드를 활용, 수정 및 재배포가 가능해서 지속적인 업그레이드가 이루어진다. 리눅스 커널, GNU소프트웨어 및 여러가지 자유 소프트웨어로 구성된 운영체제로 현재 전 세계적으로 300여가지의 배포판이 존재한다. 리눅스 배포판은 사용자에 따라 결정할 수 있는 폭이 ..
2023.05.22 -
OS(Operating System) 정리
기초 CS OS(Operating System) 주요 기능 OS의 커널 OS의 종류 OS의 개념 - 컴퓨터 리소스를 효율적 관리, 사용자가 컴퓨터를 효과적으로 사용할 수 있도록 환경을 제공하는 System SW OS는 자원의 성격에 따라 크게 4가지 서브시스템으로 나눌 수 있다. 1. 프로세스 관리자 2. 메모리 관리자 3. 파일 관리자 4. 장치 관리자 기능으로 분류하면 1. 프로세스 관리 - 프로세스 생성, 삭제, 일시 중지 및 재개, 스케쥴링 2. 메모리 관리 - 메모리를 구성하고 할당, 해제, 가상메모리 관리 등 3. 파일 시스템 관리 - 파일 CRUD, 디스크 공간 할당과 사용 관리 4. 입출력 관리 - 하드웨어와 SW 사이의 데이터 교환을 관리, 드라이버와 상호 작용하여 장치 제어를 수행 5...
2023.05.22