Computer Science
-
파일 시스템 파일 시스템은 컴퓨터에서 파일이나 자료를 쉽게 발견할 수 있도록, 유지 및 관리하는 방법이다. 저장매체에는 수많은 파일이 있기 때문에, 이런 파일들을 관리하는 방법을 말한다. 시스템 내의 모든 파일에 관한 정보를 제공하는 계층적 디렉토리 구조이며, 파일과 파일의 메타데이터, 디렉토리 정보 등을 관리한다. 파일 시스템의 목적 하드디스크와 메인 메모리 속도 차를 줄일 수 있다. 파일 관리 하드디스크 용량을 효율적으로 이용할 수 있다. 파일 시스템의 기능 및 역할 사용자가 파일을 생성, 삭제, 수정할 수 있게 한다. 여러 사용자가 파일을 공유할 수 있도록 한다. 주기억장치와 보조기억장치 간의 파일 전송을 담당한다. 파일에 대한 백업과 복구를 할 수 있다. 각 응용에 적합한 구조로 파일을 구성할 수..
파일 시스템파일 시스템 파일 시스템은 컴퓨터에서 파일이나 자료를 쉽게 발견할 수 있도록, 유지 및 관리하는 방법이다. 저장매체에는 수많은 파일이 있기 때문에, 이런 파일들을 관리하는 방법을 말한다. 시스템 내의 모든 파일에 관한 정보를 제공하는 계층적 디렉토리 구조이며, 파일과 파일의 메타데이터, 디렉토리 정보 등을 관리한다. 파일 시스템의 목적 하드디스크와 메인 메모리 속도 차를 줄일 수 있다. 파일 관리 하드디스크 용량을 효율적으로 이용할 수 있다. 파일 시스템의 기능 및 역할 사용자가 파일을 생성, 삭제, 수정할 수 있게 한다. 여러 사용자가 파일을 공유할 수 있도록 한다. 주기억장치와 보조기억장치 간의 파일 전송을 담당한다. 파일에 대한 백업과 복구를 할 수 있다. 각 응용에 적합한 구조로 파일을 구성할 수..
2022.10.24 -
페이징 & 세그먼테이션 페이징(Paging) 프로세스의 주소 공간을 고정된 사이즈의 페이지 단위로 나누어 물리적 메모리에 불연속적으로 할당하는 방식 메모리는 Frame이라는 고정크기로 분할되고, 프로세스는 Page라는 고정크기로 분할된다. 페이지와 프레임의 크기가 같다. 페이지와 프레임을 대응시키는 page mapping 과정이 필요하며 paging table을 생성해야 한다. 연속적이지 않은 공간도 활용할 수 있기 때문에 외부 단편화 문제가 해결된다. 페이지 테이블에는 각 페이지 번호와 해당 페이지가 할당된 프레임의 시작 물리 주소를 저장한다. 세그먼테이션(Segmentation) 프로세스를 서로 크기가 다른 논리적인 블록 단위인 세그먼트(Segment)로 분할하여 메모리를 생성한다. 각 세그먼트는 연..
페이징(Paging) & 세그먼테이션(Segmentation)페이징 & 세그먼테이션 페이징(Paging) 프로세스의 주소 공간을 고정된 사이즈의 페이지 단위로 나누어 물리적 메모리에 불연속적으로 할당하는 방식 메모리는 Frame이라는 고정크기로 분할되고, 프로세스는 Page라는 고정크기로 분할된다. 페이지와 프레임의 크기가 같다. 페이지와 프레임을 대응시키는 page mapping 과정이 필요하며 paging table을 생성해야 한다. 연속적이지 않은 공간도 활용할 수 있기 때문에 외부 단편화 문제가 해결된다. 페이지 테이블에는 각 페이지 번호와 해당 페이지가 할당된 프레임의 시작 물리 주소를 저장한다. 세그먼테이션(Segmentation) 프로세스를 서로 크기가 다른 논리적인 블록 단위인 세그먼트(Segment)로 분할하여 메모리를 생성한다. 각 세그먼트는 연..
2022.10.18 -
데드락(Dead-lock, 교착 상태) 개념 운영체제에서 데드락이란, 시스템 자원에 대한 요구가 뒤엉킨 상태를 말한다. 즉, 둘 이상의 프로세스가 다른 프로세스를 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황을 일컫는다. 간단하게 설명하자면, 위 사진처럼 자동차(프로세스)들이 각각의 도로(자원)를 점유한 상태에서 다른 자동차(프로세스)들이 사용하고 있는 도로(자원)를 사용하기 위해 대기하고 있지만, 도로 위에서 이러지도 저러지도 못하는 상황을 예시로 들 수 있다. 발생 조건 교착 상태는 한 시스템 내에서 다음 4가지 조건이 동시에 성립할 때 발생하며, 하나라도 만족하지 않으면 발생하지 않는다. 1. 상호 배제 한 번에 프로세스 하나만 해당 자원을 사용할 수 있다. 사용 중인 자원을 다른 ..
데드락(Dead-lock, 교착 상태)데드락(Dead-lock, 교착 상태) 개념 운영체제에서 데드락이란, 시스템 자원에 대한 요구가 뒤엉킨 상태를 말한다. 즉, 둘 이상의 프로세스가 다른 프로세스를 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황을 일컫는다. 간단하게 설명하자면, 위 사진처럼 자동차(프로세스)들이 각각의 도로(자원)를 점유한 상태에서 다른 자동차(프로세스)들이 사용하고 있는 도로(자원)를 사용하기 위해 대기하고 있지만, 도로 위에서 이러지도 저러지도 못하는 상황을 예시로 들 수 있다. 발생 조건 교착 상태는 한 시스템 내에서 다음 4가지 조건이 동시에 성립할 때 발생하며, 하나라도 만족하지 않으면 발생하지 않는다. 1. 상호 배제 한 번에 프로세스 하나만 해당 자원을 사용할 수 있다. 사용 중인 자원을 다른 ..
2022.10.10 -
@ReqeustBody, @RequestParam, @ModelAttribute @RequestBody 클라이언트가 전송하는 Json(application/json) 형태의 HTTP body 내용을 Java 객체로 변환시켜주는 역할을 한다. 그렇기 때문에 Body가 존재하지 않는 HTTP GET 메서드에 @ReqquestBody를 사용할 경우 에러가 발생하게 된다. 바인딩이 아니라 변환을 시키는 것이기 때문에 변수들의 setter 함수가 없어도 정상적으로 저장된다. @Controller public class TestController { @PostMapping("test") public String name(@RequestBody String name) { } } ex) /test?name=java 만..
@RequestBody, @RequestParam, @ModelAttribute@ReqeustBody, @RequestParam, @ModelAttribute @RequestBody 클라이언트가 전송하는 Json(application/json) 형태의 HTTP body 내용을 Java 객체로 변환시켜주는 역할을 한다. 그렇기 때문에 Body가 존재하지 않는 HTTP GET 메서드에 @ReqquestBody를 사용할 경우 에러가 발생하게 된다. 바인딩이 아니라 변환을 시키는 것이기 때문에 변수들의 setter 함수가 없어도 정상적으로 저장된다. @Controller public class TestController { @PostMapping("test") public String name(@RequestBody String name) { } } ex) /test?name=java 만..
2022.10.03 -
프로세스 간 통신(IPC, Inter-Process Communication) 개념 IPC는 프로세스들 간에 의사소통하는 것을 말한다. 프로세스가 통신 가능하다는 것은 서로 다른 프로세스가 데이터를 주고받을 수 있다는 것이며, 동시에 접근 가능한 메모리 즉, 프로세스들이 공유하는 메모리가 필요하다는 뜻이다. 따라서 컴퓨터 내부에서 보다 효율적으로 정보를 주고받기 위한 통신의 일종이라고 생각하면 되고, 인터넷 통신을 IPC의 확장으로 이해할 수 있다. (프로세스 간 통신이 서버-클라이언트 간 통신과 유시 하기 때문이다.) 종류 1. 공유 메모리(Shared Memory) 공유 메모리가 데이터 자체를 공유하도록 지원하는 설비, 프로세스 간 메모리 영역을 공유해서 사용할 수 있도록 허용한다. 프로세스가 공유 ..
프로세스 간 통신(IPC)프로세스 간 통신(IPC, Inter-Process Communication) 개념 IPC는 프로세스들 간에 의사소통하는 것을 말한다. 프로세스가 통신 가능하다는 것은 서로 다른 프로세스가 데이터를 주고받을 수 있다는 것이며, 동시에 접근 가능한 메모리 즉, 프로세스들이 공유하는 메모리가 필요하다는 뜻이다. 따라서 컴퓨터 내부에서 보다 효율적으로 정보를 주고받기 위한 통신의 일종이라고 생각하면 되고, 인터넷 통신을 IPC의 확장으로 이해할 수 있다. (프로세스 간 통신이 서버-클라이언트 간 통신과 유시 하기 때문이다.) 종류 1. 공유 메모리(Shared Memory) 공유 메모리가 데이터 자체를 공유하도록 지원하는 설비, 프로세스 간 메모리 영역을 공유해서 사용할 수 있도록 허용한다. 프로세스가 공유 ..
2022.10.03 -
RSA & AES & SHA RSA (Ron Rivest, Adi Shamir, Leonard Adleman) 공개 키이며, 비대칭키 - 공개키 암호 시스템의 하나로, 암호화뿐만 아니라 전자서명이 가능한 최초의 알고리즘 RSA의 전자서명 기능은 인증으로 요구하는 전자상거래 등에 RSA의 광범위한 활용을 가능하게 한다. SSL 프로토콜을 가진 웹브라우저, PGP, 공개키 암호화 시스템을 사용하는 정부 시스템에서 사용한다. 모두에게 공개하는 공개키(public key), 공개해서는 안 되는 개인키(private key)가 존재 RSA 암호화 방식 A가 B에게 정보를 안전하게 보내고 싶어 한다. 이때 RSA 알고리즘을 이용하고자 한다. B가 공개키와 개인키를 만들어 A에게 공개키를 보낸다. (개인키는 B만 가..
RSA & AES & SHARSA & AES & SHA RSA (Ron Rivest, Adi Shamir, Leonard Adleman) 공개 키이며, 비대칭키 - 공개키 암호 시스템의 하나로, 암호화뿐만 아니라 전자서명이 가능한 최초의 알고리즘 RSA의 전자서명 기능은 인증으로 요구하는 전자상거래 등에 RSA의 광범위한 활용을 가능하게 한다. SSL 프로토콜을 가진 웹브라우저, PGP, 공개키 암호화 시스템을 사용하는 정부 시스템에서 사용한다. 모두에게 공개하는 공개키(public key), 공개해서는 안 되는 개인키(private key)가 존재 RSA 암호화 방식 A가 B에게 정보를 안전하게 보내고 싶어 한다. 이때 RSA 알고리즘을 이용하고자 한다. B가 공개키와 개인키를 만들어 A에게 공개키를 보낸다. (개인키는 B만 가..
2022.09.23