학교 수업/임베디드 시스템 3

[임베디드 시스템] 3. 포인터와 구조체

포인터 변수 (포인터) 주소 값(포인터)를 저장할 수 있는 변수로 다른 메모리 공간을 카르킨다. 포인터 변수 선언 #include int main() { int *p = NULL; // int* p == int * p 모두 같음(포인터생성) int num = 15; // num의 값은 15 p = #//포인터p = num의 주소 printf("int 변수 num의 주소 : %d \n", &num); printf("포인터 p의 값 : %d \n", p); printf("포인터 p가 가리키는 값 : %d \n", *p); //num과 *p는 동일하게 사용되어 짐을 알 수 있다. return 0; } 포인터와 연산자의 우선순위 - (*p)++ 은 괄호가 있는 참조 연산자(*)를 우선적으로 수행 후 증감..

[리눅스 프로그래밍]2. 리눅스 사용

1. 기본 명령어 $date : 날짜 및 시간확인 $hostname : 호스트 이름 확인 $uname : 현재사용 운영체제 (-a : 호스트이름, 시스템 사양 확인) $whoami : 사용자 아이디 확인 $ls : 디렉토리 내용 확인 $passwd : 패스워드 확인 $clear : 터미널 화면 초기화 2. 파일 종류 일반 파일(ordinary file) : 데이터를 가지고 있고 디스크에 저장됨. 디렉터리 : 파일들을 계층적으로 조직화하는데 사용하는 특수파일 특수파일(장치 파일) : 물리적인 장치에 대한 내부적 표현,키보드(stdin), 모니터(stdout) 등도 파일처럼 사용. 심볼릭 링크 파일 : 어떤 파일을 가리키는 또하나의 경로명을 저장하는파일 (포인터와 같은 역할) 3. 디렉터리 $pwd : 현재..

[리눅스 프로그래밍] 1. 유닉스/리눅스 란?

1) 유닉스란 : 고급언어로 개발된 최초의 운영체제 2) 설계 철학 단순성 : 최소한의 기능만 제공 => 자원(resource)에 대한 일관된 관점 제공. 이식성 : C언어로 작성 => 다양한 플랫폼에 쉽게 이식 가능 (IOS, android 등이 유닉스 계열) 개방성 : 소스코드 공개 3) 특징 다중 사용자, 다중 프로세서 운영체제 : 여러 사용자, 여러 프로그램 + 슈퍼유저(사용자 관리) 쉘 프로그래밍 : 쉘(명령어 해석기)을 통해 시스템과의 대화처럼 시스템을 사용가능=> 명령어, 유틸리티 사용 (쉘 스크립트) 계층적 파일 시스템 : 파일시스템이 계층구조 형태로 구성 훌륭한 네트워킹 : 다양한 네트워크 응용프로그램 제공 => 유닉스로부터 네트워킹 시작 4) 유닉스 운영체제 구조 운영 체제 : 하드웨어..