Home
Jia's Blog
Cancel

입출력 장치

주변장치 주변장치는 메인보드의 버스와 연결된다. 하나의 버스는 Address, Data, Control 버스로 이루어져 있고 I/O(입출력) 디바이스는 이 세가지 버스를 따로 받을 수 있다. 각 하드웨어에 맞게 외부 인터페이스가 존재한다. 장치의 상태와 데이터를 보관하는 레지스터들이 존재한...

가상 메모리 2

디멘트 페이징(가져오기 정책) 바탕이 되는 지역성 이론 도널드 커누스의 90:10 - 프로그램 실행시, 90%의 시간이 10%의 코드에서 보내는 것 - 지역성 이론 (여기서 지역성이란?) - 1) 공간의 지역성 : 현재 위치에서 가까운 데이터에 접근할 확률이 높다. - 2) 시간의 지역성: 최근 접근했던 데이터가 예전에 접근했던 데...

가상 메모리 1

개요 : 컴퓨터마다 메모리용량은 다르고, 프로그램이 필요로 하는 메모리만큼 컴퓨터가 가지고 있지않다면 프로그램을 실행하지 못한다. -> 가상메모리가 해결한다. 프로세스는 물리메모리의 어느 주소에서 실행될지 고민할 필요가 없다. 메모리 관리자에게 요청을 하면 메모리 관리자가 알아서 메모리에 할당해 주기 때문에 언제나 0x0 번지에서 실행된다고 생...

개발자 물경력 탈출 비밀 노하우

웨비나 강의를 추천받아서 우연한 기회로 듣게 되었다. 생각보다 길잡이가 되어준 말들도 있었고, 생각해보지 못했던 부분들도 있어서 아래와 같이 정리해보았다. 23년 어떻게 공부하는게 좋을지에 대해 좀 더 명확해진 것 같다. 물경력 극복하는 방법 물경력이 되는 이유 자체기술을 사용한다. 낡은 기술이나 유행이 지난 기술을 쓴다. ex) ph...

Session과 JWT

JWT와 세션 : 한 번 로그인을 진행한 이후로는 계속해서 로그인 상태가 되도록 상태를 유지시켜야 한다. 이때 사용하는 기술이 JWT와 세션이다. 입장권으로 비유하자면, 세션은 입장권에 쓰여있는 정보가 많지 않고, 고유번호 정도이기때문에 실제DB혹은 메모리에서 정보를 확인해서 로그인 시킨다. JWT(Jason Web Token)는 입장권에 쓰여있...

메모리

메모리의 종류 아래쪽으로 갈수록 속도는 느려지고, 용량은 커지고, 가격은 싸진다. 레지스터 가장 빠르고 CPU내에 존재한다. 컴퓨터가 꺼지면 데이터가 사라진다.(휘발성 메모리) EX) 32bit CPU (= 32bit 레지스터인 CPU) 메인...

중간정리

컴파일과 프로세스 프로그래밍 언어 컴파일 언어 개발자가 프로그래밍 언어로 개발 -> 컴파일 -> 0과1로 이루어진 실행파일 생성 컴파일 과정에서 개발자의 문법오류를 체크하고 CPU 에서 실행파일로 미리 만들기 때문에 속도가 빠르다. EX) C, C...

데드락

데드락(교착상태) : 여러 프로세스가 서로 다른 프로세스의 작업이 끝나기를 기다리다가 아무도 작업을 진행하지 못하는 상태로 즉, 멈춰있는 상태이다. 공유자원 때문에 발생한다. 교착상태의 필요조건 상호배제 한 프로세스에게 공유자원이 할당되었다면 다른 프로세스는 사용하지 않는다. ...

프로세스 동기화

프로세스 간 통신 프로세스는 독립적으로 실행되지만 다른 프로세스와 통신을 할수도 있다. 한 컴퓨터 내에서 프로세스간 통신 파일로 통신한다 : 하나의 파일을 여러개의 프로세스가 읽고 쓰는 방법 파이프로 통신한다 : 운영체제가 만든 파이프를 통해 프로세스가 읽고 쓴다. 쓰레드를 이용해서 통신 ...

CPU 스케줄링

CPU스케줄링 개요 컴퓨터는 필수장치(CPU, 메모리)와 주변장치(하드디스크, 키보드, 마우스)로 이루어져있다. 프로그램 실행 -> 메모리에 프로세스가 올라감 -> 각 프로세스마다 하나 이상의 쓰레드가 존재 -> 쓰레드는 CPU를 차지하기 위해 운영체제의 명령을 기다리고 있음 CPU스케줄링: 운영체제가 모든 프로세스에 CPU를 ...