4. 아키텍처 특성 정의 아키텍트는 개발팀과 함께 도메인 또는 비즈니스 요구사항을 정의할 수 있지만, 주로 소프트웨어로 처리할 일 중 도메인 기능과 직접적인 관련이 없는 모든 것들, 즉 아키텍처 특성(architectural characteristic)을 정의, 발견, 분석하는 일을 수행한다. 아키텍처 특성은 다음 세 가지 기준을 충족한다. 비도메인(nondomain) 설계 고려 사항을 명시한다. 어플리케이션 설계 시 어플리케이션으로 처리할 일은 구체적인 요구사항으로 정리한다. 아키텍처 특성은 이 요구사항을 구현하는 방법, 어떤 선택을 하게 된 이유와 관련된 운영/설계 기준을 명시한다. e.g. 일반적으로 어느 정도의 어플리케이션의 성능은 중요한 아키텍처 특성이지만, 요구사항 정의서에는 적혀있지 않는 경..
구조
오늘도 운영체제 구조, 특히 그 중에서도 디자인 관점에서 공부를 해 보려고 한다. 프로세스 관리(Process Management) 프로세스는 실행중인 프로그램을 의미한다. 프로그램은 파일 형태로 존재하는 수동적 상태(Passive Entity)이며, 프로세스는 프로그램 카운터를 가지는 능동적 상태(Active Entity)이다. 싱글 스레드 프로세스는 1개의 프로그램 카운터를, 멀티 스레드 프로세스는 스레드당 1개의 카운터를 가진다. ※프로그램 카운터(Program Counter)란? 프로그램 카운터(Program counter, PC)는 마이크로프로세서(CPU) 내부에 있는 레지스터 중의 하나로서, 다음에 실행될 명령어의 주소를 가지고 있어 실행할 기계어 코드의 위치를 지정한다. 때문에 명령어 포인터..