반응형

분류 전체보기 175

[네트워크] 패킷(Packet)/ 패킷 교환 이란?

패킷(Packet) 이란? 패킷은 메시지가 일정한 크기로 분활된 데이터와 제어 정보를 포함하는 데이터 블록이다. 패킷은 헤더에 전송하려는 목적지 주소를 포함하며, 제어 정보에는 패킷이 통신 경로를 찾아 목적지에 도달하기 위한 정보가 포함 된다. 패킷 교환 개념 패킷 교환은 사용자가 데이터를 일정한 크기의 패킷 단위로 전송하면 교환기에서 패킷 단위로 넘겨주는 방식이다. 교환 노드(교환기)가 패킷을 받으면 저장 한 뒤 라우팅 정보를 검사 하고 링크를 통해 전송한다. 이 저장했다가 보내는 방식을 Store-and-Forward 라고 한다. 패킷 교환의 장점 1. 회선이나 노드의 문제가 발생해도 우회 경로를 사용해서 전송이 가능하므로 통신이 중단되지 않는다. 2. 메시지를 패킷 단위로 나눠 하나의 링크를 다수의..

기타 2024.02.26

[네트워크] 블루투스(Bluetooth) 란 무엇일까?

블루투스(Bluetooth) 무선 마우스, 무선 헤드폰, 프린터 등에서 사용하는 단거리 무선 통신 규격이다. 블루투스 역사 1998년 IBM, INtel, Toshiba, Nokia가 주축으로 설립한 블루투스 SIG(Special Interest Group)에서 블루투스에 관한 표준을 만들었다. 1999년 07월 26일 - 버전 1.0 발표 2003년 11월 - 버전 1.2 발표 2004년 11월 - 버전 2.0 발표 2007년 03월 28일 - 버전 2.1 발표 2009년 04월 21일 - 버전 3.0 발표 2009년 12월 17일 - 버전 4.0 발표 2013년 12월 04일 - 버전 4.1 발표 2014년 12월 03일 - 버전 4.2 발표 2016년 12월 08일 - 버전 5 발표 블루투스 통신 ..

기타 2024.02.25

[C언어] 버퍼 오버플로우(Buffer overflow) 예방법/ 스택 버퍼 오버플로우/ 힙 버퍼 오버플로우

버퍼 오버플로우 개념 버퍼 오버플로우는 버퍼에 할당된 저장 영역보다, 더 많은 자료를 입력하여 데이터를 변경 할 수 있는 조건이다. 공격자는 조건을 이용해 시스템 먹통으로 만들거나 코드를 삽입해서 시스템의 제어를 가진다. 버퍼 오버플로우는 스택 버퍼 오버플로우, 힙 버퍼 오버플로우 두 가지가 있다. 버퍼 오버플로우는 버퍼 오버런(buffer overrun), 버퍼 오버라이트(buffer overwrite)라고도 불린다. 버퍼 오버플로우 예제 아래 c언어 코드를 실행 해보자. strcpy_s(buffer, 20, input); 함수에서 문자열을 복사하는 예제다. #include #include void vulnerableFunction(char* input) { char buffer[10]; strcpy_..

C 언어 2024.02.24

[자연 환경] 육식이 환경에 미치는 영향과 문제점

3대 영양소라 불리는 단백질 보충에는 육류만 한 것이 없다.  하지만 훗날 우리가 좋아하는 육류를 먹지 못할 수도 있다. 왜냐하면 가축을 키우는 것이 환경에 좋지 않은 영향을 끼치기 때문이다. 콩 고기, 인공육이 괜히 세상 밖으로 나오는 게 아니며 현재도 육류의 대체안을 찾고 있는 중이다.   육식이 인간에게 미치는 영향위에 그래프를 보면 우리나라의 고기 육류 소비량이 증가하고 있다. 육식을 많이 하게 되면 성인병 위험, 영양 불균형 등 위험이 있다. 육식이 인간에게 미치는 영향은 많은 사람이 알고 있으므로 이 포스팅은 환경에 미치는 영향을 다룰 것이다.  식량 위기쌀 1kg을 얻기 위해서 물 3000리터가 필요한 반면, 소고기 1kg을 얻기 위해서 곡물 8kg과 물 15,000 리터가 필요하다.  이처..

기타 2024.02.23

[자연 환경] 농약의 장점과 단점/ 농약이 환경과 인간에게 미치는 영향

21세기에 농약은 없어서는 안되지만 환경에 좋지 않은 영향을 미친다. 현재 사용하는 농약을 대체 할 수 있는 해결 방안이 있어야 한다. 농약 이란? 농약이란 농사를 짓는데 필요한 약이다. 사람의 질병을 치료하는데 약을 사용하는 것처럼 농식물의 질병을 치료하는데 농약이 사용된다. 농약의 장점 - 작물 수확량 증진 - 농산물 해충 방제 - 인류의 보건 증진과 식량 증신에 크게 이바지 함 농약의 문제점 - 환경 오염 - 농약에 내성이 생긴 해충 출현 - 생태계 파괴 - 익충 피해 농약이 생태계에 미치는 영향 농약을 사용할 때 해충만 선택 적으로 죽이기는 어렵다. 따라서 농약 살포 시 이로운 익충 까지도 모두 죽게 된다. 또한 농약 사용 후 빈 통을 버리지 않고 강물에 버리는 경우가 많아 수생생물에게도 영향을 ..

기타 2024.02.22

[자연 환경] 도도새의 멸종

인간의 욕심으로 도도새는 멸종되었다. 도도새 인도양에 있는 아프리카 쪽 모리셔스 섬에 도도새는 살고 있었다. 도도새는 섬에 천적이 없어 날개가 퇴화되었다. 덕분에 새 임에도 불구하고 날지 못하고 덩치는 커지는 방향으로 진화했다. 그림 출처 : https://terms.naver.com/entry.naver?docId=1082790&cid=40942&categoryId=32604 도도새 비둘기목 도도과의 멸종된 새. 인도양의 모리셔스에 서식했던 새이다. 칠면조보다 크고, 몸무게는 23㎏ 정도이며, 큰 머리에 깃털은 청회색이다. 검은색을 띠는 부리는 약 23㎝이며, 부리 끝은 구 terms.naver.com 도도새 멸종 이유 대항해 시대 1505년 포르투칼인들이 모리셔스 섬에 도착 했다. 날지 못하는 도도새..

기타 2024.02.21

[OpenGL] 쉐이더(shader)/ 쉐이딩 구현 하기

쉐이더 란? 쉐이더는 색상, 명암, 색조 등을 조절 해준다는 뜻을 가지고 있다. teapot, wireCube, sphere 등은 쉐이더 구현이 안되므로 직접 model 데이터를 제작해서 rgb 값을 할당 후 쉐이딩을 해줘야 한다. 쉐이딩 기법 순서 1. 삼각형을 그리기 위해서 3개의 vertex를 찍어 준다. 2. vertex 마다 다르게 색상을 준다. 3. GL_FLAT 나 GL_SMOOTH를 사용해서 RGB를 filling 해준다. 4. 결과가 나온다. GL_SMOOTH 로 쉐이딩 해주기 삼각형을 그리고 GL_SMOOTH 모드로 쉐이딩 해주는 코드. #include #include void draw(void) { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); glClear(GL..

OpenGL 2024.02.19

[OpenGL] 줌 인, 줌 아웃 구현하기

사진 찍을 때 확대, 축소 하는 것 처럼 OpenGL도 구현이 가능하다. 줌 아웃 애니메이션 만들기 #include #include void draw(void) { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glClearColor(1.0, 1.0, 1.0, 1.0); // 배경 색상 glColor4f(0.0, 0.0, 1.0, 1.0); //그림 색상 float ws = 0; for (int i = 0; i < 10; i++) { glColor4f(1.0f, 0.0f, 0.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT); printf("%f\n", ws); ws +..

OpenGL 2024.02.18

[OpenGL] 도형 애니메이션 만들기

애니메이션 도형이나 물체가 알아서 움직이는 것을 애니메이션, 비디오라고 불린다. sphere가 움직이는 애니메이션 만들기 sphere가 우측으로 5번, 좌측으로 5번 움직이는 코드다. #include #include void draw(void) { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glClearColor(1.0, 1.0, 1.0, 1.0); // 배경 색상 glColor4f(0.0, 0.0, 1.0, 1.0); //그림 색상 float Tx; for (int i = 0; i < 10; i++) { glClear(GL_COLOR_BUFFER_BIT); // 그림 초기화 if (i ..

OpenGL 2024.02.17
반응형