목록분류 전체보기 (22)
Be realist
여러 프로세스가 병행으로 수행되어 발생하는 문제를 해결하는 것을 프로세스 동기화라 한다. 다른 프로세스와 공동으로 사용하는 변수, 테이블, 파일 등을 변경하는 부분을 임계 구역(critical section)으로 둔다. 각 프로세스는 임계구역에 진입하기 전에 허가를 받아야 하고, 이 코드를 진입 구역(entry section)이라 한다. 허가를 받아 임계구역을 실행한 다음에는 다른 프로세스들이 진입할 수 있도록 한다. 이 코드를 출구 구역(exit section)이라 한다. 이외의 코드 부분을 잔류 구역(remainder section)이라 한다. critical section 문제를 해결하는 메커니즘은 다음 세 가지 요건을 충족해야 한다. - 상호 배제 (mutual exclusive) - 진행 (pr..
스레드는 프로세스와 마찬가지로 CPU의 작업 단위. (경량 프로세스 라고도 불린다) 스레드는 자원의 관리보다는 프로그램의 하나의 실행 흐름으로서 CPU가 실행되기 위해 스케줄되어야 하는 개체이다. 스레드 식별자, 프로그램 카운터, 레지스터 집합, 스택만을 가지며, 텍스트 부분, 데이터 부분, 다른 운영체제 자원은 같은 프로세스에 속한 다른 스레드와 공유한다. 하나의 프로세스에서 병행 수행되는 스레드 : 주소 공간과 같은 자원을 서로 공유 하나의 컴퓨터에서 병행 수행되는 프로세스 : 물리적 메모리, 디스크 등을 공유 모든 프로그램을 다중 스레드를 사용하도록 바꾼다고 하여 성능이 향상되는 것은 아니다. 스레드의 도입으로 한 응용프로그램에서 여러 가지 일을 동시에 수행할 수 있다. 각 일을 처리하기 위해 자식..
프로세스의 구성 텍스트 -> 프로그램 코드 현재 상태 -> 프로그램 카운터 등 현재 프로세서의 레지스터 값 스택 -> 일시 데이터(파라미터, 복귀주소, 지역변수 등) 저장 데이터 부분 -> 광역 변수 저장 프로그램 자체는 프로세스가 아님! 여러 프로세스가 같은 프로그램과 관련되어 있어도 서로 같은 것으로 간주하지 않는다. 프로세스 상태도 숙지, 유닉스 프로세스의 상태도(참고) 단일 프로세스 시스템에서는 현재 실행 상태에 있을 수 있는 프로세스는 오직 하나 뿐! 하지만, 많은 프로세스가 대기 또는 준비완료 상태에 있을 수 있다. 대기중인 프로세스는 현재 프로세서가 실행할 프로세스가 없더라도 실행될 수 없다. PCB 프로세스 제어 블록에는 다음과 같은 정보들이 유지된다. - 프로세스 상태 : 생성중, 실행중..
컴퓨터 시스템 구조 CPU, 여러 개의 장치 제어기로 구성되어있다. (공유된 주기억장치에 접근을 제공하는 공통 버스에 의해 연결되어있다) ROM에 저장되어 있는 부트스트랩 프로그램은 모든 하드웨어를 초기화하고 운영체제 커널을 주기억장치에 적재한 후에 커널을 실행한다.
운영체제란? 컴퓨터 하드웨어를 관리 응용프로그램의 토대를 제공 유저와 하드웨어 사이의 매개체 컴퓨터 시스템의 구성요소 -> 하드웨어, 운영체제, 응용프로그램, 사용자 (그림으로 기억하기) 운영체제 범위에 대한 정의 -> 항상 수행되고 있는 유일한 프로그램 (커널) 운영체제는 사용자 관점 시스템 관점(자원 할당자, 제어 프로그램) 두 가지로 바라볼 수 있다. 운영체제의 목표 사용자에게 편리성 제공 컴퓨터 시스템의 효율적 운영(자원 할당, 프로그램 제어) 메인프레임 시스템 - 일괄(batch)처리 시스템 사용자가 직접 시스템을 사용하는 것이 아닌, 전문 컴퓨터 운영자에게 프로그램과 데이터를 펀치 카드를 통해 제공.프로그램은 한 번에 하나씩 수행되었고, 운영체제는 하나의 작업을 다음 작업으로 옮기는 제어를 담..
4.16(월) 등:원암덤벨로우케이블 원암로우바벨로우비하인드렛풀다운데드리프트 전체 워밍업 2세트, 메인무게 3-5세트 + 레그레이즈, 크런치 5세트 달리기 3KM 4.17(화) P. T Feedback 마사지볼 갖고다니면서 최대한 매일, 길게 목근육과 승모근 풀어준다. 운동할 수 있는 상태를 만드는 게 우선! 가슴: 벤치프레스 (빈봉->30kg->40kg->30kg) 인클라인덤벨 (5kg->8kg) (팔꿈치 윗가슴선에 맞추기, 밀 때 팔 억지로 모으지 않아도 된다, 각도 신경쓰기) 어깨: 사이드레이즈, 프론트레이즈 3kg로 펌핑 이지바 or 경량바벨 좁게 잡고 프론트레이즈 2,3세트로 펌핑 좁은 프론트레이즈 + 숄더프레스 10회 묶어서 (혼자 무게 견디기 힘들 때는 푸시프레스, 내려갈 때는 버티기) 삼두:..
[3주차] 4.9(월) 오랜만의 운동 등: 원암덤벨로우 (5kg -> 7kg -> 9kg) 렛풀다운 (15kg) 데드리프트 (메인 35kg) 달리기는 2KM 가볍게 (시간부족) 4.10(화) P. T 어깨, 이두, 삼두 (파워트레이닝): 2,3kg 덤벨로 사이드,프론트레이즈 및 스탠딩 프레스 섞어서 5분-10분정도 펌핑 메인운동은 시티드 덤벨 숄더프레스 (최대 9-11kg) 15개무게 2-3세트 —> 메인 5-7개 3-5세트 스탠딩 덤벨컬 3kg -> 5kg 덤벨 숄더프레스 5kg 덤벨컬 + 아놀드프레스 5-7kg (자세 틀어지는 무게 되면 한쪽식 번갈아 2세트, 한손만으로 2세트) 케이블머신 (로프,스트레이트바)이용하여 삼두운동 딥스 3세트 최대개수로 마무리. 달리기 3.6KM 4.11(수) 하체 레그..
나는 사실 무엇이든 나중으로 미루는 나쁜 버릇을 가졌다. 과제를 하는 데에 1주일이 주어져도 꼭 전날 혹은 당일 시작하는데 결국 그 습관 때문에 지금도 이틀을 합친 수면시간이 4시간 남짓이다. 그것도 랩실 의자에서.. 나중에 이 생고생을 떠올리면, 다시 반복하기 싫어서라도 이제부터는 미리미리 하지 않을까..? 하는 실낱같은 기대감을 가져본다. 블로그에는 많이 들어오게 될 테니, 이 글도 자주 눈에 걸리지 않을까. 기회가 될 때마다 미룸을 극복한다는 생각 한번 더 심어줘야겠다 싶어 포스팅하게 되었다. 시간 관리를 넘어 : 우리가 할 일을 미루는 진짜 이유와 그를 극복하는 방법 (요약글) 할 일을 미루는 행동은 피하고자 하는 무언가에 대한 감정적 반응이라고 한다. 1. 무엇이든 미루고 있는 일을 덜 불편하게..
Preparaing for popquiz/midterm-exam (Lec1~Lec5 + Lec6) This is just Overview. I have to study precisely and make the branches of this notions. Contents Lecture 1. Introduction What is an operating system?Early Operating SystemsSimple Batch SystemsMultiprogrammed Batch SystemsTime-sharing SystemsPersosnal Computer SystemsParallel and Distributed SystemsReal-time Systems Lecture 2. System Structur..
open() #include #include #include Int open( const char *pathname, int flags); Int open( const char *pathname, int flags, mode_t mode); 기존 파일을 열거나, 새로운 파일을 생성하는 함수이다. Pathname 인자에는 open할 파일명에 대한 절대경로, 혹은 상대경로를 넣어 주면 된다. flags 인자에는 파일을 어떤 목적으로 open할 것이며, 파일의 초기화 여부 등을 넣어 주게 된다. O_RDONLY : 읽기전용 open O_WRONLY : 쓰기전용 open O_RDWR : 읽기&쓰기 모두 가능한 open flag 인자 자리에는 위 세 개중 하나가 반드시 설정되어야 한다. 아래 상수들은 파이프라인을..