ping명령의 기본적인 작동 원리는 네트워크 상태를 확인하려는 대상컴퓨터를 향해 일정 크기의 패킷(packet)을 보낸 후 대상 컴퓨터가 이에 대해 응답하는 메시지를 보내면 이를 수신, 분석하여 대상 컴퓨터가 작동하는지, 또는 대상 컴퓨터까지 도달하는 네트워크 상태가 어떠한지 파악할 수 있습니다.
ping명령은 TCP/IP 프로토콜 중 ICMP를 통해 동작하므로, 이 프로토콜을 지원하지 않는 기기를 대상으로 ping수행할 수 없습니다. 또한 보안의 이유로 ICMP사용을 차단하는 기기 역시 ping요청에 대응하지 않습니다.
이해를 위해 간단한 예제를 정리해볼건데, 운영체제마다 조금씩 측정하는 방법이 다르므로 전 맥 OS에서 Ping테스트 방법으로 정리해보겠습니다.
데이터 베이스 스키마(database schema)는 데이터베이스에서 자료의 구조, 자료의 표현 방법, 자료간의 관계를 형식 언어로 정의한 구조입니다. 데이터베이스관리시스템(DBMS)이 주어진 설정에 따라 데이터베이스 스키마를 생성하며, 데이터베이스 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 자신이 생성한 데이터베이스 스키마를 참조하여 명령을 수행합니다. 스키마는 3층 구조로 되어있습니다..
외부 스키마: 프로그래머나 사용자의 입장에서 데이터 베이스의 모습으로 조직의 일부분을 정의한 것
개념 스키마: 모든 응용 시스템과 사용자들이 필요로하는 데이터를 통합한 조식 전체의 데이터베이스 구조를 논리적으로 정의한 것
counting의 각 원소 값은 인덱스에 해당하는 원소가 inpur에 얼마나 존재하는지 나타내줍니다. 예를 들어 counting[0] = 3 인데, 인덱스 값인 0이 원소로서 input에 3개 들어있다는 것을 나타냅니다. counting[1] = 3인데 인덱스 값인 1이 원소로서 input에 3개가 들어있다는 것을 나타냅니다. 두번째로 counting의 각 요솟값에 직전 요솟값을 더해서 업데이트해줍니다.
축값을 기준으로 정렬하는데, 축값을 중심으로 축값보다 큰 값은 오른쪽 리스트에, 작은 값은 왼쪽리스트에 이동시킵니다.
오른쪽 리스트와 왼쪽 리스트 부분은 독립적인 단위로 정렬하여 오른쪽 리스트부분에 대한 새로운 분할 축값을 선택하여 두 부분을 분리하고, 왼쪽 리스트부분 역시 새로운 축값을 선택하여 두 부분으로 분리하는 과정을 반복하는데 리스트들은 재귀적 방법으로 각각 재배열 하는 방식입니다.
각 분할 자료개수가 1이 되면 정렬은 완료됩니다.
예시
쉬운 이해를 위해서 다음과 같이 1부터 7까지 총 7개의 숫자가 들어있는 배열을 기준으로 설명하겠습니다.
1
[1, 6, 7, 4, 5, 2, 3]
항상 정 가운데를 기준으로 분할을 하는 병합 정렬과 달리, 퀵 정렬은 흔히 피봇(pivot)이라고 불리는 임의의 기준 값을 사용합니다.
pivot 값을 선택하는데는 여러가지 방법이 있지만 여기서는 간단한 설명을 위해 정 중앙에 위치한 4를 pivot으로 정하겠습니다. 다음과 같이 이 pivot값을 기준으로 pivot보다 작은 값의 그룹과 pivot보다 큰 값의 그룹으로 나눕니다.
절차지향 프로그래밍은물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시 되고 프로그램 전체가 유기적으로 연결되도록 만드는 프로그래밍 기법을 말합니다. 대표적인 절차지향 언어에는 C언어가 있는데, 이는 컴퓨터의 작업 처리 방식과 유사하기 때문에 객체지향 언어를 사용하는 것에 비해 더 빨리 처리되어 시간적으로 유리하다고 볼 수 있습니다. 옛날에는 하드웨어와 소프트웨어의 개발속도 차이가 크지 않았다면 지금은 하드웨어의 개발속도가 소프트웨어의 속도를 따라오지 못하는 상황이 발생합니다.이는 객체지향 언어가 나타나면서 이러한 현상이 존재하게 되었습니다.
사용자가 어떤 홈페이지로 이동하기 위해서 URL을 브라우저 주소창에 작성하고 엔터를 누르면 원하는 페이지로 이동합니다. 사용자는 단순히 URL을 입력하였을 뿐이지만 서버 내부에서는 클라이언트의 요청에 응답하기 위해서 처리해주어야 합니다. 여기서 클라이언트가 서버로 요청을 보내는 방법인 HTTP Method에는 크게 두가지 방식이 있는데 그것이 GET, POST입니다.