문맥 (context)
해밀턴은 130편 이상의 논문을 썼고 60개의 프로젝트 및 6개의 대형 계획에 관여하였다.
2016년 11월 22일, 그녀는 미국 항공우주국의 아폴로 계획을 위한 기내 비행 소프트웨어 개발을 지휘한 공로로 미국 대통령 버락 오바마에게 대통령 자유 훈장을 받았다.
어린 시절
마거릿 히필드는 인디애나주 파올리에서 케네스 히필드와 루스 에스더 히필드(결혼 전 파팅턴) 사이에서 태어났다. 1954년 행콕 고등학교를 졸업한 후 미시간 대학교에서 수학을 전공하였고, 1958년 얼햄 대학교에서 수학 전공과 철학 부전공으로 학사 학위를 받았다. 그녀는 석사 학위 취득을 최종 목표로 하버드의 학사 학위 과정을 밟고 있는 남편을 부양하고자 졸업과 동시에 고등학교에서 잠시동안 수학과 프랑스어를 가르쳤다. 그녀는 브랜다이스 대학교 대학원에서 이론 수학을 공부하기 위해 매사추세츠주 보스턴으로 이주하였다. 마거릿은 1960년 MIT에서 임시직으로 들어가 기상학과의 에드워드 노턴 로렌즈 교수를 위해 LGP-30과 PDP-1 컴퓨터로 날씨를 예측하는 소프트웨어(마빈 민스키의 프로젝트 MAC)를 개발했다. 해밀턴은 그 당시 컴퓨터 과학과 소프트웨어 공학의 교육 과정이 제대로 정립되지 않았다고 적었다. 그 대신, 프로그래머들은 실무 경험을 통해서 일을 배워야 했다.이 계획에 대한 해밀턴의 노력으로 인해, 미국 항공우주국에서 그녀를 아폴로 비행 소프트웨어의 선임 개발자로 지명하게 되었다.
미국 항공우주국(NASA)
해밀턴은 당시 아폴로 우주 임무에 종사하던 MIT의 찰스 스타크 드레이퍼 연구소에 들어갔고, 마침내 아폴로와 스카이랩용 소프트웨어 개발로 인정받는 팀을 이끌게 되었다. 해밀턴의 팀은 아폴로 명령 모듈 및 달 착륙선, 후속 스카이랩을 위해 다양한 선임 과학자가 설계한 알고리즘을 포함하는 기내 소프트웨어 개발을 책임졌다. 팀의 또 다른 부서에서는 해밀턴이 설계하고 개발한 디스플레이 인터페이스 루틴(일명 우선 순위 디스플레이), 재시작과 같은 오류 감지 및 복구 소프트웨어를 비롯한 시스템 소프트웨어를 설계하고 개발하였다. 해밀턴은 컴퓨터 과학 과정이 드물고 소프트웨어 공학 과정이 없었던 시기에 실무 경험을 쌓기 위해 일하였다.
아폴로 11호
아폴로 11호 임무의 결정적 순간 중 하나는, 아폴로 가이던스 컴퓨터가 기내 비행 소프트웨어와 함께 달 착륙의 중단을 막은 것이다. 달착륙선이 달 표면에 도달하기 3분 전, 몇 대의 컴퓨터가 경보를 울렸다. 착륙선의 랑데부 레이다에 부정확한 위상 전원이 공급되자 컴퓨터가 과부하를 일으켜 일시 중단된 것이었다. J. 할콤 레이닝이 설계한 비동기 실행은 작업 우선 순위를 매겨 컴퓨터가 늘어난 요구에 잘 대처할 수 있도록 해주었다. 해밀턴의 우선 순위 경보 표시는 우주비행사의 정상적인 화면 표시를 중단시키고 "우주비행사에게 실행/비실행 결정권(착륙 또는 착륙하지 않기)을 부여"하여 비상 사태를 경고하였다. 임무를 통제하는 NASA의 컴퓨터 공학자 잭 가먼은 우주비행사들에게 우선 순위 표시로 제시된 오류의 의미를 인지하여 "실행, 실행!"을 외쳤고, 그들은 계속해서 실행했다. 해밀턴을 NASA 스페이스 액트 어워드 후보로 지명한 선임 기술자 폴 커토 박사는 해밀턴의 작업을 "극단적으로 신뢰할 수 있는 소프트웨어 설계의 토대"로 칭했다.
사생활
해밀턴은 얼햄 대학교에서 남편 제임스 콕스 해밀턴을 만났다. 두 사람은 히필드가 학사 학위를 받은 다음인 1950년대 후반에 결혼했다. 그들은 로렌이라는 이름의 딸을 낳았고, 딸은 자라서 억만장자이자 배우, 무용가, 안무가인 제임스 콕스 챔버스와 결혼하였다. 해밀턴은 주말 동안 주로 딸과 시간을 보내고 나중에 아폴로의 명령 모듈 컴퓨터에 추가되는 루틴을 작성하기 위해 종종 로렌을 실험실로 데려갔다. 마거릿 해밀턴과 제임스 콕스 해밀턴은 이혼하였다.
지시문 (instruction)
주어진 원문을 읽고 필요한 정보를 파악하여, 원문에 근거해 질문에 답하라.
질문 (question)
마거릿 해밀턴이 설계하고 개발한 시스템 소프트웨어 중 오류 감지 및 복구와 관련된 기능은 무엇인가?
추론 과정 (compact_reasoning)
-
1과제 해석
task_interpretation마거릿 해밀턴이 개발한 시스템 소프트웨어의 구성 요소 중 오류 감지 및 복구 기능을 정의하는 내용을 찾는다.
-
2정보 추출
information_extraction해밀턴의 팀이 수행한 시스템 소프트웨어 설계 및 개발 업무 내용을 확인한다.
- 팀의 또 다른 부서에서는 해밀턴이 설계하고 개발한 디스플레이 인터페이스 루틴(일명 우선 순위 디스플레이), 재시작과 같은 오류 감지 및 복구 소프트웨어를 비롯한 시스템 소프트웨어를 설계하고 개발하였다.
-
3근거 선택
evidence_selection오류 감지 및 복구와 직접적으로 연결된 소프트웨어 기능을 선별한다.
- 재시작과 같은 오류 감지 및 복구 소프트웨어
-
4논리 통합
logical_integration해밀턴이 개발한 시스템 소프트웨어의 범주 내에 오류 감지 및 복구를 위한 '재시작' 기능이 포함됨을 파악한다.
-
5결론 도출
conclusion_formulation질문에서 요구하는 오류 감지 및 복구 소프트웨어의 구체적 예시인 '재시작'을 도출한다.
- 재시작과 같은 오류 감지 및 복구 소프트웨어
-
6답변 생성
answer_generation문맥의 표현을 사용하여 최종 답변을 작성한다.
- 재시작
최종 답변 (final_answer)
재시작
핵심 해석 (core_interpretation)
마거릿 해밀턴이 개발한 시스템 소프트웨어는 오류 감지 및 복구를 위해 재시작과 같은 기능을 수행했다.