Basics 65

OSI 7계층

OSI 7계층의 모델 개요와 목적1977년 국제 표준화 기구(ISO, International Standards Organization) 위원회에서 제정한 표준 네트워크 구조를 위한 개방형 시스템 간 상호접속(OSI, Open System Interconnection)에 관한 규정입니다.컴퓨터 네트워크 프로토콜 디자인과 통신을 계층을 나누어 규칙으로 설명한 것으로, 컴퓨터와 컴퓨터 사이를 연결하고 서로 다른 컴퓨터나 정보통신 시스템 간의 연결 및 원활한 정보 교환을 위한 표준화된 절차입니다.- 6년 이상 개발되어 1983년에 완성된 X.200으로 알려진 국제적 네트워크 표준 OSI 7계층 프로토콜의 구성7개의 계층으로 구성됩니다.7 - 응용 계층6 - 표현 계층5 - 세션 계층4 - 전송 계층3 - 네트..

Basics/Network 2014.11.10

객체 지향 프로그래밍 (Object-Oriented Programming)

객체 지향 프로그래밍 (Object-Oriented Programming) 일종의 프로그래밍 방법론으로 프로그램을 구성하는 함수와 변수를 묶어서 객체를 만들고 객체 단위로 프로그래밍 하기 위한 방법입니다. 객체 지향 프로그래밍의 장점 - 모듈간의 독립성 증대 + 하나의 프로그램은 여러가지 기능으로 구성 -> 각각의 기능들은 모듈로 구현 + 독립성이 높을 수록 유지보수, 개발이 쉬워짐 + 객체 지향 프로그래밍에서는 모듈화의 단위가 객체 단위가 된다 + 독립적인 기능을 지원하는 객체를 구현하고 객체들을 모아서 프로그램을 개발하는 것이 객체 지향 프로그래밍의 방식 + 객체마다 고유의 기능이 정해져 있기 때문에 특정 객체에서 문제가 발생하면 그 객체만 수정하면 된다. + 객체의 구현이 변경되더라도 객체의 인터페..

Basics/Programming 2014.11.10

프로세스와 스레드

프로세스프로세스는 수 많은 요소들로 구성된 개체로 생각될 수 있습니다. 프로세스의 두 필수적인 요소는 프로그램 코드, 코드와 연계된 데이터의 집합입니다. 처리기가 프로그램 코드를 수행한다고 가정하면, 그 수행중인 개체가 프로세스입니다.- 수행 중인 프로그램- 컴퓨터 상에 수행 중인 프로그램의 인스턴스- 처리기에 할당되어 수행될 수 있는 개체- 명령들의 순차 수행, 현재 상태, 연계된 시스템 자원들의 집합 등에 의해 특징지어지는 활동 단위- 프로세스는 여러개의 스레드를 가질 수 있습니다. (다중 프로세스라고 가정할 때)- 자원 소유권 : 자신의 이미지를 위한 가상 주소 공간을 포함합니다. + 프로세스 이미지 : 프로세스 제어 블록에 정의되어 있는 프로그램, 데이터, 스택 등의 집합 + 주기억장치, 입출력 ..

Basics/OS 2014.11.07

CPU 스케줄링 알고리즘

CPU 스케줄링요즘과 같은 다중프로그래밍 환경에서 가장 중요한 부분은 스케줄링이라고 할 수 있습니다.- "응답시간과 처리량, 효율성을 증대시키기 위해 CPU가 다음에 실행할 프로세스를 선택하는 것"이라고 할 수 있습니다. 선점과 비선점선택함수라고도 하는데 다음번 실행을 위해 준비 큐에서 대기중인 프로세스 하나를 고를 때 사용하는 알고리즘을 이야기합니다. 비선점 모드- 프로세스가 일단 실행 상태에 진입하면 종료되거나 자발적으로 CPU를 놓을 때 까지는 CPU를 빼앗기지 않습니다.- 자발적으로 CPU를 놓는다는 것은 프로세스가 종료되거나 입출력 요구 및 시스템 서비스 호출 등으로 인해 스스로 블록되는 현상을 말합니다.- 모든 프로세스에게 공정하고 응답시간의 예측이 가능합니다.- 짧은 프로세스가 작업시간이 긴..

Basics/OS 2014.11.07

Problem 11. 20x20의 격자 안에 인접한 숫자 4개의 곱 중 가장 큰 값은?

Project Euler - Problem 11. In the 20×20 grid below, four numbers along a diagonal line have been marked in red. 08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08 49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00 81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65 52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91 22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 ..

Problem 10. 2백만 이하 소수들의 합

Project Euler - Problem 10. The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17. Find the sum of all the primes below two million. - 10 이하의 소수들의 합은 2+3+5+7 = 17이다. 그렇다면 200만 이하의 소수들의 합은? 이런 식으로 구할 수 있습니다. 하지만, 100만개의 루프(짝수 제외)를 돌아야하기 때문에 해가 나오길 꽤나 오랜시간 기다려야합니다. - 저도 못기다려서 실행중에 껐습니다. 연속된 소수를 구하는 방법에는 에라토스테네스의 체 라는 방법이 있습니다. 에라토스테네스의 체 소수를 구하는 방법으로 조금만 생각해보면 유추해낼 수 있는 방법입니다. 1. 1은 소수가 아니므로 제외합니다...

Problem 8. 1000자리의 숫자 중 인접한 13자리의 곱중 가장 큰 수는?

Project Euler - Problem 8. The four adjacent digits in the 1000-digit number that have the greatest product are 9 × 9 × 8 × 9 = 5832. 73167176531330624919225119674426574742355349194934 96983520312774506326239578318016984801869478851843 85861560789112949495459501737958331952853208805511 12540698747158523863050715693290963295227443043557 66896648950445244523161731856403098711121722383113 622298934..

Problem 7. 10001번째 소수는?

Project Euler - Problem 7. By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13. What is the 10 001st prime number? - 여섯개의 소수를 보면 2, 3, 5, 7, 11, 13이 있습니다. 6번째 소수는 13인걸 알 수 있습니다. 그렇다면, 10001번째 소수는 몇일까요? - 소수는 자신이 아닌 숫자로는 나누어 떨어지지 않는 숫자입니다. - 1은 소수가 아닙니다. - 소수는 짝수가 아닙니다. 답은 10001번째 소수는 104743 입니다.

Problem 6. 1 ~ 100까지의 합의 제곱과 제곱의 합의 차이

Project Euler - Problem 6. The sum of the squares of the first ten natural numbers is,12 + 22 + ... + 102 = 385The square of the sum of the first ten natural numbers is,(1 + 2 + ... + 10)2 = 552 = 3025Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 − 385 = 2640. Find the difference between the sum of the squares of the first ..