본문 바로가기
개인공부/FrontEnd

브라우저와 동작원리

by 왕큰새 2020. 7. 10.
728x90

브라우저는 가장 많이 사용하는 소프트웨어이다.

www.naver.com을 입력했을 때 어떤 과정을 거쳐 네이버 페이지가 화면에 보이게 되는지 알아보자!

 

최근 익스플로러, 파이어폭스, 사파리, 크롬, 오페라 이렇게 다섯 개의 브라우저를 많이 사용한다.

 

브라우저의 주요 기능

 

브라우저의 주요 기능은 사용자가 선택한 자원을 서버에 요청하고 브라우저에 표시하는 것이다.

자원은 보통 HTML 문서지만 PDF나 이미지 또는 다른 형태일 수 도 있다. 자원의 주소는

URI(Uniform Resource Idendtifier)에 의해 정해진다.

 

브라우저는 HTML과 CSS 명세에 따라 HTML 파일을 해석해서 표시하는데, 이 명세는 웹 표준화 기구인

W3C에서 정한다. 과거에는 브라우저들이 일부만 이 명세에 따라 구현하고 독자적인 방법으로 확장함으로써

웹 제작자가 심각한 호환성 문제를 겪었지만, 최근에는 대부분의 브라우저가 표준 명세를 따른다. 

 

브라우저의 사용자의 사용자 인터페이스는 서로 닮아 있는데, 다음과 같은 요소들이 일반적인 요소들이다.

 

URI을 입력할 수 있는 주소 표시줄

 

이전 버튼과 다음 버튼

 

북마크

 

새로 고침 버튼, 현재 문서의 로드를 중단할 수 있는 정지 버튼

 

홈 버튼

 

1.      사용자 인터페이스 - 주소 표시줄, 이전/다음 버튼, 북마크 메뉴 . 요청한 페이지를 보여주는 창을 제외한 나머지 모든 부분이다.

2.      브라우저 엔진 - 사용자 인터페이스와 렌더링 엔진 사이의 동작을 제어.

3.      렌더링 엔진 - 요청한 콘텐츠를 표시. 예를 들어 HTML 요청하면 HTML CSS 파싱하여 화면에 표시함.

4.      통신 - HTTP 요청과 같은 네트워크 호출에 사용됨. 이것은 플랫폼 독립적인 인터페이스이고 플랫폼 하부에서 실행됨.

5.      UI 백엔드 - 콤보 박스와 같은 기본적인 장치를 그림. 플랫폼에서 명시하지 않은 일반적인 인터페이스로서, OS 사용자 인터페이스 체계를 사용.

6.      자바스크립트 해석기 - 자바스크립트 코드를 해석하고 실행.

7.      자료 저장소 - 부분은 자료를 저장하는 계층이다. 쿠키를 저장하는 것과 같이 모든 종류의 자원을 하드 디스크에 저장할 필요가 있다. HTML5 명세에는 브라우저가 지원하는 ' 데이터 베이스' 정의되어 있다.

렌더링 엔진

렌더링 엔진의 역할은 요청 받은 내용을 브라우저 화면에 표시하는 일이다.

렌더링 엔진은 HTML XML 문서와 이미지를 표시할 있다. 물론 플러그인이나 브라우저 확장 기능을 이용해 PDF 같은 다른 유형도 표시할 있다

 

 

 

 

'개인공부 > FrontEnd' 카테고리의 다른 글

브라우저의 렌더링 원리  (0) 2022.12.28
호스팅  (0) 2020.07.11
DNS  (0) 2020.07.10
HTTP란 무엇인가?  (0) 2020.07.10
인터넷은 어떻게 작동하는가?  (0) 2020.07.10