리눅스 bash 스크립트에서 연관 배열의 인덱스(index)/키(key) 출력하기
By 반달가면 | 2018년 10월 1일 |
우선 리눅스 bash 스크립트에서 연관 배열(associative array) 사용에 대한 기본적인 내용도 이전 게시물을 참고하자. 여기로 배열을 정의해서 사용할 때 배열의 인덱스(index) 또는 키(key)를 확인해야 할 경우가 있다. 일반적인 배열은 인덱스를 수자로 사용하므로 굳이 인덱스를 별도로 확인할 일이 별로 없겠지만, 문자열을 인덱스/키로 사용하는 연관 배열의 경우에는 좀 다를 수 있다. 아래의 예시를 보자. # 변수 arr_x를 연관 배열로 선언 declare -A arr_x # 값 할당 arr_x[abc]=10 arr_x[def]=5 arr_x[xyz]=0 # 인덱스 abc에 저장된 내용 출력 echo "${arr_x[abc]}" 10 배열의 인덱스
[LeetCode OJ - Algorithm 알고리즘 문제] Romans to Integer - Easy
By 양파개발자 SW의 블로그입니다^^ | 2016년 10월 19일 |
<Problem Link> <Comment> 로마 숫자를 십진수로 변환하는 함수 작성이다.로마숫자는 기이하게도 1,5,10 단위로 문자가 하나씩 주어지며,각 문자의 개수 조합과 그 위치에 의하여 값을 의미한다. 기본적으로는 모든 문자열의 값을 전부 더하면 되지만 예외가 있다.5 와 10의 숫자의 좌측에 1이 위치함으로서 4 와 9를 나타낸다는것. 이것에 대한 고려를 해준다면.. 생각보다 해답은 간단하게 풀린다. <Solution> Python - Accepted 효율성은 그닥 좋아보이지 않는다.딱1회의 스캔만을 가지고 끝내버리는 방법이 분명 있을것 같긴 한데... 흠 class Solution(object): list2 = ['CM','CD','XC','X
[Linux][Kernel] softirq - 호출되는 모듈 (h->action)
By Guillermo Austin Kim | 2017년 12월 4일 |
softirq_vec 변수를 확인하면, __do_softirq() 에서 h->action로 호출되는 함수의 정체를 확인할 수 있습니다.crash> p softirq_vecsoftirq_vec = $2 = {{ action = 0xc01289ac <tasklet_hi_action> }, { action = 0xc0180334 <run_timer_softirq> }, { action = 0xc0d55d7c <net_tx_action> }, { action = 0xc0d58238 <net_rx_action> }, { action = 0xc038123c <blk_done_softirq> }, { action =
[리눅스커널] 워크큐: 워크큐 주요 개념 알아보기
By Guillermo Austin Kim | 2019년 7월 1일 |
이번 소절에서는 워크큐를 이루는 주요 개념을 소개합니다. - 워크 - 워커스레드 - 워커풀 - 풀워크큐 먼저 워크큐의 기본 실행 단위인 워크를 배워볼까요? 워크란워크는 워크큐를 실행하는 단위입니다. 워크는 누가 실행할까요? 워크는 실행하는 주인공은 워커 스레드입니다. 인터럽트 후반부 처리나 지연해야 할 작업을 워크에서 실행하는 것입니다. 리눅스 커널에서는 워크를 work라고도 부릅니다. 이 책에서는 편의상 워크라고 명시하겠습니다. 다음 그림을 보면서 워크에 대해 배워볼까요? [그림 1] 워크 실행 흐름도 워크의 처리 흐름은 위 그림과 같이 3단계로 분류할 수 있습니다. 1단계부터 알아볼까요? 그림에서 ①으로 표시된 부분입니다. 워크를 실행하려면 먼저 워크를 워크