프런트엔드와 백엔드
소프트웨어 공학에서 프론트 엔드와 백엔드라는 용어는 소프트웨어의 presentation layer (프론트 엔드)과 data access layer (백엔드) 또는 물리구조 또는 하드웨어 사이의 관심사를 분리하는 것을 의미한다. 클라이언트 - 서버 모델에서 클라이언트는 일반적으로 프런트 엔드로 간주되며 서버에서 실제로 presentation 작업이 수행되는 경우에도 일반적으로 서버가 백 엔드로 간주된다.
엑소커널
엑소커널은 하나의 애플리케이션이 다른 요구조건(requirements)을 가진 다른 추상 계층 위에 놓이도록 강제하지 않는다는 점에서 단대단 원칙(end-to-end principle)을 운영 체제에 적용한 한 예로도 볼 수 있다. 예를 들어 MIT 엑소커널 프로젝트에서는 치타 웹 서버는 미리 형태가 준비된 인터넷 프로토콜(IP) 패킷을 디스크에 저장해놓고, 커널은 그 디스크에 대한 다른 애플리케이션의 읽기 및 쓰기를 차단해준다. 하지만 디스크가 어떻게 추상화되어 있는지는 전적으로 애플리케이션이나 그 애플리케이션이 쓰는 라이브러리에 달려있을 뿐이다.