본문 바로가기

자격증/리눅스 1급 - 필기 기록

[ 리눅스 1급 시험 준비] - 리눅스의 개요

728x90
반응형


1. 다음 중 최근 운영체제 동향에 대한 설명으로 틀린 것은 ?

 

1️⃣  유무선 네트워크 지원이 강화되고 있다.

2️⃣  개방형 운영체제에서 폐쇄형 운영체제로 변화하고 있다.

3️⃣  GUI 기반의 사용자 인터페이스를 제공하고 있다.

4️⃣  고성능 프로세서 지원을 위해 최적화되고 있다.

 

더보기

답 : 2️⃣  개방형 운영체제에서 폐쇄형 운영체제로 변화하고 있다.

 

2. 다음 중 나머지 셋과 다른 종류에 속하는 운영체제로 알맞은 것은 ?

 

1️⃣  Android

2️⃣  Tizen

3️⃣  MeeGo

4️⃣  Chrome OS

 

더보기

답 : 4️⃣  Chrome OS

 

- 모바일 운영 체제 

 

 Android

 Tizen      : Tizen OS는 리눅스 재단, 리모 재단, 삼성전자, 인텔이 공동으로 개발한 IT기기를 지원하는 운영 체제이다. TV, 냉장고, 휴대용 장치와 같은 모든 전자기기에 포함을 목적으로 하는 오픈 소스 모바일 운영 체제이다.

 MeeGo   : 미고는 노키아, 인텔, 리눅스 재단이 공동으로 개발한 모바일 운영 체제이

 

- 웹 운영 체제

ㄴ Chrome OS

 

3. 다음 중 리눅스 커널로 만든 운영체제로 틀린 것은 ?

 

1️⃣  Android

2️⃣  Minix

3️⃣  Bada OS

4️⃣  Debian

 

더보기

답 : 2️⃣  Minix

 

Debian : 데비안(영어: Debian)은 데비안 프로젝트가 개발한 자유(free) 컴퓨터 운영 체제이다. 리눅스 커널을 탑재한 데비안 GNU/리눅스, GNU 허드 커널을 탑재한 데비안 GNU/허드, FreeBSD 커널을 탑재한 데비안 GNU/KFreeBSD, NetBSD 커널을 탑재한 데비안 GNU/NetBSD 등으로 나뉘며 현재 이 가운데 정식판이 존재하는 것은 리눅스 커널에 기반한 데비안 GNU/리눅스뿐이다.

 

Bada OS : 바다(영어: bada)는 삼성전자가 스마트폰 탑재를 위해 개발하였던 모바일 플랫폼의 이름이다. 현재는 개발이 중단된 상태이다. 바다 OS는 멘토 그래픽스사의 Nucleus RTOS 커널 또는 리눅스 커널을 기반으로 하며, OS 커널을 분리한 미들웨어 형태로도 탑재될 예정이었으나, 개발이 중단되었다.

 

Android : 안드로이드는 리눅스 커널 위에서 동작하며, 자바와 코틀린으로 앱을 만들어 동작한다. 또한 다양한 안드로이드 시스템 구성 요소에서 사용되는 C/C++ 라이브러리들을 포함하고 있다. 안드로이드는 기존의 자바 가상 머신과는 다른 가상 머신인 안드로이드 런타임을 통해 자바와 코틀린으로 작성된 응용 프로그램을 별도의 프로세스에서 실행하는 구조로 되어 있다.

 

Minix : 미닉스(MINIX)는 유닉스 계열 운영 체제의 하나다. 1987년 네덜란드의 암스테르담 자유대학교에 재직하던 교수 앤드루 타넨바움(Andrew Tanenbaum)이 교육용으로 개발하였다. 미닉스는 리눅스 커널의 창조에 영감을 주었다. 미닉스(Minix)라는 명칭은 미니멀(minimal)과 유닉스(Unix)로부터 비롯되었다. BSD 라이선스 아래 출시된, MINIX는 자유/오픈 소스 소프트웨어다.

 

 

4. 다음 중 리눅스 커널로 만든 운영체제로 틀린 것은 ?

 

1️⃣  QNX

2️⃣  GENIVI

3️⃣  Tizen

4️⃣  Moblin

 

더보기

답 : 1️⃣  QNX

 

QNX : QNX는 1982년에 개발한 유닉스 계열의 서버 운영 체제로, 현재는 GUI도 지원하고 있으며 CD 부팅판과 플로피 디스켓 버전을 내놓고 있다.

 

GENIVI : GENIVI 얼라이언스는 표준 플랫폼의 마이크로프로세서와 리눅스 배포판에 대해 인텔과 윈드리버(Wind River, 2009년 6월 인텔이 윈드리버를 8억 8,400만 달러에 인수) 제품으로 제한을 두지 않는다.

 

Tizen : Tizen OS는 리눅스 재단, 리모 재단, 삼성전자, 인텔이 공동으로 개발한 IT기기를 지원하는 운영 체제이다.

 

Moblin : 모블린(Moblin)은 인텔과 리눅스 재단이 개발한 리눅스에 기반한 오픈 소스 운영 체제이다.

 

 

5. 다음 중 리눅스에 대한 설명으로 틀린 것은 ?

 

1️⃣  다중 사용자 및 다중 처리 시스템이다.

2️⃣  커널 뿐만 아니라, 대부분의 응용 프로그램의 소스도 공개되어 있다.

3️⃣  리눅스는 대부분이 어셈블리와 약간의 C언어로 작성되어 있다.

4️⃣  다양한 파일 시스템을 지원한다.

 

더보기

답 : 3️⃣  리눅스는 대부분이 어셈블리와 약간의 C언어로 작성되어 있다.

 

리눅스는 대부분이 C언어로 작성되어 있다. 즉, 이식성 높음.

 

6. 다음 중 리눅스의 특징에 대한 설명으로 알맞은 것은 ?

 

1️⃣  리눅스의 파일 시스템은 초기에는 xfs 를 사용하였고, 그 이후에 ext2, ext3, ext4 순으로 발전하였다.

2️⃣  리눅스는 대부분 C언어로 작성되어 있어 이식하기 어렵다.

3️⃣  리눅스는 이더넷을 통한 네트워크 접속만 지원한다.

4️⃣  유닉스 표준인 POSIX 를 준수한다.

 

더보기

답 : 4️⃣  유닉스 표준인 POSIX 를 준수한다.

 

POSIX는 이식 가능 운영 체제 인터페이스의 약자로, 서로 다른 UNIX OS의 공통 API를 정리하여 이식성이 높은 유닉스 응용 프로그램을 개발하기 위한 목적으로 IEEE가 책정한 애플리케이션 인터페이스 규격이다.

 

 

7. 다음 중 리눅스 운영체제에 대한 설명으로 틀린 것은 ?

 

1️⃣  윈도우에 비해 사용하기가 쉬워서 사용자의 숙련된 기술이 요구되지 않는다.

2️⃣  다른 운영체제에 비해 이식성과 확장성이 뛰어나다.

3️⃣  다른 운영체제와 비교하여 다양한 파일 시스템을 지원한다.

4️⃣  다양한 네트워크 프로토콜을 지원한다.

 

더보기

답 : 1️⃣  윈도우에 비해 사용하기가 쉬워서 사용자의 숙련된 기술이 요구되지 않는다.

 

윈도우에 비해서 어렵다. 숙련된 기술이 필요하다.

 

 

8. 다음 중 하드 디스크 일부를 메모리처럼 사용하는 기술로 알맞은 것은 ?

 

1️⃣  라이브러리

2️⃣  스왑

3️⃣  파이프

4️⃣  리다이렉션

 

더보기

답 : 스왑

 

스왑은 하드디스크의 일부를 RAM 처럼 사용하는 것입니다.

 

 

9. 다음 중 리눅스 커널 기반의 스마트 TV 운영체제로 틀린 것은 ?

 

1️⃣  안드로이드 기반의 구글 TV

2️⃣  IOS 기반의 애플 TV

3️⃣  넷캐스트 OS 기반의 LG TV

4️⃣  바다 OS 기반의 삼성 TV

 

더보기

답 : 2️⃣  IOS 기반의 애플 TV

 

TV OS - 유닉스 계열

watchOS도 iOS를 기반으로 만들어졌다. 따라서 이것들도 다 유닉스의 계보에 들어가는 셈.

 

10. 다음 중 텍스트모드 기반의 가상 콘솔에서 이미 지나간 작업을 보기 위한 키 조합으로 알맞은 것은 ?

 

1️⃣  Ctrl  + PageUp

2️⃣  Ctrl  + PageDown

3️⃣  Shift + PageUp  

4️⃣  Shift + PageDown

 

더보기

답 : 3️⃣  Shift + PageUp  

 

 

11. 다음 중 리눅스의 기술적인 특징에 대한 설명으로 틀린 것은 ?

 

1️⃣  리눅스는 최상위 디렉터리인 .(root) 를 기준으로 하위 디렉터리가 존재하는 계층적인 파일 구조이다.

2️⃣  모든 장치는 파일화해서 관리한다.

3️⃣  공유 라이브러리를 통해 메모리를 효율적으로 사용한다.

4️⃣  리다이렉션을 이용해서 입출력을 전환할 수 있다.

 

더보기

답 : 1️⃣  리눅스는 최상위 디렉터리인 .(root) 를 기준으로 하위 디렉터리가 존재하는 계층적인 파일 구조이다.

 

.(root) 은 자기 자신을 뜻한다. (정확하지 않음 풀이 답 아는 사람 댓글 ㄱ)

 

 

12. 다음 중 하나의 모니터를 장착한 시스템에 여러 개의 가상화면을 제공하는 기술로 알맞은 것은 ?

 

1️⃣  라이브러리

2️⃣  스왑

3️⃣  파이프

4️⃣  가상 콘솔

 

더보기

답 : 4️⃣  가상 콘솔

 

가상 콘솔이란 '가상의 모니터'라고 생각하면 이해하기 쉬워요. 윈도우는 멀티유저 시스템이 아니라 익숙치 않을 수도 있겠지만 리눅스나 유닉스는 멀티유저 시스템이라고 했었죠? 이 말은 하나의 리눅스 서버에 다수의 사용자가 접속할 수 있다는 말이예요.

 

 

13. 다음 중 자유롭게 사용 가능한 운영체제 개발과 관련 있는 프로젝트로 알맞은 것은 ?

 

1️⃣  Mozilla

2️⃣  KDE

3️⃣  GNU

4️⃣  Apache

 

더보기

답 : 3️⃣  GNU

 

GNU 자유 시스템 배포 가이드라인(GNU Free System Distribution Guidelines, GNU FSDG)은 GNU/리눅스 배포판과 같은 설치 가능한 시스템 배포판이 자유적인 특성이 있고 배포판 개발자들이 배포판들을 해당 특성에 맞출 수 있게 도와주는 시스템 배포 약속이다.

 

GNU 프로젝트가 GNU 운영 체제를 완성하는 것이라고 했을때, 소프트웨어적인 면에서는 자유 소프트웨어의 결과물 카테고리인 자유 소프트웨어 디렉터리에서 보이는 것과 하드웨어적인 면에서는 추구하고 있는 바가 운영 체제의 핵심인 커널 즉, GNU 허드를 만들어 내는 것이라고 할 수 있겠다. 이러한 소프트웨어적인 면과 하드웨어적인 면을 통해 온전한 자유로운 운영 체제를 만드는 것이 GNU 프로젝트의 목표라고 한다면, GNU Hurd는 하드웨어를 통괄 제어하는 GNU 운영 체제의 커널이 되겠다.

 

 

14. 다음 중 자유 소프트웨어 재단 ( FSF ) 을 설립한 사람으로 알맞은 것은 ?

 

1️⃣  리누스 토발즈

2️⃣  리처드 스톨먼

3️⃣  앤드류 S. 타넨바움

4️⃣  요한 폰 노이만

 

더보기

답 : 2️⃣  리처드 스톨먼

 

 

15. 다음 중 영국 회사인 캐노니컬에서 데비안 리눅스를 기초로 고유한 데스크톱 환경인 유니티를 사용하여 만든 배포판으로 알맞은 것은 ?

 

1️⃣  수세리눅스

2️⃣  슬랙웨어

3️⃣  CentOS

4️⃣  우분투

 

더보기

답 : 4️⃣  우분투

 

레드햇 리눅스는 RPM 및 YUM 이라는 패키지 관리 도구를 제공한다.

레드햇 계열 배포판에는 상용판인 RHEL ( Red Hat Enterprise Linux ) 를 비롯하여 아래와 같은 배포판들이 있다.

  • CenOS
  • Fedora
  • Oracle Linux
  • Scientific Linux
  • Asianux, Mandrive Linux
  • Mandsake   

 

 

16. 다음 중 자유 소프트웨어에 대한 설명으로 틀린 것은 ?

 

1️⃣  상업용 목적으로 사용할 수 있다.

2️⃣  소스 코드를 임의로 개작할 수 있다.

3️⃣  소스 코드 수정 시에는 반드시 소스 코드를 공개해야 한다.

4️⃣  무료로 얻은 소스 코드를 이용하여 프로그램을 만든 경우에는 무료로만 배포해야 한다.

 

더보기

답 : 4️⃣  무료로 얻은 소스 코드를 이용하여 프로그램을 만든 경우에는 무료로만 배포해야 한다.

 

자유 소프트웨어(영어: free software)는 복사와 사용, 연구, 수정, 배포 등의 제한이 없는 소프트웨어 혹은 그 통칭이다. 소프트웨어의 수정 및 수정본의 재배포는 인간이 해독 가능한 프로그램의 소스 코드가 있어야만 가능하며, 소스 코드는 GPL 등의 라이선스를 통하거나, 혹은 극히 드물게 퍼블릭 도메인으로 공개되기도 한다.

1990년대 후반에는 자유 소프트웨어 대신 오픈 소스 소프트웨어라는 용어가 많이 쓰이기 시작했다. 하지만 자유 소프트웨어 재단은 자유로운 사용을 강조하는 대신 기술적인 면에 치우친 용어라는 점에서 "오픈 소스 소프트웨어"라는 용어 대신 "자유 소프트웨어"라는 용어를 사용할 것을 권장한다.[2] 이와 반대되는 개념으로 독점 소프트웨어 혹은 비자유 소프트웨어 등의 용어도 있다.

자유 소프트웨어는 완전히 무료로 또는 최소한의 금액만을 받고 자유롭게 배포되어야 하며 자유 소프트웨어를 통한 비즈니스 모델들은 대개 고객 지원이나 커스터마이징 등을 통한 것들이다. 반면 독점 소프트웨어를 이용한 비즈니스 모델들은 사용자가 합법적으로 소프트웨어를  이용하기 위한 허가를 위해서 반드시 일정 비용을 지불해야 하기 때문에, 자유 소프트웨어와는 맞지 않는다.

 

자유 소프트웨어를 이해하려면 먼저 자유에 무게중심이 있다는 것을 이해해야 한다. 자유는 소프트웨어를 자유롭게 이용할 수 있도록 하는 것을 의미하며 자유롭게 이용함을 말한다. 자유에는 일정한 책임이 따르게 된다. 자유롭게 이용하더라도 출처를 밝히고 소프트웨어를 사용하는 조건이 무엇인지 알아야 한다. 이유는 본인 혼자서 자유롭게 쓴다 하더라도 결국 재생산, 재배포 등의 활동이 수반될 수 있기 때문에 책임범위 안에서 활동할 수 있다.

자유는 결국 책임을 수반한다고 보고 책임을 다하는 것은 출처를 밝히고 사용조건을 준수하는 것이다. 결론적으로 자유 소프트웨어에 대한 정의는 남이 만든 소프트웨어를 사용할 경우 책임을 지겠다는 최소한의 조건을 이행함으로써 누구나 쉽게 사용할 수 있게 하는 것이다.

 

 

17. 다음 중 GNU 프로젝트에 의해 개발된 프로그램으로 틀린 것은 ?

 

1️⃣  GCC

2️⃣  KDE

3️⃣  BASH

4️⃣  EMACS

 

더보기

답 : 2️⃣  KDE

 

1983 년에 시작된 프로젝트로 초기에는 이렇게 자유로운 유닉스를 만드는 데 목적이 있었으나 리눅스가 등장하면서 GNU C 컴파일러 gcc, 문서 편집기인 emacs, X 윈도 데스크톱 환경인 GNOME, tar 를 개조한 GNU 등과 같은 응용프로그램을 만들었다.

 

GNU 프로젝트는 소프트웨어의 상업화에 반대해 소프트웨어를 자유롭게 사용하도록 하는데 있다.

 

GNU 컴파일러 모음(GNU Compiler Collection, 줄여서 GCC)는

GNU 프로젝트의 일환으로 개발되어 널리 쓰이고 있는 컴파일러이다.

자유 소프트웨어 중에 가장 잘 알려진 것들 중 하나인 GCC는 

원래 C만을 지원했던 컴파일러로 이름도 "GNU C 컴파일러"였다. 

이러한 까닭에 현재에도 GCC는 GNU 컴파일러 모음의 일부인 

GNU C 컴파일러(GNU C Compiler)의 줄임말로 쓰이기도 한다. 

그러나 나중에 C++, 자바, 포트란, 에이다 등 여러 언어를 컴파일할 수 있게 되면서, 현재의 이름으로 바뀌게 되었다.

GCC는 리처드 스톨만이 1987년 GNU 프로젝트의 컴파일러로 작성했다. 

GNU 프로젝트에 컴파일러가 없었기 때문에 이 개발은 자유 소프트웨어 재단이 후원하였다. 

1997년 개발 과정은 공개되었으며, 속도 또한 빨라졌다. 

1999년 첫 버전이 나왔다. 

현재 GCC는 전 세계적으로 관리되고 있으며, 다양한 중앙 처리 장치를 처리할 수 있게 되었다.

GNU 시스템의 공식 컴파일러이므로 GCC는 많은 컴파일러와 운영 체제를 만드는 데 사용되었다. 

한편, 시스템 네이티브 컴파일러를 사용했을 때 비해서 GCC를 사용하면 같은 파서로 코드를 처리하므로 

이식성을 향상시킬 수 있다. 

GCC는 상용 컴파일러에 비해서 느린 코드를 생성했지만 최근 많이 개선되었다.

 

KDE 란 ?

KDE는 다양한 운영 체제에서 구동 가능한 프로그램들을 제작하는 다국적 자유 소프트웨어 커뮤니티 가운데 하나이다.

 

 

18. 다음 중에 레드햇 계열에 속하는 배포판으로 틀린 것은 ?

 

1️⃣  RHEL

2️⃣  CentOS

3️⃣  SUSE

4️⃣  Fedora

 

더보기

답 : 3️⃣  SUSE

 

레드햇 리눅스는 RPM 및 YUM 이라는 패키지 관리 도구를 제공한다.

레드햇 계열 배포판에는 상용판인 RHEL (Red Hat Enterprise) 를 비롯하여 아래와 같은 것이 있다.

  • CentOS
  • Fedora
  • Oracle Linux
  • Scientific Linux
  • Asianux
  • Mandriva Linux
  • Mandrake

 

 

19. 다음 중 LGPL 에 대한 설명으로 알맞은 것은 ?

 

1️⃣  LGPL 이 적용된 라이브러리의 소스를 수정해도 소스를 공개하지 않아도 된다.

2️⃣  LGPL 이 적용된 라이브러리를 이용하여 프로그램을 개발했을 경우에는 소스를 공개하지 않아도 된다.

3️⃣  GPL 라이선스가 적용된 프로그램을 LGPL 로 바꿀 수 있다.

4️⃣  LGPL 라이선스가 적용된 프로그램을 GPL 로 바꿀 수 없다.

 

더보기

답 : 2️⃣  LGPL 이 적용된 라이브러리를 이용하여 프로그램을 개발했을 경우에는 소스를 공개하지 않아도 된다.

 

1991년 6월 FSF의 리처드 스톨먼은 GPL 라이선스의 강력한 카피레프트 조건과 단순한 사용 허가를 위한 절충안으로 소프트웨어 라이브러리에 관한 라이선스인 LGPL(Library General Public License)를 발표하였다.

 

LGPL은 독립적인 프로그램에서도 사용되나 대부분 소프트웨어 라이브러리에 주로 쓰인다.

 

LGPL이 기존의 GPL과 다른 점은 GPL이 적용된 라이브러리는 자유 소프트웨어를 만들 때에만 사용해야 하나,

LGPL이 적용된 라이브러리는 자유 소프트웨어 뿐만 아니라 독점 소프트웨어에서도 사용 가능하다는 점이다.

 

다만, LGPL 라이브러리의 소스코드를 수정했을 경우에는 2차적 파생물 저작물에 해당하므로 라이브러리의 소스 코드를 반드시 제공해야 한다.

LGPL을 사용해서 개발한 뒤에 GPL 라이선스로 변경은 가능하나, GPL을 임의로 LGPL로 변경할 수는 없다.

1999년 리처드 스톨먼은 기존의 LGPL이 보안된 LGPL2.1 버전을 발표하였고 명칭도 LGPL(Lesser General Public License)로 변경하였다.

 

초기 LGPL의 의미처럼 (Library General Public License) LGPL은 기본적으로 라이브러리에 적용되는 라이선스입니다.

이게 왜 나왔냐, 내가 아주 조금만 차용했는데 이를 위해서 전체 코드를 다 보여야하는건 좀 너무 심하다!

즉 LGPL은 GPL의 조건이 너무 엄격해서 사람들이 사용하는 것을 꺼려할까봐 이를 감안해서 만든 라이선스입니다.

 

"그래, 너가 수정할 거 아니고 사용만 할거면, 내가 라이브러리 링크를 제공해줄게, 갖다 써ㅎㅎ 사용만 하는데 전체를 공개하라는건 좀 심했던 거같아.. 근데 만약 너가 갖다 쓰기만 하는건 아니고 수정해서 쓸거면, 라이브러리 소스코드를 제공해야 해 "

 

즉 자사 제품에 LGPL 라이브러리를 사용하고자 하는 경우에는 라이브러리 그 자체로 사용을 해야 하고,

만약 수정을 할 경우에는 수정된 내용을 포함한 모든 LGPL코드를 수취자에게 제공해야 합니다.

 

그러나 사용만 할 경우 정적링크이든 동적링크든 자사 제품 코드를 공개할 의무를 갖고 있지 않은거~~ 이게 LGPL입니다.

 

다만 정적링크시에는 응용 프로그램의 목적코드를 공개해야 합니다.

 

원래는 한정된 라이브러리에만 적용하려는 의도로 ‘Library GPL’이라는 이름을 붙였으나,

모든 라이브러리에 적용된다는 오해를 사 ‘Lesser GPL’로 변경되었습니다.

 

20. 다음 중 해당 라이선스가 적용된 프로그램의 소스를 수정해서 사용할 경우에도 반드시 공개할 필요가 없는 라이선스 조합으로 알맞은 것은 ?

 

1️⃣  ㄱ - GPL      , ㄴ - LGPL

2️⃣  ㄱ - BSD      , ㄴ - LGPL

3️⃣  ㄱ - BSD      , ㄴ - Apache

4️⃣  ㄱ - Apache , ㄴ - LGPL

 

더보기

답 : 3️⃣  ㄱ - BSD      , ㄴ - Apache

 

라이선스 무료이용 배포 소스코드 취득 및 수정 2차적 저작물 소스 코드 공개 독접 소프트웨어와 결합
GPL 무료 허용 가능 공개 불가능
LGPL 무료 허용 가능 공개 가능
BSD 무료 허용 가능 비공개 가능 가능
Apache 무료 허용 가능 비공개 가능 가능
MPL 무료 허용 가능 공개 가능
MIT 무료 허용 가능 비공개 가능 가능

 

 

21. 다음에서 설명하는 라이센스로 알맞은 것은 ?

 

이 라이센스가 적용된 소스 코드 수정 시에는 반드시 소스 코드를 공개해야 하지만, 
다른 코드와 결합하여 만든 프로그램인 경우에는 
이소스 코드를 제외한 다른 소스 코드를 공개하지 않아도 된다.

 

1️⃣  MPL

2️⃣  BSD

3️⃣  Apache

4️⃣  GPL

 

더보기

답 : 1️⃣  MPL

 

모질라 공용 허가서(Mozilla Public License, MPL)는 과거 넷스케이프(Netscape) 브라우저의 소스코드를 공개하기 위해 개발된 라이선스이다. 

 

초기 1.0 버전은 넷스케이프 커뮤니케이션즈 코퍼레이션스의 변호사였던 미첼 베이커(Mitchell Baker)가 작성하였고 이후 1.1, 2.0 버전은 모질라 재단이 작성하였다. 

 

MPL의 특징은 소스코드와 실행파일의 저작권을 분리함으로써 수정한 소스코드의 경우 MPL로 공개하고 

원저작자에게 수정한 부분에 대해 알려야 하지만 실행파일은 독점 라이선스로 배포가 가능한 점이다. 

 

즉, 사용한 MPL 소프트웨어와 수정한 MPL 소프트웨어에 대한 공개 의무만을 가지며 

별도의 소스코드와 실행파일은 독점 라이선스를 가질 수 있다.

 

22. 다음 중 BSD 라이선스에 대한 설명으로 틀린 것은 ?

 

1️⃣  상용 프로그램에 사용할 수 있다.

2️⃣  수정 후에 소스 코드를 공개해도 된다.

3️⃣  수정 후에 소스 코드를 공개하지 않아도 된다.

4️⃣  수정본의 재배포는 의무사항이다.

 

더보기

답 : 4️⃣  수정본의 재배포는 의무사항이다.

 

23. 다음 설명으로 알맞은 것은 ?

 

- 고성능의 계산 능력을 제공하기 위한 목적으로 제작된다.
- 여러 컴퓨터를 병렬로 묶어서 구성하는데, 보통 슈퍼 컴퓨터를 제작할 때 사용한다.

 

1️⃣  임베디드시스템

2️⃣  HPC

3️⃣  HA Cluster

4️⃣  부하분산 클러스터

 

더보기

답 : 2️⃣  HPC

 

고성능 컴퓨팅(영어: high-performance computing, HPC)은 고급 연산 문제를 풀기 위하여 

슈퍼컴퓨터 및 컴퓨터 클러스터를 사용하는 것을 말한다. 

 

최근에는 테라플롭스 이상의 규모를 HPC에 사용되는 컴퓨터를 구분하는 기준으로 쓴다.

 

 

24. 다음 설명으로 알맞은 것은 ?

 

기존의 데이터베이스 관리도구로 데이터를 수집, 저장, 관리, 분석
할 수 있는 역량을 넘어서 
대량의 정형 또는 비정형 데이터 집합 및 이러한 데이터로부터 
가치를 추출하고 결과를 분석하는 기술을 말한다.

 

1️⃣  임베디드 시스템

2️⃣  클러스터링

3️⃣  클라우트 컴퓨팅

4️⃣  빅데이터

 

더보기

답 : 4️⃣  빅데이터

 

빅 데이터(영어: big data)란 기존 데이터베이스 관리도구의 능력을 넘어서는 대량(수십 테라바이트)의

정형 또는 심지어 데이터베이스 형태가 아닌 비정형의 데이터 집합조차 포함한 데이터로부터 가치를 추출하고

결과를 분석하는 기술이다.

 

즉, 데이터 베이스 등 기존의 데이터 처리 응용 소프트웨어(data-processing application software)로는

수집 · 저장 · 분석 · 처리하기 어려울 정도로 방대한 양의 데이터를 의미한다.

 

 

25. 다음 설명으로 알맞는 것은 ?

 

마이크로컨트롤러, 마이크로프로세서, DSP 등을 내장하여 
특정한 기능을 반복적으로 수행하기 위해
하드웨어와 소프트웨어를 결합하여 만든 전자제어시스템을 말한다.

 

1️⃣  임베디드시스템

2️⃣  고계산용 클러스터

3️⃣  고가용성 클러스터

4️⃣  부하분산 클러스터

 

더보기

답 : 1️⃣  임베디드시스템

 

임베디드 시스템(영어: embedded system, 내장형 시스템)은 기계나 기타 제어가 필요한 시스템에 대해, 

제어를 위한 특정 기능을 수행하는 컴퓨터 시스템으로 장치 내에 존재하는 전자 시스템이다. 

 

즉, 임베디드 시스템은 전체 장치의 일부분으로 구성되며 제어가 필요한 시스템을 위한 두뇌 역할을 하는 

특정 목적의 컴퓨터 시스템이다. 

 

이에 비해 개인용 컴퓨터와 같은 특정되지 않는 일반적인 목적을 수행하는 컴퓨터 시스템과 대조된다. 

특정 목적을 수행하는 컴퓨터 시스템이므로 목적을 설정하고 이를 수행하는 프로그램 코드를 작성하여 

메모리에 기록하고 이를 읽어 동작 시키는 방법이 일반적이다.

전자 하드웨어와 기계 부분을 포함하는 전체 장치의 일부로 내장되었다는 의미에서 임베디드 단어가 사용되었다. 

임베디드 시스템은 오늘날 일상 생활에 쓰이는 많은 장치들을 제어하고 있다.

전자 시스템을 통해 특정 기능을 수행하는 컴퓨터 시스템이며, 

종종 실시간(real-time computing) 계산을 행하는 데 있어 제약을 갖는다.

임베디드 시스템에는 마이크로컨트롤러(microcontroller)나 DSP(digital signal processor) 등의 

프로세서 코어가 장착될 수 있다.

마이크로컨트롤러는 규모가 작은 시스템에 사용하므로 보통 운영 체제를 포함하지 않는 경향이 있다면, 

임베디드는 좀 더 규모가 크기 때문에 운영 체제(윈도우 CE, 또는 리눅스 커널)가 시스템에 포함된다. 

 

이 운영체제 위에 특수한 기능만을 수행하도록 응용 프로그램이 장착되어 동작하는 경향이있다. 

예를 들어 같은 ARM이라도 마이크로컨트롤러는 한 칩에 메모리(플래시, RAM)을 포함하고 기타 하드웨어(타이머, UART, SPI, ADC 등 필요에 따라 장착)를 포함한다. 

여기서 메모리는 용량이 크지 않기 때문에 운영체제를 포함하기에는 한계가 있다. 

 

그러나 임베디드 시스템에서는 하드웨어는 한 칩내에 장착하지만, 칩 밖에 많은 용량의 메모리를 장착하고 PCB에서 연결하는 것이 일반적이다. 

이것은 시스템이 크기 때문에 용량이 큰 메모리를 시스템에 장착할 필요성이 있기 때문이다.

일반적으로 "임베디드 시스템"이란 용어는 엄밀하게 정의된 것은 아닌 것이, 대부분의 시스템은 어느 정도의 확장성 또는 재프로그램 능력을 갖추고 있다. 

 

예를 들어 수첩형 컴퓨터는 임베디드 시스템과 유사한 운영 체제와 마이컴을 사용할 수 있지만, 

다른 응용 프로그램을 읽어들이거나 다른 주변장치를 연결하는 것이 허용된다. 

 

더 나아가서 재프로그램성을 주요 기능으로 드러내지 않는 시스템도 보통 소프트웨어 갱신을 지원할 필요가 있다. 

"범용" 과 "임베디드" 사이의 연속체 속에서 대형 응용 시스템은 한두 가지 기능 전용으로 설계되었다 하더라도 부품 수준에서 범용 요소를 대부분 가지고 있다.

 

 

 

26. 다음 중 임베디드 리눅스에 대한 설명으로 틀린 것은 ?

 

1️⃣  별도의 로열티나 라이센스 비용이 없다.

2️⃣  소스가 공개되어 있어서 변경 및 재배포가 용이하다.

3️⃣  사용자 모드와 커널 모드 메모리 접근이 간단하다.

4️⃣  리눅스를 사용한지가 오래되어서, 커널이 안정적이다.

 

더보기

답 : 3️⃣  사용자 모드와 커널 모드 메모리 접근이 간단하다.

 

일반 리눅스

: 일반 데스크탑 환경인 고성능 프로셋와 대용량 메모리 환경에서 동작하는 범용 컴퓨터용 리눅스

 

임베디드 리눅스

: 저성능의 마이크로 프로세서와 제한된 메모리 환경에서 동작하는 임베디드 시스템용 리눅스

 

장점

  • 소프트웨어, 개발, 지원 공급 업체가 여럿 있다
  • 별도의 로열티나 라이선스 비용이 없다
  • 커널이 안정적이다
  • 소스 코드를 이해하고, 변경하고 재배포하기가 더 좋다


단점

  • 커널과 루트 파일시스템 등에 상대적으로 많은 메모리를 차지할 수 있다
  • 사용자모드와 커널모드 메모리 접근의 복잡성
  • 디바이스 드라이버 프레임워크가 복잡하다.

 

 

27. 다음 중 업무처리에 필요한 서버나 스토리지와 같은 IT 하드웨어 자원을 빌려쓰는 클라우드 서비스로 알맞은 것은 ?

 

1️⃣  IssS

2️⃣  PaaS

3️⃣  SaaS

4️⃣  DaaS

 

더보기

답 : 1️⃣  IssS

 

- IaaS(Infrastructure as a Service)> 

서버를 운영하기 위해서는 서버 자원, IP, Network, Storage, 전력 등등 인프라를 구축하기 위해 여러가지가 필요합니다. 

Iaas는 이러한 것들을 가상의 환경에서 쉽고 편하게 이용할 수 있게 서비스 형태로 제공합니다. 

Iass를 서비스로 제공하기 위해 기존 서버 호스팅보다 H/W 확장성이 좋고 탄력적이며 빠른 제공을 할 수 있는 가상화 기술을 이용합니다. 

Iass는 Pass, Saas의 기반이 되는 기술입니다.

- PasS(Platform as a Service) 

서비스를 개발 할 수 있는 안정적인 환경(Platform)과 

그 환경을 이용하는 응용 프로그램을 개발 할 수 있는 API까지 제공하는 형태를 Paas라고 합니다.

- SaaS(Software as a Service) 

Cloud환경에서 동작하는 응용프로그램을 서비스 형태로 제공하는 것을 Saas라고 합니다. 

예를들어 메일 서비스를 들 수 있습니다. 

사용자는 이 시스템이 무엇으로 이루어져 있고 어떻게 동작 하고 있는지 그리고 메일을 백업을 어떻게 하는지 알 필요가 없습니다. 

그저 서비스 형태로 원하는 단말기(PC, Tablet, SmartPhone 등등)에서 메일을 주고 받으며, 

필요하면 언제든지 공간도 늘려서 서비스를 받을 수 있기 때문입니다.

 

 

28. 다음 설명으로 알맞은 것은 ?

 

지속적인 서비스 제공을 목적으로 특정 역할을 하는 노드에
에러가 발생했을 경우 대기하고 있던 백업 노드가 특정 역할을 대신 수행 하도록 한다.

 

1️⃣  임베디드 시스템

2️⃣  고계산용 클러스터

3️⃣  고가용성 클러스터

4️⃣  부하분산 클러스터

 

더보기

답 : 3️⃣  고가용성 클러스터

 

고가용성(高可用性, HA, High Availability)이란 서버와 네트워크, 프로그램 등의 정보 시스템이 상당히 오랜 기간 동안 지속적으로 정상 운영이 가능한 성질을 말한다. 

고(高)가용성이란 "가용성이 높다"는 뜻으로서, "절대 고장 나지 않음"을 의미한다. 

고가용성은 흔히 가용한 시간의 비율을 99%, 99.9% 등과 같은 퍼센티지로 표현하는데, 1년에 계획된 것 제외 5분 15초 이하의 장애시간을 허용한다는 의미의 파이브 나인스(5 nines), 즉 99.999%는 매우 높은 수준으로 고품질의 데이터센터에서 목표로 한다고 알려져 있다. 

하나의 정보 시스템에 고가용성이 요구된다면, 그 시스템의 모든 부품과 구성 요소들은 미리 잘 설계되어야 하며, 실제로 사용되기 전에 완전하게 시험되어야 한다.

고가용성 솔루션(HACMP)[1]을 이용하면, 각 시스템 간에 공유 디스크를 중심으로 집단화하여 클러스터로 엮어지게 만들 수 있다. 

동시에 다수의 시스템을 클러스터로 연결할 수 있지만 주로 2개의 서버를 연결하는 방식을 많이 사용한다. 

만약 클러스터로 묶인 2개의 서버 중 1대의 서버에서 장애가 발생할 경우, 다른 서버가 즉시 그 업무를 대신 수행하므로, 시스템 장애를 불과 몇 초만에 복구할 수 있다. 

고가용성 저장 장치로 레이드(RAID) 방식과 샌(SAN) 방식이 많이 이용되고 있다.


💛리눅스 마스터 시험에 도움이 되었다면 슬쩍 들러서 좋아요 구독 부탁합니다 🧡

비전공자 개발자들을 대상으로 인터뷰를 진행했어요 아래 자료들에서 얻을 수 있는 정보는 #개발자면접후기 #개발자책추천 #국비교육을 받았나 ? #취업까지 얼마나 걸렸나 #비전공자인데 개발직은 할만한가 ? #전전공이 개발에 도움이 되나요? 등등 케바케 질문들로 구성된 인터뷰입니다. 도움이 되었다면 좋아요 🧡궁굼한 점이 있다면 댓글 💛 


 

728x90
반응형