The OS 구조

The OS 구조

OS 구조는 운영체제 특정 인터페이스의 공통 이름들을 구조화된 형태로 묶어 제공하는 루트 구조예요. 예를 들어 OS 구조의 파일 시스템 인터페이스는 구조 이름 OS.FileSys로 지정돼요.

출처: 문서

본문

시놉시스 (Synopsis)

signature OS
structure OS :> OS

인터페이스 (Interface)

structure FileSys : OS_FILE_SYS
structure IO : OS_IO
structure Path : OS_PATH
structure Process : OS_PROCESS
eqtype syserror
exception SysErr of string * syserror option
val errorMsg : syserror -> string
val errorName : syserror -> string
val syserror : string -> syserror option

설명 (Description)

structure FileSys : OS_FILE_SYS

운영체제가 지원하는 가상 주소 공간의 페이지 크기를 바이트 단위로 돌려줘요.

structure IO : OS_IO

I/O 폴링이에요.

structure Path : OS_PATH

경로명의 구문적 조작이에요.

structure Process : OS_PROCESS

프로세스 제어, 종료 상태, 환경이에요.

eqtype syserror

런타임이나 운영체제에 호출할 때 발생하는 오류를 나타내는 타입이에요. 이 값들은 보통 SysErr 예외로 전달돼요.

exception SysErr of string * syserror option

런타임 시스템이나 호스트 운영체제에 대한 호출이 오류로 이어질 때 발생하는 예외예요. 첫 번째 인자는 오류를 설명하는 설명 문자열이고, 두 번째 인자는 선택적으로 시스템 오류 조건을 지정해요. 설명 문자열의 형태와 내용은 운영체제·구현 의존적이지만, SysErr 예외가 SysErr(s, SOME e) 형태라면 errorMsg e = s가 성립해요. 대응하는 syserror 값이 없는 시스템 오류는 두 번째 인자가 NONE인 SysErr를 발생시켜요.

errorMsg err

오류 코드 err가 식별하는 시스템 오류를 설명하는 문자열을 돌려줘요. 설명 문자열의 형태와 내용은 운영체제·구현 의존적이에요.

errorName err

syserror s

이 함수들은 추상 syserror 타입과 운영체제 의존적인 문자열 이름 사이의 변환을 제공해요. 이 함수들의 주된 목적은 운영체제별 모듈에 기호 이름이 정의되지 않을 수 있는 오류 코드를 다루는 메커니즘을 제공하는 것이에요. 전자는 syserror 값에 사용되는 고유한 이름을 돌려주고, 후자는 이름이 s인 syserror가 있으면 그 값을 돌려줘요. e가 syserror라면 다음이 성립해야 해요:

SOME e = syserror(errorName e)
```## 더 알아보기 (Learn more)

- [ Top | Parent | Contents | Index | Root ] Generated April 12
- 2004 Last Modified April 19
- 1996 Comments to John Reppy. This document may be distributed freely over the internet as long as the copyright notice and license terms below are prominently displayed within every machine-readable copy. Copyright © 2004 AT&T and Lucent Technologies. All rights reserved. Permission is granted for internet users to make one paper copy for their own personal use. Further hardcopy reproduction is strictly prohibited. Permission to distribute the HTML document electronically on any medium other than the internet must be requested from the copyright holders by contacting the editors. Printed versions of the SML Basis Manual are available from Cambridge University Press. To order
- please visit www.cup.org (North America) or www.cup.cam.ac.uk (outside North America).