i-node

PUBLISHED 2012. 2. 19. 00:03
POSTED IN 공장
 유닉스 시스템 V 버전의 디스크 블록 영역
  • 부트 블럭(boot block)
    • 유닉스 커널 적재를 위한 영역
  • 슈퍼 블럭(super block)
    • 파일 시스템에 관한 정보를 위한 영역
    • 내부에 자유블록은 bitmap형태로 특정 블록이 사용여부를 나타냄
  • i-node 블럭(i-node block)
    • 디스크에 정적 형태로 유지되다가 커널에 의해 메모리로 적재되는 영역
    • 특정 파일에 관한 정보를 가지고 있는 레코드 (약 64bytes)
      • 모드, N링크, 사용자, 그룹, 크기, 주소, 생성자, 액세스 시간, 수정시간, 변경시간
  • 데이터 블럭(data block)
    • 실제 데이터 저장을 위한 영역


64bytes로 구성된 i-node에는 39바이트 짜리 주소영역이 있는데 이는 13개 X 3bytes로 구성됨

- 처음 10개는 파일의 처음 10개의 데이터 블록을 나타냄
- 11번째 주소는 단일 간접블록으로 다음 256개의 블록을 나타냄
- 12번째 주소는 이중 간접블록을 나타냄 (256 X 256 = 65MB)
- 13번째 주소는 삼중 간접블록을 나타냄 (256 X 256 X 256 = 16G)





'공장' 카테고리의 다른 글

DB, 함수종속성  (0) 2012.02.22
교착상태 (dead lock)  (0) 2012.02.18
맥, 라이언 (Mac OS X, Lion) 시스템 폰트 바꾸기  (0) 2012.02.01

교착상태 (dead lock)

PUBLISHED 2012. 2. 18. 23:11
POSTED IN 공장
교착상태는 시스템에서 4가지 조건이 동시에 발생할때 나타남
  • 상호배제 (mutual exclusion)
    • 자원이 최소 하나 이상 비공유 (한번에 한 프로세스에만 자원이 할당)
  • 점유와 대기 (hold and wait)
    • 최소 하나의 자원을 보유하면서 다른 프로세스에 할당된 자원을 대기
  • 비선점 (non-preemptive)
    • 다른 프로세스의 자원을 뺏을 수 없음
  • 순환대기 (circular wait)
    • 상대방이 가진 자원을 서로 대기


교착상태 예방(prevention) 기법

  • 상호배제조건 방지
    • 태생적으로 공유가 불가능한 자원도 있기 때문에 어려움
    • 공유가능한 자원은 원래 배타적 접근을 요구하지 않음
  • 점유와 대기조건 방지
    • 프로세스가 작업 수행 전에 필요한 모든 자원을 한꺼번에 요청하고, 획득해서 작업수행
    • 혹은 자원을 전혀 갖고 있지 않을 떄만 자원을 요청할 수 있도록 허용
  • 비선점 조건 방지
    • 어떤 자원을 가진 상태에서 새로운 자원을 얻으려는데 실패하면 가진것도 내 놓기
      • 진행중이던 작업의 상태를 쉽게 저장/복구할 수 있어야 한다는 조건이 필요함
    • 필요한 자원을 대기 프로세스가 선점하고 있다면 뺏아서 쓰기
      • 만약 필요한 자원을 추가로 얻지 못하면 자신이 대기 프로세스 상태가 되고, 누군가 자원을 뺏아갈 수 있음
  • 순환대기조건 방지
    • 자원에 일련의 순서를 부여하고, 각 프로세스는 오름차순으로만 자원을 요청할 수 있도록 하기
    • 자원의 낭비 가능성


교착상태 회피(avoidance) 기법

  • 프로세스 시작 거부
    • 프로세스의 요구가 교착상태를 발생시킬 수 있다면 프로세스 시작을 중단시킴
  • 자원할당 거부
    • 프로세스의 요구가 교착상태를 발생시킬 수 있다면 자원을 할당하지 않음
    • 은행가 알고리즘(Banker's Algorithm)


교착상태 회복(recovery) 기법

  • 프로세스 중지
    • 교착상태 프로세스를 모두 중지
    • 교착상태가 끝날때 까지 하나씩 중지
  • 자원선점
    • 어떤 프로세스의 자원을 뺏아서 다른 프로세스에게 주기
    • 사전 해결조건
      • 비용최소화를 위해 적절한 선점순서 결정 필요
      • 자원을 뺏긴 프로세스의 안정적인 상태복귀
      • 동일한 프로세스가 계속 자원을 뺏기는 일이 없도록 (기아상태 방지:식사하는 철학자 문제)




    '공장' 카테고리의 다른 글

    i-node  (0) 2012.02.19
    맥, 라이언 (Mac OS X, Lion) 시스템 폰트 바꾸기  (0) 2012.02.01
    UML - 연관, 집합, 합성, 상속  (0) 2012.01.22
    1. 폰트설치
        /Library/Fonts 폴더에 복사 (확장자는 otf, ttf, ttc 등)

    2. 폰트설정 바꾸기
        /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreText.framework/Versions/A/Resources/DefaultFontFallbacks.plist 파일

    3. 서체 부드럽게
       defaults -currentHost write -globalDomain AppleFontSmoothing -int 2
       (맨 뒤에 숫자변경)


    참고
    - Mac OS X Lion 폰트변경(Apple Gothic -> 나눔고딕

    UML - 연관, 집합, 합성, 상속

    PUBLISHED 2012. 1. 22. 21:35
    POSTED IN 공장
    관계(relationships)
    :
    연관(association), 집합(aggregation), 합성(composition), 상속(inheritance) 관계

     


      - 집합 : 자동차는 폐차전에 바퀴를 여러번 갈아 끼움 
      - 합성 : 손이 없으면 손가락도 없음  

    - 생성된 파일(tables.sql)을 열어보면 인덱스 이외의 것들은 주석(REM)처리되어 있음
    - 해당 주석을 풀면 되지만
    - TABLESPACE 정보가 함께 표시되어 있어 그다지 아름답지는 않음

    - 앗! 테이블만 백업해서 파일로 복원해도 지저분하기는 마찬가지...

    '공장' 카테고리의 다른 글

    UML - 연관, 집합, 합성, 상속  (0) 2012.01.22
    2012년 10대 IT 트렌드 전망  (0) 2012.01.08
    ibatis, prepend 삭제하기  (0) 2012.01.07

    2012년 10대 IT 트렌드 전망

    PUBLISHED 2012. 1. 8. 16:38
    POSTED IN 공장

    1. 정보보호/보안
      • 정보시스템을 안전하게 보호하여 안정적 이용을 보장하고, 그 안에 저장/유통되고 있는 데이터의 무결성/비밀성/가용성을 보장함으로써 정보의 신뢰성을 확보하는것
    2. 클라우드 서비스
      • 서로 다른 물리적 위치에 존재하는 IT자원을 가상화 기술로 통합하여 사용자에게 인터넷을 통해 제공하는 서비스
      • 클라우드 서비스는 IT기술의 집합체로 가상화, 빌려쓰기, 확장성, 표준화 및 자동화, 에너지 효율성 등이 특징
    3. 소셜네트워크 서비스
      • 인터넷을 기반으로 인적 네트워크 형성 및 인맥관리를 할 수 있게 해 주는 서비스로 '연결'을 통한 '사회적 관계의 구축'을 지향하는 온라인 인맥관리 서비스
      • SNS의 영향력이 확대되면서 개인정보 및 사생활 유/노출, 악성루머 및 괴담의 확산 등 다양한 역기능이 부각되었으며 정부의 규제 논란까지 확산되면서 SNS의 순기능과 역기능에 대한 논란 가열 
    4. 모바일 애플리케이션
      • 사용자가 모바일 디바이스를 통해 정보를 얻거나 필요한 특정 기능을 실행하기 위해 사용하는 응용 소프트웨어
    5. 위치기반서비스
      • 무선통신망 및 GPS등을 통해 얻는 위치 정보를 바탕으로 인터넷 사용자에게 위치에 따른 특정정보를 제공하는 무선 콘텐츠 서비스들을 의미
      • 위치기반 서비스 활성화에 따른 개인정보 유출 및 사생활 침해를 방지하기 위한 기술적, 제도적 정책 마련 필요
    6. 스마트워크
      • IT를 이용해 시간과 장소에 제한없이 업무를 수행하는 유연한 근무방식
      • 자택이나 자택인근에 마련된 스마크워크센터에서 근무하는 '원격근무'와 현장 및 이동중에 업무를 수행하는 '모바일근무'로 구분할 수 있음
    7. 소셜비즈니스
      • SNS와 결합된 다양한 산업의 비즈니스 활동을 의미하며 최근에는 공동구매기반의 소셜 중개서비스로 불리는 '소셜커머스'가 소설비즈니스를 선도
      • SNS를 비즈니스에 활용할 경우 비교적 저렴한 비용, 구전을 통한 다수의 고객확보, 원활한 커뮤니케이션, 빠른 전파력 등의 이점이 있음
    8. 스마트 디바이스
      • 3 Smart Devices : 스마트폰, 태블릿PC, 스마트TV
      • 스마트 디바이스의 보급 확대는 무선인터넷, 모바일앱 등 연관산업의 성장을 이끌어내며 모바일 산업 활성화 및 새로운 사업 기회 창출에 기여
    9. 오픈 플랫폼
      • 누구나 참여해서 새로운 제품이나 가치를 만들고 문제를 해결할 수 있는 열린 장(場)을 만들어서 공유/참여/협력/혁신 등을 가능케 해주는 네트워크 효과를 창출하여 원하는 목적을 달성하는 새로운 개방형 생태계 조성전략
      • IT의 연결성, 실시간성, 지능성, 편리셩, 개방성, 투명성 등의 속성은 오픈 플랫폼을 가능하게 하는 최고의 수단
    10. 빅 데이터
      • 기존 방식으로는 저장/관리/분석하기 어려울 정도의 큰 규모의 자료를 의미하며 최근에는 관련도구, 플랫폼, 분석기법까지 포괄하는 용어로 변화됨
      • 빅 데이터의 규모 증가 및 빠른 누적 속도에서 '관리'의 위험이 있을 수 있으나 최근 많은 기업들은 빅 데이터의 '활용'을 통한 기회확보에 주력
      • 기술적 정의 : 다양한 종류의 대규모 데이터로부터 저렴한 비용으로 가치를 추출하고, 데이터의 초고속 수집, 발굴, 분석을 지원하도록 고안된 차세대 기술 및 아키텍쳐
      • 규모적 정의 : 일반적인 데이터베이스 SW가 저장, 관리, 분석할 수 있는 범위를 초과하는 규모의 데이터


     

     출처 : 2012년 IT 트렌드 전망 및 정책방향 (한국정보화진흥원)

    ibatis, prepend 삭제하기

    PUBLISHED 2012. 1. 7. 13:10
    POSTED IN 공장
    위의 질의에서 맵에 X값만 존재할 경우
    update TB_XXX
    set X=X_VAUE
    where KEY=KEY_VALUE
    형태로 질의가 생성되리라 예상했으나 실제로는

    update TB_XXX
    set , X=X_VALUE
    where KEY=KEY_VALUE
    형태로 질의가 생성되었다.
    set 다음의 , 때문에 예외가 발생한다.


    다음과 같이 해줘야 한다.
    참으로 미스테리 한것은 다른 국내 개발자들도 이런 일을 한번쯤 겪어봤을텐데 왜 한글로 작성된 글에서는 잘못된 해결책이 많을까?
    물론 정답도 많지만... 삽질 좀 했다.