RAND 정리 1. RAND 설명 RAND는 난수를 생성하는 함수 또는 메커니즘으로, 소프트웨어 및 하드웨어에서 사용됩니다. 목적: 난수는 보안, 시뮬레이션, 게임, 통계적 분석 등 다양한 분야에서 필요합니다. 특징: 난수는 예측할 수 없어야 하며, 진정한 난수(TRNG)와 의사 난수(PRNG)로 나뉩니다. 2. RAND 함수 종류 설명 (C++) std::rand (C 표준 라이브러리) std::random_device (C++11 이후) std::mt19937 (Mersenne Twister, C++11 이후) std::uniform_i..
#git URLgit clone https://github.com/HaeJuk-Lab/crypto.git/******************************************************************************* _ _ _ _____ _ _ _ _ __ _ _ ____ ____* | | | | / \ | ____| | | | | | |/ / | | / \ | __ ) ___|* | |_| | / _ \ | _| _ | | | | | ' / | | / _ \ | _ \___ \* | _ |/ ___ \| |__| |_| | |_| | . \ | |___ / ___ \| |_) |__..
리눅스 타이머 방식 정리 및 비교표1. 리눅스에서 사용 가능한 타이머 방식리눅스에서는 다양한 방식으로 주기적인 작업을 수행할 수 있습니다. POSIX 타이머, sleep, pthread, alarm 등 여러 방식이 존재하며, 각각의 방식은 성능과 사용 용도에 따라 적합성이 다릅니다.2. 리눅스 타이머 방식 및 예제 코드1. POSIX 타이머 (timer_create)설명: 고정밀 타이머로, SIGEV_THREAD 옵션을 사용해 타이머 만료 시 별도의 스레드에서 콜백이 실행됩니다.#include #include #include void timer_handler(union sigval sv) { printf("Timer expired! Data sent.\n");}void create_timer() {..
1. Red Hat 환경 준비1.1 필수 패키지 설치다음 명령으로 개발에 필요한 도구와 라이브러리를 설치합니다:sudo yum groupinstall "Development Tools"sudo yum install gcc gcc-c++ cmake ninja-build gdb zlib-devel openssl-devel boost-devel sqlite-devel libstdc++-devel 최신 GCC 버전(GCC 12 이상)을 설치하려면:sudo yum install gcc-toolset-12scl enable gcc-toolset-12 bash 1.2 PATH 설정환경 변수 PATH에 최신 도구 경로를 추가합니다:export PATH=/opt/rh/gcc-toolset-12/root/usr..
GetMyIPs C++ Code This code retrieves the IP addresses of the system's network interfaces on both Windows and Linux platforms using C++14. #include iostream>#include vector>#include string>// Platform-specific includes#ifdef _WIN32#include winsock2.h>#include ws2tcpip.h>#pragma comment(lib, "ws2_32.lib")#else#include ifaddrs.h>#include netinet/in.h>#include arpa/inet.h>#include sys/socket...
#pragma pack 지시자는 구조체, 클래스, 또는 유니언의 멤버들이 메모리에 어떻게 배치되는지를 제어하는 데 사용됩니다. 기본적으로 컴파일러는 멤버들을 특정 바이트 경계에 맞추기 위해 패딩을 추가하여 최적의 성능을 보장하지만, 특정 상황에서는 이 패딩을 제거하고 메모리 사용을 최소화해야 할 필요가 있습니다. 이를 위해 #pragma pack을 사용하여 멤버들의 정렬 단위를 변경할 수 있습니다.#pragma pack 사용법#pragma pack(push, 1)과 #pragma pack(pop)은 구조체, 클래스, 유니언의 멤버 정렬을 제어하는 데 사용됩니다. 이 설정은 데이터 패딩을 줄여 메모리 사용을 최적화하거나, 파일 포맷 및 네트워크 프로토콜과 같은 특정 데이터 포맷과의 호환성을 위해 자주 사용..
- Total
- Today
- Yesterday
- 성산블루버블
- 윈도우
- 블루버블
- 스쿠버다이빙
- PowerShell
- 서귀포블루버블
- Windows
- Linux
- C++
- 외돌개
- 현포다이브
- 암호화
- C# 고급 기술
- 제주도
- 블루버블다이브팀
- C#.NET
- 블루버블다이빙팀
- Build
- 스쿠버 다이빙
- C
- 울릉도
- 패턴
- DLL
- CMake
- OpenSource
- 리눅스
- C#
- 서귀포
- ip
- Thread
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |