>  기사  >  운영 및 유지보수  >  운영 체제 기술 요약

운영 체제 기술 요약

巴扎黑
巴扎黑원래의
2017-07-20 17:48:551567검색

운영체제 리뷰

1장 운영체제 소개

정의: 시스템 자원 관리, 프로그램 실행 제어, 휴먼-컴퓨터 인터페이스 개선, 다양한 서비스 제공, 컴퓨터 작업 흐름을 합리적으로 구성하여 사용자에게 편리하고 효과적인 컴퓨터 사용을 제공하는 시스템 소프트웨어 환경을 운영하는 것입니다.
기능: 프로세서 관리, 스토리지 관리, 장치 관리, 파일 관리, 네트워킹 및 통신 관리
특징: 동시성, 공유(1. 투명한 리소스 공유 2. 독점적인 리소스 공유), 비동기
범주: 배치 운영 체제, 시분할 운영 시스템, 실시간 운영체제

2장 프로세서 관리

프로세스 정의: 프로세스는 특정 데이터 수집에 대해 독립적인 기능을 가진 프로그램의 실행 활동이며 운영체제에 의한 자원 할당 및 보호의 기반이기도 합니다. . 단위.
프로세스 상태 및 전환: p73
3상태 모델: 실행 상태, 준비 상태, 대기 상태
5상태 모델: 새로운 상태, 종료된 상태 제안하는 이유는 무엇인가요?
특정 변형이 존재하지 않음을 설명하기 위해 그림을 그릴 수 있어야 합니다.

멀티스레딩 도입 동기: 프로그램이 동시에 실행될 때 발생하는 시간과 공간 오버헤드를 줄이고 동시성 세분성을 더 세밀하게 만들고 동시성을 향상시킵니다.
스레드의 장점: 빠른 스레드 전환, 쉬운 통신, 관리 오버헤드 감소 및 동시성 향상

PCB(Process Control Block) 프로세스 제어 블록: 프로세스 존재에 대한 고유 식별자로, 운영 체제에서 기록을 위해 사용됩니다. 정보의 데이터 구조는 프로세스의 동적 특성을 모아 놓은 것이며 운영체제가 프로세스를 제어하는 ​​유일한 데이터 구조이자 프로세스를 관리하는 주요 기반이기도 합니다. p75

TCB의 개념은 무엇인가요?
동적/정적 우선순위?

프로세서 스케줄링: p101 예

  1. 선착순 알고리즘

  2. 가장 짧은 작업 우선 알고리즘(개념)

  3. 가장 짧은 남은 시간 우선 알고리즘

  4. 가장 높은 응답률 우선 알고리즘(개념)

3장 동기화, 통신 및 교착 상태

Bainstein 조건? Bernstein(단답형)

Deadlock: 프로세스 그룹이 리소스 경쟁으로 인해 영원히 기다리는 상태에 갇혀 있습니다.
Hungry: 실행 가능한 프로세스는 스케줄러에 의해 무기한 지연되고 다른 프로세스가 항상 우선하기 때문에 실행할 수 없습니다.

프로세스 동기화: 공통 작업을 완료하기 위한 동시 프로세스는 특정 조건에 따라 활동을 조정하며, 특정 위치에서 실행 순서를 정렬해야 하기 때문에 신호나 메시지를 기다리고 전달할 때 협업 제약이 발생합니다.

Critical 섹션: 동시 프로세스의 공유 변수와 관련된 프로그램 세그먼트입니다.
핵심 리소스: 공유 변수로 표현되는 리소스, 즉 한 번에 하나의 프로세스에서만 사용할 수 있는 리소스입니다.
중요 섹션 예약의 세 가지 원칙(상호 배타적 사용, 비어 있을 때 허용, 바쁜 경우 대기, 제한된 대기, 입력할 항목을 선택하면 알고리즘이 가능함):

  1. 최대 하나의 프로세스만 임계 섹션에 들어갈 수 있습니다. 한 번에 실행하려면 .

  2. Critical 섹션에 이미 프로세스가 있는 경우 이 Critical 섹션에 진입하려는 다른 프로세스는 기다려야 합니다.

  3. 중요 섹션에 진입한 프로세스는 대기 대기열에 있는 프로세스가 진입할 수 있도록 제한된 시간 내에 종료되어야 합니다.

중요 섹션 관리를 위한 소프트웨어 알고리즘:
분석

  1. 문제가 있을까요?

  2. 언제 출시되나요?

중요 섹션 관리를 위한 하드웨어 기능:

  1. 인터럽트 끄기

  2. 테스트 및 지침 설정

  3. 스왑 지침

세마포 및 PV 작업: p134

pv 운영 정의( 1위안 , 일반적인)?
종합 질문:

  1. 5 철학자의 식사 문제(교착 상태 해결 없음) p139

  2. 생산자-소비자 문제(다대다, 많은 버퍼) p140

  3. 리더-라이터 문제 p141

  4. 이발사 문제 p142

  5. 물을 길러오는 몽크

Deadlock

정의: 이 세트 사건에서 프로세스 집합의 모든 프로세스가 다른 프로세스에 의해서만 발생할 수 있는 프로세스를 기다리고 무기한 교착 상태에 빠진 경우 .
생성 조건:

  1. 상호 배타적 조건

  2. 소유 및 대기 조건

  3. 박탈 조건 없음

  4. 루프 대기 조건

교착 상태 방지: 포괄적인 질문에 대한 15점
뱅커의 알고리즘 데이터 구조 p163
알고리즘 설명:

  1. T0 순간의 보안 시퀀스

  2. 프로세스 P1이 리소스를 요청합니다(만족할 수 있습니까? 왜?)

4장 스토리지 관리

프로그램 링크 유형: ( 빈칸 채우기)

  1. 정적 링크

  2. 동적 링크

  3. 런타임 링크

정적 주소 재배치: 로더는 로딩 코드의 로딩 및 주소 변환을 구현하고, 이를 프로세스에 할당된 지정된 메모리 영역에 로드하고, 그 안에 있는 모든 논리 주소를 물리적 메모리 주소로 변경합니다.
동적 주소 재배치: 로더는 코드 모듈을 로드하여 프로세스에 할당된 메모리의 지정된 영역에 로드하지만 링커가 처리하는 애플리케이션의 논리 주소는 변경하지 않습니다. 시작 주소는 하드웨어 특수 레지스터인 재배치 레지스터에 배치됩니다. 프로그램 실행 중에 CPU가 메모리 주소를 참조할 때마다(프로그램 및 데이터 액세스) 하드웨어는 이 논리 주소를 가로채서 주소 변환을 달성하기 위해 메모리로 전송되기 전에 재배치 레지스터의 값을 추가합니다.

페이징 저장소 관리 p206
개념:

  1. Page

  2. 페이지 프레임

  3. 논리 주소

  4. 메모리 페이지 프레임 테이블

  5. 페이지 테이블

페이징/분할된 동적 링크 What 라이브러리의 구현 원리는 무엇입니까? (설명+그림)

종합질문:

  1. 논리주소가 주어지면 물리주소를 찾아보세요? (그리기)

  2. 논리 주소와 페이지 크기가 주어지면 물리 주소를 계산해볼까요?

분할과 페이징의 비교(단답):
분할은 정보의 논리적 단위로, 소스 프로그램의 논리적 구조와 의미, 그리고 세그먼트 길이에 따라 결정됩니다. 사용자의 필요에 따라 세그먼트 시작 주소가 임의의 메모리 주소에서 시작될 수 있습니다. 세그먼트화 방식에서는 소스 프로그램(짧은 숫자, 세그먼트 내 대체)이 연결 및 조립된 후에도 여전히 2차원(주소) 구조를 유지합니다. 도입 목적은 모듈형 프로그래밍에 대한 사용자 요구를 충족시키는 것입니다.
페이징은 소스 프로그램의 논리적 구조와 아무 관련이 없으며 사용자에게 표시되지 않습니다. 페이지 길이는 시스템(하드웨어)에 의해 결정됩니다. 페이지 크기의 페이징 모드에서 소스 프로그램(페이지 번호, 페이지 내 변위)은 링크 조립 후 1차원(주소) 구조가 됩니다. 도입 목적은 개별 할당을 달성하고 메모리 활용도를 향상시키는 것입니다.

페이지 실패율 p223
개념: 실패한 방문수?
그림을 그려서 누락된 페이지 중단률을 알아보세요? p229

5장 장치 관리

I/O 제어 방법: (빈칸 채우기)

  1. Polling method

  2. Interrupt method

  3. DMA method

  4. Channel method

버퍼 기술 :
싱글 버퍼링 p265
더블 버퍼링 p266

검색 및 찾기: (예제 질문, 단답형) p270

  • 선착순 알고리즘

  • 최단 검색 시간 우선 알고리즘

  • 스캐닝 알고리즘

  • 엘리베이터 스케줄링 알고리즘

  • 사이클 스캔 알고리즘

참고문헌:

-"운영 체제 튜토리얼(5판)" Fei Xianglin, Luo Bin Higher Education Press

위 내용은 운영 체제 기술 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:정규식다음 기사:정규식