hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
장단 정악 장단
도드리 장단(還入長短)은 정악에서 가장 많이 쓰이는 장단으로, 보통 빠르기의 6박이다. 한 박을 4분음표로 표시하면 6/4박이 된다. 도드리 장단은 상현도드리·하현도드리·밑도드리·윗도드리·염불도드리, 그리고 가사(歌詞)에서 백구사·춘면곡·건곤가·어부사·황계사·길군악·수양산가·매화타령에 쓰인다. 민속음악에서도 도드리 장단이 잡가(雜歌) 장단에 쓰인다. 도드리 장단은 악곡에 따라 치는 법이 다른데, 상현도드리·하현도드리에 쓰이는 것, 밑도드리·윗도드리에 쓰이는 것, 염불도드리에 쓰이는 것, 가사인 백구사·춘면곡·건곤가·어부사·황계사·길군악·수양산가에 쓰이는 것, 매화타령에 쓰이는 것이 있다.
행진에 쓰이는 음악(行樂)에는 대취타·취타·길군악·길염불·길타령 등 여러 장단이 쓰인다. 이 중에서 취타 장단은 12박이다. 한 박을 4분음표로 나타내면 12/4박자가 된다(보표예 5 가). 길군악(折花)은 8박으로, 한 박을 4분음표로 나타내면 8/4박자이다(보표예 5 나).
장단 정악 장단
가곡(歌曲)에서 초수대엽·이수대엽·중거·평거 등 가곡 전바탕 중에 편락(編樂)·편수대엽(編數大葉)·언편(言編)을 제외하고 모두 매우 느린 16박 장단으로 되었다. 한 박을 4분음표로 나타내면 16/4박이 된다. 이 장단은 고악보(古樂譜)의 16정간과 같은 형태로 되었다. 편락·편수대엽·언편은 보통 빠르기의 10박으로 되었다.
가사장단(歌詞長短)은 십이가사 가운데 백구사·춘면곡·건곤가·어부사·황계사·길군악·수양산가·매화타령은 6박 도드리이고, 상사별곡·처사사·양양가는 5박 장단인데, 한 박을 4분음표로 표시하면 5/4박자이다. 권주가는 불규칙 장단이다.
시조장단(時調長短)은 시조 장단은 5박 장단과 8박 장단이 교대하여 쓰인다. 한 박을 4분음표로 나타내면 5/4박과 8/4박이 된다.
장단 민속악 장단
민속악(民俗樂)에서는 잡가·민요의 장단은 장구로 치고, 판소리 장단은 소리북으로 치며, 입창의 장단은 소고(小鼓)로 친다. 민속 기악곡은 모두 장구로 친다. 판소리·산조·남도 잡가·남도 입창·남도 민요는 진양·중모리·중중모리·자진모리 장단이 많이 쓰이고 경기 무용음악·경서도 입창·경서도 잡가·경서도 민요는 도드리·굿거리·타령·세마치 장단이 많이 쓰인다. 각 지방 농악·무속음악의 장단은 어느 지방이나 굿거리형이 중심이 되며, 한편 지방마다 독특한 장단으로 별로 알려지지 않은 것이 많다.
세마치 장단과 함께 민속악에서 가장 많이 사용되는 12박 장단으로, 민요, 산조, 판소리, 무속음악/무악, 무용 음악 등 국악 전반에 걸쳐 광범위하게 사용되고 있다. 구음은 '덩기덕 쿵 더러러러 쿵기덕 쿵 더러러러'이다.
장단 민속악 장단
궁중음악과 민속음악에 두르 쓰이는 장단으로 쓰이는 용도에 따라서 장단이 변한다. 영산회상 가운데 도드리류 곡에서는 8/18박자나 6/4 박자로 쓰이고 가사 〈춘면곡〉, 〈죽지사〉 등에서는 8/18박자 판소리에 서는 6/2박자가 도드리 장단으로 쓰인다. 외에 무용 반주 장단으로 는〈처용무〉, 〈포구락〉, 〈가인전목단〉과 같은 궁중무용이나, 경기 무속 무용, 삼현육각 반주에의한 삼현도드리 등도 도드리 장단으로 연주한다. 이 장단으로 된 음악은 장중하고 완만하며 꿋꿋한 느낌을 준다.
국악에서 쓰이는 장단으로 여러 가지 장단형이 있으나, 흔히 말하는 세마치는 경기 민요와 같이 조금 빠른 3박의 장단형이다. 이 장단은 3분 박으로 나뉘므로 보통 9/8박으로 적는다. 세마치 기본 장단의 구음은 '덩덩덕쿵덕'이다.
세마치장단 정간보(수덩기덕편)
수우 덩 - 기덕 수 더러러러러 쿵 - 수덩 수 더러러러 수우 덩 - - 수 - 덩 - 쿵 덕 - 수 - 덕 - 수더더덕 수 - 덕 - 수더덕덕
세마치장단 정간보(수덩기덕편)은 다양하게 변형하여 칠 수 있다.
장단 민속악 장단
엇모리(전라도 방언: 엇머리)는 일정한 박자가 계속 반복되는 장단이 아니라 빠른 3박과 2박이 혼합된 10박의 특이한 장단이다. 치는 법은 '더엉궁 따악 구웅 궁 따악'이다. 판소리, 산조 등에 쓰인다.
엇모리는 중·도사·범·장수 등 특수 인물이 나오는 대목에서 쓰이며 유명한 대목은 〈심청가〉의 중 내려오는데 〈흥보가〉의 중 내려오는 데, 〈적벽가〉의 자룡이 나오는 데, 〈수궁가〉의 도사 나오는 데이다...
국악의 판소리·산조에서 쓰이는 비교적 빠른 12박의 장단이다. 1박을 8분음표로 나타내면 8분의 12박자가 된다. 그러나 일반적으로 3박을 묶어 1박으로 치기 때문에 4박이 한 장단이 된다. 치는 법은 '덩 쿵 쿵덕쿵'이다.
자진모리는 어느 것을 길게 나열하거나 극적이고 긴박한 대목에 쓰인다. 자진모리 장단으로 유명한 대목은 〈춘향가〉의 나귀안장·술상 차리는 데·신연맞이·어사출도, 〈심청가〉의 좇느질·심봉사 물에 빠지는 데·인당수 바람 부는 데 〈흥보가〉의 놀보심술, <적벽가>의 자룡이 활 쏘는 데·적벽가 불지르는 데이다.
장단 민속악 장단
국악 장단의 하나로, 판소리·산조·민요 등에 쓰이는 12박 장단이다. 보통 빠르기의 12박으로 대개 1박을 4분음표로 나타내어 12/4박자로 적는다. 치는 법은 '덩 궁 딱 궁 딱 딱딱 궁 궁 딱 구 웅 궁'이다. 판소리에서 중모리는 서술적인 대목이나 서정적인 대목에서 쓰인다. 중모리 장단으로 부르는 유명한 대목은 〈춘향가〉의 쑥대머리, 〈흥보가〉의 가난타령 등이 있다.
중중모리는 흥겨운 대목에 많이 쓰이고 때로는 몸부림치며 통곡하는 대목에 쓰인다. 중중모리 장단으로 부르는 유명한 대목은 〈춘향가〉의 기산영수·자진사랑가·춘향 어머니 나온다·군로사령·어사와 장모, 〈심청가〉의 심봉사 통곡·아기 어르는데·봉사들 춤추는 데, 〈흥보가〉의 겨울동자 걸거자·제비 노정기·제비 후리러 나가는 데, 〈수궁가〉의 토기화상·가자 어서가·고고천변 등이 있다.
장단 민속악 장단
진양 또는 진양조는 판소리·산조에 쓰이는 가장 느린 장단이다. 6박(拍)이 한 각(刻·脚)이 되고 4각이 모여 한 장단(24박)이 된다. 제1각은 미는 소리에, 제2각은 다는 소리에, 제3각은 맺는 소리에, 제4각은 푸는 소리에 치는데, 소리의 맺고 푸는 데 따라 각의 수효는 넘나든다. 진양 장단으로 부르는 소리는 한가하고 유유하거나 장엄하고 유장하거나 우는 서정적인 대목에서 많이 불린다. 진양 장단으로 부르는 유명한 대목은 〈춘향가〉의 적성가(赤城歌), 긴 사랑가, 옥중가(獄中歌), 〈심청가〉의 범피중류, 〈적벽가〉의 고당상(高堂上) 등이 있다.
휘모리(전라도 방언: 휘머리)는 이름에서도 알 수 있듯이 회오리 바람처럼 매우 빠르게 휘몰아치는 장단이다. 첫 박은 덩을 크게 치고, 제3박 후반을 채로 강하게 친다. 4/4박자나 12/8박자로 적는다. 4박이며 치는 법은 '덩 덩 쿵덕 쿵'이다. 판소리·산조에서 쓰이는 가장 빠른 장단이다.
휘모리 장단은 매우 분주한 대목에서 쓰인다. 휘모리 장단이 쓰이는 유명한 대목은 〈춘향가〉의 신연맞이 끝에,〈흥보가〉의 흥보 박 타는 데 등이 있다.
판소리에서 쓰이는 장단의 하나로 보통 빠르기의 6박이다. 치는 법은 '덩 궁 딱 궁 딱 궁'이다. 엇중모리는 윗사람이 사연을 아뢰는 대목이나 판소리의 맨 끝 대목에 쓰인다. 유명한 대목은 〈춘향가〉의 "회동성참판 영감께서"와, 〈수궁가〉의 "이내 근본을 들어라"이다.
크라프트베르크
크라프트베르크(독일어: Kraftwerk)는 독일의 뒤셀도르프에서 Ralf Hütter와 Florian Schneider가 결성한 전자 음악 그룹으로, 신스팝 및 일렉트로니카 음악의 선구자이자 가장 처음 전자음악의 무한한 가능성을 열고, 성공한 밴드로 불린다. 밴드명인 크라프트베르크는 독일어로 발전소를 뜻하며, 밴드의 컨셉은 거의다 로봇이나, 기타 현대 공업 기술에서 모티브를 따온 것들이다.
크라프트베르크 개요
70년대 중반 독일의 크라프트베르크는 후에 따라올 여러 아티스트들을 위해 소리의 청사진을 만들었다. 브리티시 뉴 로맨틱스에서 힙합, 테크노까지, 그들이 스스로 “로봇 팝”이라 부른 리드미컬한 음악을 전기적인 방법으로 공연했다. 사실상 20세기 말 컨템포러리 팝 씬에 많은 영향력을 행사하는 등 매번 새로운 발전을 보였으며 전자 음악의 선구자로서 그들의 영향력은 끊임없었다. 크라프트베르크는 캔과 탠저린 드림 등 60년대 후반 독일 익스페리멘탈 음악 커뮤니티를 밖으로 이끌어냈다. 최초의 멤버인 플로리안 슈나이더와 랄프 휘터는 뒤셀도르프 대학에서 클래식 음악 학생으로 처음 만났다. 그리고 오르가니제이션이라는 그룹을 결성, 1970년에 음반 Tone Float을 영국에서 발매했다. 슈나이더와 휘터는 곧 오르가니제이션을 해체했고 독일어로 발전소라는 뜻인 크라프트베르크로 개칭했다. 그리고 그들 소유의 스튜디오에서 작업을 시작했다. 그 스튜디오는 후에 클링 클랑이라는 이름이 붙여졌다. 그리고 미니멀리스트 전자 음악의 불모지 같은 곳에서 그들의 음악에 전념했다. 그들의 1971년 데뷔 음반은 Kraftwerk 1이라는 이름으로 만들어졌다. 초기 형태의 그들은 진귀하고 미학적인 실마리를 제공했는데 슈나이더가 집에서 만든 리듬 기계를 음악에 접목시키는 등 새로운 혁신을 보여주었다.
크라프트베르크 결성과 데뷔
라인업은 자주 변경되었는데 한 때 휘터가 그룹을 떠났다. 그러나 1972년 Kraftwerk 2의 발매 시점에 그와 슈나이더는 다시 만났다. 드러머 없이 녹음된 앨범의 리듬은 드럼 기계에 의존했다. 그리고 전례에 없는 로보틱한 사운드를 만들어냈는데 순수한 기술적인 음악의 컨셉은 그 당시 완전히 신선한 것이었다. 잘 받아들여지는 라이브 공연의 시리즈는 크라프트베르크가 1973년 3번째 음반인 Ralf and Florian 작업을 하기 이전에 발매되었다. 그들의 익숙치 않은 혁신적인 컨셉을 위해 연마하고 있었던 시점이었다. 그들의 음악은 점점 더 드러나게 되었는데 그들의 용모 단정하고 과학적인 이미지는 당시 주된 팝 패션과는 완전히 반대되는 것이었다. 크라프트베르크의 미국에서 처음으로 발매된 음반은 1974년도 작품인 Autobahn이었는데 그것은 전 세계적인 히트를 쳤다. 장대한 타이틀 트랙의 수정된 싱글 버전은 독일과 전 세계에서 히트를 쳤다. 그리고 미국에서 팝 앨범 차트에서 더 높은 단계에 이르렀다. 모그 신시사이저를 도입한 Autobahn은 독특한 크라프트베르크 사운드에 결정체를 이루었다. 그 동안 관습적인 팝 구조와 멜로디에 대한 그룹의 최초의 서막이 올랐다. 그리고 주류 음악 시장에서 전자 음악의 영원한 발판을 만들어냈다.
크라프트베르크 그 후
크라프트베르크는 1975년 무선 통신을 테마로 한 컨셉트 음반인 Radio-Activity로 다시 수면에 떠올랐다. 그것은 그들의 전 세계적인 인기를 다시 보여주는 계기가 되었다. 그 음반은 독일어와 영어로 발매되었는데 후자는 76년 초에 발매되었다. 기차 여행이라는 주제로 1977년 Trans-Europe Express가 발매되었는데 그것은 음악의 기계화를 향한 발걸음이었다. 그 라인은 다음 해인 1978년의 The Man Machine라는 이름으로 더욱 극대화되었는데 그것은 인간성의 상실을 드러내는 컨셉이었다. 이때까지 크라프트베르크의 멤버들은 그들을 로봇 같은 사람이라고 묘사했는데 We Are the Robots이란 곡으로 형상화했다. 그들의 영향력은 절정에 다다랐지만 그룹은 정체성을 잃어버렸다. 그들은 1981년의 기술의 새로운 세계적인 지배에 대한 사색인 Computer World에 앞서 그들의 음악이 예견했던 사회로 돌아갈 준비가 되지 않았다. 싱글 곡인 Computer Love로 영국에서 차트 정상을 기록한 후 크라프트베르크는 다시 사라졌으며 1986년의 Electric Cafe 발매까지 5년간 휴업에 들어갔다. 그러나 이때까지 팝 음악은 신시사이저와 드럼 머신이 주를 이뤘는데 그룹의 위상은 약해졌다. 1991년의 The Mix라는 히트곡 모음집으로 그들은 남은 10년간 조용히 지냈다. 그들은 마침내 새로운 싱글인 Expo 2000를 1999년에 발매했고 투어 일정으로 팬들을 놀라게 했다. 녹음 영역에서 크라프트베르크는 1983년 작 Tour de France의 수정 버전으로 투르 드 프랑스 100주년을 기념했다. 그리고 2003년 8월 Tour de France Soundtracks라는 이름의 풀 앨범을 발매했다. 라이브 녹음인 Minimum-Maximum은 2005년에 발매되었다.
타어
타어(Taa) 또는 ǃ꽁옹어(ǃXóõ)는 투어족에 속하는 언어로, 음소가 141개가 있으며 그 대부분이 흡착음이다. 1995년 기준으로 보츠와나에서 3000~4000여 명, 나미비아에서 200여 명이 쓴다.
타어 특징
1990년대에 느ǁ응어(Nǁng) 구사자가 다시 발견될 때까지 투어족의 마지막 살아남은 언어로 여겨졌다. 투어족은 이른바 코이산 제어를 이루는 세 어족 중 하나이다.
하나의 통일된 언어라기보다는 여러 가지 방언으로 구성된 방언 연속체를 형성하는 언어이다.
타어 음운
모음은 [a e i o u] 다섯 개가 있으며, 모두 속삭이는 목소리로 변화하거나 성문음화할 수 있다. [a o u]는 인후음화한 상태에서 속삭이는 소리로 변화할 수 있다. [a u]는 성문음화한 상태에서 인두음화할 수 있다.
모음은 모두 비음화할 수 있다.
꽁옹어의 성조는 고성(á), 중성(ā), 저성(à), 떨어지는 중성(â)으로 네 가지가 있다.
타어 문법
꽁옹어는 주어 서술어 목적어 형식으로, 전치사, 성, 형용사, 관계대명사가 있다. 수사는 명사 뒤에 오며, 사역 동사를 만들기 위해 음절의 중복이 일어난다. 다른 코이산 제어와 마찬가지로 문장 처음에 의문사가 오는 경향이 있다.
부팅
부팅(영어: booting) 또는 부팅업(영어: booting up)은 컴퓨터의 물리적 버튼과 같은 컴퓨터 하드웨어 또는 소프트웨어 명령을 통해 시작되는 컴퓨터 시작 프로세스이다. 전원을 켜면 컴퓨터의 CPU는 주기억장치에 소프트웨어가 없으므로 실행되기 전에 어떤 프로세스가 소프트웨어를 메모리에 로드해야 한다. 이것은 CPU의 하드웨어 또는 펌웨어에 의해, 또는 컴퓨터 시스템의 별도 프로세서에 의해 수행될 수 있다. 일부 시스템에서는 전원 켜기 재설정(POR)이 부팅을 시작하지 않으며, POR이 완료된 후 작업자가 부팅을 시작해야 한다. IBM은 일부 제품 라인에서 초기 프로그램 로드 (IPL)라는 용어를 사용한다.
컴퓨터를 다시 시작하는 것을 재부팅이라고도 하는데, 이는 "하드" 재부팅(예: CPU 전원이 꺼짐에서 켜짐으로 전환된 후) 또는 "소프트" 재부팅(전원이 차단되지 않음)일 수 있다. 일부 시스템에서는 소프트 부팅 시 선택적으로 램을 0으로 지울 수 있다. 하드 부팅과 소프트 부팅 모두 버튼 누름과 같은 하드웨어 또는 소프트웨어 명령으로 시작할 수 있다. 부팅은 작동하는 런타임 시스템, 일반적으로 운영체제 및 일부 애플리케이션이 달성되면 완료된다.
부팅
절전 (일시 정지) 상태에서 컴퓨터를 복원하는 프로세스는 부팅을 포함하지 않는다. 그러나 하이버네이션 상태에서 복원하는 것은 부팅을 포함한다. 최소한 일부 임베디드 시스템은 기능을 시작하기 위해 눈에 띄는 부팅 시퀀스가 필요하지 않으며, 전원을 켜면 단순히 ROM에 저장된 작동 프로그램을 실행할 수 있다. 모든 컴퓨팅 시스템은 상태 기계이며, 재부팅은 의도하지 않은 잠긴 상태에서 지정된 0 상태로 돌아가는 유일한 방법일 수 있다.
운영체제 또는 독립형 유틸리티를 로드하는 것 외에도 부팅 프로세스는 운영체제의 문제를 진단하기 위한 스토리지 덤프 프로그램을 로드할 수도 있다.
부팅
부팅은 부트스트랩의 약어 또는 부트스트랩 로드이며, 자력으로 해내다라는 문구에서 유래한다. 이 용법은 대부분의 소프트웨어가 컴퓨터에서 이미 실행 중인 다른 소프트웨어에 의해 컴퓨터에 로드되는 경우, 초기 소프트웨어를 컴퓨터에 로드하는 메커니즘이 존재해야 한다는 요구 사항에 주목한다. 초기 컴퓨터는 이 문제를 해결하기 위해 작은 프로그램을 메모리에 로드하는 다양한 임시 방법을 사용했다. 다양한 유형의 ROM 발명으로 컴퓨터가 지워지지 않는 부트 롬에 저장된 시작 프로그램을 탑재하여 이 역설을 해결할 수 있게 되었다. ROM 용량의 증가는 훨씬 더 정교한 시작 절차를 구현할 수 있게 했다.
부팅 역사
컴퓨터에 짧은 초기 프로그램을 로드하는 여러 가지 방법이 있다. 이러한 방법은 간단한 물리적 입력에서 더 복잡한 프로그램을 담을 수 있는 이동식 미디어에 이른다.
1940년대와 1950년대의 초기 컴퓨터는 프로그래밍에 몇 주가 걸릴 수 있는 일회성 공학 노력으로, 프로그램 로딩은 해결해야 할 여러 문제 중 하나였다. 초기 컴퓨터인 에니악은 메모리에 저장된 프로그램이 없었지만, 상호 연결 케이블 구성에 따라 각 문제에 맞게 설정되었다. 부트스트랩은 에니악에 적용되지 않았다. 에니악의 하드웨어 구성은 전원이 공급되는 즉시 문제를 해결할 준비가 되어 있었다.
두 번째 저장 프로그램 컴퓨터인 에드삭 시스템은 시작 버튼을 누르면 고정된 프로그램을 메모리로 전송하기 위해 계단식 스위치를 사용했다. 데이비드 휠러가 1948년 말에 완성한 이 장치에 저장된 프로그램은 천공 테이프에서 추가 명령을 로드한 후 실행했다.
부팅 역사
상업 판매를 위한 최초의 프로그래밍 가능한 컴퓨터, 예를 들어 유니박 I과 IBM 701은 작동을 단순화하는 기능을 포함했다. 이들은 일반적으로 완전한 입출력 작업을 수행하는 명령어를 포함했다. 동일한 하드웨어 로직을 사용하여 단일 버튼을 누름으로써 천공 카드 (가장 일반적인 것) 또는 마그네틱 드럼 또는 자기 테이프와 같은 다른 입력 미디어의 내용을 로드할 수 있었는데, 이 미디어에는 부트스트랩 프로그램이 포함되어 있었다. 이 부팅 개념은 1950년대와 1960년대 초반의 IBM 컴퓨터에 대해 다양한 이름으로 불렸지만, IBM은 IBM 7030 스트레치에서 "초기 프로그램 로드"라는 용어를 사용했고, 이후 1964년 IBM 시스템/360을 시작으로 메인프레임 라인에 사용했다.
부팅 역사
IBM 701 컴퓨터(1952~1956)에는 '로드' 버튼이 있었는데, 이 버튼을 누르면 로드 선택 스위치의 위치에 따라 천공 카드 판독기의 천공 카드, 테이프 드라이브의 자기 테이프 또는 자기 드럼 장치에서 첫 번째 36비트 워드를 주기억장치로 읽어들이는 작업이 시작되었다. 그런 다음 왼쪽 18비트 하프 워드는 명령어처럼 실행되었고, 이는 일반적으로 추가 워드를 메모리로 읽어 들였다. 로드된 부트 프로그램이 실행되었고, 이는 다시 인간 조작자의 추가 도움 없이 해당 매체에서 더 큰 프로그램을 메모리로 로드했다. IBM 704, IBM 7090, 및 IBM 7094는 유사한 메커니즘을 가졌지만, 다른 장치에 대해 다른 로드 버튼을 가졌다. "부팅"이라는 용어는 적어도 1958년부터 이러한 의미로 사용되었다.
부팅 역사
그 시대의 다른 IBM 컴퓨터들도 유사한 기능을 가지고 있었다. 예를 들어, IBM 1401 시스템(1958년경)은 카드 판독기를 사용하여 천공 카드에서 프로그램을 로드했다. 천공 카드에 저장된 80개의 문자는 메모리 위치 001에서 080으로 읽혀졌고, 컴퓨터는 메모리 위치 001로 분기하여 첫 번째 저장된 명령어를 읽었다. 이 명령어는 항상 동일했다: 이 첫 80개의 메모리 위치에 있는 정보를 어셈블리 영역으로 이동하여 천공 카드 2, 3, 4 등의 정보가 결합되어 저장된 프로그램을 형성할 수 있도록 하는 것이었다. 이 정보가 어셈블리 영역으로 이동되면, 기계는 080 위치의 명령어(카드를 읽음)로 분기하고 다음 카드를 읽어 정보가 처리되었다.
부팅 역사
다른 예는 1953년의 십진법 기계인 IBM 650으로, 운영자 패널에 10개의 10위치 스위치 그룹이 있었는데, 이는 메모리 워드(주소 8000)로 주소 지정할 수 있었고 명령어로 실행될 수 있었다. 따라서 스위치를 7004000400으로 설정하고 해당 버튼을 누르면 카드 판독기의 첫 번째 카드를 메모리(옵코드 70)로 주소 400부터 읽어들이고, 400으로 점프하여 해당 카드에 있는 프로그램 실행을 시작했다. IBM 7040 및 7044는 유사한 메커니즘을 가지고 있었는데, 로드 버튼을 누르면 전면 패널의 입력 키에 설정된 명령어가 실행되고, 해당 명령어가 설정하는 채널에 주소 00100부터 메모리로 데이터를 전송하는 명령이 주어졌다. 전송이 완료되면 CPU는 주소 00101로 점프했다.
IBM의 경쟁사들도 단일 버튼 프로그램 로드를 제공했다.
부팅 역사
CDC 6600 (1964년경)은 144개의 토글 스위치가 있는 데드 스타트 패널을 가지고 있었다. 데드 스타트 스위치는 토글 스위치에서 12개의 12비트 워드를 주변 프로세서 (PP) 0의 메모리로 입력하고, PP 0이 메모리에 로드된 코드를 실행하게 함으로써 로드 시퀀스를 시작했다. PP 0은 필요한 코드를 자체 메모리에 로드한 다음 다른 PP들을 초기화했다.
PDP-10의 첫 번째 모델은 "READ IN" 버튼을 가지고 있었는데, 이를 누르면 프로세서가 재설정되고 제어판의 스위치로 지정된 장치에서 I/O 작업이 시작되어, 후속 워드 읽기를 위한 대상 주소와 카운트를 제공하는 36비트 워드를 읽어 들였다. 읽기가 완료되면 프로세서는 마지막으로 읽어들인 워드로 점프하여 읽어들인 코드를 실행하기 시작했다.
부팅 역사
이와 관련된 주목할 만한 변형은 버로스 B1700에서 발견되는데, 여기에는 부트 롬도 하드와이어드 IPL 작업도 없다. 대신, 시스템이 재설정된 후 전면 패널에 장착된 카세트 테이프 드라이브에서 마이크로명령어를 순차적으로 읽고 실행한다. 이로써 RAM에 부트 로더가 설정되고, 이 부트 로더가 실행된다. 그러나 이는 시스템에 대해 거의 가정을 하지 않으므로, 심각한 CPU 오류의 경우에도 전면 패널에 이해할 수 있는 코드를 표시하는 진단(유지보수 테스트 루틴) 테이프를 로드하는 데도 사용할 수 있다.
IBM 시스템/360 및 현재의 Z/아키텍처 기계를 포함한 후속 제품에서 부팅 프로세스는 초기 프로그램 로드 (IPL)로 알려져 있다.
부팅 역사
IBM은 7030 (스트레치)를 위해 이 용어를 만들었고, 시스템/360 설계에 다시 도입했으며, 오늘날에도 해당 환경에서 계속 사용하고 있다. 시스템/360 프로세서에서 IPL은 컴퓨터 운영자가 세 자리 16진수 장치 주소 (CUU; C=I/O 채널 주소, UU=제어 장치 및 장치 주소)를 선택한 후 LOAD 버튼을 눌러 시작한다. 고성능 System/360 모델, 대부분의 System/370 및 일부 후기 시스템에서는 스위치와 LOAD 버튼의 기능이 그래픽 콘솔 화면의 선택 가능한 영역을 사용하여 시뮬레이션되며, 종종 IBM 2250과 유사한 장치 또는 IBM 3270과 유사한 장치이다. 예를 들어, System/370 모델 158에서 키보드 시퀀스 0-7-X (영, 칠, X 순서)는 입력 영역에 입력된 장치 주소에서 IPL을 발생시킨다. 암달 470V/6 및 관련 CPU는 선택적인 두 번째 채널 장치가 설치된 CPU에서 네 자리 16진수를 지원하여 총 32개 채널을 지원했다. 이후 IBM도 16개 이상의 채널을 지원하게 된다.
부팅 역사
IBM Z 이전의 IBM 시스템/360 및 그 후속 제품(예: 암달 제품군)에서 IPL 기능은 운영자가 지정한 장치에서 24바이트를 읽어 실제 주소 0부터 주 기억 장치에 로드한다. 두 번째와 세 번째 8바이트 그룹은 시동 프로그램을 계속 로드하기 위한 채널 명령 워드 (CCW)로 처리된다 (첫 번째 CCW는 항상 CPU에 의해 시뮬레이션되며, 명령 연쇄 및 잘못된 길이 표시 억제가 강제되는 읽기 IPL 명령 02h로 구성된다). I/O 채널 명령이 완료되면 첫 번째 8바이트 그룹이 프로세서의 프로그램 상태 워드 (PSW)에 로드되고, 해당 PSW로 지정된 위치에서 시동 프로그램이 실행을 시작한다. IPL 장치는 일반적으로 디스크 드라이브이므로, 02h 읽기 명령에 특별한 의미가 부여되지만, 정확히 동일한 절차가 테이프 드라이브나 심지어 카드 판독기와 같은 다른 입력 장치에서 IPL을 수행하는 데도 장치 독립적인 방식으로 사용되어, 예를 들어 새 컴퓨터에 운영체제 초기 배포 자기 테이프에서 운영체제를 설치할 수 있다. 디스크 컨트롤러의 경우, 02h 명령은 또한 선택된 장치가 실린더 0000h, 헤드 0000h로 탐색하여 탐색 실린더 및 헤드 명령 07h을 시뮬레이션하고, 레코드 01h를 검색하여 검색 ID 일치 명령 31h을 시뮬레이션하게 한다. 테이프 및 카드 컨트롤러는 탐색 및 검색을 시뮬레이션하지 않는다. 이러한 장치 클래스의 경우 읽기 IPL 명령은 단순히 순차 읽기 명령이다.
부팅 역사
디스크, 테이프 또는 카드 덱은 실제 운영 체제 또는 독립 실행형 유틸리티를 주 기억 장치에 로드하기 위한 특수 프로그램을 포함해야 하며, 이 특정 목적을 위해 "IPL 텍스트"는 독립 실행형 DASDI (직접 액세스 저장 장치 초기화) 프로그램 또는 운영 체제에서 실행되는 동등한 프로그램(예: ICKDSF)에 의해 디스크에 배치되지만, IPL 가능한 테이프 및 카드 덱은 일반적으로 이 "IPL 텍스트"가 이미 존재하도록 배포된다.
IBM은 IPL 프로세스에 몇 가지 진화적 변화를 도입하여 시스템/370 확장 아키텍처(S/370-XA) 및 이후 버전에 대해 일부 세부 사항을 변경하고, z/아키텍처에 대한 새로운 유형의 IPL을 추가했다.
부팅 역사
디지털 이큅먼트 코퍼레이션 (DEC) PDP-5 및 PDP-8 (1965)부터 시작된 미니컴퓨터는 CPU를 이용하여 입출력 작업을 지원함으로써 설계를 단순화했다. 이는 비용을 절감했지만, 단일 버튼을 누르는 것보다 부팅을 더 복잡하게 만들었다. 미니컴퓨터는 일반적으로 전면 패널의 스위치 배열을 조작하여 짧은 프로그램을 토글로 입력하는 방법을 가지고 있었다. 초기 미니컴퓨터는 전원이 꺼져도 정보가 손실되지 않는 자기코어 메모리를 사용했기 때문에, 이러한 부트스트랩 로더는 지워지지 않는 한 그대로 유지되었다. 프로그램 버그로 인해 모든 메모리를 덮어쓰는 루프가 발생하면 우발적으로 지워지는 경우도 있었다.
이러한 간단한 형태의 부팅을 사용하는 다른 미니컴퓨터로는 휴렛팩커드의 HP 2100 시리즈(1960년대 중반), 오리지널 데이터 제너럴 노바 (1969), 그리고 DEC의 PDP-4 (1962) 및 PDP-11 (1970)이 있다.
미니컴퓨터 I/O 장치에서 읽기 작업을 유발하는 데 필요한 I/O 작업은 일반적으로 다른 장치 컨트롤러마다 달랐기 때문에, 다른 장치에는 다른 부트스트랩 프로그램이 필요했다.
부팅 역사
DEC는 나중에 1971년에 PDP-11용으로 최대 32단어(64바이트)의 부트스트랩 프로그램을 저장하는 선택적 다이오드 매트릭스 ROM을 추가했다. 이것은 Unibus에 꽂히고 32x16 배열의 반도체 다이오드를 담고 있는 인쇄 회로 카드인 M792로 구성되었다. 모든 512개의 다이오드가 제자리에 있으면 메모리는 모든 "1" 비트를 포함했다. 이 카드는 비트가 "0"이 되도록 각 다이오드를 잘라냄으로써 프로그래밍되었다. DEC는 또한 필요 없는 다이오드를 단순히 생략하여 많은 표준 입력 장치용으로 미리 프로그래밍된 카드 버전인 BM792-Yx 시리즈를 판매했다.
부팅 역사
이전 방식을 따르자면, 초기 PDP-1은 하드웨어 로더를 가지고 있어서, 운영자가 "로드" 스위치를 누르기만 하면 천공 테이프 판독기가 프로그램을 직접 코어 메모리에 로드하도록 지시할 수 있었다. PDP-7, PDP-9, 및 PDP-15 (PDP-4의 후속 모델)에는 천공 테이프에서 프로그램을 읽어 실행하는 Read-In 버튼이 추가되었다. 데이터 제너럴 슈퍼노바는 전면 패널 스위치를 사용하여 컴퓨터가 전면 패널의 데이터 스위치로 지정된 장치에서 메모리로 명령을 자동으로 로드하고, 로드된 코드로 점프하도록 했다.
천공 테이프 판독기가 있는 미니컴퓨터에서 부팅 프로세스에서 실행되는 첫 번째 프로그램인 부트 로더는 체크섬이 있는 천공 테이프를 읽을 수 있는 2단계 부트 로더(종종 이진 로더로 불림) 또는 외부 저장 매체에서 운영체제를 코어 메모리로 읽어 들였다. 부트 로더의 의사코드는 다음 8개 명령과 같이 간단할 수 있다.
부팅 역사
관련된 예시는 1970년대 Nicolet Instrument Corporation 미니컴퓨터의 로더를 기반으로 하며, Teletype Model 33 ASR의 천공 테이프 판독기-천공 장치를 사용한다. 2단계 로더의 바이트는 천공 테이프에서 역순으로 읽혀진다.
2단계 로더의 길이는 마지막 바이트가 7번 위치를 덮어쓰도록 되어 있다. 6번 위치의 명령이 실행된 후 7번 위치에서 2단계 로더가 실행되기 시작한다. 2단계 로더는 그 다음 운영체제가 포함된 훨씬 더 긴 테이프가 테이프 판독기에 놓일 때까지 기다린다. 부트 로더와 2단계 로더의 차이점은 천공 테이프 읽기 오류를 포착하기 위한 확인 코드의 추가인데, 이는 Teletype Model 33 ASR과 같은 비교적 저렴하고 "파트타임" 하드웨어에서 빈번하게 발생하는 일이다. (Friden Flexowriter는 훨씬 더 신뢰할 수 있었지만, 비용도 비교적 많이 들었다.)
부팅 역사
앨테어 8800 (1975년 출시)과 그보다 더 이전의 유사한 기기(인텔 8008 CPU 기반)와 같은 초기 마이크로컴퓨터는 부트스트래핑 하드웨어 자체가 없었다. 전원이 켜지면 CPU는 임의의 데이터를 포함하는 메모리를 보게 되었다. 이 기기의 전면 패널에는 주소와 데이터를 입력하기 위한 토글 스위치가 있었고, 컴퓨터 메모리 워드와 주소 버스의 각 비트당 하나의 스위치가 있었다. 하드웨어에 간단한 추가를 통해 한 번에 하나의 메모리 위치를 해당 스위치에서 로드하여 부트스트랩 코드를 저장할 수 있었다. 그 동안 CPU는 메모리 내용을 실행하려고 시도하는 것을 방지했다. 올바르게 로드되면 CPU는 부트스트래핑 코드를 실행할 수 있게 되었다. 여러 초기 미니컴퓨터에 사용된 것과 유사한 이 프로세스는 지루하고 오류가 없어야 했다.
ROM의 도입과 마스크 프로그래밍 ROM, PROM, 이피롬, 플래시 메모리를 포함한 다양한 변형은 ROM의 물리적 크기와 비용을 줄였다. 이로 인해 펌웨어 부팅 프로그램을 컴퓨터의 일부로 포함할 수 있게 되었다.
부팅 역사
데이터 제너럴 노바 1200 (1970) 및 노바 800 (1971)에는 프로그램 로드 스위치가 있었는데, 이 스위치는 두 개의 ROM 칩을 제공하는 옵션과 결합하여 해당 ROM 칩에서 주 기억 장치로 프로그램을 로드하고 실행했다. 디지털 이큅먼트 코퍼레이션은 집적 회로 ROM 기반 BM873 (1974), M9301 (1977), M9312 (1978), REV11-A 및 REV11-C, MRV11-C, 및 MRV11-D ROM 메모리를 도입했는데, 이들 모두 부트스트랩 ROM으로 사용 가능했다. PDP-11/34 (1976), PDP-11/60 (1977), PDP-11/24 (1979), 및 대부분의 후기 모델에는 부팅 ROM 모듈이 포함된다.
부팅 역사
CSELT 연구원이었던 알베르토 차라멜라가 1975년에 특허를 낸 이탈리아 전화 교환 컴퓨터 "Gruppi Speciali"는 (외부) ROM을 포함했다. Gruppi Speciali는 1975년부터 반도체로 구성된 ROM 메모리에서 운영체제로 부팅되는 완전한 단일 버튼 기계였다. 비록 Gruppi Speciali의 컴퓨터에 ROM 장치가 기본적으로 내장되어 있지 않았지만, 기계의 설계로 인해 (따라서 이 "부트스트랩 장치"는 아키텍처 독립적이었다) 예를 들어 PDP-11과 같이 설계되지 않은 기계에서도 단일 버튼 ROM 부팅이 가능했다. 전원 차단 후 기계 상태를 저장하는 것도 가능했는데, 이는 전화 교환 분야에서 또 다른 중요한 기능이었다.
일부 미니컴퓨터와 슈퍼미니컴퓨터는 주 프로세서를 부트스트랩하는 별도의 콘솔 프로세서를 포함한다. PDP-11/44는 콘솔 프로세서로 인텔 8085를 사용했고, 디지털의 VAX 32비트 슈퍼미니컴퓨터 라인의 첫 번째 멤버인 VAX-11/780은 LSI-11 기반 콘솔 프로세서를 가졌다. VAX-11/730은 8085 기반 콘솔 프로세서를 가졌다. 이러한 콘솔 프로세서는 다양한 저장 장치에서 주 프로세서를 부팅할 수 있었다.
VAX-11/750과 같은 일부 다른 슈퍼미니컴퓨터는 부팅의 첫 단계를 포함한 콘솔 기능을 CPU 마이크로코드에서 구현한다.
일반적으로 마이크로프로세서는 재설정 또는 전원 켜짐 상태 후에 "특정 주소에서 시작하는 코드를 실행하기 시작" 또는 "특정 주소에서 다중 바이트 코드를 찾아 지정된 위치로 점프하여 실행 시작" 형태의 시작 프로세스를 수행한다. 해당 마이크로프로세서를 사용하여 구축된 시스템은 이러한 특수 위치를 영구 ROM이 차지하도록 하여 시스템이 운영자 지원 없이 항상 작동을 시작한다. 예를 들어, 인텔 x86 프로세서는 항상 F000:FFF0에서 시작하는 명령을 실행하여 시작하고, MOS 6502 프로세서의 경우, 초기화는 $FFFD (MS 바이트)와 $FFFC (LS 바이트)에서 두 바이트 벡터 주소를 읽고 해당 위치로 점프하여 부트스트랩 코드를 실행함으로써 시작된다.
1976년에 출시된 애플 I은 PROM 칩을 탑재하여 상업용 컴퓨터에서 부팅 프로세스를 위해 (앨테어 8800과 같은) 전면 패널의 필요성을 없앴다. 애플의 광고에 따르면 "더 이상 스위치도, 불빛도 없습니다... PROM의 펌웨어는 키보드에서 (모든 것을 헥스 코드로) 프로그램을 입력, 표시 및 디버그할 수 있게 합니다."
당시에는 고정 기억 장치가 비쌌기 때문에, 애플 II는 매우 작은 단계들을 연속적으로 사용하여 디스크 운영체제를 부팅했으며, 각 단계는 점진적으로 더 복잡한 부팅 프로세스의 다음 단계로 제어를 넘겼다. (자세한 내용은 애플 도스: 부트 로더 참조) 디스크 운영체제의 극히 일부만이 ROM에 의존했기 때문에, 하드웨어는 매우 유연하여 광범위한 맞춤형 디스크 복사 방지 메커니즘을 지원했다. (자세한 내용은 소프트웨어 크래킹: 역사 참조)
일부 운영체제, 특히 애플의 1995년 이전 매킨토시 시스템은 하드웨어와 너무 밀접하게 엮여 있어서 표준 운영체제 외에는 다른 운영체제를 기본적으로 부팅하는 것이 불가능했다. 이는 위에서 언급한 스위치를 사용하는 시나리오의 정반대 극단으로, 매우 융통성이 없지만 모든 하드웨어가 정상적으로 작동하는 한 비교적 오류 방지 및 바보 방지가 된다. 이러한 상황에서 일반적인 해결책은 표준 OS에 속하는 프로그램으로 작동하여 시스템을 가로채고 다른 OS를 로드하는 부트 로더를 설계하는 것이다. 이 기술은 애플이 A/UX 유닉스 구현에 사용했고, 다양한 프리웨어 운영체제와 BeOS Personal Edition 5에서도 복제되었다.
아타리 ST 마이크로컴퓨터와 같은 일부 기계는 운영체제가 ROM에서 실행되면서 "즉시 켜지는" 방식이었다. 따라서 OS를 보조 또는 3차 저장소에서 검색하는 것은 부트스트래핑의 특징적인 작업에서 제외되었다. 시스템 사용자 지정, 액세서리 및 기타 지원 소프트웨어가 자동으로 로드될 수 있도록, 아타리의 플로피 드라이브는 부팅 프로세스 중에 추가 구성 요소를 위해 읽혀졌다. 시스템이 추가 구성 요소를 검색하는 동안 플로피를 수동으로 삽입할 시간을 제공하는 시간 제한 지연이 있었다. 이는 빈 디스크를 삽입하여 피할 수 있었다. 아타리 ST 하드웨어는 또한 아타리의 전자 게임 제작 유산에서 이어져 내려온 게임 목적으로 카트리지 슬롯이 기본 프로그램 실행을 제공할 수 있도록 설계되었다. Spectre GCR 카트리지를 매킨토시 시스템 ROM과 함께 게임 슬롯에 삽입하고 아타리를 켜면, 아타리 자체 TOS 대신 매킨토시 운영체제를 "기본적으로 부팅"할 수 있었다.
IBM PC에는 바이오스라고 불리는 ROM 기반 펌웨어가 포함되어 있었다. 이 펌웨어의 기능 중 하나는 컴퓨터 전원이 켜질 때 POST(Power-On Self-Test)를 수행한 다음, 부팅 장치에서 소프트웨어를 읽어 실행하는 것이었다. IBM PC의 BIOS와 호환되는 펌웨어는 IBM PC 호환기종 컴퓨터에서 사용된다. UEFI는 인텔이 원래 아이테니엄 기반 기계를 위해 개발했으며, 나중에 인텔 프로세서를 사용하는 애플 맥을 포함한 X86 기반 기기에서 바이오스의 대안으로도 사용되었다.
유닉스 워크스테이션은 원래 벤더별 ROM 기반 펌웨어를 가졌다. 썬 마이크로시스템즈는 나중에 포스 인터프리터를 통합한 오픈 펌웨어를 개발했으며, 대부분의 펌웨어는 포스로 작성되었다. 이는 IEEE 표준 1275-1994로 표준화되었다. 이 표준을 구현하는 펌웨어는 파워PC 기반 매킨토시와 일부 다른 파워PC 기반 기기, 그리고 썬 자체의 SPARC 기반 컴퓨터에서 사용되었다. Advanced RISC Computing 사양은 또 다른 펌웨어 표준을 정의했으며, 이는 일부 MIPS 아키텍처 기반 및 DEC 알파 기반 기기와 SGI Visual Workstation x86 기반 워크스테이션에서 구현되었다.
부팅 최신 부트 로더
컴퓨터가 꺼지면 운영체제, 응용 프로그램 코드 및 데이터를 포함한 소프트웨어는 비휘발성 메모리에 저장된다. 컴퓨터 전원이 켜지면 일반적으로 RAM에 운영체제나 로더가 없다. 컴퓨터는 먼저 ROM (나중에는 EEPROM, NOR 플래시)에 저장된 비교적 작은 프로그램을 실행하여 엑시큐트 인 플레이스를 지원하고, CPU와 마더보드를 초기화하며, 메모리 (특히 x86 시스템에서)를 초기화하고, 운영체제 프로그램과 데이터를 RAM에 로드할 수 있는 스토리지 (일반적으로 블록 주소 지정 장치, 예를 들어 하드 디스크 드라이브, 낸드 플래시, 솔리드 스테이트 드라이브)에 접근하며, 다른 I/O 장치를 초기화한다.
이 시퀀스를 시작하는 작은 프로그램을 부트스트랩 로더, 부트스트랩 또는 부트 로더라고 한다. 종종 여러 단계의 부트 로더가 사용되는데, 이 과정에서 점점 더 복잡한 여러 프로그램이 체인 로딩 프로세스를 통해 차례로 로드된다.
부팅 최신 부트 로더
일부 이전 컴퓨터 시스템은 인간 조작자 또는 주변 장치로부터 부팅 신호를 받으면 매우 적은 수의 고정 명령어를 특정 위치의 메모리에 로드하고, 하나 이상의 CPU를 초기화한 다음, CPU를 해당 명령어로 가리키고 실행을 시작할 수 있다. 이러한 명령어는 일반적으로 일부 주변 장치(작업자가 스위치로 선택할 수 있음)에서 입력 작업을 시작한다. 다른 시스템은 주변 장치 또는 I/O 컨트롤러에 직접 하드웨어 명령을 보내 매우 간단한 입력 작업(예: "시스템 장치의 0번 섹터를 1000번 위치부터 메모리에 읽어들이기")이 수행되도록 하여, 소수의 부트 로더 명령어를 메모리에 효과적으로 로드한다. 그런 다음 I/O 장치에서 완료 신호가 CPU에 의해 명령 실행을 시작하는 데 사용될 수 있다.
부팅 최신 부트 로더
작은 컴퓨터는 종종 덜 유연하지만 더 자동적인 부트 로더 메커니즘을 사용하여 컴퓨터가 빠르고 미리 정해진 소프트웨어 구성으로 시작하도록 한다. 예를 들어, 많은 데스크톱 컴퓨터에서 부트스트래핑 프로세스는 CPU가 미리 정의된 주소에서 ROM에 포함된 소프트웨어(IBM PC의 바이오스와 같은)를 실행하는 것으로 시작된다(인텔 x86 시리즈를 포함한 일부 CPU는 외부 도움 없이 재설정 후 이 소프트웨어를 실행하도록 설계되어 있다). 이 소프트웨어는 부팅에 참여할 수 있는 장치를 검색하고, 가장 유망한 장치의 특수 섹션(가장 일반적으로 부트 섹터)에서 작은 프로그램을 고정된 엔트리 포인트(예: 섹터 시작)부터 로드하는 기본적인 기능을 포함한다.
부트 로더는 특이한 제약에 직면할 수 있는데, 특히 크기에 있어서 그렇다. 예를 들어, IBM PC 및 호환 기종에서 부팅 코드는 MBR과 PBR에 들어가야 하며, 이는 단일 섹터로 제한된다. IBM 시스템/360에서는 크기가 IPL 매체(예: 천공 카드 크기, 트랙 크기)에 의해 제한된다.
부팅 최신 부트 로더
이러한 제약이 있는 시스템에서 RAM에 로드되는 첫 번째 프로그램은 운영 체제를 로드하기에 충분히 크지 않을 수 있으며, 대신 더 큰 다른 프로그램을 로드해야 한다. RAM에 로드되는 첫 번째 프로그램을 1단계 부트 로더(first-stage boot loader)라고 하며, 이 프로그램이 로드하는 프로그램을 2단계 부트 로더(second-stage boot loader)라고 한다. 많은 임베디드 CPU에서, 종종 0단계 부트 로더라고 불리는 CPU 내장 부트 ROM은 1단계 부트 로더를 찾아 로드할 수 있다.
1단계(하드웨어 초기화 단계) 부트 로더의 예로는 바이오스, UEFI, 코어부트, Libreboot 및 Das U-Boot가 있다. IBM PC에서 마스터 부트 레코드 (MBR) 및 파티션 부트 레코드 (PBR)의 부트 로더는 최소 32KB (나중에는 64KB)의 시스템 메모리를 요구하고 원래 8088/8086 프로세서가 지원하는 명령만 사용하도록 코딩되었다.
부팅 최신 부트 로더
shim, GNU GRUB, rEFInd, BOOTMGR, Syslinux, 그리고 NTLDR과 같은 2단계(OS 초기화 단계) 부트 로더는 그 자체가 운영 체제는 아니지만, 운영 체제를 적절히 로드하고 실행을 전달할 수 있다. 운영 체제는 그 후 자체적으로 초기화하고 추가 장치 드라이버를 로드할 수 있다. 2단계 부트 로더는 자체 작동을 위한 드라이버가 필요하지 않지만, 대신 바이오스, UEFI 또는 오픈 펌웨어와 같은 시스템 펌웨어에서 제공하는 일반적인 저장소 접근 방법을 사용할 수 있으며, 일반적으로 제한된 하드웨어 기능과 낮은 성능을 갖는다.
부팅 최신 부트 로더
많은 부트 로더(GNU GRUB, rEFInd, Windows의 BOOTMGR, Syslinux, Windows NT/2000/XP의 NTLDR 등)는 사용자에게 여러 부팅 선택지를 제공하도록 구성할 수 있다. 이러한 선택지에는 다른 운영 체제(듀얼 또는 멀티 부팅을 위한 다른 파티션 또는 드라이브), 동일한 운영 체제의 다른 버전(새 버전에서 예상치 못한 문제가 발생할 경우), 다른 운영 체제 로딩 옵션(예: 복구 또는 안전 모드로 부팅), 그리고 운영 체제 없이 작동할 수 있는 일부 독립 실행형 프로그램(예: 메모리 테스터(memtest86+)), 기본 셸(GNU GRUB에서와 같이), 또는 심지어 게임(List of PC Booter games)이 포함될 수 있다. 일부 부트 로더는 다른 부트 로더를 로드할 수도 있다. 예를 들어, GRUB은 Windows를 직접 로드하는 대신 BOOTMGR을 로드한다. 일반적으로 기본 선택지는 시간 지연과 함께 미리 선택되며, 이 시간 동안 사용자는 키를 눌러 선택지를 변경할 수 있다. 이 지연 후에는 기본 선택지가 자동으로 실행되어 상호 작용 없이 정상적인 부팅이 이루어질 수 있다.
부팅 최신 부트 로더
부팅 프로세스는 컴퓨터가 사용자와 상호작용할 준비가 되거나, 운영체제가 시스템 프로그램이나 응용 프로그램을 실행할 수 있을 때 완료된 것으로 간주될 수 있다.
많은 임베디드 시스템은 즉시 부팅되어야 한다. 예를 들어, 디지털 텔레비전이나 GPS 내비게이션 장치가 시작되기까지 1분씩 기다리는 것은 일반적으로 용납되지 않는다. 따라서 이러한 장치는 ROM 또는 플래시 메모리에 소프트웨어 시스템을 가지고 있어 장치가 즉시 작동을 시작할 수 있다. 장치 제작 시 로딩이 미리 계산되어 ROM에 저장될 수 있기 때문에 로딩이 거의 또는 전혀 필요하지 않다.
크고 복잡한 시스템은 운영체제 및 다른 프로그램이 로드되고 실행될 준비가 될 때까지 여러 단계로 진행되는 부팅 절차를 가질 수 있다. 운영체제는 시작되거나 중지되지 않는 것처럼 설계되므로, 부트 로더는 운영체제를 로드하고, 그 시스템 내의 단순한 프로세스로 자신을 구성한 다음, 운영체제로 제어를 돌이킬 수 없게 전환할 수 있다. 그러면 부트 로더는 다른 프로세스와 마찬가지로 정상적으로 종료된다.
대부분의 컴퓨터는 컴퓨터 네트워크를 통해서도 부팅이 가능하다. 이 시나리오에서는 운영체제가 서버의 디스크에 저장되며, 특정 부분이 단순 파일 전송 프로토콜 (TFTP)과 같은 간단한 프로토콜을 사용하여 클라이언트로 전송된다. 이러한 부분이 전송된 후에는 운영체제가 부팅 프로세스의 제어를 넘겨받는다.
2단계 부트 로더와 마찬가지로, 네트워크 부팅은 네트워크 인터페이스의 부트 ROM에서 제공하는 일반 네트워크 액세스 방법을 사용하여 시작된다. 이 ROM에는 일반적으로 PXE 이미지가 포함되어 있다. 드라이버는 필요하지 않지만, 운영 체제 커널과 드라이버가 전송되어 시작될 때까지 시스템 기능이 제한된다. 결과적으로, ROM 기반 부팅이 완료되면 네트워크 인터페이스를 사용할 수 없는 운영 체제로 네트워크 부팅하는 것이 전적으로 가능하다.
부팅 IBM 호환 개인용 컴퓨터 (PC)
부팅 장치는 운영체제가 로드되는 저장 장치이다. 최신 PC의 UEFI 또는 바이오스 펌웨어는 다양한 장치에서 부팅을 지원하는데, 일반적으로 GPT 또는 MBR을 통한 로컬 솔리드 스테이트 드라이브 또는 하드 디스크 드라이브, El Torito를 사용하는 광학 디스크 드라이브, USB 대용량 저장 장치 (USB 플래시 드라이브, 메모리 카드 리더, USB 하드 디스크 드라이브, USB 광학 디스크 드라이브, USB 솔리드 스테이트 드라이브 등), 또는 PXE를 사용하는 네트워크 인터페이스 카드 등이 있다. 구식의 덜 일반적인 BIOS 부팅 가능 장치로는 플로피 디스크 드라이브, 집 드라이브, LS-120 드라이브 등이 있다.
일반적으로 시스템 펌웨어(UEFI 또는 BIOS)는 사용자가 부팅 순서를 구성할 수 있도록 한다. 만약 부팅 순서가 "첫째, DVD 드라이브; 둘째, 하드 디스크 드라이브"로 설정되어 있다면, 펌웨어는 DVD 드라이브에서 부팅을 시도하고 (예: 드라이브에 DVD가 없어서) 실패하면 로컬 하드 디스크 드라이브에서 부팅을 시도한다.
부팅 IBM 호환 개인용 컴퓨터 (PC)
예를 들어, 하드 드라이브에 Windows가 설치된 PC에서 사용자는 위에서 주어진 부팅 순서를 설정한 다음 리눅스 라이브 CD를 삽입하여 하드 드라이브에 운영 체제를 설치할 필요 없이 리눅스를 시험해 볼 수 있다. 이는 듀얼 부팅의 한 예인데, 사용자는 컴퓨터가 POST(Power-On Self-Test)를 수행한 후 시작할 운영 체제를 선택한다. 이 듀얼 부팅 예시에서 사용자는 컴퓨터에서 DVD를 삽입하거나 제거하여 선택하지만, 선택된 장치의 부트 매니저 메뉴에서 선택하거나, 컴퓨터 키보드를 사용하여 바이오스 또는 UEFI 부팅 메뉴에서 선택하거나, 또는 둘 다 사용하는 것이 더 일반적이다. 부팅 메뉴는 일반적으로 POST 중에 F8 또는 F12 키를 눌러 진입하며, BIOS 설정은 일반적으로 POST 중에 F2 또는 DEL 키를 눌러 진입한다.
사용자가 인터넷 접속과 같은 다양한 간단한 작업을 위해 일반적으로 리눅스의 변형인 OS로 빠른 부팅을 가능하게 하는 몇 가지 장치가 있다. 예를 들어 Splashtop과 Latitude ON이 있다.
부팅 IBM 호환 개인용 컴퓨터 (PC)
시작 시 IBM 호환 PC의 X86 CPU는 리얼 모드에서 리셋 벡터(세그먼트:오프셋 FFFF0h의 물리적 메모리 주소와 32비트 및 64비트 x86 프로세서의 FFFFFFF0h)에 있는 명령어를 실행하며, 이는 일반적으로 ROM 내의 펌웨어(UEFI 또는 바이오스) 진입점을 가리킨다. 이 메모리 위치는 일반적으로 실행을 펌웨어(UEFI 또는 바이오스) 시작 프로그램의 위치로 전송하는 점프 명령어를 포함한다. 이 프로그램은 POST(Power-On Self-Test)를 실행하여 주기억장치 (DRAM), PCI 버스 및 PCI 장치(내장 옵션 롬 실행 포함)와 같은 필수 장치를 확인하고 초기화한다. 가장 복잡한 단계 중 하나는 SPD를 통해 DRAM을 설정하는 것인데, 이 시점에서는 메모리가 매우 제한적이기 때문에 더욱 복잡하다.
필수 하드웨어 초기화 후, 펌웨어(UEFI 또는 바이오스)는 미리 구성된 비휘발성 메모리 장치 목록("부팅 장치 순서")을 순회하며 부팅 가능한 장치를 찾을 때까지 탐색한다.
부팅 IBM 호환 개인용 컴퓨터 (PC)
바이오스는 부팅 가능한 장치를 찾으면 부트 섹터를 선형 주소 7C00h (일반적으로 세그먼트:오프셋 0000h:7C00h:29이지만, 일부 BIOS는 잘못하여 07C0h:0000h를 사용한다)로 로드하고 부팅 코드로 실행을 전달한다. 하드 디스크의 경우 이를 마스터 부트 레코드 (MBR)라고 한다. 일반적인 MBR 코드는 MBR의 파티션 테이블에서 부팅 가능으로 설정된 파티션을 확인한다. 활성 파티션이 발견되면 MBR 코드는 해당 파티션에서 볼륨 부트 레코드 (VBR)라고 알려진 부트 섹터 코드를 로드하고 실행한다. MBR 부팅 코드는 종종 운영 체제에 특화된다.
부팅 가능한 MBR 장치는 읽을 수 있는 장치이며, 첫 번째 섹터의 마지막 두 바이트에 리틀 엔디언 워드 AA55h(디스크에는 바이트 시퀀스 55h, AAh로 존재하며, 이는 MBR 부팅 서명으로도 알려져 있다)가 포함되어 있거나, 해당 섹터 내의 코드가 x86 PC에서 실행 가능하다는 것이 다른 방식으로 확립된 장치로 정의된다.