분류 전체보기 78

std와 System (Namespace)

std (standard library) C++ 표준 라이브러리의 기본적인 기능을 담고 있는 네임스페이스로 이 네임스페이스 안에 C++에 사용되는 클래스, 함수등 기본적인 기능들이 있다 STL(stanard template library)이라고 불리는 표준 템플릿 함수들도 모두 std에 속한다. system C# BCL(Base Class Library)에서의 기본적인 기능을 담고 있는 네임스페이스로 이 네임스페이스 안에 C#에서 사용되는 데이터 형식, 클래스등 기본적인 기능들이 있다 BCL이란 닷넷(.NET) 프레임워크의 언어에서 사용 가능한 표준 라이브러리로 system 네임스페이스를 구성하는 라이브러리 집합이다 네임스페이스 (Namespace) c++로 넘어오면서 중복이되는 식별자를 구분하기 위해 ..

카테고리 없음 2024.01.31

ArrayList 특징 - 임시

ArrayList의 경우 선언시 object형임 따라서 사용시 변환 필요, 대신 다양한 형태 넣을 수 있음 .Add() 객체(요소) 추가 - 자료형 상관없음 .remove() 객체 제거 - 인트형으로 인덱스 위치 반환값이 오브젝트 형식 이므로 사용 목적에 따라 다운 캐스팅 해야함 오브젝트형식 - 어떤 데이터든 다룰 수 있는 데이터 형식 (상속의 원리) 오브젝트 = 참조형식 - 힙에 데이터 할당 나머지 자료형 = 값 형식 - 스택에 데이터 할당 리스트, 배열 한 개체 형식(자료형)만 받을 수 있음, 어레이 리스트는 가능 이때,

카테고리 없음 2024.01.29

C++, C# 형 변환 함수들

문자열을 정수형으로 변환하는 경우   VSC++ - Convert::ToInt32(), Convert::ToDouble() 함수 ( Convert  클래스 )문자열을 각각 실수, 정수로 변환하여 반환해준다   C++ 빌더-ToDouble(), ToInt() 함수 ( AnsiString 클래스 )문자열을 각각 실수, 정수로 변환하여 반환해준다 - StrToFloat(), StrToInt() 함수마찬가지로 문자열을 각각 실수, 정수로 변환하여 반환해준다 단, 문자로된 숫자만 정수로 변환하여 반환 해준다 (숫자가아닌 문자가 있을 경우 에러가 발생하니 주의)   VSC#- double.TryParse(), int.TryParse() 메서드 ( 네임스페이스: System )- Parse() 메서드- Convert..

카테고리 없음 2024.01.29

벡터(vector)와 와 리스트(list) 차이

벡터 = 배열 기반으로 연속된 메모리 공간을 가지고 있다 생성시 메모리 heap에 생성되며 동적 할당 됨 (인덱스 값을 증가시키는 것(간단한 방식)으로 접근이 가능) vector v;로 선언 v[]로 배열처럼 접근 가능 리스트 = 노드 기반 컨테이너 (c언어의 링크드 리스트와 비슷) 연속된 메모리 공간이 아닌 현재 가리키고 있는 노드와 다음 노드의 주소를 알기때문에 갱신하는 방식 (인덱스로 접근 하는 방식 불가) erase() 리스트의 데이터 삭제 pop_front(); 리스트 앞의 데이터 삭제 +) 배열과 벡터의 차이 배열은 크기가 고정, 벡터는 동적으로 변함 (저장할 데이터의 개수를 미리 알 수 없다면 벡터가 유용) +) iterator 배열의 요소를 가르키는 포인터 벡터에서 bdgin함수는 배열의 ..

카테고리 없음 2024.01.29

워치독 타이머 (Watchdog timer)

워치독 타이머 (Watchdog timer) 란 컴퓨터의 오작동을 탐지하고 복구하기 위해 쓰이는 전자 타이머로시스템의 정상 작동을 모니터링하여 무한루프처럼 시스템 통제가 불가능한 상황이 발생할 경우 (특정 시간 내에 시스템이 응답하지 않으면) 자동으로 시스템을 리셋하거나 복구 작업을 수행하는 역할을 한다.  작동 원리1. 주기적으로 시스템이 정상적으로 작동하고 있는지를 확인 2. 주기적인 신호가 특정 시간 안에 보내지지 않으면 타이머가 만료 3. 시스템을 재부팅하거나 오류 처리를 수행용도주로 임베디드 시스템, 자동차, 서버, 산업용 장비 등에서 사용시스템이 멈추거나 오류가 발생했을 때 자동으로 복구 해준다 - 직접 유지 보수가 어려운 환경에서 주로 사용설정워치독 타이머의 타임아웃 기간을 설정할 수 있으며..

기타 2023.12.27

linker script (링커 스크립트) - 임시

OS개발시 중요 파일의 엔트리 포인트 주소를 지정해줄 수 있다 (메모리에 배치) 즉, 기존 C언어 에서의 엔트리 포인트가 main()함수가 엔트리 포인트인데 이를 변경 `커널을 로딩할 위치, 스택 초기값 세팅, 커널 사이즈 cpu의 메모리 맵에 따라 실행 파일을 어떻게 생성할 것인지 컴파일후 오브젝트 파일을 생성하고 오브젝트 파일을 링킹하여 최종 실행 파일을 생성하는데 사용되는 스크립트 (여러 오브젝트 파일들의 섹션을 추출해서(합쳐서) 하나의 바이너리(파일)로 만듬) 오브젝트 파일은 코드,데이터,힙,스택 영역으로 나눠진다 즉, 링커 스크립트는 각 영역의 start 주소와 end주소를 지정해 기록하는 곳 메모리 할당 (프로그램이 메모리에서 어떻게 배치 되는지 정의) 섹션 배치 (각 섹션에 대한 할당을 지정..

OS (운영체제) 2023.12.27