728x90
반응형
  1. 실행창에 GPEDIT.MSC 를 입력하고 확인
  2. 사용자구성 → 관리탬플릿 → Windows 구성 요소 → 첨부 파일 관리자 → 보통 위협 수준 파일 형식의 포함 목록
  3. 새로 열린 창에서 사용 선택 후 아래 입력 박스가 활성화되면 .exe를 입력 후 확인


반응형

'System' 카테고리의 다른 글

Windows Install시 Drive 찾지 못하는 현상  (0) 2018.08.14
캐시메모리와 버퍼메모리의 차이  (3) 2018.08.14
Hardware Raid and Software Raid  (0) 2018.08.14
HP-UX 점검 명령어  (0) 2018.08.14
HP-UX IP 설정 변경  (0) 2018.08.14
728x90
반응형
Case 1) 노후 장비일시 Slot 0의 Disk에 OS설치를 하지 않으시 Drive를 가져오지 못하는 증상 발생
            -> Slot 0번의 Disk와 다른 Disk를 Raid 구성 후 OS Install

Case 2) BIOS 모드에서 Raid Mode가 아닐시 Raid 구성을 가져오지 못함
           -> BIOS의 Advandce 설정에서 Raid Mode 설정

Case 3) OS 출시 시기보다 Device의 출시 시기가 빠른 경우 OS가 가지고 있는 기본 Driver에 해당 Device의 Driver를 가지고 있지 않음

              -> Vendor에서 지원하는 Install Tool(HP Smart Start, Fujitsu Server View 등등)를 통한 OS 설치 


반응형

'System' 카테고리의 다른 글

Windows 실행파일이 안되는 경우  (0) 2018.08.14
캐시메모리와 버퍼메모리의 차이  (3) 2018.08.14
Hardware Raid and Software Raid  (0) 2018.08.14
HP-UX 점검 명령어  (0) 2018.08.14
HP-UX IP 설정 변경  (0) 2018.08.14
728x90
반응형
캐시메모리

"캐시"란 속도가 다른 두 장치 사이에서 속도차이를 메워주는 장치입니다.

시스템에서는 많은 기기사이의 데이터 흐름이 항상 일어나고 있습니다.
만약 모든 기기들이 같은 속도와 대역폭으로 데이터를 전송한다면 가장 이상적인 데이터 흐름이라 할 수 있지만, 실제 시스템에서는 각 기기(device)들 간의 속도도 다르며 데이터가 흐르는 통로(bus)의 대역폭도 다릅니다.
이렇게 처리속도가 다른 기기들 사이에서 데이터의 흐름이 속도조절을 해주는 부분이 캐시 입니다.
빠른 처리속도를 가진 기기에게는 미리 데이터를 준비해줌으로서 최대한의 효율을 내도록 하고, 느린 처리속도를 가진 기기에게는 처리할 데이터를 대신 받아줌으로서 다른 기기가 기다리는 일이 적어지도록 하는 것 입니다.
예를 들면, 메모리의 속도가 100이고, 하드디스크의 속도를 1이라고 가정 한다고 했을 때, 
이 때 갑자기 어떤 데이터(용량이 50)를 메모리가 하드디스크에서 읽어 오려고 할 경우 속도가 1인 하드디스크가 50인 용량을 읽기 위해서는 시간이 50 걸립니다. 
그런데 50인 용량을 메모리가 받을때는 0.5라는 시간이 걸립니다. 
결국 메모리는 하드디스크가 정보를 다 읽을때까지 모두 49.5라는 시간을 아무일도 못하고 놀게 됩니다. 

그것을 막기 위해서 캐시라는 장치가 생겼습니다.
만약 메모리의 특정영역을 캐시로 정하고 위의 경우에서 읽어올 데이터 50중에 30을 미리 읽어 왔다면, 30은 미리 메모리에 있으니, 20만 더 읽어 오면 됩니다. 
그래서 하드디스크는 20의 시간이 걸리고, 메모리는 19.5라는 시간만 놀게 됩니다. 결국 하드디스크가 2.5배나 빨라진 셈입니다. 
보통 윈도우95/98에서는 하드디스크 캐시를 사용하면, 하드디스크 속도가 10배 정도 빨라지는 효과를 얻을 수 있습니다. 
그것은 윈도우95/98이 캐시메모리를 훌륭하게 관리해서 90%이상의 데이터를 미리 읽어오기 때문입니다. 

캐시 메모리는 하드디스크와 메모리 사이에만 있는 것이 아니고, CPU와 메모리 사이에도 있고, 하드디스크와 케이블 사이에도 있으며, CD-ROM과 메모리 사이에도 있습니다. 
속도차이가 나는 모든 장치에 있다고 생각하면 됩니다. 

캐시메모리는 많으면 많을 수록 좋지만, 비례해서 좋아지지는 않습니다. 
미리 읽어 올 데이터가 30인데, 캐시 메모리가 10이면 속도가 나질 않겠습니다. 그런데 캐시를 30으로 늘리면 속도가 많이 늘것입니다. 
그런데, 캐시를 60으로 늘리면, 미리 읽어와야 할 데이터가 30이상일 때는 속도는 늘어나겠지만, 30이하일 때는 늘지는 않을 것입니다. 
게다가 메모리는 비싸기 때문에 무조건 캐시로 사용할 수는 없습니다. 





버퍼메모리

버퍼 캐시(buffer cache)란 보조기억장치로서, 특히 디스크의 입출력 효율을 높이기 위해 주기억 장치의 한 영역을 최근에 사용된 디스크 블록의 내용을 기억하는 버퍼영역으로 할당한 것을 말하는데, 버퍼캐시에 있는 디스크 블록은 디스크 액세스 없이 바로 이용할 수 있으므로 효율이 높아집니다. 
이는 주기억장치와 CPU 캐시 기억장치와 관계가 비슷합니다. 

버퍼는 역시 두 장치 속도가 차이가 날때 사용하지만, 보통 속도 향상을 위한 것이 아니라, 빠른쪽에서 데이터가 느린쪽으로 보내질때 데이터의 손실을 막기 위해서 쓰입니다. 

예를 들자면 키보드를 들 수가 있습니다. 터미널 상태의 통신을 할때를 생각해 봅시다. 
만약 게시판에서 키보드로 '엔터'키를 눌러 다음 페이지로 넘기면, 바로 다음 페이지로 넘어가지 못하고 1,2초 늦게 화면이 넘어갑니다. 
만약 계속 엔터키를 누르고 있다가 손을 떼면, 손을 놨는데도 엔터키가 눌러지면서 한참을 페이지가 넘어갑니다. 

이것은 모뎀과 서비스 업체의 화면 처리 속도가 키보드 보다 느리기 때문에 키보드 버퍼가 작동한 것입니다. 

만약 화면이 처리된 후에만 키보드 데이터를 받아 들이면, 키보드 타이핑 도중에 글자를 잃어버릴 위험이 있습니다. 
"1234567890"을 빨리 치면 처리를 못해서 "12367890"이 쳐질 수도 있다는 것이죠. 
그런것을 막기 위해서 키보드는 사용자가 치는 키를 차례차례 받아 두었다가 처리가 되는 데로 계속 내보내는 것입니다. 

이 기능을 버퍼라고 합니다. C같은 언어로 프로그래밍 할때는 이런 기능을 이용하기도 합니다. 

사실 캐시도 넓은 의미로는 버퍼에 포함되는 개념이기 때문에 같은 뜻으로 쓰이기도 합니다. 


버퍼란 컴퓨터의 주기억 장치와 주변장치 사이에서 데이터를 주고받을 때 정보를 임시로 기억해 두고 사용할 수 있는 공간 입니다.

컴퓨터의 주기억 장치와 주변장치 사이에서 데이터를 주고받을 때 각 장치들 사이에 존재하는 전송되는 속도 차, 또는 시간 차로 인해 발생되는 문제점을 해결할 수 있는 고속의 임시 기억장치를 말합니다. 
즉, 데이터의 처리속도나 처리단위, 데이터 사용시간이 서로 다른 두 장치나 프로그램 사이에서 데이터를 주고받기 위한 목적으로 사용되는 임시 기억장소 입니다. 

버퍼가 사용되면 중앙처리장치는 입출력 자료를 기다릴 필요없이 입력이나 출력명령을 내릴 수 있습니다. 
버퍼를 이용하면 처리속도가 빨라집니다. 
그러므로 특히 느린 시스템 구성요소의 동작을 기다리는 동안 유용하게 사용됩니다. 
또한 버퍼는 논리회로에서 신호의 전달을 잠시 지연시키는 게이트 역할을 하기도 합니다.


버퍼와 캐쉬의 차이

1. 버퍼 : Buffer(속도완충기)
일시적인 데이터 저장소로 이용하는 기억 장치로 (서버과 클라이언트의 속도차 때문에 서버가 버퍼에 내용을 저정해 놓으면 클라이언트는 버퍼의 내용을 가져간다.)

2. 캐쉬 : Cache(속도 완충기)

속도가 빠른 중앙처리장치와 상대적으로 느린 ram사이의 원활한 데이터 통신을 위해 주기억장치의 정보를 일시적으로 저장하는 고속기억회로 버퍼와 같은 개념이지만 인공지능이라는 점에서 속도가 훨씬 빠르다 


반응형

'System' 카테고리의 다른 글

Windows 실행파일이 안되는 경우  (0) 2018.08.14
Windows Install시 Drive 찾지 못하는 현상  (0) 2018.08.14
Hardware Raid and Software Raid  (0) 2018.08.14
HP-UX 점검 명령어  (0) 2018.08.14
HP-UX IP 설정 변경  (0) 2018.08.14
728x90
반응형
하드웨어 레이드 (Hardware Raid)

- Raid 컨트롤러에 의해 디스크 관리
- Software Raid보다 더 빠르고 안전성이 있다
- 프로세서 로드가 감소한다
- 독자적인 프로세서와 메모리를 가지고 있다
- 장점으로는 OS 입장에서 단지 Raid 볼륨에서 데이터를 읽고 쓰기만 하면 된다
- 각 Raid 타입에 따라 중복된 쓰기와 읽기 처리, 패리티 비트 계산 등의 Raid 기능에 대한 처리는 컨트롤러에서 자동 처리






소프트웨어 레이드 (Software Raid)

- Raid 컨트롤러가 없이 OS에 소프트웨어로 디스크를 관리
- 소프트웨어 Raid는 CPU의 자원을 사용하기 때문에 하드웨어 Raid에 비해 성능 제약이 있다
- 리눅스의 경우 MD 커널 드라이버로 Raid 기능이 지원되며 /etc/raidtab에서 설정 가능
-
- 소프트웨어 Raid의 경우 Raid 기능처리를 모두 CPU에서 담당하기 때문에 패리티 계산과 같은 많은 처리를 요구하는    
  Raid 구성은 적절하지 않다. 시스템 부하를 일으키는 요인이 될 수 있다. (Raid 0, Raid 1 방식만 추천)






참조 URL











/boot 파티션을 LVM으로 설정하지 않는 이유

- 부트로더가 물리 볼륨 그룹을 읽을 수 있으나 논리 볼륨 그룹을 읽을 수 없음

- Hardware Raid는 물리적으로 Raid를 나누기 때문에 부트로더에서 읽어 들일 수 있으나
   Software Raid는 논리적으로 Raid를 나누기 때문에 부트로더에서 읽어올 수 없다.
  (GRUB나 LiLo 같은 부트로더 에서 논리 볼륨을 지원하지 않음)

- BIOS가 0번섹터의 부트로더 주소값을 읽어 들여 부팅하는데 LVM으로 구성된다면
  0번섹터에 어떤게 상주하는지 알 수가 없기 때문






Software Raid에서 Raid 1은 부팅 되는데 다른 모드는 부팅이 안되는 이유

- BIOS는 Raid를 인식하지못하기 때문에 Raid 1만 부팅이 가능하다. Raid 1의 경우 어레이의 단독 드라이브가 Raid가 아닌 부트 장치와 같기 때문에 BIOS가 부팅을 할 수 있다.

- 다른 모드의 경우 여러 드라이브가 있기 때문에 BIOS에서 어떤 드라이브에 부트 장치가 있는지 인식을 할 수 없기때문에 BIOS에서 부팅을 할 수가 없다.

참조 URL


반응형

'System' 카테고리의 다른 글

Windows Install시 Drive 찾지 못하는 현상  (0) 2018.08.14
캐시메모리와 버퍼메모리의 차이  (3) 2018.08.14
HP-UX 점검 명령어  (0) 2018.08.14
HP-UX IP 설정 변경  (0) 2018.08.14
Solaris 네트워크 설정 (고정 IP)  (0) 2018.08.14
728x90
반응형
Device 정보


◆ 모델 정보

# model

Ex) ia64 hp server rx2600


◆ 호스트네임 정보

# hostname

Ex) HP_test


◆ OS 및 커널 정보

# swlist |grep OE

Ex) HPUX11i-DC-OE     B.11.31.1103   HP-UX Data Center Operating Environment

# uname -a

Ex) HP-UX HP_test B.11.23 U ia64 2333501990 unlimited-user license




◆ 하드웨어 정보

#machinfo

Ex) CPU info:
  2 Intel(R) Itanium 2 9100 series processors (1.42 GHz, 12 MB) <- cpu 갯수
          532 MT/s bus, CPU version A1
          4 logical processors (2 per socket) <- 2 cpu(dual Core) so.. 4 logical process
Memory: 32737 MB (31.97 GB)
Firmware info:
   Firmware revision:  04.11
   FP SWA driver revision: 1.18
   IPMI is supported on this system.
   BMC firmware revision: 5.25
Platform info:
   Model:                  "ia64 hp server rx3600"
   Machine ID number:      3e37abcf-b365-11db-b810-29fbc799cb86
   Machine serial number:  SGH4653HMP
OS info:
   Nodename:  rx219
   Release:   HP-UX B.11.31
   Version:   U (unlimited-user license)
   Machine:   ia64
   ID Number: 1043835855
   vmunix _release_version:
@(#) $Revision: vmunix:    B.11.31_LR FLAVOR=perf





점검 명령어


◆ CPU 점검

# glance

- glance 미 설치

# top



◆ Memory 사용량 확인

# glance

- glance 미 설치시

# vmstat

- Memory 사용량 확인

# swapinfo

- Swap Memory 확인



◆ Disk 점검

# bdf

- Disk 사용량 확인

# /etc/fstab

- 부트시 마운트되는 파일시스템 확인

# cmviewcl

- Disk 상태 확인



◆ 볼륨 상태 확인

# lvdisplay -v

- available / sync 로 표시되면 볼륨 상태 정상



◆ 네트워크 정검

# netstat -ni

- Network의 I/O 점검

# lanscan

- 연결된 네트워크 점검



◆ 커널 점검

# sysdef

- 현재 실행중인 OS Kernel을 분석하여 tunable configuration parameter를 보여줌



◆ Disk I/O 점검

# ioscan -fn

- Disk의 I/O 상태를 보여줌



◆ Log 확인

# dmesg

# /var/adm/syslog/syslog.log

# /var/opt/resmon/log/event.log











반응형

'System' 카테고리의 다른 글

캐시메모리와 버퍼메모리의 차이  (3) 2018.08.14
Hardware Raid and Software Raid  (0) 2018.08.14
HP-UX IP 설정 변경  (0) 2018.08.14
Solaris 네트워크 설정 (고정 IP)  (0) 2018.08.14
Semaphore(세마포어) & Mutex(뮤텍스)  (0) 2018.08.08
728x90
반응형
IP 변경


[임시 반영 방법]
#ifconfig lan0 192.168.1.5 netmask 255.255.0.0

또는

#ifconfig lan0 192.168.1.5 netmask 255.255.0.0 up

[영구 반영 방법]

/etc/rc.config.d/netconf 파일에 환경 설정

<설정전 내용>
INTERFACE_NAME[0]=lan0
IP_ADDRESS[0]=10.130.6.11
SUBNET_MASK[0]=255.255.255.0
BROADCAST_ADDRESS[0]=""
INTERFACE_STATE[0]=""
DHCP_ENABLE[0]=0
INTERFACE_MODULES[0]=""

<설정 추가 내용> <-가상IP설정시
INTERFACE_NAME[1]=lan0:1
IP_ADDRESS[1]=10.130.6.10
SUBNET_MASK[1]=255.255.255.0
BROADCAST_ADDRESS[1]=""
INTERFACE_STATE[1]=""
DHCP_ENABLE[1]=0





/etc/nsswitch.conf 부분 수정


다음 부분에 다음과 같이 추가/수정하면 된다.

hosts: dns [NOTFOUND=return] nis [NOTFOUND=return] files

/etc/nsswitch.conf 파일이 없다면 /etc/nsswitch.hp_defaults파일을 복사하여 사용

#cp /etc/nsswitch.hp_defaults /etc/nsswitch.conf

******* TIP *****
hosts : files [NOTFOUND=continue] dns
위 내용은 hosts 파일(/etc/hosts)에 ip와 address가 매핑되어 있지 않다면 (NOTFOUND) dns로 읽으라(continue)는 뜻.





Name server 등록-DNS주소 설정


/etc/resolv.conf 파일을 추가/수정 한다.

# vi /etc/resolv.conf

##하기 내용을 추가

nameserver 168.126.63.1

## 네임서버가 여러개 일 경우 다수 등록 가능





host명 변경


/etc/hosts 부분 추가/수정

# vi /etc/hotst

127.0.0.1 localhost loopback
192.168.1.61 skttb1
ip 입력 사용할 호스트명 입력





재시작 방법 및 확인


/sbin/init.d/net stop

/sbin/init.d/net start


- 네트워크 인터페이스 검색 : #lanscan


- 네트워크 설정명령(diag) : #lanadmin


- 네트워크 인터페이스 지원 속도 확인 : #lanadmin -s 900

※ 여기서 900은 PPA number


- APA 구성 카드 목록 확인 : #lanscan -q

※ HP APA 구성 시 config 설정 주의 : stanby=on 확인


- 네트워크 인터페이스 현재 동작 속도 확인 : #lanadmin -x 1

※ 여기서 1은 PPA number


- 네트워크 인터페이스 autonegotiation 모드 설정 : #lanadmin -X auto_on 1

ifconfig 인터페이스명

ioscan -knfC lan





IP 설정


/etc/rc.config.d/netconf파일 수정



INTERFACE_NAME[1]="lan1“

IP_ADDRESS[1]="192.168.1.30“

SUBNET_MASK[1]="255.255.255.0“

BROADCAST_ADDRESS[1]="“

INTERFACE_STATE[1]="“

DHCP_ENABLE[1]=0



INTERFACE_MODULES[1]=""

DEFAULT_INTERFACE_MODULES="“

ROUTE_DESTINATION[0]="default“

ROUTE_GATEWAY[0]=192.168.1.1

ROUTE_COUNT[0]=1

ROUTE_MASK[0]= ROUTE_ARGS[0]=





NIC 속도 및 mode 설정


/etc/rc.config.d/hpbtlanconf 파일 수정



##################################################################### # @(#)B.11.31_LR hpbtlanconf $Revision: i80/32002/09/1010:05:45

# hpbase100conf: contains configuration values for HP PCI/HSC 100BASE-T

# interfaces

#

# HP_BTLAN_INTERFACE_NAMEName of interface (lan0, lan1...)

# HP_BTLAN_STATION_ADDRESSStation address of interface

# HP_BTLAN_SPEEDSpeed and duplex mode

# Can be one of : 10HD, 10FD, 100HD, 100FD and

# AUTO_ON.

# HP_BTLAN_MTU Maximum Transmission Unit (MTU)

# Integer value between 257 and 1500, inclusive.

#

# The interface name, major number, card instance and ppa may be # obtained from the lanscan(1m) command. # # The station address and duplex are set through the lanadmin(1m) command.

# #####################################################################

HP_BTLAN_INTERFACE_NAME[0]=

HP_BTLAN_STATION_ADDRESS[0]=

HP_BTLAN_SPEED[0]= HP_BTLAN_MTU[0]=

###########################################################################

#The HP_BTLAN_INIT_ARGS are reserved by HP.They are NOT user changeable.

###########################################################################

HP_BTLAN_INIT_ARGS=“

HP_BTLAN_STATION_ADDRESS

HP_BTLAN_SPEED HP_BTLAN_MTU"

# End of hpbtlanconf configuration file





NameServer 설정


cat /etc/resolv.conf domain test.com

nameserver192.168.1.2 # primary dns





Net Service 구동/재시작


# /sbin/init.d/net stop

# /sbin/init.d/net start





NIC 별 IP 확인


# netstat -in

Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll

lan1 1500 192.168.1.0 192.168.1.111 57846873 0 173730152 0 0

lo0 32808 127.0.0.0 127.0.0.1 41611065 0 41611062 0 0

lan900 1500 xxx.xxx.xxx.0 xxx.xxx.xxx.xxx 3053587325 0 2956102205 0 0

--> lan0, lan1, lan2 등은 물리적 NIC이고,lan900 부터는 APA로 구성된 논리적 NIC이다.





시스템에 인식된 물리적 NIC 확인


# ioscan -fnk ?C lan

ClassIH/W PathDriver S/W StateH/W TypeDescription





케이블 port 와 연결 확인


- 연결 안되었을 경우

skttbsvr:[/]lanadmin -x 7
The link is down. The speed and other link state information
are undefined. The configuration specified for this card is:
Speed = 100 Full-Duplex.
Autonegotiation = Off.


- 연결 되었을 경우

skttbsvr:[/]lanadmin -x 0
Speed = 1000 Full-Duplex.
Autonegotiation = On.

=================================================================== lan20/3/1/0ietherCLAIMEDINTERFACEHP A7012-60001 PCI/PCI-X 1000Base-T Dual-port Adapter

lan30/3/1/1ietherCLAIMEDINTERFACEHP A7012-60001 PCI/PCI-X 1000Base-T Dual-port Adapter

lan00/4/2/0ietherCLAIMEDINTERFACEHP AB352-60003 PCI/PCI-X 1000Base-T Dual-port Core

lan10/4/2/1ietherCLAIMEDINTERFACEHP AB352-60003 PCI/PCI-X 1000Base-T Dual-port Core

--> Core 는 보드에 내장된 NIC.Adapter는 추가로 장착된 NIC





NIC별 Link 상태


# lanscan

Message catalog can't be opened/accessed for language ko_KR.eucKR.

Language C will used.

Hardware StationCrd HdwNet-InterfaceNMMACHP-DLPI DLPI

Path Address In# State NamePPA ID Type Support Mjr#

0/3/1/0 0x00306E5DFA7C 2 UP lan2 snap2 2 ETHER Yes 119

0/4/2/1 0x001A4B08963D 1 UP lan1 snap1 4 ETHER Yes 119

LinkAgg0 0x001A4B08963C 900 UP lan900 snap900 6 ETHER Yes 119

LinkAgg1 0x000000000000 901 DOWN lan901 snap901 7 ETHER Yes 119

LinkAgg2 0x000000000000 902 DOWN lan902 snap902 8 ETHER Yes 119

LinkAgg3 0x000000000000 903 DOWN lan903 snap903 9 ETHER Yes 119

LinkAgg4 0x000000000000 904 DOWN lan904 snap904 10 ETHER Yes 119





NIC 속도/모드확인


※ 속도확인

# lanadmin -s 900 Speed= 1000000000

-s 옵션 뒤에 PPA Number(lanscan -p 로 확인가능)를 적어준다.


  속도 및 모드 확인

# lanscan -x 1


전체 설정 및 통계 확인

# lanscan -g 900





APA 구성된 물리적 NIC 확인하기


# lanscan -q

2

1

9000

3

901

902

903

904

논리적 NIC 900 에 할당된 물리적 NIC이lan0와 lan3으로 묶였다는 걸 알 수 있다.
========================================================================

routing


route add default 211.115.7.254 1



lanadmin -X auto_off 3


반응형

'System' 카테고리의 다른 글

Hardware Raid and Software Raid  (0) 2018.08.14
HP-UX 점검 명령어  (0) 2018.08.14
Solaris 네트워크 설정 (고정 IP)  (0) 2018.08.14
Semaphore(세마포어) & Mutex(뮤텍스)  (0) 2018.08.08
ECC, EDAC, Parity (Memory관련)  (0) 2018.08.08
728x90
반응형
Solaris 네트워크 설정 (고정 IP)


1. /etc/hosts (IP, 호스트 설정)
=> /etc/hosts 파일은 /etc/inet/hosts 파일에 링크되어 있으며 처음에는 ReadOnly 일 수 있으니 chmod로 변환하여 수정 (chmod 644 /etc/hosts)

$ cat /etc/hosts  
#
::1             localhost
127.0.0.1       solaris1 solaris1.local localhost loghost
192.168.0.55    solaris1 loghost
[호스트 IP]     [호스트 네임]  loghost




2. /etc/defaultrouter (gateway 설정)
기본적으로 생성되어 있지 않음

$ vi /etc/defaultrouter
192.168.0.1
[기본 라우팅 주소]




3. /etc/nsswitch.conf (dns 추가)

$ vi /etc/nsswitch.conf
group:      files
hosts:         files  dns  => hosts:     files 뒤에 dns 추가
ipnodes:       files




4. /etc/resolv.conf (네임서버 설정)

$ vi /etc/resolv.conf
nameserver 168.126.63.1




5. /etc/netmasks(network-number netmask 설정)

$ vi /etc/netmasks
192.168.0.0 255.255.255.0
[호스트 IP대역] [Netmask 클래스]




6. 서비스 재시작

$ svcadm restart network


반응형

'System' 카테고리의 다른 글

HP-UX 점검 명령어  (0) 2018.08.14
HP-UX IP 설정 변경  (0) 2018.08.14
Semaphore(세마포어) & Mutex(뮤텍스)  (0) 2018.08.08
ECC, EDAC, Parity (Memory관련)  (0) 2018.08.08
System Chunk 개념  (0) 2018.08.08
728x90
반응형
Semaphore 란?

- 프로세스간 메세지 전송을 하거나, 혹은 공유메모리를 통해서 특정 data를 공유하게 될경우 발생하는 문제는
  공유된 자원에 여러개의 프로세스가 동시에 접근을 하면서 발생한다. 
  단지 한번에 하나의 프로세스만 접근 가능하도록 만들어 줘야 하고 이때 세마포어를 쓴다.

- 세마포어는 리소스의 상태를 나타내는 간단한 카운터로 생각할 수 있다. 일반적으로 비교적 긴 시간을 확보하는 리소스에 대해 이용한다.
  유닉스 시스템의 프로그래밍에서 세마포어는 운영체제의 리소스를 경쟁적으로 사용하는 다중 프로세스에서 행동을 조정하거나 또는 동기화 시키는 기술이다.
  세마포어는 운영체제 또는 커널의 한 지정된 저장장치 내 값으로서, 각 프로세스는 이를 확인하고 변경할 수 있다.
  확인되는 세마포어의 값에 따라, 그 프로세스가 즉시 자원을 사용할 수 있거나, 또는 이미 다른 프로세스에 의해 사용 중이라는 사실을 알게 되면 재시도하기 전에 일정 시간을 기다려야만 한다.
  세마포어는 이진수 (0 또는 1)를 사용하거나, 또는 추가적인 값을 가질 수도 있다. 세마포어를 사용하는 프로세스는 으레 그 값을 확인하고,
  자원을 사용하는 동안에는 그 값을 변경함으로써 다른 세마포어 사용자들이 기다리도록 해야한다.

- 프로세스 간 메시지를 전송하거나 혹은 공유 메모리를 통해서 특정 데이터를 공유하게 될 경우 발생하는 문제는 공유된 자원에 여러 프로세스가 접근하면서 발생하다. 하나의 프로세스만 접근을 가능하도록 해야할 때 세마포어를 사용한다. 
- 바이너리 세마포어랑 세마포어의 값이 0과 1만을 지니도록 구현된 세마포어를 말한다.


- 쓰레드에서는 뮤텍스, 프로세스에서는 세마포어


- 교착 상태

A 프로세스가 k 에 접근하고 나오면 k = 2 라는 값을 예상할수 있다.

A 프로세스가 k 에 접근했을때, B 프로세스가 k 에 접근을 하고 일을 하고 나오면, k = 2 가 되고,

A 프로세스가 그후로 일을 하면 k = 3 이 된다.

즉, 예상한 값을 얻을수 없다.

이를 방지 하기 위해,

A 프로세스가 접근 했을때 다른 프로세스의 접근을 막고,

끝난후 접근을 풀어 준다.

이를 세마포어로 접근을 막고 접근을 허용 할수 있다.   


- 차단을 원하는 자원에 대해서 semaphore를 생성하면 해당자원을 가리키는 semaphore 값이 할당 된다.
   이 값이 0 이면 해당자원에 접근할수 없고 0 보다 크면 해당자원에 접근할수 있다.

-  그러므로, 자원에 접근하기 전에 semaphore 값을 검사해서 값이 0이면 자원을 사용할수 있을때까지 기다리고,
   0보다 더 크면 자원에 접근해서 semaphore 값을 0 으로 감소 시켜서, 다른 프로세스가 자원에 접근 할수 없도록 하고
   자원의 사용이 끝나면 다시 semaphore 값을 증가 시켜 다른프로세스가 사용할수 있게 해준다.








뮤텍스(Mutex)란?


- MUTual EXclusion 으로 상호배제라고도 한다.

- Critical Section을 가진 스레드들의 Runnig Time이 서로 겹치지 않게 각각 단독으로 실행되게 하는 기술이다. 

- 다중 프로세스들의 공유 리소스에 대한 접근을 조율하기 위해 locking과 unlocking을 사용한다.

- 즉, 쉽게 말하면 뮤텍스 객체를 두 스레드가 동시에 사용할 수 없다는 의미이다.






뮤텍스와 세마포어의 차이점


- 세마포어는 뮤텍스가 될 수 있지만 뮤텍스는 세마포어가 될 수 없다.

- 세마포어는 소유할 수 없는 반면 뮤텍스는 소유가 가능하며 소유주가 이에 대한 책임을 진다.

- 뮤텍스의 경우 뮤텍스를 소유하고 있는 쓰레드가 이 뮤텍스를 해제할 수 있다. 하지만 세마포어의 경우 이러한 세마포어를 소유하지 않는 스레드가 세마포어를 해제할 수 있다.

- 세마포어는 시스템 범위에 걸쳐있고 파일시스템상의 파일 형태로 존재한다. 반면 뮤텍스는 프로세스 범위를 가지며 프로세스가 종료될 때 자동으로 clean up된다.

★★★ 가장 큰 차이점은 관리하는 동기화 대상이 갯수이다.
뮤텍스는 동기화 대상이 오직 하나뿐일 때, 세마포어는 동기화 대상이 하나 이상일 때 사용한다. 


  • 동기화

 - 리눅스 커널은 동기화와 독점적인 접근을 허용하기 위해 다양한 방법을 사용하고 있다.
 
- 여러 프로세스가 동일한 자원을 조작할 경우에 세마포어를 이용하는 것이 편리하다.

- 멀티 프로세서 환경에서 여러 CPU가 동시에 참조하는 테이블을 보호하기 위해서는 스핀락(spin lock)을 이용하는 것이 가장 일반적이다. 


반응형

'System' 카테고리의 다른 글

HP-UX IP 설정 변경  (0) 2018.08.14
Solaris 네트워크 설정 (고정 IP)  (0) 2018.08.14
ECC, EDAC, Parity (Memory관련)  (0) 2018.08.08
System Chunk 개념  (0) 2018.08.08
System 프로세스와 쓰레드 차이  (0) 2018.08.08
728x90
반응형
ECC란?


  • 읽혀지거나 전송되고있는 data에 대해 오류가 생겼는지 검사하고 필요하면 전송 중에 정정될 수 있게 한다.
  • 오류를 검출할 뿐 아니라 정정한다는 측면에서 패리티 검사와는 다르다.
  • ECC는 데이터 속도의 증가와 함께 점차 데이터 저장이나 전송을 위한 하드웨어 내에도 적용되고 있다.


동작원리

  1. 하나의 데이터 단위, 즉 "워드"가 램이나 보조기억장치에 저장될 때, 그 워드 내의 비트 순서를 나타내는 코드가 계산되어 그 데이터와 함께 저장된다.
    64 비트 길이의 워드 각각에는 이 코드를 저장하는데 필요한 여분의 7 비트가 소요된다.
  2. 데이터 단위를 읽어낼 때, 지금 읽으려고 하는 워드의 코드를 원래의 알고리즘을 이용해 다시 계산한다. 새로 생성된 코드와 그 워드가 저장될 때 생성되었던 코드를 비교한다.
  3. 만약 두 코드가 일치하면, 그 데이터에는 오류가 없다고 보고, 내보낸다.
  4. 그러나 만약 그 코드들이 일치하지 않으면, 코드 비교를 통해 잘못되었거나 빠진 비트들을 결정한 뒤, 그 비트를 정정한다.
  5. 그 데이터가 아직 저장 장치 내에 있을 때에는 정정을 위한 시도가 일어나지 않는다. 결국, 그것은 새로운 데이터에 의해 덮어씌워질 것이며,
    그 오류들은 일시적이라는 가정 하에 부정확한 비트들은 버려진다.
  6. 시스템이 꺼졌다 켜졌다를 계속해서 반복한 후, 같은 저장장소에서 반복되는 어떤 오류는 영구적인 하드웨어 에러를 의미하므로,
    반복적인 에러가 나는 위치를 나타내는 메시지가 로그에 기록되거나 시스템 관리자에게 보내어진다.





Parity 란?


  • data가 저장장치 내의 한 장소에서 다른 장소로 이동되거나 device간에 전송될 때, 데이터가 유실 또는 손상되었는지 여부를 점검하는 기술과 관련된 용어
  • PCI 버스와 I/O 버스 컨트롤러는 에러 체크를 위해 홀수 패리티 방법을 사용한다. 
  • 패리티 비트의 점검이 절대적으로 확실한 에러점검방법은 아닌데 그 이유는 전송 중 두 비트가(Double Bit)가 동시에 에러 나는 경우 잡아낼 수 없기 때문이다.
    그러나 Device 내에서의 전송에서는 이러한 가능성이 극히 적다고 간주된다.
  • 데이터의 무결성이 지극히 중요한 대형 Device에서는 패리티 체크를 위해 세 비트가 할당된다.


점검원리

  • 패리티 비트는 비트열 내에 추가되어 함께 이동한다. 이 비트는 오직 전송된 비트들이 성공적으로 도착하였는지를 식별하는 목적으로만 사용된다.
  • 비트들이 보내지기 전에 계산을 해서 만약 전체 데이터 비트의 합이 짝수이면 패리티 비트를 1로 설정함으로써 전송되는 모든 비트의 합계가 홀수가 되도록한다.
  • 만약 데이터 비트 값의 합이 이미 홀수라면, 패리티 비트는 0으로 설정된다.
  • 수신측에서는 들어오는 비트를 점검하여 전체 비트 값의 합이 홀수 인지를 확인한다. 이때 합이 짝수라면 전송중 에러가 발생하였다는 것을 의미하며
    그 데이터는 다시 전송되거나 또는 시스템을 멈추고 사용자에게 에러 메시지를 보내지는 등의 조치가 취해진다.





EDAC 란?


  • 하드웨어 에러검출 및 정정을 지원하는 Linux Kernel Module 중 하나이다.
  • PCI 버스 전송에러 및 주변 장치 에러검출도 지원
  • MCE 관련 로그는 OS의 메모리 모니터링 기술 EDAC 기능에 의해 기록되는데 이 기술은 하드웨어의 메모리 모니터링 기술보다 정밀하지 못하다.
    간혹 실제 오류가 없음에도 OS의 EDAC의 민감한 엔진에 의해 오류로 기록되는 경우가 있다.
  • 메시지 발생 시 하드웨어 정보(iLO,IML)을 통해 중복 확인하여 이상이 없는 경우 해당 메시지는 무시하거나 OS의 MCE 감지 기능을 비활성화 하는 것이 좋다.


참조



반응형

'System' 카테고리의 다른 글

HP-UX IP 설정 변경  (0) 2018.08.14
Solaris 네트워크 설정 (고정 IP)  (0) 2018.08.14
Semaphore(세마포어) & Mutex(뮤텍스)  (0) 2018.08.08
System Chunk 개념  (0) 2018.08.08
System 프로세스와 쓰레드 차이  (0) 2018.08.08
728x90
반응형

  • Chunk란 하나의 영역을 뜻함
  • percpu 영역은 chunk단위로 관리되며 각 chunk는 하나의 cpu마다 부여된 unit으로 이루어진다.
  • 동적 메모리로 할당되는 영역(chunk)은 내부적으로 해당 chunk에 대한 metadata를 저장하기 위한 공간을 포함하는데 여기서 가장 중요한 정보는 해당 chunk의 크기이다. 
  • disk 또는 raid에서 말하는 stripe size (chunk size)는 각 stripe를 disk에 분배하는 것이다.
    예를 들어 32k stripe size를 갖는 raid가 있다면 각 disk는 연속된 데이터 공간을 사용하고 한 공간의 다음 데이터는 다른 disk에 저장된다. 이에 반해 파일시스템의 block size는 더 상위의 개념으로 파일 시스템에 의존적인 것이다. 64k block size라고 가정한다면 파일 시스템에서는 한 block을 읽거나 쓰기 위해 raid 컨트롤러에 요청을 하고 raid 컨트롤러에서는 stripe size 만큼 각 디스크에서 chunk를 읽어들여서 파일 시스템에 올려주거나 쓰게 된다. 결과적으로 파일시스템의 block size가 raid의 stripe size 와 다르다면 단일 읽기 동작임에도 불구하고 raid 컨트롤러는 여러 디스크에서 데이터를 읽어 들이게 된다. 


반응형

'System' 카테고리의 다른 글

HP-UX IP 설정 변경  (0) 2018.08.14
Solaris 네트워크 설정 (고정 IP)  (0) 2018.08.14
Semaphore(세마포어) & Mutex(뮤텍스)  (0) 2018.08.08
ECC, EDAC, Parity (Memory관련)  (0) 2018.08.08
System 프로세스와 쓰레드 차이  (0) 2018.08.08

+ Recent posts