분류 전체보기 73

어느 영업 아재의 취업, 이직, 조직생활 경험담과 조언 (펌)

취업을 준비하는 후배님들께 드리는 취업, 이직, 조직생활 경험담(1)  먼저 학교생활과 관련된 경험입니다. 소위 운동권세대의 끝물학번으로 학생회활동, 사회과학 이런것에 모두들 무관심할때 80년대 학번 선배들과 어울리며 밤새 책읽고 세미나하고 집회 쫓아다니고 등등 그렇게 친구들, 가족들한테 병신같이 수업,학점 챙기지도 않고 자기관리 못한다고 핀잔에 무시당하면서 4학년 2학기까지 21학점 풀로 들으면서 겨우겨우 졸업했습니다. 당연 학점이 저지경이었지요.. D학점 마저도 감사했던..ㅋㅋ 졸업한지 10년이 지났지요..지금.. 남들과 사고하는게 틀립니다..저는..자신있게 말하지요. 제 또래의 소위 잘나가는 일부 스카이를 비롯한 서울 명문대 출신들도 속으로는 무시합니다. 멍청한 놈들.. 그렇게 공부한 놈들이 생각하..

취업 2024.10.08

[Visual Studio] c#에서 c++ dll 디버깅 하기

1. 솔루션 내에 c++ 프로젝트와 c#프로젝트를 같이 둔다.(C++이 있는 프로젝트에 C#을 포함시키는 쪽이 더 편하다.)(반대로 하면 C++ 프로젝트 세팅을 다시 해줘야한다.) 2. 종속성 설정솔루션 -> 속성 -> 프로젝트 종속성에서 c# 프로젝트를 c++ 프로젝트에 종속시킨다.  3. 호환성 모드 설정도구 -> 옵션 -> 디버깅 -> 일반에서관리되는 호환성 모드 사용 체크   4. C# 프로젝트 -> 속성에서 네이티브 코드 디버깅 사용 체크   5. 디버깅 모드로 실행 후 C++프로젝트에서 디버깅이 되는지 확인 ----출처https://toyship.tistory.com/140 options" data-og-host="toyship.tistory.com" data-og-source-url="htt..

[임베디드, 비전 업무 용어]

용어설명서지 보호기전력 보호기크라켓하드웨어 물체를 고정해주는 부품라우터모뎀과 비슷한데 1개의 랜 연결점을 여러개로 분리 해주는 장치지그물건 올려놓는 건데 다양하게 사용됨스테이션공정을 하기위해 물건을 올려두는 곳블롬데이터로서 의미 있는 픽셀 뭉치어세이 헤드제품 조립 or 제품에 어떤 공정을 가하는 기계PLC전력선 통신 장치(Power Line Communicaton) 비트 단위 데이터를 전달해주는 역할촬상광학 데이터를 전기 데이터로 변환 = 말그대로 그냥 머신 카메라로 촬영해서 데이터화트랜스퍼공정중에 물건을 옮겨주는 리니어 기계싸이클모든 공정이 일시 정지된 상태에서 한개의 공정만 가동완료 후에 멈춤 상태로 있음배출모든 공정이 끝난 제품이 나가는 곳투입공정이 시작되는 곳MES제조 실행 시스템'의 약자로, 제..

비전 2024.01.30

[CPP] 간단하게 구조체 형태의 소켓 버퍼 만들기

#pragma pack(push) #pragma pack(1) // 구조체 패딩 비트 적용X union DataBuf { struct Info { int a; dobule b; char name[10]; }; Info info; // 데이터 정보 char buf[sizeof(struct Info)]; // Socket 통신용 데이터 버퍼 } #pragma pack(pop) 구조체 생성시 자동으로 할당되는 패딩 바이트를 #pragma pack(1)으로 없에 준다. union으로 구조체와 buf간의 데이터를 공유하게 만듦으로서 간단하게 통신용 구조체 버퍼를 만들 수 있다.

CS/네트워크 2024.01.14

[CPP] 메모리 누수 추적 디버깅

메모리 누수가 나면 Tes.cpp(1909) : {1287} normal block at 0x0000000004823F80, 4 bytes long. 다음과 같은 메모리 누수 관련 메세지가 나온다 이때 {1287} 이 메모리 블럭의 주소인데 이것을 추적하는 기능을 제공한다. AfxSetAllocStop(1178); // MFC 사용 시 _CrtSetBreakAlloc(1178); // MFC 미사용 시 메모리 누수가 날 것 같은 동적 할당 코드 이전에 선언 해두면 해당 코드가 해제 되거나 누수가 나는 순간 break를 걸어준다. 주의 사항1. 꼭 누수가 나는 곳에서 break를 거는건 아니고 단순 추적이다. 그래서 메모리 블럭의 주소가 바뀌면 엉뚱한곳에 break를 걸게된다. 2. 서드파티에서 발생할 경..

프로그래밍/CPP 2024.01.11

[언리얼5-2] 블루 프린트로 오브젝트 점프 하기

언리얼 버전 : 5.3.2 설정: 블루프린트 프로젝트 1. 빨간 메뉴를 누르면 아래와 같이 목록이 뜸 그중에 "레벨 블루프린트 열기"를 눌러서 블루프린트 생성 2. 오른쪽 클릭 후 다음과 같이 큐브 레퍼런스(오브젝트) 노드 생성 3. 아래와 같이 Cube노드의 아웃 핀을 드래그 드랍해서 나온 리스트 중에 Get Static Mesh Compnent 를 선택하여 노드 생성 4. 똑같이 Static Mesh Component의 아웃 핀을 드래그 앤 드랍 해서 Add impulse 노드를 생성 5. Space Bar 노드 생성 6. 아래와 같이 핀을 연결 7. Impulse의 Z를 조정하여 점프의 강도를 조절하기 언리얼의 기본 단위는 cm 큐브 무게 * 400 정도를 주면 자연스런 점프가 됨 만약 무게 상관없..

[운영체제] 메모리 구조 (코드, 데이터, 스택, 힙)

목록 코드 영역 데이터 영역 힙 영역 스택 영역 프로그램이 실행되는 동안 사용되는 메모리의 구조에 대해 알아보겠습니다. 프로그램이 실행되면 운영체제는 해당 프로그램을 위한 메모리 공간을 할당하게 됩니다. 이 메모리 공간은 주로 코드, 데이터, 힙, 스택 영역으로 나뉘어집니다. 1. 코드(Code) 영역 코드 영역은 프로그램의 실행 코드가 저장되는 곳입니다. CPU가 직접 실행하는 명령어들이 이곳에 위치하며, 프로그램의 명령어들이 메모리에 로드되어 실행됩니다. 코드 영역은 실행 중에 수정되지 않으며, 읽기 전용으로 사용됩니다. 프로그램이 종료될 때 까지 남아있습니다. 2. 데이터(Data) 영역 데이터 영역은 전역 변수와 정적 변수들이 저장되는 곳입니다. 프로그램 시작 시 할당되고 프로그램 종료 시 해제되..

CS/운영체제 2024.01.08

[컴퓨터 구조] 비트 논리 연산과 활용

논리 연산 1. AND 두 개의 비트가 모두 1이면 결과 데이터가 1이고 하나라도 0이라면 결과 데이터가 0으로 됨 1 0 1 1 0 0 1 1 0 0 ------------ 0 0 1 0 0 2. OR 연산되는 비트들 중 하나라도 1이면 결과 데이터가 0으로 됨 1 0 1 1 0 0 1 1 0 0 ------------ 1 1 1 1 0 3. XOR 연산되는 두 비트가 다르면 1 같으면 0의 결과가 나옴 1 0 1 1 0 0 1 1 0 0 ------------ 1 1 0 1 0 4. NOT 데이터의 비트들이 모두 반전된다. 즉 1이면 0, 0이면 1로 변함 0 1 1 0 0 ------------ 1 0 0 1 1 활용 1. 선택적-세트 연산 데이터의 특정 비트들을 1로 세트해주기 위한 동작으로서, ..

CS 2024.01.07

[컴퓨터 구조] 나눗셈 연산이 곱셈 연산보다 느린 이유

HTML 삽입 미리보기할 수 없는 소스 곱셈 연산 1100x 피승수 1011 승수 Booth 알고리즘 곱셈연산은 승수의 마지막 값(Q)과 이전 승수의 값(Q-1)의 비트를 판단 후 1) 더하기 + 시프트 2) 빼기 + 시프트 3) 시프트 위 셋 중 하나의 연산을 진행함 나눗셈 피제수의 비트들을 좌측에서부터 우측으로 차례대로 검사하여, 그 비트들이 나타내느 값이 제수보다 같거나 큰 경우가 될 때 재수가 피제수를 나눌 수 있게 될 때 까지 한 비트씩 이동하면서 검사를 반복한다. 그렇게 될 떄까지 몫으로는 좌에서 우로가면서 '0'을 채운다. 나눌 수 있게 되면, 몫의 해당 비트를 '1'로 쓰고, 부분 피제수의 값에서 제수를 뺀다. 결론 1. 나눗셈은 피제수가 제수에 의해 나눠지는지 확인하는 작업이 필요하다. ..

CS 2024.01.06