본문 바로가기

반응형

분류 전체보기

(56)
[Python] Garbage Collector 프로그램에서 메모리 메모리 관리를 하는 것은 매우 중요합니다. - 사용하지 않는 메모리를 정리하지 않으면 비효율적인 현상이 발생하게 됩니다. - 사용하고 있는 메모리를 정리하면 프로그램이 중단되며 데이터 손상이 발생할 수 있습니다. Python의 메모리 관리 Cpython에서는 아래 2가지 방법을 이용하여 메모리 관리를 합니다. 1. Generational Garbage Collection(세대별 가비지 컬렉션) 2. Reference Couting(러퍼런스 카운팅) 파이썬은 주로 레퍼런스 카운팅을 사용하여 메모리를 관리합니다. 객체를 만들때마다 객체가 얼마나 사용되는지 카운팅을 합니다. 객체가 참조되면 증가하고 해제되면 감소합니다. 세대별 가비지 컬렉션은 주로 사용하는 방법은 아닙니다. 이것은 참조는 ..
[django] 관리자 계정 생성 환경 Django 3.2.8 관리자 생성하기 python manage.py createsuperuser 원하는 사용자이름과 이메일, 비밀번호 입력 후 사용 관리 페이지 주소는 http://127.0.0.1:8000/amdin/
[Ansible] json 읽기 (shell, cat json) 버전 : ansible 2.9.9 환경 : Ubuntu (WSL2) ansible로 json을 읽는 테스트를 진행하였습니다. 먼저 json은 cat을 이용하여 읽는 shell을 실행하뒤 저장하고 저장된 내용의 stdout을 from_json을 이용하여 json으로 변환합니다. 이후 json을 jmespath나 용도에 알맞게 사용합니다. playbook json 파일 { "data": [ {"first":1}, {"second":2} ] } 실행 커맨드 ansible-playbook playbook_v1.yml -vvv -i inventory 실행결과
(내가 알고 있는) SDN의 모든 것 (2) - Flow Table - 제목에 작성한 것과 같이 '내가 알고 있는' 틀린 지식이나 정보 등이 있을 수 있습니다.피드백은 감사히 받겠습니다. 용어 정리SDN = Software Defined NetworkControl Plane = 장비를 Control하는 PlaneData Plane = 데이터(패킷)를 처리하는 PlaneLegacy 장비 = 기존 네트워크 장비SDN Switch = SDN에서 사용하는 스위치DPID = SDN Switch 식별자 Flow는 패킷을 처리해주는 규칙의 단위이다.예를 들어 하나의 SDN Switch에서 Mac이 A인 패킷을 5번 포트로 보내고 싶다면 하나의 Flow가 생성된다.다음으로 Mac이 B인 패킷을 6번 포트로 보내고 싶다면 또 하나의 Flow가 생성된다.이러게 생성된 Flow들은 스위치의 F..
(내가 알고 있는) SDN의 모든 것 (1) - 시작 - (내가 알고 있는) SDN의 모든 것 이라는 주제로 글을 작성하려 합니다.2013년 연구실 선배의 일을 보조해주며 SDN을 처음알게 되었고 학부/대학원에서 맨땅에 헤딩을 하며 SDN을 공부하였습니다.그 당시에는 Openflow, OVS, mininet등 이해하기 어려운 개념 및 지식들을 이제야 조금 알 것 같습니다.글의 내용이 깊지는 않지만 한 번 읽으면 간단히 이해가 될 수 있도록 작성해보겠습니다. 대학교/대학원 혹은 직장인 SDN 공부를 시작하려는 분들에게 조금이나마 도움이 되기를 바라며 제 생각을 글로 작성해 나가겠습니다. 제목에 작성한 것과 같이 '내가 알고 있는' 틀린 지식이나 정보 등이 있을 수 있습니다.피드백은 감사히 받겠습니다. SDN(Software Defined Networking)은 ..
계산 시간 (백준 10818) 알고리즘 계산 시간 백준 10818 문제를 풀다가 계산 시간에 대해 알아보았다. 10818번 문제는 단순하다.입력받은 값 중 최대, 최소 값을 구하는 문제 하지만 실제로 풀고 제출을 하면 의문점이 생긴다.계산시간이 왜 이렇게 오래 걸리지? 제일 처음 제출한 소스코드는 아래와 같다. #include using namespace std; int main(){ int t,min=1000000,max=-1000000,num; scanf("%d", &t); while(t--){ scanf("%d",&num); if(min>num){ min = num; } if(max> t >> num; min = max = num; t--; while(t--){ cin >> num; min = min>num ? num : min..
Scanf에 대하여 (백준 10953) scanf 알아보기 C언어를 처음 배울 때 표준입력으로 scanf를 사용한다. 당시에는 단순히 scanf("%d", &a); 수준의 scanf만 사용하였다. 하지만, 10953번 문제를 풀면서 scanf 함수에 대해 더 깊게 알아보았다. int scanf( const char *format, ...); 1. scanf 는 \n, ' ', \t 기준으로 문자를 분리 #include using namespace std; int main(){ int a,b; scanf("%d%d",&a,&b); printf("%d %d\n",a,b); return 0; }입력 : 4 (공백) 5입력 : 4 (Tab) 5입력 : 4 (엔터) 5출력 : 4 5 2. 단일문자로 구분 scanf("%d,%d",&a,&b); scan..
[OF-DPA] Spec 문서 OF-DPA Spec 문서OF-DPA는 직접 문서를 보며 Flow Rule을 맞춰 내려야 하기 때문에 문서가 필수이다.ofdpa 3.0버전의 파일까지 다운 받아 사용할 수 있지만 3.0의 문서는 공개되어있지 않다.3.0이 되면서 무엇이 Release 되었는지 알 수 없다. 그나마 최신의 2.0 문서는 Broadcom 홈페이지에서 찾을 수 있다.하지만 of-dpa 문서를 다운 받아 보면 2014년 10월 6일 작성되어 있다.(https://www.broadcom.com/products/ethernet-connectivity/software/of-dpa#documentation) 이보다 최신의 2.0 문서를 보고 싶다면 ofdpa의 github에서 다운받으면 된다.2016년 1월 26일에 작성되었다.http..

반응형