본문 바로가기

전체 글96

Scheduling 1 저번 글은 시스템 프로그래밍에서도 대부분 다뤘던 내용이라서 중간에 급하게 끝냈었다. 프로세스나 쓰레드는 CPU 자원을 공유하여 프로그램이 동시에 실행되는 것 같은 효과를 얻는다고 했었다. 이 글에서는 어떻게 CPU를 잘 사용하여 전체 시스템에 이로운 방향으로 갈 수 있는지 알아볼 것이다. CPU Scheduling 프로세스를 전환할 때 두 가지에 대해 생각해야 하는데 하나는 컨텍스트 스위칭 같이 '어떻게' 전환할 것인가(메커니즘)이고 다른 하나는 언제 전환할 것인가(정책)이다. CPU 스케줄링은 실행 가능한 프로세스 집합을 제공하여 다음에 실행할 프로세스를 결정하는 정책이다. 이것에 대해 어떻게 접근할지 살펴보자. Basic Approaches Non-preemptive scheduling 여기서 pre.. 2022. 4. 7.
재무제표 저번 시간에는 회계순환과정을 통해 거래가 어떤 과정을 통해 재무제표에 기록되는지 알아봤다. 재무제표는 기업의 경영성과를 보여주는 문서이다. 이번 글에서는 이런 재무제표를 구성하는 문서 중 해당 과목에서 자세히 다루는 재무상태표, 손익계산서에 대해 알아볼 것이다. 재무상태표는 보통 다음과 같이 구성된다. 재무상태표: 회계기말 현재의 재무상태를 나타낸 보고서 포괄손익계산서: 한 회계기간 동안의 포괄적인 경영성과를 나타낸 보고서 현금흐름표: 한 회계기간 동안의 현금의 증감 내역을 나타낸 보고서 자본변동표: 한 회계기간 도안 이익잉여금을 포함하여 각 자본 항목의 변동을 요약적으로 보여주는 보고서 주석: 재무제표의 본문을 이해하는데 필요한 정성적인 내용과 세부적인 수치를 보충적으로 보여주는 보고서 재무상태표의 요.. 2022. 3. 28.
Processes & Threads 오늘 배울 내용은 프로세스에 관한 내용이다. 시스템 프로그래밍(참고)에서도 다뤘던 주제인지라 겹치는 내용이 꽤 있기 때문에 어느정도 진행하다가 뒷 내용은 생략할 것이다. What is a Process? 프로세스라는 말은 컴퓨터를 하면서 많이 접해봤을 것이다. 가령 프로그램이 먹통일 때 ctrl+alt+del을 눌러서 작업 관리자로 들어가 '프로세스' 탭에서 프로그램을 강제 종료할 때도 이를 볼 수 있다. 이와 연관지어 생각해보면 프로세스는 프로그램 실행의 단위라고 이해할 수도 있겠다. 그렇기 때문에 OS에서 관리하는 protection의 기본 단위이다. 또한 각 프로세스를 인식해야 하기에 프로세스는 PID라는 id로 인식된다. 이러한 프로세스에는 CPU 컨텍스트(레지스터 등 프로세스를 실행하고 있는 C.. 2022. 3. 24.
회계순환과정 2 이 글에서는 저번 글에서 배웠던 회계순환과정을 예시를 통해 이해하여 볼 것이다. 분개 삼진주식회사에서 발생한 거래 내용을 fig 1에서 확인할 수 있다.우선 1)~9)까지의 거래를 분개의 원리에 따라 분석해보자. 다음과 같은 내용이 분개장에 기록되어야 할 것이다. 1)에서는 자본금을 마련하여 현금 10,000원을 마련했으므로 차변에는 현금(자산 증가) 10,000이 적히고, 대변에는 자본금(자본 증가) 10,000원이 적힐 것이다. 2)에서는 현금 5,000원을 소비하여 건물을 구입하였으므로 차변에는 건물(자산 증가) 5,000원이 적히고, 대변에는 현금(자산 감소) 5,000이 적힐 것이다. 3)에서는 대출을 통해 현금 8,000원을 마련했으므로 차변에는 현금(자산 증가) 8,000원이 적히고, 대변에.. 2022. 3. 24.