전체 글

주로 개발에 대한 이야기들 Spring Kotlin k8s DB
· Developer/OS
모니터세마포의 단점을 개선하기 위해 조금 더 캡슐화하여 프로그래머가 정의한 ADTcf> 세마포의 단점?1. wait()가 와야되는데 , signal()이 옴 = 여러 프로세스들이 임계구역에 접근2. signal()이 와야되는데, wait()가 옴 = 교착상태에 빠짐 ● Monitor 구조 예시 12345678class monitor{ public: void procedure(); void function(); private: int count;};cs 하지만, 모니터 역시 세마포와 똑같은 단점들이 존재한다. ○ 프로세스가 자원에 대한 허락을 받지 않고 자원에 엑세스한 경우○ 프로세스가 자원에 대한 허락을 받은 다음 그 자원을 방출하지 않은 경우○ 프로세스가 자원에 대한 허락을 받지 않았는데도 그 자원을 ..
· Developer/OS
공동구역? 프로세스는 여러 가지 쓰레드로 나뉠 수 있다. 여러 개로 나뉘어지는 쓰레드 중에서 자원을 공유할 수 있게 되는데,이에 대한 처리가 너무너무너무너무 중요하다. int a = 2; while(1) {} int b = 3; while(1) {} int c = 4; while(1) {} 쓰레드1 쓰레드2 쓰레드3 프로세스(공유 자원)Critical Area= 임계구역, 각각의 쓰레드가 공통으로 사용하는 프로세스의 자원○ 이에 대한 동기화 작업이 이뤄지지 않으면, 치명적인 결함으로 이루어질 수 있다. 1. Mutual Exclusion(상호 베타) : 데이터는 반드시 한 순간에 하나의 쓰레드만 이용해야 한다.2. Progress(진행) : 쓰레드 사이에서 누가 먼저 접근할 것인가를 정해진 시간내에 결정..
· Developer/OS
What is Process? Process는 CPU에 의해 처리되는 program이다. = 실행중인 program Process의 구조프로세스는 다음과 같은 자원들이 필요하다.● CPU : PC, SP.. 같은 레지스터들● Memory의 영역들(낮은->높은 주소순)- Text 영역 : 프로그램 코드들- Data 영역 : 전역 변수들- Heap 영역 : 동적할당된 것들- stack 영역 : 지역 변수, 매개변수 등 Kernel 4GB Stack Heap bss data text 0 ● I/O 정보 : 장치를 포함한 open된 파일들Process의 상태와 전이 1. new : 프로세스가 막 만들어진 상태 2. ready : 프로세스가 메모리로 올라간 상태3. running : ready..
· Developer/OS
Operation System? 1. 사용자에게 프로그램을 실행할 수 있는 기반을 만들어주고,2. 하드웨어를 효율적으로 사용할 수 있게 다양한 기능을 제공하는 소프트웨어이다. 그의 역할은 도덕책?○ 제어 역할 : 다른 프로그램을 작업할 수 있는 환경 제공 ○ 자원 할당 : 컴퓨터 시스템의 자원을 효율적으로 분배○ IO program : 시스템에 대한 오류 발생을 방지 그럼 기능은 무엇이냐?1. 자원 관리 -> Memory, Process, File, Data ... etc2. 시스템 관리 -> 권한부여, Communication, command interpreter유형에는 어떤게 있나요?● 일괄처리 시스템(Batch processing system) - 일정기간 동안 데이터를 모두 모아서 한꺼번에 처리하..
huisam
천천히 올바르게