Loading [MathJax]/jax/output/CommonHTML/jax.js
728x90
반응형
목차
0. MIPS란?
1. 파일 구조 분석
2. 함수 정리
3. 명령어 정리
참고

0. MIPS란?

1) Million Instructions Per Second, 컴퓨터 분야에서 컴퓨터의 연산 속도를 나타내는 단위

2) Microprocessor without Interlocked Pipeline Stages, MIPS Technologies에서 개발한 RISC 기반의 명령어 집합 체계(컴퓨터 아키텍처)

* CISC: Complex Instruction Set Computer, 연산에 처리되는 복잡한 명령어들을 수백 개 이상 탑재하고 있는 프로세서

* RISC: Reduced Instruction Set Computer, 하나의 명령어 실행으로 간단한 프로세스들을 신속하게 수행

MIPS, ARM

마이크로 프로세서 세계에서 사용할 수 있는 두 가지 ISA (명령어 세트 아키텍처), 레지스터의 한 유형


1. 파일 구조 분석

32bit로 명령어 주소들이 4byte 단위로 떨어진다면 MIPS는 RISC 구조


2. 함수 정리

strcoll() 함수

아래 나열된 것과 같이 관계를 나타내는 값을 리턴함

예제 반환값
strcoll(const char *string1, const char *string2); string1이 string2보다 작음 0보다 작음
string1이 string2와 같음 0
string1이 string2보다 큼 0보다 큼

if ( !strcoll(*a2, "UDP") ) : ① a2가 참조하는 값과 UDP가 같으면 → ② if (!0) 이므로 참 → ③ 다음 if문 수행 (∵ if 0은 거짓)

값이 다르면 result로 a1 반환

atol() 함수

정수 문자로 구성한 문자열, 부호와 정수 문자들을 long 형식 값으로 변환하여 반환함


3. 명령어 정리

어셈블리어 예제 의미
NOP   아무 명령도 수행하지 않는 코드, 명령어 사이의 빈공간을 채워주는 역할
LA la $v0, 0x420000 Load Address, 레지스터 $v0에 0x420000가 가리키는 주소 load
ADDIU addiu A B C B + C의 값을 A에 삽입
BNEZ bnez R, L 레지스터 R이 0이 아니면 L로 점프
LW lw s3n(0) 0n0000000ns3에 삽입

 

a1aCnc(a1 = $v0 + (aCnc - 0x420000) = 0x420000 + (aCnc - 0x420000) = aCnc)

 

[MIPS Register]

$0 = Always 0

$at = The Assembler Temporary used by the assembler in expanding pseudo-ops.

v0,v1 = 리턴값 저장. 1 word 인 경우 v0.v1 과 나눠서 저장

a0a3 = 함수 인자값 저장. 초과할 경우 스택에 저장

t0t9 = 임시 저장 레지스터

s0s7 = 저장 용 레지스터 – 함수 호출 중 불변

k0,k1 = 커널에서 사용하는 레지스터

$gp = 전역 포인터 레지스터

$sp = 스택 포인터

fp=(s8)

$ra = 서브루틴 호출 시 반환 주소 저장

 

[MIPS 주요 명령어]

addiu [addiu A B C] = [A <- B + C]

sw [sw A B] = [A ->B]

lw [lw A B] = [A <- B]

li(load immediate) [li A B] = [A <- B]

move [move A B] = [A <- B]

movn [movn A B C] = [if C != 0 then A <- B]

la [la A B] = [A <- B’s Addr]

lb [lb a,(0)s0] = $a 에 byte 단위로 데이터 로드

sb [sb a,(100)s0] = *(s0+100)a 저장

jal [jal A] - 다음 명령어의 주소를 $ra에 저장하고, A로 점프

bal [bal function] = function call = jalr

beq [beq A B L] = A와 B가 같으면 L로 점프

beqz [beqz R L] = R이 0이면 L로 점프

bne [bne A B L] = A와 B가 다르면 L로 점프

bnez [bnez R, L] = 레지스터 R이 0이 아니면 L로 점프

lui [lui A, 0x47] = A 레지스터 상위 2byte에 0x47 저장

0x90+var_73(fp)fp+(0x90+var_73) 와 같은 표현

slt [slt rd, rs, rt] = rd <= (rs < rt) ? 1 : 0

sll [sll a,1]=a << 1

 

[MIPS 함수 호출 과정]

$ra 에 caller 의 return address 저장 (마지막 호출 함수의 경우 저장하지 않을 수 있음)

a0 a3 에 인자값 저장 인자가 4개를 초과할 경우 초과한 만큼 스택에 저장

func(param1, param2, param3, param4) 일 경우 a0=param1,a1 = param2, a2=param3,a3 = param4 가 삽입

bal, jal, jalr 등 으로 함수 호출

return 값은 v0(4bytev1 에 나눠서 저장)

호출시 $ra 값 스택에 백업

s0 s7도 필요한 경우 스택에 백업

s8sp에 같은 값이 저장되어 있어서 $s8의 의미는 추가 파악이 필요

 

참고

[MIPS] MIPS 기본 내용 정리

IoT 환경을 위협하는 '리눅스 악성코드 Top 5'

 

 

728x90
728x90
728x90
반응형
목차
1. 2022년 올해의 최석정상 수상자 선정 (221213)
2. 2022년 11월 정보통신기술 수출입 동향 (221214)

3. 제5차 과학기술기본계획(2023~2027) 발표 (221214)
4. 2022년 하반기 사이버 위기대응 모의훈련 결과 및 상시 모의훈련 플랫폼 확대 개편 (221215)

1. 2022년 올해의 최석정상 수상자 선정 (221213)

(출처: 과학기술정보통신부, 보도자료, 미래인재정책국 과학기술안전기반팀 김형수 팀장(044-202-4850), 남민우 사무관(044-202-4858))

  • 서울대학교 강명주 교수, 한국과학기술원/기초과학연구원 엄상일 교수, 포항공과대학교 황형주 교수 선정
  • 올해의 최석정상: 조선시대 학자, 정치가, 문인이었던 최석정의 수학적 업적을 기리고자 '21년 신설
  • 수학 발전 및 활용(산업수학, 인공지능, 빅데이터 포함), 수학문화 확산에 기여한 과학기술인을 선정하여 과기정통부 장관상 수여

편미분방정식의 해를 컴퓨터로 구하는 연구 수행 (강명주 교수)

수학을 응용하여 산업현장에 적용할 수 있는 연구를 꾸준히 수행하고, 4차 산업의 기반이 되는 수학적 이론들을 지속적으로 연구하겠다.

  • 영화에 활용되는 컴퓨터 그래픽 기술의 고도화에 기여
  • 수학적 영상처리를 통해 반도체의 결함을 검출
  • 의료영상분석을 통해 병명을 찾아내는 연구 수행

선이 많고 촘촘한 그래프에서도 유용하게 쓸 수 있는 개념들을 고안하는 연구 수행 (엄상일 교수)

국가와 사회의 여러 성원 덕분에 좋아하는 연구에 즐겁게 몰입할 수 있었음에 감사드리며 앞으로도 이산수학의 지평을 넓히는 연구를 통하여 성원에 보답하겠다.

  • 이산수학 분야를 대표하는 연구자
  • 기존 그래프 이론 개념의 한계 극복, 효율적인 알고리즘을 개발한 공로 인정

철강 제조공정에 수학을 활용한 온도예측 인공지능 솔루션 적용 (황형주 교수)

조선의 융합인재로 꼽히는 최석정 선현을 기리는 상을 받아 영광

앞으로도 응용수학 연구를 통해 수학을 활용하여 산업과 사회문제를 해결할 수 있도록 노력하겠다.

  • 원가 절감에 기여
  • 코로나19 확산예측 모형을 개발하여 방역 정책 수립에 기여
  • 수학에 기반을 둔 인공지능 기술혁신을 통해 산업과 사회문제를 해결한 공로 인정

2. 2022년 11월 정보통신기술 수출입 동향 (221214)

(출처: 과학기술정보통신부, 보도자료, 정보통신산업정책관 정보통신산업정책과 강도성 과장(044-202-6220), 김미정 주무관(044-202-6228))

  • (품목별) 세계 경기 여건 악화의 영향으로 반도체, 디스플레이, 휴대폰, 컴퓨터·주변기기 등 주요 품목 감소
  • (지역별) 전방산업 수요 위축 및 정보기술 기기 생산 축소 등으로 주요 지역인 중국(홍콩 포함), 베트남, 미국, 유럽연합, 일본 등 감소

3. 제5차 과학기술기본계획(2023~2027) 발표 (221214)

(출처: 과학기술정보통신부, 보도자료, 과학기술정책국 과학기술정책과 임요업 과장(044-202-6720), 윤지영 사무관(044-202-6727))

  • 국가연구개발 전략성 강화, 민간 중심 혁신생태계 조성, 과학기술 기반 국가적 현안 해결을 주요 방향으로 반영
  • 과학기술혁신이 선도하는 담대한 미래를 비전으로 기본계획 설정

전략성 강화

임무중심 연구개발(R&D) 혁신체계 구축

  • 국가가 당면한 문제를 해결하기 위해 구체적인 임무와 달성 시한을 설정

민간 중심

민간이 중심이 되는 과학기술 혁신 생태계를 조성

  • 국가 연구개발 전략의 기획, 투자 모든 단계에 기업의 수요가 반영될 수 있도록 민관 협의체를 상시 운영

현안 해결

국가 생존에 직결되는 미래 도전과제에 선제적으로 대응

  • 탄소중립, 디지털전환, 재난/위기 등 과학기술을 기반으로 국가의 경제·사회적 현안을 해결

4. 2022년 하반기 사이버 위기대응 모의훈련 결과 및 상시 모의훈련 플랫폼 확대 개편 (221215)

(출처: 과학기술정보통신부, 보도자료, 정보보호네트워크정책관 사이버침해대응과 설재진 과장(044-202-6460), 김승열 사무관(044-202-6461))

  • (해킹메일 대응 훈련) 281개사 기업 임직원을 대상으로 내부 보안담당자나 거래업체에서 발송한 것처럼 위장한 해킹메일을 발송
  • (분산 서비스 거부 공격 및 복구 점검) 55개사 기업 누리집을 대상으로 실제 분산 서비스 거부 공격을 수행
  • 기업별 탐지/대응시간 측정하여 대응능력 점검 - 평균 탐지시간: 12분, 대응시간: 24분

 

728x90
728x90
728x90
반응형

◆ [K-CTI 2023] 제10회 2023 대한민국 사이버위협·침해사고대응 인텔리전스 컨퍼런스

- 2023년 2월 8일(수)
- 한국과학기술회관 국제회의실
- 국내 최고 사이버위협과 인텔리전스 정보 공유의 장
- 공공, 금융, 기업 CISO 및 정보보안 담당자 400여 명 이상 참석

 

◆ 사이버보안과 개인정보보호를 위한 실무 세미나

출처: https://www.dailysecu.com/news/articleView.html?idxno=143990 

 

국제사이버보안인증협회, 사이버보안·개인정보보호 실무 강좌 무료 개최 - 데일리시큐

국제사이버보안인증협회(ICSCA)는 공공, 금융, 기업 정보보호 실무자들과 취업준비생들을 대상으로 사이버보안과 개인정보보호를 위한 실무 강좌를 지난 2월 11일 시작으로 6월까지 총 18회 2023년

www.dailysecu.com

- 일시: 2023년 2월 11일(토) ~ 6월 24일(토)(총 18회)

- 장소: 서울시 강남구 강남대로 98길 16 파빌리온빌딩 2층 K-디지털 플랫폼센터

- 주제: 사이버보안과 개인정보보호를 위한 실무강좌

- 주최/주관: 사단법인 한국사이버감시단/국제사이버보안인증협회(ICSCA) 주최, 솔데스크 학원 주관

- 강연자: 공병철 (사)한국사이버감시단 이사장, 조홍연 씨티아이랩 대표이사, 이준화 정보보호보안원 연구소장, 여동균 와이시큐리티 대표이사, 오세현 싸이버원 전문위원, 마기평 두산디지털이노베이션 보안사업 팀장, 정용현 아이티윈 부장, 임범석 알비언 팀장, 김용배 교보정보통신 과장(총 9명)

출처:&nbsp;http://www.ica22.org/

 

◆ [G-PRIVACY 2023] 제11회 정부·공공·기업 개인정보보호&정보보안 컨퍼런스

- 2023년 3월 23일(목)
- 더케이호텔서울 가야금홀
- 전반기 최대 개인정보보호&정보보안 컨퍼런스&전시회
- 전국 공공, 금융, 의료, 교육, 기업 개인정보보호 책임자/실무자 1,000여 명 이상 참석

 

◆ 제22회 세계 보안 엑스포 (SECON 2023)

- 2023년 3월 29일(수) ~ 3월 31일(금) 10:00~17:00

- 경기도 일산 킨텍스(KINTEX) 제2전시장 7~8홀, 콘퍼런스룸

 

◆ [MPIS 2023] 제10회 의료기관 개인정보보호&정보보안 컨퍼런스

- 2023년 5월 23일(화)
- 더케이호텔서울 가야금홀
- 국내 최대 의료기관 정보보안 컨퍼런스&전시회
- 보건복지부/대한병원정보협회/병원정보보안협의회 후원
- 전국 국공립, 대형 사립병원 정보보안 실무자 400여 명 참석

 

◆ [PASCON 2023] 제11회 공공·금융·기업 정보보안&개인정보보호 컨퍼런스

- 2023년 9월 5일(화)
- 더케이호텔서울 가야금홀          
- 하반기 최대 토탈 정보보안 컨퍼런스&전시회
- 전국 공공, 금융, 기업 각분야 정보보안 실무자 1,000여 명 이상 참석

 

◆ [AI Korea 2023]

- 2023년 9월 6일(수)~9월 8일(금)
- 벡스코 제2전시장 4홀

- 국내 최대규모 AI 종합 전시회

 

◆ [AIS 2023] 제3회 2023년 사이버위협 대응 인공지능 정보보호 컨퍼런스

- 2023년 11월 2일(목)
- 한국과학기술회관 국제회의실          
- 인공지능/머신러닝/보안자동화 국내 대표 컨퍼런스&전시회로 개최
- 전국 공공, 금융, 의료, 교육, 기업 개인정보보호 책임자/실무자 500여 명 참석

 

◆ JEC 코리아 박람회 2023

- 2023년 11월 예정

- 서울 COEX

 

728x90
728x90
728x90
반응형
목차
1. 과학기술&ICT 정책·기술동향 228호 (221209)
2. 디지털트윈 기반 고위험 장비 안전 모니터링 플랫폼 (221207)
3. 2023년 공공부문 소프트웨어·정보통신기술·정보보호 예정 수요 조사 (221208)
4. [2022년 11월] 인터넷·정보보호 법제동향 제182호 (221207)

1. 과학기술&ICT 정책·기술동향 228호 (221209)

(출처: 글로벌 과학기술정책정보 서비스 S&T GPS, 간행물)

국제기구, 2022년 발표된 기후변화 관련 10대 인사이트

  • 끝없는 적응진화에 대한 믿음의 의문 제기
  • 위험지역과 취약성이 높은 지역 간 중복 문제
  • 기후와 건강의 연관으로 인한 새로운 위험 등장
  • 기후 모빌리티
  • 인간 및 기후 안보
  • 지속 가능한 토지의 사용
  • 민간의 지속 가능 금융 지원과 기후 대응
  • 손실 및 피해
  • 기후회복성을 고려한 개발의 포용적 의사 결정
  • 구조적 장벽과 지속 불가능한 록인(lock-in)의 중단

'블록체인 산업 진흥전략' 마련하며 블록체인 선도국 도약 선포

  • [주민투표] 주민참여를 위한 블록체인 기반 온라인 투표
  • [교육이력] 블록체인 기반 '디지털 배지' 구현
  • [복지혜택] 공적지원금 연계・관리체계 구축

위믹스 상장폐지로 블록체인 기반 게임업계 영향에 주목

  • 닥사의 상장폐지 선언 직후 위믹스 가격은 폭락 - 발표 당일 위믹스의 시가총액과 거래가는 70% 이상 증발
  • 위메이드·위메이드맥스·위메이드플레이 등 관련 기업 주가도 하한가로 직행
  • 일각에서는 이번 위믹스 상장폐지의 결정으로 P2E* 게임 신뢰도에 영향을 미침에 따라 넷마블(마브렉스)과 카카오게임즈(보라), 컴투스홀딩스(엑스플라) 등 가상자산 발행을 통해 P2E 게임 서비스에 나섰거나 준비 중인 기업이 블록체인 사업에 대한 신뢰도를 높이는 방안을 강구할 것으로 예상
  • P2E게임은 가상자산을 기반으로 한 블록체인 경제시스템이 골자, 게임 서비스를 이용해 가상자산을 얻으면 이를 현금화할 수 있어 더 많은 게임의 재미를 제공하는 것이 전략

* P2E: Play To Earn, 플레이로 돈 벌기


2. 디지털트윈 기반 고위험 장비 안전 모니터링 플랫폼 (221207)

(출처: 정보통신기획평가원 IITP, 주간기술동향 2075호, 아이보우솔루션 홍광희 이사(070-7510-8891, jedy486@ibowsol.com))

  • 공장 내의 고위험 설비에 대한 가상시운전과 3D DATA 실시간 연동을 통한 안전 모니터링 플랫폼 개발
  • 안전사고 예방을 위한 제조업의 요구는 증가하고 있는 추세
  • 롯데건설은 건설현장 작업자가 360도 촬영 가능한 "넥밴드형 웨어러블 카메라"를 현장에 도입
  • 건설현장 내의 위험 작업 관리와 사각 지대까지 가능, 영상 녹화 및 실시간 스트리밍이 가능한 모니터링 장치를 개발

<자료> POSCO NEWSROOM, "포스코의 스마트플랫폼", 2018.5.11., 포스프레임 플랫폼


3. 2023년 공공부문 소프트웨어·정보통신기술·정보보호 예정 수요 조사 (221208)

(출처: 과학기술정보통신부, 보도자료, 소프트웨어정책관 소프트웨어산업과 조민영 과장(044-202-6330), 강형석 사무관(044-202-6334))

  • 정보통신기술장비를 제외한 소프트웨어사업 수요는 총 4조 4,545억원으로, 전년대비 3.2% 증가
  • 정보통신기술장비 구매 사업은 1조 2,977억원
  • 정보보호 관련 제품·서비스 구매 예산은 총 6,178억원(전년대비 114억원, 1.9% 증가)

4. [2022년 11월] 인터넷·정보보호 법제동향 제182호 (221207)

(출처: 한국인터넷진흥원, 지식플랫폼 > 동향분석 > 인터넷·정보보호 법제 동향, 법제연구팀 김홍빈(061-820-1704))

국내 입법 동향

  • 「정보통신망 이용촉진 및 정보보호 등에 관한 법률」 일부개정법률안(박성중의원 대표발의, 2022. 11. 23. 제안)
  • 「전기통신사업법」 일부개정법률안(이정문의원 대표발의, 2022. 11. 4. 제안)
  • 「전기통신사업법」 일부개정법률안(윤두현의원 대표발의, 2022. 11. 18. 제안)
  • 「정보보호산업의 진흥에 관한 법률」 일부개정법률안(박성중의원 대표발의, 2022. 11. 23. 제안)
  • 「온라인 플랫폼 중개거래의 공정화에 관한 법률」 제정법률안(오기형의원 대표발의, 2022. 11. 2. 제안)
  • 「온라인 플랫폼시장 독점규제 및 공정거래에 관한 기본법」 제정법률안(배진교의원 대표발의, 2022. 11. 8. 제안)
  • 「온라인 플랫폼 중개거래의 공정화에 관한 법률」 제정법률안(윤영덕의원 대표발의, 2022. 11. 11. 제안)
  • 「가상자산산업 발전 및 이용자보호에 대한 기본법」 제정법률안(김은혜의원 대표발의, 2022. 11. 8. 제안)
  • 「가상자산 불공정거래 규제 등에 관한 법률」 제정법률안(백혜련의원 대표발의, 2022. 11. 10. 제안)
  • 「고용보험법」 일부개정법률안(이주환의원 대표발의, 2022. 11. 11. 제안)
  • 「디지털포용법」 제정법률안(박성중의원 대표발의, 2022. 11. 23. 제안)

 

728x90
728x90
728x90
반응형
목차
1. 자유 형식 텍스트 데이터 (Free-Form Text Data)의 개인정보 비식별화 기술 동향 (221123)
2. 사이버보안 AI 빅데이터 챌린지 2022 시상식 개최 (221201)

1. 자유 형식 텍스트 데이터 (Free-Form Text Data)의 개인정보 비식별화 기술 동향 (221123)

(출처: 정보통신기획평가원 IITP ICT 신기술, 주간기술동향 2073호)

  • 개인정보 보호법 제2조에서의 가명처리 정의 "개인정보 일부를 삭제하거나 일부 또는 전부를 대체하는 등의 방법으로 추가 정보가 없이는 특정 개인을 알아볼 수 없도록 처리하는 것"

데이터 형태에 따른 데이터 분류

형태 설명 예시
정형 데이터
Structured Data
행과 열에 의해 데이터의 속성을 구별하는 데이터 형태 RDBMS, 엑셀, CSV 등
반정형 데이터
Semi-Structured Data
데이터 내부에 데이터 구조에 대한 메타정보를 갖는 형태 XML, JSON 등
비정형 데이터
Unstructured Data
데이터 세트가 아닌 하나의 데이터가 수집 데이터로 객체화 음성, 영상, 텍스트 등

<자료> 데이터온에어, "데이터실무 - 수집 데이터의 형태에 따른 분류", 한국데이터산업진흥원, 재구성

 

자유 형식 텍스트(Free-Form Text)에 포함된 개인정보 비식별화 체계


2. 사이버보안 AI 빅데이터 챌린지 2022 시상식 개최 (221201)

(출처: 과학기술정보통신부, 보도자료, 정보보호네트워크정책관 사이버침해대응과 설재진 과장(044-202-6460), 김순권 연구관(044-202-6463))

  • 악성코드 분야 - AI기반 악성코드 위협 분류
  • 침해사고분야 - AI기반 네트워크 공격 분류
  • 아이디어 공모 - 사이버보안 사회문제 해결 아이디어 공모

 

728x90
728x90
728x90
반응형
목차
1. 22년 상반기 평균 유료방송 가입자 수 및 시장점유율 발표 (221128)
2. 이음5G, 원전 안전관리 분야 등 전국으로 확대 (221128)
3. 과학기술&ICT 정책·기술동향 227호 (221125)

1. 22년 상반기 평균 유료방송 가입자 수 및 시장점유율 발표 (221128)

(출처: 과학기술정보통신부, 보도자료, 방송진흥정책관실 뉴미디어정책과 황큰별 과장(044-202-6540), 윤광식 사무관(044-202-6546))

  • '22년 상반기 평균가입자 수는 3,601만명으로, '21년 하반기 대비 37만명 증가
  • IPTV 2,020만명 (51만명 증가), 종합유선방송 1,282만명 (10만명 감소)


2. 이음5G 원전 안전관리 분야 등 전국으로 확대 (221128)

(출처: 과학기술정보통신부, 보도자료, 전파정책국 전파자원관리팀 이종혁 과장(044-202-4917), 장영호 연구관(044-202-4938))

  • 뉴젠스, 한국수력원자력, SK네트웍스서비스와 유엔젤에게 이음5G 주파수 공급 완료(11월 28일)
  • '대한민국 디지털 전략'의 혁신 네트워크 구축을 위한 후속 조치의 일환으로 이음5G 전국 확산을 추진중

3. 과학기술&ICT 정책·기술동향 227호 (221125)

(출처: 글로벌 과학기술정책정보 서비스 S&T GPS, 간행물)

재택근무 시대 블루오션 '협업 툴(Collaboration Tools)' 시장 활기

  • 소프트웨어형(SaaS) 클라우드 서비스 기반
  • 마드라스체크와 스윗테크놀로지는 기업의 빠르고 원활한 일 처리를 위한 협업 툴 '플로우(flow)'와 '스윗(Swit)'의 기능 고도화

 

728x90
728x90
728x90
반응형
목차
1. 과학기술&ICT 정책·기술동향 226호 (221111)
2. 2022년 10월 정보통신기술 수출입 동향 (221114)
3. 5세대 이동통신 주파수 할당조건 이행점검 결과 (221118)

1. 과학기술&ICT 정책·기술동향 226호 (221111)

(출처: 글로벌 과학기술정책정보 서비스 S&T GPS, 간행물)

  • 국제기구(OECD)의 지식재산권 논의 사례
  • Gartner, 2023년 주목하는 10대 전략기술 트렌드 발표

2023년 기술 트렌드는 ‘최적화(Optimize)・확장(Scale)・선도(Pioneer)’로 귀결

 

Gartnet Top Strategic Technology Trends 2023


2. 2022년 10월 정보통신기술 수출입 동향 (221114)

(출처: 과학기술정보통신부, 보도자료, 정보통신산업정책관 정보통신방송기술정책과 강도성 과장(044-202-6220), 김미정 주무관(044-202-6228))

  • 세계 경기 여건 악화로 반도체디스플레이컴퓨터·주변기기는 감소
  • 휴대폰 수출은 고부가가치 부분품 중심으로 증가 지속

2. 5세대 이동통신 주파수 할당조건 이행점검 결과 (221118)

(출처: 과학기술정보통신부, 보도자료, 전파정책국 전파기반과 남영준 과장(044-202-4950), 김인 사무관(044-202-4957))

  • 3.5㎓ 대역의 경우 모든 사업자가 할당 조건을 이행한 것으로 평가(3개 사업자 모두 70점 이상)
  • 5세대(5G) 28㎓ 대역에스케이티는 이용기간 단축, 엘지유플러스와 케이티는 할당 취소 통지

 

728x90
728x90
728x90
반응형

3초 이내로 timeout

timeout = 3
socket.setdefaulttimeout(timeout)

 

현재 스크립트 파일이 실행되는 상태 파악

- main 함수 실행

if __name__ == "__main__":
	main()

 

strftime(): 날짜 형식을 변환하는 메서드

time = datetime.datetime.now()
strtime = self.time.strftime('%Y-%m-%d %H:%M:%S')
print("origin-time:", time, "/ string-time:", strtime)
origin-time: 2022-11-09 10:47:48.387960 / string-time: 2022-11-09 10:47:48

server information 빈 array 만들고,

server result success/fail dictionary 구조

import paramiko
import getpass
import socket
import datetime
import os
import sys

timeout = 3
socket.setdefaulttimeout(timeout)

class maintenance:
    def __init__(self, ser_info):
        self.port = 22
        self.ser = ser_info
        self.time = datetime.datetime.now()
        self.systime = self.time.strftime('%y%m%d_%H%M%S')
        print(self.systime)
        self.ssh_connection()
        
    def ssh_connection(self):
        try:
            # ssh server connected class - present pc: client
            ssh = paramiko.SSHClient()
            # ssh session key rule: paramiko.AutoAddPolicy()
            ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            
            server = '192.168.5.132'
            user = input("Username: ")
            pwd = getpass.getpass("Password: ")
            
            # ssh server connect
            ssh.connect(server, port=22, username=user, password=pwd)
            print('--------------- SSH Connected ---------------\n')
            
            # ssh route directory/file list check
            stdin, stdout, stderr = ssh.exec_command('df -h')
            print(''.join(stdout.readlines()))
            
            self.system_check(server, user, pwd)
            
            ssh.close()
        except Exception as err:
            print(err)
    
    def system_check(self, server, user, pwd):
        
        # if server == '192.168.5.132':
        #     file_name = 'server_#1'
        try:
            ser_result_success = {}
            ser_result_fail = {}
            msg_text = ''
            
            print('--------------- ping test ---------------')
            # -n: number of packet transmissions(1)
            response = os.system("ping -n 1 " + server)
            if response == 0:
                Netstatus = "Network Active"
            else:
                Netstatus = "Network Error"
            file_name = self.save_results(server, Netstatus)
            
        except Exception as err:
            print(err)

    def save_results(self, server, ping_result):
        try:
            # realpath, abspath
            BASE_DIR = os.path.dirname(os.path.abspath(__file__))
            w_file_name = f'{self.systime}_{server}_result.log'
            print(BASE_DIR)
            with open(os.path.join(BASE_DIR, w_file_name), 'w') as f:
                # for k, v in ping_result.items():
                doc = f"{ping_result}"
                f.write(doc)
                
        except Exception as err:
            print(err)
            
    # def send_mail(self, server, ):
    #     return 0
def main():
    
    # system arguments value (default 1)
    print(sys.argv, len(sys.argv))
    
    # c:/Users/user/Desktop/sehee/system/git/sshtest.py
    ser_check_file = sys.argv[0]
    # []: Array / {}: Dictionary / (): Tuple    
    ser_info = []

    with open(ser_check_file, 'r') as file:
        lines = file.read().splitlines()
        for line in lines:
            line = line.split(",")
            ser_info.append(line)
    
    # maintenance(ser_info).ssh_connection()
    maintenance(ser_info)

# main script run
if __name__ == "__main__":
    main()

 

실행 명령어 exec_command를 입력하게 되면, 값을 tuple 형식으로 세 개를 받아옴

stdin, stdout, stderr

 

메일 전송 프로토콜

SMTP를 사용하기 위해 필요한 smtplib 모듈 import

MIME 클래스: 이메일과 함께 전송할 파일을 텍스트 형식으로 변환해주는 역할

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

 

Google 계정 관리 > 보안 > 2단계 인증 > 비밀번호 입력(로그인) > 2단계 인증 후

앱 비밀번호 > 비밀번호 입력(로그인) > 앱 선택: 메일 / 기기 선택: Windows 컴퓨터 > 생성

파일 생성하여 첨부

attachment = open(BASE_DIR+'\\'+file_name, 'rb')
part = MIMEBase('application', 'octet-stream')
part.set_payload((attachment).read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', "attachment; filename= "+file_name)
msg.attach(part)

 

728x90
728x90

+ Recent posts