SW 개발 공부 (77) 썸네일형 리스트형 Thread 개념) 파이썬 프로그램은 하나의 쓰레드에서 실행된다. 파이썬에서 프로그램을 병렬로 실행하기 위해서는 subthread를 생성해야하는데, 파이썬에서 쓰레드를 생성하기 위해서는 threading 모듈(high level) 또는 thread 모듈(low level)을 사용할 수 있다. 파이썬은 전역 인터프리터 락킹 때문에 특정 시점에서 하나의 파이썬 코드만을 실행하게 되는데, 이때문에 파이썬은 실제 다중 cpu 환경에서 동시에 여러 파이썬 코드를 병렬로 실행 할 수 없으며 인터리빙 방식으로 코드를 분할하여 실행한다. 다중 cpu 에서 병렬 실행을 위해서는 다중 프로세스를 이용하는 multiprocessing 모듈을 사용한다. * 전역 인터프리터 락킹 * 인터리빙 방식 사용법) import threading d.. 패키지& 클래스 개념) 모듈들의 집합. 사용법) 1) 다른 모듈에서 한 패키지에 있는 모듈을 import 할때 import 패키지명.모듈명 클래스 특징) 데이터( attribute )와 메서드로 구성되어있다. 메서드) 인스턴스 메서드, 클래스 메서드, 정적 메서드가 존재. 1) 인스턴스 메서드 - 인스턴스란, 클래스 객체이다. - 인스턴스 변수에 엑세스 할 수 있는 메서드 2) Special 메서드 __add__) 두 객체가 더할때 사용되는 메서드 __del__) 소멸자 메서드 3) 클래스 메서드 - 클래스 변수를 엑세스할 필요가 있을때 사용된다. 4) 정적 메서드 - 클래스 변수 및 인스턴스 변수에 접근 할 필요가 없을 때 사용된다. 변수) 1) 클래스 변수 - 모두 public으로 선언되는 듯하다. - private.. 모듈 개념) C나 C++의 header 파일과 같은 역할을 하는 것. 사용법) 1) import module 2) 모듈안의 하나의 함수만 사용하기 위한 방법 ex) form math import factorial 3) 모듈안의 모든 함수를 import 하는 방법 ex) from maht iport * 4) import 할 함수를 사용자정의해서 사용하는 방법 ex) from math iport factorial as f f(5) 모듈의 위치) 모듈을 import하면 다음의 순서대로 모듈을 찾는다. 1) 현재 디렉토리 2) 환경변수에 설정되어있는 디렉토리 3) python이 설치된 디렉토리 및 그 밑의 라이브러리 디렉토리 찾은 이후, sys.path라는 리스트에 찾은 디렉토리를 추가한다. 모듈의 작성) 1) 개념.. 함수 0. 선언방법) def 함수명( 매개변수): 함수내용 1. 파라미터 전달방식) 입력 파라미터는 항상 레퍼런스를 생성하여 값을 복사하여 전달한다. 2. 가변길이 파라미터 선언방법) def(*num): return x ** immutable 과 mutable 개념) 객체의 종류. immuatble => 수정 불가능한 자료형 타입 mutable => 수정 가능한 자료형 타입. 객체에 새로운 값을 할당해주었을때, 객체가 저장된 메모리 번지수가 변경된다면 immutable( int, float, str, tuple ) 동일한 조건에서, 객체의 메모리 주소가 변경되지 않으면 mutable 이다. ( dictionary, list ) ** 가비지 콜렉터 - 사용되지 않는 메모리( ex 변수)를 자동으로 찾아서 소멸시.. Set 개념) 중복이 없는 요소들로만 구성된 집합 컬렉션. 사용법) set = { 1,2,3 } {}를 사용하여 선언해준다. 특징) 집합 연산이 가능하다. & (교집합) | (합집합) - (차집합) STM 부트모드 개요 FW개발할때 개발자는 프로그램을 STM 칩에 업로드한다. 보통 JTAG or SWD 인터페이스를 이용하여 업로드를 진행하지만, JTAG나 SWD등의 인터페이스가 없을때 사용할 수 있는 방법이 존재한다. 이는 UART를 통해 사용하는 방식이다. 해당 동작을 수행하기 위해선 MCU의 Boot mode 설정을 변경해야한다. System Boot Mode - Uart에서 신호가 오길 기다린다. - STM Flash Loader 프로그램을 사용하여 업로드 하면된다. Embedded SRam Boot Mode UDP 멀티캐스트 1 개요) IP 주소 클래스 A, B, C, D ,E 멀티캐스트는 D class 영역의 주소를 사용한다. (224.0.0.0 ~ 239.255.255.255) C 클래스로 설정한 pc 장치의 ip 주소의 네트워크 ID 영역이 동일할때, 프로그램 내에서 D 클래스 영역의 IP주소로 데이터를 전송하면해당 멀티캐스트 주소에 join한 모든 장치들은 데이터를 수신할 수 있다. 단, 각 이더넷 장치의 IP 주소는 233.0.0.0보다 크게 설정할 수 없는데, 이유는 무엇인가? => 네트워크 통신이 가능한 영역의 주소의 한계? 즉, 같은 네트워크 ID로 연결되어있는 네트워크 상에서 수신자가 멀티캐스트 주소를 join한다면 모두 데이터를 수신할 수 있다. [멀티 캐스트 서버( 송신)] IPAddresss d.. C#/ string에서 특정 문자 없애기 string example; example = Regex.Replace(input, @"[^a-zA-Z0-9가-힣_]", "", RegexOptions.Singleline); 기준문자열.Regex.Replace("기존 문자","변경할 문자"); 이전 1 ··· 5 6 7 8 9 10 다음