수업/운영체제 4

데드락(교착상태)

데드락이란? 프로세스나 스레드가 결고 일어나지 않는 일을 기다리는것 작업 마무리도 못할 뿐더러 시스템에 오버헤드 혹은 다운까지 발생시킨다. 왜 발생하나? 다음 네가지 조건을 충족하기 때문에 발생함 상호배제 한번의 한개의 프로세스 만이 공유 자원을 사용함 점유와 대기 자원을 점유하고 있으면서 다른 프로세스가 사용하는 자원을 추가로 점유하기위해 대기하는 프로세스가 있음 비 선점 자원 강탈 불가 환형 대기 프로세스가 다른 프로세스가 점유한 자원에대한 요구가 원형을 이룸 A -> B -> C -> A 4가지 조건이 모두 필요한 소프트웨어 개발에서 데드락 발생 가능 교착 상태 예시 간단한 교착상태 자원(길) 을 점유한 상태에서 서로 상대방의 자원을 요구하는 상황 해결 방법 교착 상태 방지 교착 상태가 발생하지 않..

수업/운영체제 2023.06.01

운영체제 - 하드웨어와 소프트웨어

하드웨어 구성 요소 메인보드 프로세서 일련의 기계어 명령을 실행하는 하드웨어 구성요소 명령어 페치기, 명령어 해석기, ALU, 캐시, 레지스터 클록(버스가 데이터를 나르는 주기), 메인 메모리, 2차 저장소, 버스, 직접 메모리 접근, 주변장 하드웨어의 운영체제 지원 프로세서를 통한 보호 메커니즘, 프로세스가 할당받지 않은 메모리에 접근을 막 사용자 모드, 커널 모드 메모리 보호와 관리, 인터럽트, 예외 부트스트랩핑 운영체제를 메모리에 로드하는 과정 바이오스에 의해 수행 캐싱과 버퍼링 캐시 적중, 캐시 실패(빼고 가져옴) 버퍼 - 장치간, 프로세스 임시 데이터 저장소 스풀링 - 프로세스와 저속 입출력 장치 사이에 중간 저장 장치 두는 기술(프린터) 소프트웨어 개관 응용 프로그래밍 인터페이스 운영체제에 서..

수업/운영체제 2023.03.28

운영체제 2주차

운영체제란 하드웨어를 제어하기 위한 소프트웨어 응용 프로그램이 하드웨어와 상호작용 할 수 있도록 해주는 소프트웨어 운영 체제와 응용 프로그램 운영체제는 응용 프로그램에게 응용 프로그래밍 인터페이스를 제공 이를 통해 응용 프로그램은 시스템 자원을 사용 운영체제는 시스템 자원에 대한 잘못된 사용과 접근을 막아줌 운영체제가 응용 프로그램 개발에 좋은 환경을 제공할수록 시장 장악 가능성 높아짐 운영체제 환경 범용 컴퓨터, 임베디드 시스템, 실시간 시스템, 가상 머신 등 운영체제의 구성 요소와 목표 구성 요소 프로세스 스케줄러 메모리 관리자 입출력 관리자 프로세스 간 통신 관리자 파일 시스템 관리자 목표 효율성, 견고함, 규모 확장성(성능 측면), 확장성(능력의 다양화), 이식성, 보안, 상호 작용성, 사용성 운..

수업/운영체제 2023.03.14