Computer Science
1. OS(운영체제) 란 무엇인가요?
운영체제란 Operating System의 약자로, 사용자가 컴퓨터를 사용하기 쉽게 하기 위해 필요한 소프트웨어이다. 대표적인 운영체제로는 Windows, Linux, Mac OSX, iOS 등이 존재한다.
운영체제의 목적은 크게 4가지로
일정 시간 안에 시스템이 처리하는 일의 양인 처리능력,
시스템에 작업 의뢰 후 결과가 얻어질 때까지 걸리는 시간인 응답시간,
주어진 문제를 얼마나 정확하게 해결하는 정도인 신뢰도,
시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도인 사용가능도가 있다.
운영체제의 역할은 자원 관리, 메모리 관리, 프로세스 관리, 디스크 및 파일 시스템 관리, 입출력 관리, 사용자 인터페이스, 네트워킹, 오류 처리, 시스템 보안 총 9가지가 있다.
Android
1. Android 4대 컴포넌트는 무엇인가?
Android 4대 컴포넌트로 액티비티(Activity), 서비스(Service), 브로드 캐스터(BroadCast Receiver), 콘텐츠 제공자(Content Provider)가 있다.
액티비티는 사용자가 앱과 상호작용하는 하나의 화면을 의미. 즉, 사용자에게 나타는 화면이다. 사용자와 상호작용하기에 반드시 하나 이상의 액티비티를 가지고 있어야 한다. 컴포넌트 간 인텐트(intent)를 통해 상호작용하기 때문에, 인텐트를 통해 다른 액티비티를 호출할 수 있다. 또한 액티비티는 하나 이상의 View 또는 ViewGroup을 포함하고 있어야 하고 내부에 프래그먼트를 추가하여 화면을 분할할 수 있다.
서비스는 사용자와 직접 상호작용하지 않고 백그라운드에서 특정 작업을 처리하는 데 사용하는 컴포넌트이다. 네트워크와 연동이 가능하고 앱이 종료되어도 이미 시작된 서비스의 경우 계속 동작한다.
브로드 캐스터는 안드로이드 시스템이나 다른 앱으로부터 발생하는 각종 이벤트와 정보를 받아와 다루는 컴포넌트이다. 예를 들어 배터리 부족 알람, 충전 완료 등과 같은 이벤트가 발생했다고 사용자에게 알리는 것이다.
콘텐츠 제공자는 파일 시스템, 데이터베이스, 웹상이나 앱에 접근할 수 있는 다른 모든 영구 저장 위치에 저장 가능한 앱 데이터의 공유형 집합을 관리한다. 작은 데이터들은 인텐트로 공유할 수 있지만 콘텐츠 제공자는 음악, 사진 파일과 같이 용량이 큰 데이터를 공유할 때 사용한다.