오늘 할일
2. 자바공부 끝
3. 모든 과제(데이터베이스, 고급웹프로그래밍) 제출
4. 데이터베이스 혹은 고급웹프로그래밍 공부 시작
오늘 한일
시험 일정 정리. 데이터통신, 운영체제, 자바 / 고급웹 프로그래밍 / 사상의학 / 데이터베이스
5. SK C&C직무체험 자기소개서 작성 및 제출, 교수님에게 공결 문의하기
생성형 AI 직무체험 신청서 & 자기소개서 제출 완료. 공결인정 안해주면 결석할거지만.. 이따 물어봐야징
ㄴ강의 끝나자마자 앞으로 달려갔는데 교수님이 정말 빛의 속도로 칼퇴해버리셨다.
1. 운영체제 공부 끝
다 보긴했는데 5주차와 6주차는 이해 자체가 어렵다.
5주차는 상호배제와 세마포어, 모니터를 다루고 6주차는 IPC에 멀티프로세스, 멀티스레딩, 공유메모리, 파이프, 뮤텍스, 모니터 등을 사용한다.
5주차와 6주차 이전에 멀티프로세싱, 스레딩 등의 개념을 숙지하고
5주차 공유자원 해결방법과 문제점들을 차례로 이해하고
6주차 활용을 봐야할 듯 한데.. 5주차가 가장 어려운 듯 하다.
[4주차]
병행실행과 병렬실행, Concurrent와 Parallel의 차이 이해
암달의 법칙 병행처리율 계산 공식
상호배제(Mutual Exclusion): 임계영역에 다른 프로세스는 못들어간다
병행처리의 흔한 문제인 Producer/Consumer Problem: 사용하려는데 비어있고 넣으려는데 꽉차있네
ㄴ해결: counter변수로 물건제어(race condition가능성), 유한버퍼(순회큐)
[5주차]
상호배제
1. 소프트웨어기반
1-1. 공유변수 1개(prob. Lockstep Synchronization Problem)
1-2. 공유변수 2개(prob. 병렬 진행하여 lock 무시하고 동시작동되어버릴 수 있음)
1-3. 공유변수 2개, 상대 lock풀리길 대기(prob. CPU 두개이상이어서 동시에 lock)
1-4. Dekker's Algorithm으로 공유변수 2개에 turn을 추가적으로 확인
1-5. Peterson's Algorithm으로 좀 더 단순화. turn을 먼저 양보
[6주차]
스레드 내부 통신: 같은 프로세스 공간이니 전역변수
프로세스 간 통신: 하드디스크에 값을 읽고쓰기, 파이프 FIFO를 이용해 통신
네트워크 간 통신: 소켓통신
IPC사례: LPC(Local Procesure Call), APC(Advanced LPC), RPC(Remote Procedure Call)
실제 코드 예제
1. 멀티 프로세스
2. 멀티 스레드
3. 공유 메모리
4. 파이프
5. 뮤텍스
집가서 한번정독해보고.. 이해안되는 부분 명확히해서 내일 질문하쟈...