구글 네이티브 클라이언트

구글 네이티브 클라이언트(영어: Google Native Client, NaCl)는 소프트웨어 기반 실패 분리(fault isolation)[1]를 이용하여 인텔 x86이나 ARM 네이티브 코드의 하부집합을 실행하기 위한 샌드박스 기술이다. 현재는 개발 중에 있는 이 기술은 웹 브라우저로부터 네이티브 코드를 안전하게 실행할 수 있도록 하고 있으므로 웹 기반 응용 프로그램들이 네이티브에 가까운 속도를 낼 수 있다.[2] 네이티브 클라이언트는 구글이 개발하고 있는 오픈 소스 프로젝트이다.[3]

구글 네이티브 클라이언트
Google Native Client
개발자구글
안정화 버전
SDK: Pepper 42 (2015년 2월 20일(9년 전)(2015-02-20)), 클라이언트: 42.0.2311.135
저장소
프로그래밍 언어C++
운영 체제크로스 플랫폼: 마이크로소프트 윈도우, 리눅스, 맥 OS, 크롬 OS
종류네이티브 코드 실행을 위한 웹 브라우저의 샌드박스
라이선스신규 BSD 라이선스
상태연구 중
웹사이트code.google.com/p/nativeclient

페퍼 편집

NaCl는 염화 나트륨을 가리키며 언어 유희후추의 이름으로 페퍼가 사용되었다. 페퍼 API는 네이티브 클라이언트 모듈들을 만들기 위한 크로스 플랫폼, 오픈 소스 API이다.[4] 페퍼 플러그인 API, 즉 PPAPI[5][6]는 네이티브 클라이언트 보안 웹 브라우저 플러그인을 위한 크로스 플랫폼 API로서, 처음에는 넷스케이프 NPAPI에 기반을 두다가 처음부터 다시 작성되었다. 현재는 PPAPI 버전의 어도비 플래시[7]와 내장 PDF 뷰어를 활성화하기 위해 크로미엄과 구글 크롬에 사용되고 있다.[8]

PPAPI 편집

2009년 8월 12일, 구글 코드의 한 페이지는 "페퍼"라는 새로운 프로젝트를 선보였으며 페퍼 플러그인 API, 즉 PPAPI와 연계하였는데,[9] 이는 플러그인을 더 휴대성있게 더 안전하게 만들기 위해 NPAPI에 대한 수정 사항의 집합이다.[10]

각주 편집

  1. Efficient software-based fault isolation Archived 2008년 6월 11일 - 웨이백 머신, Robert Wahbe, Steven Lucco, Thomas E. Anderson, Susan L. Graham, 1993
  2. Native Client: A Technology for Running Native Code on the Web
  3. Google Native Client on Google Code
  4. “Technical Overview”. [깨진 링크(과거 내용 찾기)]
  5. “Pepper Plugin API project at”. Google. 2016년 9월 9일에 원본 문서에서 보존된 문서. 2012년 4월 25일에 확인함. 
  6. “Chrome Source: Index of /trunk/src/ppapi”. Src.chromium.org. 2012년 4월 25일에 확인함. 
  7. “The road to safer, more stable, and flashier Flash”. Google. 2012년 8월 8일. 2013년 8월 10일에 확인함. 
  8. Metz, Cade (2010년 6월 18일). “Google hugs Adobe harder with Chrome-PDF merge”. The Register. 2012년 4월 25일에 확인함. 
  9. “Getting Started: Background and Basics – The Chromium Projects”. Chromium.org. 2017년 3월 15일에 원본 문서에서 보존된 문서. 2012년 4월 25일에 확인함. 
  10. Comment by t.hajdu....@gmail.com (2012년 2월 24일). “Pepper.wiki”. Google. 2012년 4월 25일에 확인함. 

같이 보기 편집

  • asm.js : 웹 기반 응용 프로그램을 위한 또 다른 기술.

예제 편집

외부 링크 편집