hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
자바 (프로그래밍 언어) 역사
자바 버전 체계의 메이저 버전(소수점 위)이 계속 1.x로 고정되어 마이너 업데이트로 여기는 경우들이 있어 1.5 버전부터 5.0(1.5), 6(1.6)의 형태로 제품 버전을 코드 버전과 별개로 발표하고 있다.
언어 자체는 자바 언어 명세(Java Language Specification, JLS)에서 정의되며, 판(edition)으로 구분한다. JDK가 확장되는 동안 언어는 2판에서 거의 변화가 없었으나, JDK 5와 함께 바뀐 JLS 3판에서 제네릭(generic) 타입, 애너테이션(annotation) 같은 기능이 도입되면서 상당히 바뀌었다.
JDK 7에서는 자바 언어에 상당한 변화가 계획되어 있었으나 JDK 7로 예정되었던 변화가 JDK 7과 JDK 8로 나뉘면서 JDK 7에는 상대적으로 사소한 언어 특성만이 추가되었다. 구체적으로 이진수 표기 추가, 가독성을 위해 수 표기에 밑줄(underscore)을 허용, 스위치 문(switch에서 문자열 사용, 제네릭 타입 객체 생성 시 타입 추론(type inference), 자동 자원 해제를 위한 try 문법, 여러 예외 타입을 동시에 잡도록 허용하는 문법 등이 추가되었다.
JDK 9는 사업적으로 엄청난 변화가 있었다. 언어적인 변화보단 사용방법이 바뀌었다. 먼저 사업적으로 사용이 안된다. 이게 무슨뜻이냐면 Java 8 까진 사업적으로 가능한데 JDK 9부터 안된다는 뜻이다. 한마디로 돈을 받고 Java 프로그램을 팔수 없게된다. 하지만 사업이 아닌 개인용 & 학생용은 16까지 가능하다
자바 (프로그래밍 언어) 철학
자바 언어는 다음 5가지의 핵심 목표를 지니고 있다.
자바는 초기 설계부터 객체 지향 언어(객체 지향 프로그래밍)로 설계되었다. C가 C++로 진화한 것과는 차이가 있다. 그리고 같은 코드로 어떤 마이크로프로세서에서나 실행되기를 원했다. 따라서 자바만의 실행 코드인 바이트코드라는 중간 코드를 컴파일러에 의해 생성한다. 그리고 자바 가상 머신(JVM)에 의해 해석되어 실행된다. 따라서 C/C++ 코드로 작성되어 생성된 코드보다 일대일 상황이면 실행 속도가 느리다. 그러나 장점은 같은 코드로 다양한 플랫폼이나 운영 체제에서 실행될 수 있다는 점이다.
자바 (프로그래밍 언어) 자바 실행 코드 생성 및 마이크로프로세서와 관계
자바가 여러 개의 마이크로프로세서(CPU)에서 같은 코드가 실행되기 위해서는 C/C++의 프로그램의 실행 구조와는 다른 방식이 필요하다. C/C++가 특정 CPU의 기계어 코드를 직접 생성하면, 이 기계어 코드가 메모리에 적재되어 바로 실행된다. 따라서 C/C++는 CPU가 달라지면 컴파일러가 달라져야 한다. 임베디드 프로그램의 경우, gcc는 gcc 소스를 사용해서 특정 CPU를 지정하고, 컴파일러(x86 플랫폼에서)로 크로스 컴파일러를 만들 수 있다. x86 리눅스용 프로그램 만든다면, x86 컴파일러를 만들 수 있다. ARM용 프로그램이라면 ARM을 지정하고 컴파일러 소스를 컴파일러(x86에서 실행되는)로 ARM용 크로스 컴파일러를 만들 수 있다. 만약 gcc를 사용하고 싶지 않거나 gcc 컴파일러가 없다면, 특정 CPU 개발 도구는 구입을 해서 사용한다. 그러나 자바는 같은 코드를 사용하여 다른 CPU에서 실행되도록 하기 위해 직접 CPU의 기계어 코드를 생성해서는 안 된다. 그 대신 자바는 바이트코드(Java bytecode)라는 것을 생성한다. 이것을 자바 가상 머신(JVM, Java virtual machine)이 해석을 하여 실행한다. 자바 가상 머신이 인터프리터가 되어 코드 해석 방식의 실행을 함으로써, 같은 바이트코드를 가지고 여러 가지의 CPU에서 실행이 가능해진다. JVM은 CPU와 직접적 관계가 있으므로 이것은 CPU의 기계어 코드로 이루어진다.
자바 (프로그래밍 언어) 자바 실행 코드 생성 및 마이크로프로세서와 관계
자바의 실행 방식은 스택 실행 방식 언어(stack-oriented programming language)를 생각할 수 있다.
이것을 C/C++를 x86 프로세서용 컴파일러로 컴파일하면, 컴파일러와 최적화 등에 따라 다를 수 있지만 다음과 같은 예의 코드가 생성될 수 있다. C 언어에서 실행할 때, 지역변수는 스택이나 CPU의 레지스터를 이용한다. 스택이냐 레지스터냐는 개발 도구의 옵션에서 설정하는 최적화와 함수 내의 변수의 숫자와 관련이 있다. 함수의 블록이 시작되면 레지스터를 스택에 대피시키고, EBP를 스택의 포인터 값으로 설정하여 변수의 베이스 주소로 사용한다. 스택을 이용한다면 다음과 같은 어셈블리 결과를 생각할 수 있다.
자바 (프로그래밍 언어) 자바 실행 코드 생성 및 마이크로프로세서와 관계
x86 프로세서에서 어셈블리어 코드 예는:
이 코드는 2개의 정수형 숫자를 더해 다른 곳에 넣는 과정이다. 메모리에 적체된 코드를 x86이 읽어 실행시킬 수 있는 기계어로 일대일 대응된다. bp 레지스터는 CPU의 스택을 베이스로 한 포인터 레지스터이다. 주로 지역변수로 선언된 경우 스택을 사용한다.
그러나 자바에서 보면:
2개의 숫자를 더하기 위해 스택에 넣고, 다시 스택에서 꺼내서 더한다. 더한 값을 다시 스택에 넣는다.
이 코드는 특정 CPU의 기계어 코드가 아니라, 자바 고유의 기계어로 생각할 수 있는 코드 형태이다. JVM이 읽어 해석한 후, 해당 코드의 기능을 수행한다.
자바 (프로그래밍 언어) 예제
다음은 자바를 사용해 작성한 전통적인 Hello world 프로그램이다.
소스 파일명은 반드시 파일 내의 public class 이름과 동일해야 하며, 파일 확장자는 .java이어야 한다. 예를 들면, 만약 public class 이름이 HelloWorldApp이라면, 파일명은 반드시 HelloWorldApp.java가 되어야 한다.
이 자바 파일이 동작하기 위해서는 자바 컴파일러를 통해서 바이트코드로 컴파일되어 같은 이름의 .class 파일, 즉, HelloWorldApp.class가 생성되어야 한다. 컴파일된 class 파일은 자바 가상 머신을 통해 실행이 가능하다.
리눅스/유닉스 터미널 (혹은 윈도우 cmd)에서 자바 파일을 컴파일한 후 실행하는 방법 예제)
컴파일 후에는 같은 이름의 class 파일인 HelloWorldApp.class가 생성된다.
실행 시에는 확장자인 .class를 붙이지 않는다.
자바 (프로그래밍 언어) 자바 라이브러리
자바 라이브러리(Java Library)는 Java 언어에 대한 라이브러리이다. org, net, javax, java와 같은 도메인 Import를 추가시켜 준다.
자바 (프로그래밍 언어) 자바 파생응용 분야
한편 안드로이드는 자바 VM에 해당하는 달빅계열하에 오픈 자바 클래스를 기반으로한 API로 프로그래밍을 함으로 이 경우 특수한 경우의 자바 프로그래밍이라고 부를수있다.
저급 프로그래밍 언어
저급 프로그래밍 언어(低級 프로그래밍 言語) 또는 로우 레벨 프로그래밍 언어(low-level programming language)란 컴퓨터가 이해하기 쉽게 작성된 프로그래밍 언어로, 일반적으로 기계어와 어셈블리어를 일컫는다. 실행속도가 매우 빠르지만 배우기가 어려우며 유지보수가 힘든 것이 단점이다. 현재는 특수한 경우가 아니면 사용되지 않는다. 저급언어와 반대되는 것으로 고급 프로그래밍 언어가 있다.
저급 프로그래밍 언어 기계어
기계어는 특별한 변환 과정 없이 컴퓨터가 직접 처리할 수 있는 유일한 언어이다. 현재 프로그래머들은 대개 기계어로 직접 프로그램을 작성하지는 않는데 그 까닭은 고급 언어가 자동으로 다루는 수많은 세부 사항들을 신경써야 하기 때문이다. 모든 명령마다 수많은 코드를 기억하고 찾아야 하고, 수정하기 또한 매우 어렵다.
아래는 n번째 피보나치 수를 계산하는 32비트 x86 기계어를 표현한 16진 기능의 예이다:
저급 프로그래밍 언어 어셈블리어
2세대 언어는 기계어 최상단에 추상적인 수준을 제공한다. TX-0, PDP-1과 같은 컴퓨터들을 이용하여 코딩하던 과거에는 MIT 해커들이 했던 최초의 일은 어셈블러를 작성하는 일이었다.
대부분의 어셈블러는 매크로를 제공하므로 공통이 되는 일련의 명령들을 만들어낼 수 있다.
아래는 상단의 피보나치 수 계산기와 동일하지만, MASM 문법을 이용하여 x86 어셈블리어로 표현한 것이다:
동일 기능을 C로 나타내면 다음과 같다:
고급 프로그래밍 언어
고급 프로그래밍 언어 또는 하이 레벨 프로그래밍 언어(high-level programming language)란 사람이 이해하기 쉽게 작성된 프로그래밍 언어로서, 저급 프로그래밍 언어보다 가독성이 높고 다루기 간단하다는 장점이 있다. 컴파일러나 인터프리터에 의해 저급 프로그래밍 언어로 번역되어 실행된다. C 언어, 자바, 베이직 등 대부분의 프로그래밍 언어들은 고급언어에 속한다. 추상화의 정도는 프로그래밍 언어가 얼마나 높은 수준인지를 정의한다.
1960년대에 컴파일러를 이용한 고급 프로그래밍 언어들은 보통 오토코드라 불렀다. 오토코드의 예는 코볼과 포트란이 있다.
컴퓨터용으로 설계된 최초의 고급 프로그래밍 언어는 콘라트 추제가 개발한 플랑칼퀼(Plankalkül)이다. 그러나 이 언어는 추제의 기간 동안 구현되지는 않았으며 그의 초창기 기여는 제2차 세계 대전으로 인해 다른 개발로부터 상당 부분 분리된 상태였다. 영향력 있는 최초의 고급 언어는 포트란으로서 IBM의 초창기 오토코드 시스템의 기계 독립적 개발 언어였다.
고급 프로그래밍 언어 실행 방식
현대의 고급 언어를 실행하는 데에는 일반적으로 3가지 방식 가운데 하나가 쓰인다:
해석(인터프리터)
인터프리터 언어로 작성된 코드가 있을 때 컴파일 과정 없이 문법을 읽고 직접 실행한다. 인터프리터라는 프로그램은 각 프로그램 문을 읽고 프로그램 흐름을 추적하여 무엇을 할지 결정하고 이를 수행한다. 인터프리터와 컴파일러가 결합된 형태의 경우 프로그래밍 문을 기계어로 컴파일하고 그것을 실행한 뒤, 기계어는 버리고 줄을 다시 실행할 때 해석을 새로 다시 한다. 아래에 나열된 다른 두 종류에 비해 인터프리터는 가장 단순한 언어의 동작 구현체이다.
컴파일
고급 프로그래밍 언어 실행 방식
컴파일 언어로 작성된 코드가 있을 때 문법은 실행 가능한 형태로 변환된 다음 실행한다. 컴파일에는 두 종류가 있다:
기계어 생성일부 컴파일러들은 소스 코드를 기계어로 직접 컴파일한다. 컴파일을 위한 원초적인 방식이며, 기계어로 직접적으로 완전하게 변환된 언어들은 순수하게 컴파일된 언어(truly compiled language)라 부른다. (어셈블리어 참고.)
중간 표현특정 언어로 작성된 코드가 중간 표현으로 컴파일되면, 이 표현은 소스 코드를 다시 읽어들이지 않고도 나중에 실행할 것을 염두에 두고 최적화하거나 저장해 둘 수 있다. 중간 표현이 저장될 때 이는 바이트 코드와 같은 형태일 수 있다. 그 다음 중간 표현은 실행을 위해 해석되거나 추가적인 컴파일 과정을 거친다.
소스 대 소스 번역 (다른 프로그래밍 언어로의 번역)
특정 언어로 작성된 코드는 저급 프로그래밍 언어라는 형태로 변환될 수 있으며, 이를 위한 네이티브 코드 컴파일러들이 널리 이용된다. 자바스크립트와 C 프로그래밍 언어는 이러한 번역기들을 위한 주요 대상이다. (예로서 커피스크립트, 치킨 스킴, 에펠 참고.)
한글과컴퓨터
주식회사 한글과컴퓨터는 대한민국의 소프트웨어 개발 업체이다. 아래아한글 1.0을 시작으로 30년 간 PC를 비롯하여, 모바일, 웹, 클라우드 등 디바이스의 경계를 허무는 미래 오피스 환경에 대응하였으며, 새로운 IT환경에 유연하게 대응할 수 있는 구독형 오피스를 기반으로 다양한 서비스를 제공한다.
한글과컴퓨터 발자취
1989년 자국어 워드 프로세서인 한글 1.0 발표, 1990년 10월 9일 설립되었다. 2003년 프라임 그룹에 인수되었으며 2009년 삼보 컨소시엄으로 주인이 바뀌었으나 대표이사의 횡령이라는 악재 끝에 1년만에 다시 매물로 나왔고 결국 2010년 10월 소프트포럼에 의해 인수되었다. 2011년 들어 PC용 오피스인 '한컴오피스'에 더해 신사업 분야인 AI와 클라우드 기반 서비스 등에서 글로벌 성장에 집중하여 사상 최대의 실적을 거두는 꾸준한 경영실적을 보이고 있다.
아래아한글(HWP)을 포함한 한컴오피스는 마이크로소프트 오피스가 독점할 수 있는 시장에서 경쟁력 있는 소프트웨어로 살아남았으며, 마이크로소프트 오피스 수입을 대체하는 대안오피스로 자리매김 했다. HWP 문서포맷은 2009년 공개되었으며, MS-Word를 비롯하여, 네이버오피스 등 기타 오피스솔루션들에서 HWP파일 포맷을 지원하고 있다. 현재 한컴오피스 2010~2022년 버전은 hwpx 형식을 지원한다. 2014년 버전부터는 패치를 통해 hwpx를 기본 문서 확장자로 지정할 수 있다.
김선일 (통역사)
김선일(金鮮一, 1970년 9월 13일 ~ 2004년 6월 22일)은 주 이라크 미군과 거래하는 업체인 주식회사 가나무역 소속으로 이라크 현지에서 근무하는 통역사였다.
김선일 (통역사) 생애
그는 성심외국어전문대학을 졸업해 전문학사 학위를 딴 뒤 대학 학력인정 각종학교였던 부산신학교를 졸업하고, 이후 한국외국어대학교에 편입하여 아랍어를 전공하여 2003년 2월 학사학위를 받았다. 그는 가나무역에 취직하여 2003년 6월 15일에 이라크로 갔다.
2004년 5월 30일, 이라크 수도 바그다드에서 서쪽으로 50킬로미터 떨어진 팔루자 부근에서 아부 무사브 알자르카위가 이끄는 이슬람교 계열 무장 단체인 유일신과 성전(현재의 이슬람 국가)의 인질로 납치되었다. 이 단체는 자이툰 부대 파병국인 대한민국 정부에게 이라크로의 추가 파병 중단 및 현재 주둔하는 한국군을 즉각 철수시키라고 협박하였고, 노무현 정부가 파병을 강행하자 6월 22일에 그를 참수하였다. 뒤에 버려진 시신은 미국군에게 발견되어 미군 수송기로 쿠웨이트로 이송되었고, 이후 한국으로 김 씨의 시신이 송환되었다.
김선일의 아버지와 누나 등 유가족 측근 4명은 대한민국을 상대로 손해배상 청구소송을 제기하였으나, 2007년 김선일의 피살 과정에서 국가의 과실 또는 불법 행위는 없었다는 원고 패소 판결이 내려졌다.
233년 사건
황제 알렉산데르 세베루스가 지난 몇년간 이룩한 페르시아에 대한 '승리'를 축하하기 위해 로마에서 개선식을 연다 (사실 세베루스 황제는 233년에 크테시폰을 향해 진격했지만, 헤로디안의 문헌에 따르면 아르다시르 1세에게 참패를 당했다). 세베루스는 크테시폰을 향해 곧 진격했지만 알레마니의 스와비아 침공에 대해 대응하기 위해 라인전선으로 향한다. 독일 부족은 전선에 있는 로마의 요새를 파괴하고 리메스 게르마니쿠스에 있는 거주지들을 약탈한다.
240년
240년은 율리우스력에서 수요일로 시작하는 윤년이다.
고구려
고구려(高句麗)는 한국의 고대 왕조국가 중 하나이다. 국성은 고씨(高氏)이다. 본래의 국호는 고구려였으나 당시의 금석문과 역사 기록을 토대로 장수왕대에 고려(高麗)로 개칭한 것으로 추정하고 있지만, 왕건이 건국한 고려와 구분하기 위해 고구려로 통칭되고 있다.
기원전 37년 부여의 주몽이 졸본 지역에 나라를 건립한 것을 시초로 보고 있다. 고구려는 이후 만주 일대와 한반도 북부를 정복하였고, 이 과정에서 후한, 위, 후연 등 중국 여러 왕조와 말갈, 동예, 옥저 등 주변국들과 전쟁을 치렀다. 동천왕 시기 수도인 국내성이 위나라에 함락되기도 하고, 이후 고국원왕 때 다시 수도가 함락되고 고국원왕은 백제의 대외정복 전쟁 중 평양성에서 전사하는 등 3세기에서 4세기 사이 고구려의 국력은 위축되기도 하였으나 소수림왕 시기에 내치를 다짐으로써 국력 발전의 기틀을 마련했다.
고구려
광개토대왕과 장수왕 시기에 고구려는 전성기를 맞이하였고 동북아시아의 강국으로 성장한다. 5세기에 남진 정책을 추진하여 수도를 국내성에서 지금의 평양성으로 옮겼고, 5세기 후반 백제의 수도인 위례성를 함락하고 백제, 가야, 신라를 공격하여 큰 성과를 올렸다. 이 시기 고구려는 오늘날 평안도, 랴오닝성, 지린성을 주무대로 삼으며 한반도 중부와 남부, 만주 일대를 자신의 세력권으로 삼았다.
6세기부터 정치적 불안정과 주변 국가들의 성장으로 쇠퇴하였고, 7세기 수나라 및 당나라와 전쟁을 겪으면서 국력이 더욱 쇠퇴했다. 668년 정치 세력의 내분과 나당 연합군의 공격으로 멸망했다.
고구려 문화는 한민족 전통문화의 뿌리 중 하나로, 각저총의 씨름도에 근거해 전통스포츠 씨름의 기원이 된 시대로 추정되고 있다. 또한 난방 방식인 온돌, 현악기 거문고의 기원으로도 여겨진다. 한반도 남부와 풍습과 언어가 같다는 기록이 존재한다.
고구려 국호
고구려 시조 동명성왕은 국호를 '고구려'라 명명하였으나 5세기 장수왕대에 국호를 '고려'로 개칭한 것으로 추정되고 있다. 이후 이름 '고려'는 보덕국과 대조영의 발해에서 국호로 사용하기도 했다. 918년 왕건이 고려를 건국하게 되어 맥을 이었다.
같은 이름의 왕조와의 시대 구분에 관해선 왕씨의 고려대에는 이 왕조를 '전에 있던 고려'라는 뜻의 구고려(句高麗)라 불렀으며 신라국석남산고국사비명후기를 통해 자신들을 '후에 이어진 고려'라는 뜻의 후고려(後高麗)라 칭해 구분하였다. 《삼국사기》를 저술한 김부식은 이 왕조를 4세기까지의 국호인 '고구려'로 표기하며 왕씨가 세운 고려와 구분하였다.
고구려 국호
발음에 관해서는 나라 이름 '고구려'의 한국어 독음이 고구려가 아니라 '고구리'라는 의견이 있다. 이는 麗의 독음이 나라 이름을 나타낼 때는 ‘리’로 발음된다는 음운 법칙에서 비롯되었다. 그러나 조선시대에 훈민정음 창제 이후에 나타난 한글 문헌에 따르면, 고구려라 나타나고 《대동지지》에는 “(중국인이나 음운학 책과 달리) 우리나라 사람은 ‘려’라 바꾸어 부르고 있다.”라고 기록하고 있으며 나라 이름을 나타낼 때도 麗는 ‘려’로 읽는다는 예외도 있는 등 해당 주장은 신빙성이 낮다. 중원왕조들은 고구려를 예(濊)/맥(貊)/고리(槀離)/구려(句麗)/평양(平凉)/요동(遼東) 등으로 호칭하기도 했다.
'구려(句麗)'가 고구려어로 '성(城)'을 뜻하는 단어이고 고구려 지명에 접미사로 자주 등장하는 홀(忽), 골(骨)도 동음이사이며 '국(國)'을 의미하는 여진어 Kuoh-lum-ni, 만주어 gurun, 일본어 クニ와도 관련이 있다는 견해는 많은 학자들이 동의하는 정설이다. '高'에 대해서는 '크다'로 보고 '대성(大城)'으로 해석하는 견해, 상(上)을 뜻하는 '솔/수리/술/소리'의 훈사(訓寫)로서 수도를 뜻하는 '수릿골·솔골(首邑, 上邑)'로 보는 견해, 구려족이 고(高)씨를 칭하며, 자신의 성을 고구려(高句麗)라고 부른 것에서 연유하였다고 보는 견해 등이 있다. 한편 조영광(2015)는 '구려'가 원래는 '나라(國)'를 뜻하였으나 국가가 점차 성장하면서 '성(城)'을 의미하는 단어로 변화되었다는 견해를 제시하였다.
국호 외에도 '고구려'는 고구려대장간마을, 충주고구려천문과학관 등에 영역에서도 쓰이고 있다.
고구려 역사
시조 고주몽(高朱蒙)의 원래 이름은 해주몽(解朱蒙)으로 출생은 기원전 58년이며, 《삼국사기》에 따르면 본래 예맥족의 국가 부여의 일부였던 북부여의 왕 해모수의 아들이다. 해모수는 북부여의 왕이면서 동시에 부여 신화에 등장하는 인물로 천제의 아들이라 불렸다. 외조부는 강을 다스리는 신 하백이며 그의 세 딸 하유화(河柳花)·하훤화(河萱花)·하위화(河葦花)중 하유화가 그의 어머니이다.
이름인 주몽(朱蒙)은 부여어로 활을 잘 쏘는 사람인 신궁(神弓)이라는 뜻이다. 어릴 때부터 활로 파리를 쏘아 맞힐 정도로 재능을 타고 났다 전해진다.
당시 해부루(解夫婁)의 뒤를 이어 부여의 2대 왕이었던 금와왕에게는 일곱 아들이 있었다 전해진다. 일곱 아들중 태자였던 해대소(解帶素, 대소왕)를 주축으로 6명의 형제는 주몽의 재능을 시기하여 죽이려 하였다.
고구려 역사
이에 주몽은 협보(陜父), 오이(烏伊), 마리(摩離)와 함께 부여를 나와 남하하였다. 추격자들을 피해 남쪽으로 내려가 엄리대수(淹利大水)에 이르렀다. 자신들의 앞길을 가로막는 엄리대수를 향해 주몽은 “나는 천제의 손자이며, 강의 신의 외손자이다. 지금 나를 쫓는 자가 뒤를 따르니 그 위험이 급한 데 강을 건널 수 없으니 도와 달라.”라고 하니, 이에 감응한 자라와 물고기가 물 위로 떠올라 띠를 이어 다리를 만들어 주었다. 주몽이 무사히 강을 건너자 물고기와 자라는 다시 돌아가 버렸고, 추격자들은 강을 건너지 못해 더 이상 쫓아오지 못했다 하는데, 이 사건을 가리켜 어별성교(魚鼈成橋)라 일컫는다.
해주몽은 배다른 친구 세명과 함께 남하하여 졸본(卒本)에 정착하였다. 그곳의 세력가 연타발의 둘째 딸 소서노와 혼인하였다. 이후 비류국의 군장 송양(松讓)을 만났다. 해주몽은 송양을 포섭하기 위해 그와 활싸움을 신청했고 송양이 옥가락지를 백보 밖의 표적으로 놓자 기왓장 부서지듯 백발백중하였다고 한다. 이에 기원전 36년 송양은 주몽에게 투항하였다.
고구려 역사
기원전 37년 주몽은 졸본중 오녀산성(五女山城, 환런현)을 도읍으로 삼고 나라이름을 고구려(高句麗)라 개칭하였다. 그리고 왕실의 이름을 해씨(解)에서 고씨(高)로 변경해 이름은 고주몽(高朱蒙)이며 대관식에서 고구려의 1대 왕 추모성왕(東明聖王)이 되었다. 추모성왕(東明聖王)은 즉위한 후 송양의 나라였던 비류국을 다물도(多勿都)라 바꾸고 그를 그곳의 관리자로 임명하였다. 또한 추모성왕은 가장 먼저 근방의 말갈족을 복속시켰다. 기원전 34년 마침내 졸본성과 궁궐을 완성하였으며 기원전 32년에는 오이(烏伊)와 부분노(扶芬奴)를 보내 백두산 동남쪽에 있던 행인국(荇人國)을 정복하였으며, 기원전 28년에는 부위염(扶尉猒)을 보내 북옥저(北沃沮)를 정복하였다. 기원전 24년 가을 음력 8월에 부여에 남아있던 어머니 하유화가 죽었다.
한편 추모성왕의 전 소생 왕후 예씨(禮氏)의 아들 해유리(解瑠璃)는 기원전 37년 부여에서 태어났다. 해유리는 어머니 예씨의 말을 듣고 추모성왕이 남긴 부러진 칼 조각이라는 징표를 주춧돌에서 찾아내 기원전 19년 해유리는 고구려로 찾아가 추모성왕을 만나 성을 개칭해 고유리(高瑠璃)가 되어 그해 음력 4월에 태자로 책봉되었다.
고구려 역사
1년후인 기원전 18년 소서노는 온조(溫祚), 비류(沸流) 등 자식 2명과 함께 기원전 18년 남하하여 비류는 미추홀(彌鄒忽, 인천광역시)에 정착하였으며 온조는 위례성(慰禮城, 서울특별시)에 정착하였다. 이때 온조를 따라 고구려 졸본에서 위례성으로 남하한 열명의 개국공신을 십제(十濟)라 하였다. 개국공신 10명은 마려(馬藜), 오간(烏干), 을음(乙音), 해루(解婁), 흘간(屹干), 곽충(郭忠), 한세기(韓世奇), 범창(笵昌), 조성(趙成)이며 이중 마려는 개국공신 마리의 후손으로 추정되며, 한국 마(馬)씨의 조상이 되었다. 해루는 해모수와 같은 집안사람으로 추정된다. 조성은 직산 조씨의 조상이며 알려지지 않은 공신 중 전섭(全聶)은 한국 전(全)씨의 조상이 되었다고 한다.
고구려 역사
고유리는 동명성왕이 기원전 19년이 서거하자 고구려의 제2대 왕인 유리명왕(瑠璃明王)이 되었다. 기원전 18년 음력 7월에 다물후 송양의 딸을 왕비로 맞이하였다. 기원전 9년에는 고구려를 위협하던 선비족을 부분노(扶芬奴)의 계책을 사용해서 토벌하였다. 기원전 6년 부여의 대소왕은 고구려에 볼모를 요청하였고 유리명왕은 부여의 강력한 국력을 꺼려하여 태자 도절을 인질로 보내려 하였으나, 도절이 두려워 가지 않았다. 이에 대소왕은 기원전 6년 음력 11월 군사 5만여 명을 이끌고 고구려를 침공하였으나 폭설로 많은 군사를 잃고 퇴각하였다. 유리명왕은 부여의 위협에서 벗어나기 위해 3년 압록강 근처의 국내성(國內城, 집안)으로 도읍을 천도하였다. 그러나 2000년 이래 중국 길림성 집안 지역에 대한 활발한 발굴 결과 국내성으로 불리던 집안 평지성과 그 배후의 산성자산성 내부에서 3세기 이전의 유물이 출토되지 않아 그동안 통설이었던 유리명왕의 국내성 천도는 의심 받기 시작했다. 이후 제기된 견해는 산상왕대설(노태돈, 1999; 김희선, 2010; 노태돈, 2012), 태조대왕대설(김종은, 2003; 余昊奎, 2005; 권순홍, 2015; 강현숙, 2015), 신대왕대설(임기환, 2015; 기경량, 2017a; 강진원, 2018; 임기환, 2018b), 유리왕대설(김현숙, 2017)이다.
고구려 역사
9년 음력 8월, 대소왕이 사신을 보내 부여를 섬길 것을 종용하였는데 유리명왕은 국력이 부족한 것을 알고 부여에 신속하기로 하였다. 그러나 왕자 고무휼(高無恤, 대무신왕)이 사신에게 부여의 내정이나 잘 다스리라는 의미의 말을 우회적으로 표현하여 사신이 돌아가도록 하였다.
12년에 전한을 무너트리고 신나라을 세운 왕망이 흉노 정벌을 위해 고구려군을 징발하려 하였으나 이를 거절하자 장수를 보내 공격하여 고구려 장수 연비(延丕)를 죽였다. 이에 고구려는 신나라를 공격하였다. 13년에는 부여가 고구려를 침공하였으나 고무휼이 매복 작전을 써서 부여군을 크게 격파하였다. 유리명왕은 14년에는 양맥(梁貊)을 정복하고 현도군(玄菟郡)의 고구려현(高句麗縣)을 지배하였다.
고구려 역사
3대 왕 대무신왕(大武神王 재위: 4년~44년)은 21년 부여 정벌을 감행하여 22년 음력 2월 장수인 괴유가 부여 대소왕을 죽였다. 왕을 잃은 부여는 분열되어 대소의 동생은 압록곡 부근에 갈사부여를 세웠으며 음력 7월에는 대소왕의 사촌동생이 부여 백성 1만 여 명을 데리고 고구려에 귀순해 사실상 부여를 흡수하였다. 26년 음력 10월 개마국을 공격하여 복속시켰고, 음력 12월에는 구다국이 항복하였다. 28년 음력 7월에 한나라의 요동 태수가 군사를 이끌고 고구려를 침략하였으나 고구려가 수성전으로 버티자 철수하였다. 32년에는 낙랑국을 정벌하여 지배했다. 37년에도 낙랑을 정벌하여 병합한 기사가 있는데, 이를 32년 낙랑 정벌의 연장선으로 보기도 하며, 독립적인 기록으로 판단하여 고구려가 한사군 가운데 하나인 낙랑군을 정벌한 것으로 보기도 한다. 하지만 사실상 낙랑군은 한반도인을 수장으로 삼고 고구려, 백제에 굴복한 뜻으로 공물을 바치는 등 고구려의 입장에서 긴 시간동안 한사군을 정복할 필요가 없었다. 하지만 이후 고구려군은 한사군을 정복하여 지배해 한사군민들은 전멸하였다.
고구려 역사
고구려는 이후 별다른 큰 족적없이 나라를 유지해오다 6대 왕이 된 태조대왕(太祖大王)대에 들어 다시 정복활동을 재게하였다. 태조대왕은 2대 왕 유리명왕의 손자로, 56년에는 동옥저(東沃沮)를 병합하여 동으로는 창해(滄海)·남으로는 살수(薩水, 지금의 청천강)에 이르렀다 68년에는 갈사국(曷思國) 왕의 손자 도두(都頭)가 나라를 들어 항복하고 70년에는 관나부(貫那部) 조나(藻那)를 병합하였다. 72년에는 주나(朱那)를 병합하고 그 왕자 을음(乙音)을 고추가에 임명하였다.
고구려 역사
한편 후한과의 대외 관계에서는 평화적인 외교와 적극적인 공세를 함께 펼쳤다. 105년에는 요동을 공격하여 약탈했으나, 109년과 111년에는 평화적인 외교를 펼쳤다. 118년에는 예맥과 더불어 현도군과 화려성(華麗城)을 공격하였다. 121년 봄에는 후한이 예맥을 공격하였고, 왕은 자신의 동생 또는 서자인 수성(遂成)을 보내 막도록 하였다. 수성은 항복을 가장하여 적군을 속인 후 요지를 장악하였으며 몰래 요동군·현도군을 공격하여 큰 전과를 올렸다. 음력 4월에는 요동의 선비족과 더불어 요수현(遼隧縣)을 공격하여 요동태수 채풍을 살해하였다. 음력 12월에는 마한·예맥과 함께 현도성을 공격하여 포위하였으나, 부여왕 위구태(尉仇台)가 후한과 협공을 펼쳐, 고구려군이 크게 패하였다. 122년에도 마한·예맥과 함께 현도성을 쳤으나 부여의 방해로 패배하였다. 146년에 다시 전쟁이 벌어져, 태조대왕은 요동의 신안(新安)·거향(居鄕)을 약탈하였다. 또한 서안평을 공격하여 대방현령을 죽이고, 낙랑군도 공략하여 낙랑군 태수의 처자를 생포하였다.
고구려 역사
이후 태조대왕의 자식들이 왕위를 두고 다투다가 명림답부(明臨答夫)가 165년 제7대왕 차대왕을 죽이고 제8대왕 신대왕을 옹립하였다. 신대왕은 166년 명림답부를 재상직에 해당하는 국상에 임명하였다. 172년, 한나라 현도태수(玄菟太守) 경림(耿臨)이 대군을 이끌고 고구려를 침입하자 신대왕이 이를 요격할 것인지 아니면 농성할 것인지 명림답부에게 의견을 물었는데, 명림답부는 청야전술을 주장하여 이를 관철시켰다. 결국 한의 군사들이 굶주림에 지쳐 퇴각하였고, 이에 명림답부가 수천 명의 기병을 거느리고 추격하여 좌원(坐原)에서 크게 섬멸하였다. 뒤를 이은 제9대왕 고국천왕(故國川王)은 191년 평민 출신의 을파소(乙巴素)를 제2대 국상에 임명하였다. 194년에는 사회보장제도인 진대법(賑貸法)을 제정하여 빈민을 구제하였다. 후에 고려의 의창과 조선의 환곡에 영향을 주었다.
고구려 역사
고국천왕의 부인이었던 왕후 우씨는 다시 그 아들인 10대왕 산상왕의 부인이 되어 권력을 휘어잡았다. 이것은 고구려의 형사취수 풍습이 남아있던 것이었다. 198년에 환도성(丸都城, 집안)을 쌓았고 203년에는 2대 국상 을파소가 죽어 고우루(高優婁)를 3대 국상으로 삼았다. 209년에는 도읍을 국내성에서 환도성으로 도읍을 옮겼다. 217년에는 후한 평주(平州)의 하요(夏瑤)가 위의 조조군에 쫓겨 1천여 가를 데리고 투항하였으며, 고국천왕은 책성(柵城)에 이들을 안치하였다. 이때를 기점으로 중원의 삼국과의 접촉이 시작되었다.
제11대 왕 동천왕은 227년 왕위에 올라 동오의 손권과 관계를 맺고, 234년에는 위나라의 조예와 화친하였다. 이에 236년에는 손권의 사신 호위(胡衛)를 처형해 목을 위에 보내 관계를 돈독히해 동맹국이 되었다. 위나라 3대 황제 조예는 요동의 공손연을 토벌하기 위해 관구검(毌丘儉)을 유주 자사로 임명하였다. 이에 공손연은 손권과 손을 잡고 협력하였다. 238년 봄, 위에서는 태위 사마의가 우금, 호준 등을 거느리고 보병과 기병 4만 명으로 공손연 토벌에 나섰다.
고구려 역사
사마의는 요동으로 진군하면서 우북평으로 물러나 주둔하던 관구검의 군대를 휘하에 편입하고 동맹 관계인 고구려에 사자를 파견해 공손연을 양쪽에서 협공하도록 원병을 요청하자 동천왕은 고구려의 주부와 대가들을 보내어 군사 1천 명을 거느리고 공손연을 협공하게 한 일변, 공손연은 비연(卑衍)을 대장으로 삼아 양조(楊祚)과 함께 요수에 주둔시켜 20여 리에 걸쳐 구덩이와 책등을 둘러쳐 위군의 내습에 방비한 일변, 요동군은 요수에 의지해 위나라군에 저항하자 사마의의 위군은 남으로 도강하려는 체하고 실은 북으로 도강해 연의 도읍 양평으로 곧바로 향했다. 공손연의 세력은 결국 망하여 요동은 위나라에 흡수되었다.
고구려 역사
완충지대 역할을 하던 공손연이 망하자 고구려와 조위의 관계는 험악해졌다. 242년 동천왕은 장군 득래를 보내 조위의 요동지역 서안평을 침략하였다. 244년 유주자사 관구검(毌丘儉)이 고구려를 침공하였다. 동천왕은 관구검의 군대를 비류수(沸流水)에서 한 번, 양맥곡(梁貊谷)에서 한 번씩 격파했으나, 그 다음 벌어진 전투에서 아군이 패해 1만 8천 명이 죽었다. 동년 10월 관구검은 환도성(丸都城)을 공격하려 함락시키고 사람을 죽였으며, 현도태수(玄菟太守) 왕기(王頎)를 보내 도망친 왕을 추격했다. 동천왕은 유유의 계책으로 위나라 장수 하나를 죽여 적을 혼란시킴으로써, 왕기의 군대를 물리치는 데 성공하였다. 수도로 귀환한 동천왕은 환도성이 전화(戰火)를 입어 도읍으로 적당하지 않다고 여겨, 247년에 임시로 평양성(平壤城)을 쌓고, 수도를 임시로 옮겼다. 이때의 평양성은 지금의 평양직할시 일대가 아니라 독로강(禿魯江: 將子江) 유역의 강계 지역으로 보거나 지안(集安)의 평지 지대로 보는 견해도 있으나 분명치 않다. 248년에 동천왕이 죽었으니 나라 사람들이 슬퍼하여 스스로 목숨을 끊는 자가 많았다고 한다.
고구려 역사
이후 249년 사마의가 고평릉의 변을 일으켜 고구려와 위의 전쟁은 일단락되었다. 10년후인 259년 조위의 장군 울지해(尉遲楷)가 다시 군사를 이끌고 쳐들어 오자 12대왕 중천왕이 기병 5천 명을 이끌고 양맥(梁貊)에서 싸워서 이들을 무찌르고 8천여 명을 목베었다.
한편 당시에 활동했던 촉한의 재상 제갈량이 고구려에 대해 평가하였는데 사람은 호전적이고 지형은 험준하며 단합력이 높아 침공해 복속시키기 어렵다 설명하였다. 때문에 먼저 내부의 갈등부터 만드는 것이 우선이며, 이를 위해 공작 활동으로 내부의 갈등을 증폭시키고 외교나 군사 작전을 통해서 굴복시킬 것을 제시하였다.
고구려 역사
제13대 왕 서천왕은 280년 숙신(肅愼, 말갈)이 쳐들어오자 동생 달가(達賈)를 보내 이를 격퇴하게 했다. 달가는 단로성(檀盧城)을 빼앗아 추장을 죽이고, 6백여 가구를 부여 남쪽의 오천(烏川)으로 이주시켰으며 부락 예닐곱 곳을 복속시켰다. 292년 서천왕의 아들 제14대 왕 폭군 봉상왕이 뒤를 이어 즉위하였다. 어려서부터 교만하고 방탕하며 의심과 시기심이 많았다고 한다. 왕위에 오른 봉상왕은 왕권을 강화하기 위해 숙부인 안국군(安國君) 달가(達賈)를 음모로 살해하였다. 또한 293년에는 동생 고돌고에게 역모죄를 씌워 자살하게 하였으며 도망친 고돌고의 아들 고을불(高乙弗, 미천왕)을 추격하게 하였다.
고구려 역사
음력 8월에 전연의 모용외(慕容廆)가 침입하였다. 봉상왕은 신성으로 대피하려 하였으나 적이 추격해 왔다. 이때 신성의 재(宰)인 북부 소형(小兄) 고노자(高奴子)가 500명의 기병을 거느리고 왕을 맞이하러 나왔다가 모용외의 군을 만나 격파하였다. 봉상왕은 고노자를 대형(大兄)으로 삼고 곡림(鵠林)을 식읍으로 주었다. 296년 음력 8월 모용외가 다시 침입하여 고국원(故國原)에 이르러 서천왕의 무덤을 파헤치고 돌아갔다. 294년에는 6대 국상 상루(尙婁)가 죽어 남부의 대사자(大使者) 창조리(倉助利)를 7대 국상으로 임명하였다.
고구려 역사
298년 음력 9월에 흉년이 들었으나 봉상왕은 궁궐을 증축하는 공사를 강행하여 백성들의 원성이 높았다. 봉상왕은 신하들의 간언을 듣지 않고, 백성들을 살피지 않았다. 300년에도 흉년이 들었으나 다시 궁궐을 증축하니 백성들이 흩어졌다. 이에 국상 창조리가 왕에게 백성을 돌볼 것을 간언하였으나 봉상왕은 오히려 왕권의 지엄함을 역설하며 창조리를 위협하였다. 300년 이에 창조리는 여러 신하들과 모의하여 봉상왕을 폐위하고 압록강에서 소금장수였다던 설이 있는 고을불을 맞이하여 왕으로 삼았다. 제15대 왕 미천왕이었다. 봉상의 들에 장사지내고 왕호를 봉상이라 하였다. 미천왕이 등극하자마자 고구려에 의해 한사군은 존망을 거는 전쟁이 시작되었다. 미천왕은 즉위 초부터 한사군을 치열하게 공격하였다. 한사군은 후한 멸망 이후 사실상 북쪽으로는 고구려 남쪽으로는 백제에 굴복하여 오랜 기간 한반도인들을 한사군의 지배자로 두거나 굴복의 뜻으로 공물을 보내는 등 생존하기 위해 여러 방면을 책을 썼지만 미천왕의 공격을 피할 수는 없었다. 302년에는 고구려군이 현도군을 공격하여 적 8천여 명을 사로잡았으며 311년에는 서안평(西安平)을 정복하여 낙랑군(樂浪郡)을 고립시키는데 성공하였다. 이에 따라 미천왕은 313년에는 낙랑군을, 314년에는 대방군을 정복하여 한사군을 멸망시켰다. 미천왕은 315년에도 다시 현도성을 공격하여 한반도에서 한사군을 모두 정복하였고 끝내 요동까지 정벌하여 한사군 사람들은 절멸돼 역사에 나타나지 않게 된다.
고구려 역사
뒤를 이어 왕이 된 제16대 왕 고국원왕 때 339년에 전연이 쳐들어와 신성에 이르렀다. 고국원왕이 동맹을 청하자 전연은 물러갔다. 이때 맺은 동맹 관계에 따라, 340년에 전연에 조회 (정치)하기도 하였다. 342년 겨울에 모용황은 용성(龍城)으로 천도한 후, 대군을 이끌고 고구려로 쳐들어왔다. 모용황은 왕우가 이끄는 1만 5천의 소수 군대를 평탄한 북쪽 길로 보내고, 자신은 한수와 함께 5만 대군을 이끌고 험난한 남쪽 길을 택해 공격하는, 기만전술을 썼다. 하지만 이를 알아채지 못한 고국원왕은 북쪽으로 왕제 무(武)가 이끄는 정병 5만을 파견하고, 자신은 소수의 군대로 남쪽을 지켰다. 결국, 남쪽 전투에서 크게 패한 고구려군 중에서 장군 아불화도가(阿佛和度加)가 전사하고, 환도성(위나암성)이 함락되었으며, 고국원왕은 단신으로 단웅곡(斷熊谷)으로 피신하였다.
고구려 역사
고국원왕을 추격한 전연군은 북쪽 길에서 고국원왕의 동생 무(武)의 군대를 만나 크게 패하여 퇴각하였다. 전연군은 퇴각하는 길에 고구려 백성 5만 명을 잡아갔다. 343년에 고국원왕은 동생 무를 보내 전연에 신하의 예를 갖추고, 부왕인 미천왕의 시신을 돌려받았으며, 그 해 평양의 동황성(東黃城)으로 거처를 옮겼다. 345년에 전연이 모용각을 보내 남소(南蘇)가 함락되었으며, 349년에는 전연의 망명자였던 송황(宋晃)을 전연으로 송환하였다. 355년에 고국원왕은 전연에 간청하여 모후 주씨를 돌려받는 한편, 전연으로부터 정동대장군 영주자사 낙랑공 고구려왕(征東大將軍 營州刺史 樂浪公 高句麗王)에 책봉되었다. 이후 전연은 전진의 공격을 받아 쇠퇴하였으며, 370년에 멸망하였다. 이때 고국원왕은, 고구려로 도망쳐온 태부 모용평을 체포하여 전진에 송환함으로써 우호관계를 수립하였다.
고구려 역사
369년에 백제가 마한을 정복하러 간 틈을 타, 고국원왕은 보·기병 2만 명을 이끌고 치양성(雉壤城, 현 황해남도 배천군, 구 모로성)으로 진격하였다. 그러나 근초고왕의 말 말굽을 상하게 한 죄를 짓고 고구려로 달아났던 백제인 사기(斯紀)가 다시 백제에 투항하여, ‘고구려의 군사가 많기는 하나 모두 숫자만 채운 허세일 뿐 날래고 용감한 자들은 붉은 깃발의 군대뿐’이라는 고구려의 군사정보를 백제의 근구수 태자에게 알려주었다. 이에 고구려군의 주력부대는 백제군의 집중공격을 받고 무너져 내려 5000여명의 피해를 입고 고국원왕은 목적을 달성하지도 못하고 오히려 백제에게 수곡성(水谷城: 지금의 황해도 신계군)까지 영토를 내주고 말았다. 371년에 고국원왕은 복수를 위해 군사를 일으켜 백제에 재침공하였다. 하지만 패하(浿河; 대동강) 강가에 군사를 매복한 근초고왕이 기습적으로 공격하자, 고구려군은 크게 패하고 말았다. 기세를 탄 근초고왕은 동년 10월에 정예 군사 3만을 이끌고 평양으로 진격해 왔고, 고구려군은 이를 어렵게 물리쳤으나 고국원왕이 전사하고 말았다. 고국원왕은 고국(故國)의 들原에 모셔졌다. 이때부터 백제와의 악연이 시작되어 백잔이라 부르게 되었다.
고구려 역사
고국원왕의 맏아들 제17대 왕 소수림왕은 전진과 교류하여 한국 최초로 불교와 도교 등을 도입하고 한국 최초의 교육기관인 태학(太學)을 받아들여 유교의 이념을 받아들이고 인재를 육성해 관리를 뽑았다. 또한 중앙집권국가의 토대인 율령을 반포하여 고구려를 중앙집권국가로 완성하였다. 소수림왕이 닦아놓은 이러한 제도들을 바탕으로 후임인 광개토대왕과 장수왕이 강력한 국력으로 정복전쟁을 펼칠 수 있게 되었다. 고구려의 광개토대왕이 전연을 공격하였고 전연의 존망이 걸린 전쟁이 시작되었으나 결국 고구려는 요동지역을 정복하게 된다.
고구려 역사
소수림왕의 손자이자 고국양왕의 아들로 태어난 광개토왕은 중국과 일본 등지에서 호태왕(好太王)으로 알려져 있다. 광개토대왕은 17살에 나이에 391년 왕위에 올라 즉위하면서 한국 최초의 연호를 반포해 영락(永樂)이라 명명하고, 또한 군주를 왕에서 태왕(太王)으로 격상해 부르게 하였다. 그 후 바로 정복활동에 나섰다. 고담덕은 18살이던 392년 7월 군사 4만 명을 거느리고 백제의 북쪽 변경을 침략하여 석현성 등 10여 개 성을 함락시켰다. 백제의 왕 진사왕은 광개토대왕이 군사를 부리는 데 능하다는 말을 듣고 나가 막지 못하니 한수(漢水) 북쪽의 여러 부락들이 다수 함락되었다. 승기를 탄 고구려는 10월에 백제 북방의 천혜의 요새이자 중요지인 관미성을 20일에 걸친 포위 끝에 쳐서 함락시켰다. 395년에는 패수에서 백제군 8000여 명을 생포하거나 죽이는 대승을 거두었다. 396년 고구려는 대대적으로 백제를 공격하여 아리수 이북의 58개 성, 700여 개 촌락을 점령하고 위례성을 포위하였다. 이때 백제 아신왕에게서 '영원한 노객(奴客)이 되겠다.'는 항복을 받아 아신왕의 동생과 백제의 대신 10명을 인질로 잡고 백제를 사실상 속방으로 만들어 개선하였다.
고구려 역사
거란을 정벌하여 소수림왕 8년(378년)에 거란의 침입으로 잡혀갔던 1만 여 명의 백성들을 되찾는다.(392년 9월)395년에는 염수(鹽水)로 진출하여 거란족 패려(稗麗)를 정벌하여 복속시키고 수없이 많은 소, 말, 양떼들을 노획하였다. 일부 학자들은 《삼국사기》의 거란 정벌(392년)과 광개토왕릉비의 비려 정벌(395년)을 동일한 사건에 대한 기록으로 보기도 한다.
한편 398년에는 숙신을 정벌하여 동북 국경 지대를 안정시켰다.
고구려 역사
광개토대왕은 399년에 평양으로 순행하였다. 백제와 왜, 가야는 신라를 공격하고, 신라는 평양으로 사신을 보내 구원을 청하였다. 광개토대왕은 400년에 신라에 5만 대군을 파견하여 백제ㆍ가야ㆍ왜의 연합군을 물리쳤다. 이때 연합군은 금관가야 종발성까지 퇴각하였고, 고구려군은 금관가야 지역까지 쫓아가 연합군을 격퇴시킨다. 학계에서는 이때 금관가야의 세력이 급속도로 약해져, 금관가야가 주도하던 전기 가야 연맹이 붕괴하고 대가야가 주도하는 후기 가야 연맹이 시작되었다고 본다. 고담덕은 400년에 신라를 구원하면서 신라 왕을 내물 마립간에서 실성 마립간으로 교체한다. 이후 고구려군은 백여 년 동안 신라 땅에 머물려 신라에 영향력을 행사하였고, 신라는 고구려에게 조공하는 보호국이 된다. 404년에는 대방(帶方) 지역으로 쳐들어 온 백제와 왜, 가야의 연합군을 궤멸시켰다.
고구려 역사
400년 2월에 고구려 주력군이 신라에서 왜군을 격퇴하고 있을 때 후연 왕 모용성은 신성(新城)과 남소성(南蘇城)을 공격한다. 하지만 모용성은 내부에서 살해당했고 이에 고담덕은 보복전을 펼쳐 402년에 후연의 숙군성(宿軍城)을 공격하여 함락시켰으며 404년에도 후연의 용성(現朝阳)을 정벌하여 모용성 모후 정씨(丁氏)와 난왕비를 사로잡고 철수하였다. 비슷한 시기에 연군(燕郡)까지 공격하여 함락시켰다. 연군은 지금의 베이징 근방에 위치한 지역으로 이 기록에 따라 베이징 일대까지 정복했다는 주장이 있다. 이를 회복하기 위해 쳐들어온 후연군을 405년 요동성, 406년 목저성(木抵城)에서 격파하여 요동 점령을 확고히 하였다. 또한 407년에는 5만 군대를 동원하여 후연 군대를 격파하여 막대한 전리품을 노획하고 돌아오는 길에 후연의 6개 성을 점령하였다. 후연(後燕)은 광개토대왕에게 한족(漢族) 공녀들을 상납하였다.
고구려 역사
후연을 더욱 압박하기 위해서 남연(南燕)과 우호관계를 맺기도 하였다. 고구려의 압박을 받은 후연은 고구려계인 고운이 모용희를 죽이고 후연을 멸망시켰고 북연을 건국하자 408년에 우호관계를 맺음과 동시에 사실상 북연을 속방으로 삼아 서쪽 국경을 안정시켰다. 410년에는 이미 고구려의 속방이던 동부여(東夫餘)를 완전히 굴복시켰다. 5세기 말에 유연과 고구려가 지두우를 분할하자는 모의가 있었고 그후에 잠시 북위 관련으로 나오고는 고구려가 세력이 강할 때부터 기록이 사라져 있어 고구려에 복속된 것으로 보인다. 이는 고구려가 현재의 동몽골 지역, 아무르강 ,랴오닝성까지 매우 넓은 세력권을 두었다는 것을 보여준다. 실제로 몽골 수흐바타르 아이막에 위치한 다리강가 지역에서 고구려 양식의 성터가 1994년에 발굴된 적 있다.
광개토대왕은 내치에도 힘썼다. 평양을 크게 중시하여 393년에는 9개 절을 평양에 창건하고 399년에는 왕이 직접 평양에 행차하기도 하였다. 409년에는 나라 동쪽에 독산성 등 6개 성을 쌓고 평양의 민호를 옮겨 살게 하였으며 다시 남쪽으로 순행하였다.
고구려 역사
또한 역대 왕릉의 정비에 힘써 수묘인(守墓人) 제도를 정비하고 실시할 것을 장수왕에게 유언하였다. 이러한 내치로 광개토왕릉비에는 “나라가 부강하고 백성이 편안하였으며 오곡이 풍성하게 익었다”라 칭송하는 기록을 남기기도 하였다.
장수왕은 광개토대왕의 아들로, 휘는 고거련(高巨連)이다. 연가(延嘉), 연수(延壽), 건흥(建興) 등의 연호가 새겨진 유물이 일부 발견되고 있어 독자적인 연호를 사용하였을 것으로 추정된다. 414년에 광개토왕릉비를 건립하여 광개토대왕의 업적을 기렸으며, 장수왕은 내부적으로 왕권의 위상을 높여서 국내성(國內城, 집안)의 귀족세력을 약화시키기 위해 427년 종묘사직을 평양성(平壤)으로 천도하였다. 장수왕은 대성산성(大城山城)을 쌓고 안학궁(安鶴宮)을 건설해 왕실의 위엄을 높이고 왕권을 강화하였다.
고구려 역사
435년, 북위는 북연을 위협하였고 북연의 왕 풍홍(馮弘)은 종주국 고구려에 밀사를 보내 장수왕에게 도움을 요청하였다. 이에 장수왕은 장군 갈로맹광(葛盧孟光)으로 하여금 고구려군 수만 명을 이끌고 쳐들어가서 북연의 수도 용성(龍城)에 있던 모용씨 황제 일가족과 풍홍 그리고 용성 주민들을 전부 고구려 국내성으로 끌고 갔다. 고구려로 끌려온 풍홍은 미천한 대접을 받자 행패를 부렸고 몰래 사신을 보내 송나라에 망명을 요청하였으나, 이 사실을 알게 된 장수왕은 풍홍을 살해하였다. 이때 송나라 사신 왕백구가 군사를 이끌고 고구려군을 공격하여 장수 고구가 죽었는데, 장수왕은 다시 왕백구를 토벌하여 인질로 붙잡았다. 송나라는 왕백구를 송으로 보내달라고 간청하였고 장수왕은 왕백구를 송으로 압송하였다. 고구려와 외교 관계를 망칠 수 없었던 송나라에서는 왕백구를 감옥에 가둬 고구려의 눈치를 보았다.
고구려 역사
중국과의 외교 관계가 안정된 가운데 장수왕은 백제를 정벌하는 남진 정책을 추진하였다. 그러나 백제와 신라가 동맹을 맺어 대항하였기 때문에 454년부터 신라와 적대관계가 되었다. 468년에는 신라의 실직주성을 공격하여 점령하였으며, 이듬해에는 백제가 남쪽 변경을 침공하기도 하였다. 또한 유연과 지금의 내몽골 대흥안령 산맥 인근에 위치한 지두우를 분할 점령하려고 했다고 기록되어 있다.
472년, 백제 개로왕은 북위에 사신을 보내 고구려를 공격해 줄 것을 요청하였는데, 북위는 이 사실을 고구려에 알려주었다. 이에 고구려는 백제와 전면전을 준비하는 한편 승려 도림(道琳)을 첩자로 보내 백제의 내정을 정탐하였다. 도림은 바둑으로 개로왕의 환심을 사고 개로왕에게 무리한 토목공사를 일으키게 사주하여 백제의 국력을 소모시켰다. 이러한 물밑작업을 마친 장수왕은 475년에 백제를 공격하여 수도 위례성을 함락시키고 개로왕을 사로잡아 살해하는 큰 승리를 거두고 백제를 다시 속방으로 만들었다. 481년에는 신라를 공격하여 호명성 등 7개 성을 함락시키고 미질부까지 진격하였다.
고구려 역사
또한 475년 충주 지역까지 정복하여 국원성(國原城)을 건설하였다. 국원(國原)이라는 말은 '나라의 근원이 되는 땅' 또는 '나라의처음, 본디가 되는 땅'이라는 의미를 갖는다.
말년의 장수왕은 정복 전쟁을 그만두고 내치에 힘썼으며, 중국과의 외교 관계도 계속 우호적으로 유지하여 안정을 구가하였다. 그리고 491년 음력 12월, 98세를 일기로 사망하였다. 이 소식을 들은 북위 효문제는 특별히 직접 애도를 표했으며 관작을 추증하고 강왕(康王)이라 시호를 내렸다.
장수왕의 뒤를 이은 문자명왕 휘 고나운(高羅雲)은 494년 부여의 왕이 처자를 데리고 고구려에 항복하여 부여를 복속시키는 등 장수왕의 정책을 이었으며 문자명왕 치세에 고구려는 최전성기를 구가하였다. 문자명왕의 뒤를 이은 안장왕대까지 고구려는 태평성대를 이뤘으나 안원왕대에 결국 고구려의 외척인 추군 세력과 세군 세력이 자기네 소생의 왕자를 옹립하려고 대판 싸움을 벌이기에 이르렀는데 추군 측이 승리를 거두었으며 결과 세군 측에서 목숨을 잃은 사람이 족히 2,000명이 넘었다고 전한다. 신라의 한강유역 점령의 원인이 되었다.
고구려 역사
고구려 제25대왕 평원왕은 559년 즉위하여 도읍을 대성산성(大城山城, 평양직할시 대성산)에서 평양성(平壤城, 현 평양직할시 평양역 주변)로 이전하였다. 한편 북주의 우문옹이 침략해오자 평원왕의 부마인 온달이 막아냈다. 온달은 후에 한국 온(溫)씨의 조상이 되었다.
고구려 역사
한편 북주(北周)에서는 568년 양견의 아버지에 양충이 죽자 양견이 대장군과 수국공을 물려받게 되었다. 양견은 우문옹과 뒤를 이은 우문윤의 총애를 받았으며 우문윤이 죽자 권력을 독점하였다. 이미 북주 우문옹이 중국 통일을 진행했었으나, 신중한 양견은 세밀하게 준비했고, 장성을 복구하여 북쪽 돌궐에 대한 방어를 강화했고, 한구(邗溝) 개착(開鑿)으로 회수와 장강을 연결해서 보급로를 확보한다. 뒤이어, 곧 북조 괴뢰정권인 후량을 병합하여 전초기지로 삼았고. 588년 문제는 기어코 진나라에 원정군을 파견하였다. 이 시기 원정군 총사령관은 차남 진왕 양광(후에 수 양제)이었고, 과장이지만 51만 8천이라는 대군으로 다음해(589년) 진나라의 수도 건강을 손쉽게 함락했다. 진나라 황제 진숙보는 우물에 숨지만 잡혔다. 진나라 멸망 이후(184년 황건적의 난 때부터로~ 약 405년) 기나긴 분열 시대가 종결되었고, 수 문제는 마침내 중국을 통일하였다. 사회가 안정되자 인구는 2천600여 만 명(멸망 무렵)에 이르도록 증가했다.