<?xml:namespace prefix = "o" /><?xml:namespace prefix = "o" />
문제 1.
TCP/IP 프로토콜에서 UDP 프로토콜을 이용하여 TCP 만큼, 또는 TCP 의 단점을 보완한 안정적인 프로토콜로 만들 수 있을까요? 있다면, 새로운 프로토콜을 설계하시고, 자신이 설계한 프로토콜을 설명하고 기존 프로토콜과 어떤 것이 얼마나 더 좋은지에 대해서 설명하세요. 필요하면 IP 프로토 콜 조차 바꿔버리셔도 됩니다.
문제 2.
컴퓨터의 전원을 켜면 컴퓨터 내부에서 일련의 과정(procedure)을 통해 미리 설치한 운영체제를 사용할 수 있도록 부팅이 됩니다. 사용자가 컴퓨터에 전원 버튼을 누르는 순간부터 부팅이 완료 되어 컴퓨터를 사용할 수 있을 때까지의 과정에 대해서 최대한 상세하게 서술하세요. (힌트 키워
드: BIOS, CPU, RAM, HDD, MBR, 7C00, Interrupt, Boot loader, Kernel .. )
문제 3.
최근 기술적 추세로 보았을 때 데이터베이스를 포함한 데이터 처리 부분에서 SQL 과 NoSQL 이 나눠져 있음을 알 수 있습니다. 만약, NoSQL 의 대표적인 제품에 SQL 의 개념을 넣으면 어떻게 될까요? 예를 들어서, Cassandra 에 SQL 을 탑재하는 것이 가능할까요? 가능하다는 관점에서는 어떤 한계점이 있으며 그 한계점을 어떻게 극복할 수 있을까요? 그리고 그렇게 병합된 제품은 NoSQL 이라고 할 수 있을까요
문제 1.
자석에 쇠붙이 등 물체를 가져다 대면 어느 순간 자석으로 끌려가서 붙게 됩니다. 어떤 물체가 자석으로 끌려가기 시작하는 임계점을 구하기 위해서는 많은 변수들에 대한 고려가 있어야 하는 데, (자기장에 따른 각도, 물체의 질량 및 자력 등) 이런 변수를 고려해서 “물체”가 “자석”으로 끌 려가서 붙게 되는 임계점을 구하는 프로그램을 설계하고 작성하세요. 이를 구하기 위한 문제의 정의는 설계시에 함께 고려하시고 어떤 것을 고려하였으며, 어떻게 문제를 풀었는지에 대해서 설 명하세요. 프로그램은 꼭 실행 가능하지 않아도 되며, pseudo code 로도 가능합니다. 설계 문서는 자유롭게 써 주시되, 주요 부분이 설명이 되어야 합니다.
문제 2.
Windows 운영체제 위에서 자주 사용되는 시스템 프로그래밍 기법 중 “DLL injection” 이라는 기 법이 있습니다. Linux 운영 체제에서도 위와 같은 기법을 활용할 수 있으며, 있다면 어떤 방법으
로 할 수 있을지에 대해서 구체적으로 써주세요. 그리고 DLL injection 은 그 자체에 대한 효율성 도 있지만, 보안적으로 취약하다는 단점도 있습니다. 이러한 기법이 계속 될 수 있도록 허용을 해 야 할지, 아니면 막아야 할지에 대해서 의견을 적어주세요. 끝으로, 만약 DLL injection 을 막을 수 있다면 어떻게 해야 막을 수 있고, 그 방법은 얼마나 강력한 방법인지에 대해서 설명하세요.
문제 3.
객체지향 프로그래밍 (Objective Oriented Programming) 과 함수형 프로그래밍 (Functional Programming) 을 비교했을 때 각각의 프로그래밍 기법이 가지는 강점과 약점은 무엇인가요? 아 래에 제시된 각 프로그램(또는 소프트웨어)에서 어떤 프로그래밍 방법을 쓰는 것이 더 나을지 제 시하세요. (사용자가 배우기 쉬운 점, 어떤 형태의 기법을 더 많이 쓰는지에 대한 시장상황은 고려 하지 않습니다. 기술적 관점으로 제시하세요) 각각의 프로그래밍 기법에 대한 정의 또는 기법 자 체에 대한 설명은 적어주시지 않으셔도 됩니다.
- 자동차 ECU
- 네트워크 라우터 (router)
- Android 와 같은 Operating System
- 하이패스와 같은 통행료 징수 시스템
- 비행기 오토파일럿(Auto-pilot) 시스템
- 기차표 예매 시스템
문제 4.
컴퓨터는 왜 2진수를 기반으로 설계가 되었고 또 동작을 할까요? 트랜지스터가 3개의 state 를 지원한다는 전제에서 컴퓨터 내의 모든 처리를 3진수 기반으로 했을 때는 현재의 컴퓨터와 어떤 차이점이 있고 어떤 장점과 단점이 있을지에 대해 서술하세요. 추가로, 아날로그 신호를 기반으로 컴퓨터를 만들면 어떻게 될 지에 대한 의견을 적어주세요.
문제 5.
정규식(Regular Expression)을 이용하지 않고 이 메일 주소의 형식이 제대로 된 것인지 확인하고 검증하는 프로그램을 작성하세요, 언어는 제한이 없으며 pseudo code 도 괜찮습니다. 다만 주요 구현 부분에 대해서는 어떻게 했는지에 대한 설명을 붙여주셔야 합니다. 또한, 정규식은 왜 필요 할까요? 정규식이 없다면 어떤 것이 얼마나 복잡하게 될지, 그 식 자체의 필요성에 대해서 의견을 제시하세요.<?xml:namespace prefix = "o" ns = "urn:schemas-microsoft-com:office:office" />
문제 6.
아래에 제시된 문제를 해결할 수 있는 가장 효율적인(efficient) 프로그램을 작성하세요.
- 3에서 91까지의 자연수를 더하는 프로그램
- 1에 1을 더하는 프로그램
- 1에서 100까지의 소수(decimal) 전부를 더하는 프로그램
문제 7.
일반적인 C언어 기반의 primitive type 에서는
장총올만니다
ㅠㅠ
넥슨 문제네
어제누가 다풀어서올림