본문 바로가기

분류 전체보기219

PyList_New(size 또는 0) 00 개요파이썬 리스트를 생성하는 PyList_New() 함수에 대한 정리코드 분석 중 PyList_New() 함수는, 인자로 생성될 list의 크기를 줘야만 하는 함수인 줄 알았는데 PyObject *result = PyList_New(0)으로 선언한 뒤 result에 값이 추가가 되는 것을 보고 멘붕와서 이에 대한 설명을 하고자 함요약: PyObject* myList = PyList_New(0); 실행 시myList는 초기 크기가 0인 빈 Python 리스트로 생성됨이 리스트는 처음에는 요소를 포함하지 않지만, 이후에 요소 추가될 수 있음Python의 리스트는 동적으로 크기 조정이 가능하기에, 처음에 크기가 0이어도 나중에 항목 추가 가능'01 PyList_New(size) 함수1. 정의Python .. 2024. 8. 30.
Load Vectors란 (LSF) 00 개요LSF API 문서를 보면, Load Vectors라는 개념이 나오는 것에 대한 정리Load Indices를 표현하는 한 방법이 Load Vectors 임 (참조: 2024.08.30 - [소프트웨어/LSF] - Load Indices란 (LSF))https://www.ibm.com/docs/en/spectrum-lsf/10.1.0?topic=SSWRJV_10.1.0/api_reference/index.htm01 Load Vectors란1. 정의시스템의 자원 상태를 여러 차원으로 표현한 벡터각 차원은 시스템의 다양한 자원 지표 (예: CPU 사용률, 메모리 사용량, 디스크 I/O 등)를 나타냄예) 시스템의 상태를 [CPU 사용률, 메모리 사용량, 디스크 I/O]의 형태로 벡터화한 것이 load .. 2024. 8. 30.
Load Indices란 (LSF) 00 개요LSF API 문서를 보면, Load Indices라는 개념이 나오는 것에 대한 정리https://www.ibm.com/docs/en/spectrum-lsf/10.1.0?topic=SSWRJV_10.1.0/api_reference/index.htm01 Load Indices란1. 정의IBM Spectrum LSF의 문서에서 load indices는 시스템 자원의 사용 상태를 나타내는 수치이러한 수치는 작업을 스케줄링할 때 시스템의 부하를 고려하여 작업을 배치하는 데 사용됨구체적으로는, 각 시스템의 현재 상태를 나타내는 지표로서, 시스템의 CPU 사용률, 메모리 사용량, 디스크 I/O, 네트워크 대역폭 등을 포함2. 예시1) 웹 서버 클러스터의 작업 배치웹 서버 클러스터를 관리할 때, 이 클러스터.. 2024. 8. 30.
memset (C 메모리 초기화 함수) 00 개요메모리... C...C.. 01 memset 함수1. 정의 및 역할= memory + setting = 메모리를 (특정 값으로) 세팅메모리의 내용(값)을 원하는 크기만큼 특정 값으로 설정하는 함수 2. 문법void* memset(void* ptr, int value, size_t num);Parametersvoid* ptr:세팅하고자 하는 메모리의 시작 주소즉, 그 주소를 가리키고 있는 포인터가 위치하는 자리a pointer to the block of memory to fillvalue:메모리에 세팅하고자 하는 값int 타입으로 받지만 내부에서는 unsigned char 로 변환되어서 저장됨즉 'a' 이런것을 넣어도 무방type integerconverts it to an unsigned ch.. 2024. 8. 28.
failover (자동 전환) 00 개요어느 서비스 프로그램의 아키텍처 구성을 설계 시 사용될 수 있는 failover이라는 기술에 대한 정리01 failover 이란Failover: 시스템 가용성을 위한 필수 기술1. 정의Failover는  주 시스템이 장애를 일으켰을 때, 백업 시스템으로 자동으로 전환하여 서비스의 연속성을 유지하는 기술중요한 시스템이 예상치 못한 문제로 인해 중단되지 않도록 보장하는 방법컴퓨터 시스템, 네트워크, 또는 데이터베이스 등에서 주로 사용되는 고가용성(High Availability) 기술 중 하나2. 동작 원리주 시스템(Primary System): 평소에는 모든 작업을 처리하는 주요 시스템백업/예비 시스템(Backup/Standby System): 주 시스템에 장애 발생 시 즉시 활성화됨. 주 시스템.. 2024. 8. 27.
오버헤드 (Overhead) 00 개요CPU 사용 시간에 관해 알아볼 때 오버헤드(overhead)라는 개념이 나와서 이에 대한 정리오버헤드를 최소화하는 것이 시스템 성능을 최적화하는 데 중요한 역할을 함개발자는 항상 오버헤드를 고려하여 시스템을 설계하고 최적화하는 것이 중요01 오버헤드(Overhead)란1. 정의오버헤드는 시스템에서 주어진 작업을 수행하기 위해 필요한 추가적인(간접적인) 자원 (메모리 등)이나 시간 비용을 의미 이는 프로세스나 프로그램이 본래의 목표를 달성하기 위해 반드시 필요한 부분은 아니지만, 작업을 지원하기 위해 불가피하게 발생하는 부가적인 작업즉, 반드시 존재함 2. 개념 설명오버헤드는 주로 컴퓨터 시스템의 성능을 저하시킬 수 있는 요소 여겨짐효율적인 시스템 운영을 위해 오버헤드를 최소화하는 것 중요 예를.. 2024. 8. 26.
공백 제거 (파이썬 함수) 00 개요Python에서 문자열의 공백을 제거하는 함수와 메서드에 대한 정리1. 공백 제거란공백 제거: 문자열에서 불필요한 공백 문자를 제거하는 작업을 의미공백 문자는 스페이스( ), 탭(\t), 줄 바꿈(\n), 캐리지 리턴(\r) 등 다양한 형태로 존재 가능2. 목적 및 사용 사례1) 목적문자열의 불필요한 공백을 제거하여 데이터의 일관성을 유지하거나, 데이터를 처리하기 쉽게 만들기 위함2) 사용 사례입력 데이터 정리사용자가 입력한 데이터에서 불필요한 공백을 제거하여 데이터가 깨끗하고 일관되도록 보장예) 사용자 로그인 폼에서 사용자 이름에 추가된 공백을 제거하여 일관된 사용자 이름 추출 가능파일 처리파일에서 읽어온 데이터에 포함된 공백을 제거하여 데이터의 정밀도를 높이거나 분석을 용이하게 함문자열 비교.. 2024. 8. 23.
subprocess (파이썬 모듈) 00 개요subprocess 모듈에 대한 정리 01 subprocess 모듈이란1. 정의subprocess 모듈은 새로운 프로세스를 생성하고, 그들의 입력/출력/에러 (input/output/error) 파이프에 연결하며, 반환 코드를 얻을 수 있게 함os.system 및 os.spawn* 와 같은 오래된 모듈 및 함수를 대체하기 위해 만들어짐 2. 사용서브프로세스를 호출할 때 권장되는 방법: run() 함수 사용Popen 인터페이스 사용 (advanced)프로세스 생성 및 관리는 기본적으로 Popen 클래스에 의해 처리됨02 subprocess의 Popen 생성자프로세스 생성 및 관리는 기본적으로 Popen 클래스에 의해 처리됨1. 문법class subprocess.Popen(args, .. 2024. 8. 23.
LINUX 명령어 및 연산자 ls Lists a directory’s content pwd Shows the current working directory’s path cd Changes the working directory mkdir Creates a new directory rm Deletes a file cp Copies files and directories, including their content mv Moves or renames files and directories touch Creates a new empty file file Checks a file’s type zip and unzip Creates and extracts a ZIP archive tar  'tape archive', works with Ar.. 2024. 8. 15.