Category

    RTOS

    RTOS(Real Time Operation System) - RTOS는 실시간 임베디드 시스템을 위한 운영체계. 임베디드 시스템은 마이크로프로세서 / 마이크로 컨트롤러를 내장하여 미리 정해진 기능만을 수행하는 장치로 PC처럼 사용자가 프로그램을 바꿔가며 여러가지 용도로 활용할 수 있다면, 그 시스템은 임베디드 시스템으로 분류하지 않으며, 그 응용분야는 매우 광범위 하다. 실시간 시스템은 '인터럽트'방식으로 불시에 발생하는 사건에 대하여 정해진 시간 내에 정확한 결과를 제공하되, 그 응답시간 예측가능 하고 일정해야 하는 시스템으로 시간상의 제약이 중요시되는 시스템이다. -Hard Real-Time System : deadline을 넘기면 처리가 의미없는 Real-Time System -Soft Real-..

    임베디드 시스템과 실시간 시스템

    임베디드 시스템은 사용자나 외부의 입력에 대해 명령을 처리하도록 설계된다. 실시간 시스템은 정확한 시간 내에 이루어 져야 한다는 특징이 있다. 임베디드 시스템은 정의된 명령들이 순서적으로 실행되어 처리 되면 되지만, 실시간 시스템은 거기에 정확한 시간 내에 처리되어 한다는 단서가 붙는다. 즉 실시간은 명령에 처리에 대한 한계시간이 존재한다고 생각하면 된다. 실시간 시스템에서는 테스크를 관리하는 방법과 각 테스크들의 우선순위를 관리하는것이 매우 중요함을 알 수 있다.

    명령어

    Bash 쉘 기반으로 한 명령어 cd .. : 상위 디렉토리로 이동 cd 디렉토리 명 : 원하는 디렉토리로 이동 ls : 시스템의 구성및 정보 보여준다. clear : 화면 전체 리셋 sudo -s : 시스템 관리자 모드로 변경 date : 현재 시간과 날짜 표시 stty : 현재 정보 확인 passwd : 비밀번호 변경 rm : 파일삭제 명령어 mv 파일1 파일2 : 파일1을 파일2란 이름으로 복사한다. 복사후 파일1 삭제 cp 파일1 파일2 : 파일1을 파일2란 이름으로 복사. 복사후 파일1 삭제되지 않는다. mkdir : 디렉토리 생성 rmdir : 디렉토리 삭제 cat txt파일명 : txt 파일을 표준 출력 시킨다. man 명령어 :온라인 메뉴얼 참조

    쉘이란 사용자가 사용하는 일반적인 명령어를 컴퓨터에게 기계어로 변경하여 명령을 내리는 명령해석기 또는 프로그래밍 언어라고 볼 수 있다. 즉 사람과 컴퓨터사이의 인터페이스와 커널사이의 대화를 위해 필요하다. Bourne(sh) 쉘 : 전 유닉스 에서 가장 기본적으로 사용되고 있는 쉘 C 쉘(csh) : C언어를 모방?하여 제작된 쉘 Korn 쉘(ksh) : Bourne쉘과 C쉘을 서로 보완하여 만들어진 쉘 Bash 쉘(bash) : 현재 가장 널리 사용되는 쉘

    운영체제 O/S

    운영체제는 컴퓨터 시스템을 구성하는 하드웨어와 그 컴퓨터를 사용하는 사용자 또는 프로그램을 중계하는 역할이라고 보면 된다. 운영체제를 사용함으로써, 사용자는 어렵게 하드웨어에 직접 접근하여 사용하지 않고, 기본적으로 간편하고 쉽게 컴퓨터 시스템을 사용할 수 있다. 운영체제가 메모리 및 여러가지 하드웨어와 기능을 담당함으로써 현재 컴퓨터 사용자들은 컴퓨터의 하드웨어까지 알 필요없이 간편히 사용하고 있다.

    구조체 메모리 패딩 문제

    typedef struct Test { char a; short b; int c; }T T A; printf("%d", sizeof(A)); 어떤 값이 출력 될까? 32bit OS에서 가정하면 char 는 1Byte short 는 2Byte int 는 4Byte로 총 7이 출력될 것 인가? 하지만 출력 값은 8이다. 구조체에서는 메모리의 크기를 4Byte씩 나눠서 저장하게 됩니다. 위의 예제에서 char형과 short형을 합치면 3바이트이므로 4바이트를 맞추기 위해 1바이트가 추가 된다. 즉 (char(1) + short(2) + 1) + int(4) 로 총 8바이트 로 저장됩니다. 이것이 바로 메모리 패딩 입니다.