/* Do not fret, for it is merely a wonderful gcc extension. */
case 'A'...'Z':
case 'a'...'z':
case '0'...'9':
범위를 지정해서 그사이에 있는 경우까지 포함시키는 정규식??
하지만!! gcc에서만 된다는거..-_ㅡ;;
VS6.0 에서 테스트 해보니 모르는 표현이라고 뭐라 하네..
'C:'에 해당되는 글 345건
- 2009/03/06 처음 알게된 case 문 문법?
- 2009/03/03 차세대 인터넷 P2P
- 2009/02/28 Fedora GDM 자동 로그인 설정
- 2009/02/27 Fedora10 설치 가이드 링크
- 2009/02/27 Fedora Network Manger(고정IP사용)
- 2009/02/27 비스타 와 알약 간의 충돌 발생...ㅜ_ㅜ
- 2009/02/27 RTP
- 2009/02/27 배너링크
- 2009/02/26 Write in C - Let it be Cover - Piano ( C로 짜~ ㅜ_ㅜ )
- 2009/02/25 Feng 설치가이드 (3)
![]() |
2000년 책이지만 P2P 의 전반적인 이야기를 여러명이서 해주는 책으로 나름 대가들의 이야기를 들을 수 있다. ㅜ_ㅜ 어렵다.. |
위치라는 관념을 버리게 할 중요한 개념으로 도약할 시간이 다가옴. - 13
"어떻게 일반적인 개인 사용자들을 믿을 수 있지요?" - 15
인터넷은 전세계에 퍼져 있는 수백만 호스트들로 이루어진 협력 네트워크로 볼 수 있으며 공유된 자원이라 할 수 있다. - 25
네트워크를 사용할 수 있다는 의미는 대역폭을 소비 한다는 의미이다. - 25
대역폭 : 일정 시간 내에 어떤 특정한 회선을 통해 전송할 수 있는 정보의 양을 말한다.
인터넷 아키텍처에 책임성이라는 것이 부족하다. 어떤 호스트라도 다른 호스트에 연결할 수 있고, 신원을 확인할 수 없는 익명에 가까운 상태로 연결하기 때문이다. - 39
인터넷 설계의 기본 원칙은 "최대 노력(Best Effort)" 패킷 전달이다.-40
Best Effort : 인터넷이 모든 패킷을 확실히 전달할 수 있다는 보장은 없지만 패킷이 목적지에 도착하도록 최대한 노력할 것이라는 의미.
인터넷이 상업화 되면서 "공유지의 비극(tragedy of the commons)" 에 민감하다. 허용하는 대역폭 이상을 이용하는 프로토콜을 사용하여 불공평하게 많은 대역폭을 사용할 뿐만 아니라 모든 이들을 위한 공동 자원을 독점하여 인터넷에 혼란을 가져 올 수 있다. - 41
공유지는 한 무리의 사람들이 공유하는 자원(어떤 것이라도)을 일컫는다. 공유지의 비극이란 각자가 자신의 이익을 먼저 생각하기 때문에 공유하고 있는 자원이 모두 없어질 때까지 그것을 남용한다는 것이다. - 457
방화벽, 동적 IP, NAT는 인터넷 아키텍처를 확장성 있고 안전한 시스템으로 만드는데 필요하다는 요구 속에서 상장하였다. 그리고 이것들은 수백만 클라이언트 컴퓨터들을 쉽게 관리할 수 있게 해주고 인터넷에 빨리 연결할 수 있게 해주었다. 하지만 이런 기술은 대부분의 컴퓨터를 클라이언트 역할만 하는 이유로 전락시켜 인터넷의 하부 구조 자체를 약하게 만들었다. - 45
데이터 전송에 비용이 많이 드는 P2P시스템에서는 "가벼운 중앙 집중(soft centralization)"형태가 적합하다. - 49
분산화는 낮은 신뢰성, 부정확한 데이터 동기화(synchronization) 같은 문제를 유발시킨다. - 51
방화벽이 하나의 포트라도 허용되는 이상 P2P 애플리케이션들은 그 구멍을 슬그머니 지나갈 방법을 계속 찾을 것이다. - 52
P2P 네트워킹을 어렵게 만드는 요인들 - 52
방화벽은 호스트들간의 접속을 어렵게 함. - 방화벽을 더 영리하게 만들어서 P2P 애플리케이션이 방화벽과 협력하여 관리자가 원하는 패킷을 허용할 수 있게 해야 한다.
동적 IP와 NAT는 호스트들 간의 접속을 거의 불가능하게 함. - IPv6 128비트 주소 체계를 사용하여 모든 호스트들이 영구적인 주소를 가지도록 한다.
초고속 인터넷의 비대칭 대역폭은 P2P 시스템에서 공유 파일을 효율적으로 제공하기 어렵게 함. - 데이터 캐싱과 대역폭 관리를 할 수 있도록 한다.
P2P인지 아닌지 확인할 기준 - 60
일시적인 네트워크 주소와 다양한 연결을 지원할 수 있는가?
네트워크의 가장자리에 있는 노드의 자율권을 확실하게 보장해줄 수 있는가?
서비스를 제공하는 측의 하드웨어를 누가 소유하고 있는가?
3. P2P 밈의 재건
밈(meme) - 마음에서 전해져 스스로 퍼지고 재생성하는 아이디어. - 88
새로운 P2P 밈 지도 - 100
메타데이터 관리 : 어드레싱과 라우팅 관리, 발견과 검색 서비스, 네임스페이스 마케팅이나 현존하는 것의 효력
"가장자리 서비스"를 통해 인터넷 자원의 활용을 극대화.
IT 병목 현상의 해결책
참여는 가능한 한 능동에 가까워야 하며 피어는 언제든 네트워크에서 빠져나갈 수 있다.
메타데이터는 사용자들이 검색하는 가수 이름과 곡 이름의 조합을 의미한다. 그리고 중앙서버에서 관리하는 이름, 사용자들의 IP 주소, 음악 파일 크기, 사용자의 연결 속도과 같은 부가적인 데이터. - 105
메타데이터는 데이터에 관한 데이터(data about data)인 것이다. - 337
고유 식별자(unique identification)은 메타데이터에서 매우 중요한 기술이다. - 346
하나의 일관성 있는 메타데이터 프레임워크를 사용하고 네트워크에 노출되어 있는 모든 메타데이를 최대한 활용할 수 있는 검색방법을 설계 - 352
키 - 232
모든 문서는 키로 인덱스 된다. 개개의 노드들은 본래부터 신뢰 받지 않기 때문에 노드들이 허위 문서를 반환하지 못하게 해야 한다. 만일 그렇게 하지 않으면 허위 문서들이 캐시에 저장될 것이고 허위 데이터들이 암세포처럼 퍼질 것이다. 키의 주요 임무는 이런 허위 문서들을 예방하는 것이다.
내용 해시 키(CHK, content hash key)는 데이터 해시를 통해 형성된다.
중앙 통제 시스템에서는 중앙 서버를 통해 피어간 협조가 이뤄지며, 모든 협조는 통제를 받는다. 나중에는 중앙 서버에서 받은 정보로 피어끼리 직접 연결한다. - 357
계층 시스템은 통제 권한을 전부 또는 어느 정도 중앙에서 트리의 하위 통제자에게 위임한다. 피어는 그룹 계층에 속하게 되고, 같은 그룹에 있는 피어들 사이에서 이루어지는 통신은 그 그룹을 통제하는 통제자가 중재한다. 그리고 다른 그룹과 통신하려면 상위 통제자를 통과해야 한다.( DNS )
완전히 분산화된 P2P 시스템에는 통제라는 것이 전혀 없다. 모든 통신은 로컬 단계에서 실행되며 전적으로 피어들에 의해 이루어진다. 이런 시스템은 대개 다른 피어를 대신하여 메시지를 전달하는 어떤 전달 장치를 수반한다.
캐싱을 사용하여 특정 데이터가 빈번하게 요청된다면 그 데이터를 요청자 근처에 저장한다. 웹 브라우저도 최근에 방문한 페이지를 캐시에 저장한다.
이 글은 스프링노트에서 작성되었습니다.
Fedora Core 9 에 있는 GDM 2.22 버전 설정내용
# GDM configuration storage
[daemon]
TimedLoginEnable=true
TimedLogin=사용자 계정명
TimedLoginDelay=0
[xdmcp]
[chooser]
[security]
[debug]
참고링크 : http://dnmouse.webs.com/autologin.html
- Upgrading from Fedora 7/8/9
- Configuring sudo
- Configuring yum
- Configuring Services
- Installing video drivers
- Installing Microsoft fonts
- Configuring Nautilus
- Configuring Firefox
- Configuring e-mail client
- MP3 and Audio players
- DVD & Video
- IRC Clients
- MSN Messenger Clients
- Author, Burn and BackUp CD/DVDs
- Download managers
- PDF Readers
- Torrent Clients
- Other Useful Applications
- Accessing Windows Partitions
- Accessing Windows Shares
- Compiz-fusion
- KDE
- JAVA
- Plymouth Graphical Boot
/etc/init.d/NetworkManager stop
ntsysv
(NetworkManager 해지, network 체크)
system-config-network-tui
(고정아이피및, DNS추가)
(network 사용 체크, 사용하고자 하는 고정IP 체크)
service network restart
init 6
cmd #2
ping sendto: Network is unreachable 이 발생했을 때 이런 방법으로 해결..
Edit /etc/sysconfig/network-scr
DEVICE=eth0
IPADDR=*insert IP address here"
NETMASK=*insert netmask here*
NETWORK=*insert network address here*
BROADCAST=*insert broadcast address here*
GATEWAY=_insert gateway address here*
ONBOOT="yes" = interface will be active at boot time.
"no" = interface will NOT be active at boot time.
.If you have X-Windows set up, you can also use RH's "Network Configurator" (/usr/bin/netcfg) which actually writes to these files.
Additionally, after editing the file, do a "ifup eth0" to activate it and ifdown eth0 to deactivate it.
NetworkManager #1
NetworkManager provides automatic network detection and configuration for the system. Once enabled, the NetworkManager service also monitors the network interfaces, and may automatically switch to the best connection at any given time. Applications that include NetworkManager support may automatically switch between on-line and off-line modes when the system gains or loses network connectivity.
These facilities are most useful for modern laptops, where the user may move between wireless networks, and plug in to a variety of wired networks, but NetworkManager also provides features that are relevant to workstations. Current versions of NetworkManager support modem connections, and certain types of VPN. Development of these features is ongoing.
NetworkManager requires Fedora to have drivers for the wired and wireless interfaces on the computer. Many manufacturers of modems and wireless devices provide limited support for Linux. You may need to install additional drivers or firmware on your Fedora system in order to activate these interfaces.
Enabling NetworkManager on Fedora
Command line way
The installation process for Fedora automatically provides NetworkManager. To enable it, enter the following commands in a terminal window:
1. Set the main service to automatically start on boot: su -c '/sbin/chkconfig --level 345 NetworkManager on'
1. Start the service: su -c '/sbin/service NetworkManager start
For each su
command, enter the root password at the prompt.
Graphical Way
Start the system-config-services
program, enter your root password and activate the NetworkManager
service for runlevel 5.
Gnome-specific information
The NetworkManager tray icon automatically appears on your desktop once the services are started. If the NetworkManager service is active, then the tray icon appears each time that you log in to your desktop.
NetworkManager also stores any encryption keys in the gnome-keyring manager. If your are prompted to enter the keyring password after login, then keep reading. If your login password & the keyring password are the same, then there is a tool built to open the keyring for you on login. The package is called pam_keyring. To configure your system first install pam_keyring with yum:
su -c 'yum -y install pam_keyring'
Second you'll need to modify your /etc/pam.d/gdm file.
su -c 'gedit /etc/pam.d/gdm'
Add the following lines
auth optional pam_keyring.so try_first_pass
session optional pam_keyring.so
The order in which this lines are placed in this file are important, here is a copy from a working system
#%PAM-1.0
auth required pam_env.so
auth optional pam_keyring.so try_first_pass <---
auth include system-auth
account required pam_nologin.so
account include system-auth
password include system-auth
session optional pam_keyinit.so force revoke
session include system-auth
session required pam_loginuid.so
session optional pam_console.so
session optional pam_keyring.so <---
Now reboot your computer. After login the keyring will be unlocked for you. If your keyring password is different from your login password, don't worry, there is a tool available to change it.
su -c 'yum -y install gnome-keyring-manager gnome-keyring pam_keyring
Once you have installed pam_keyring and gnome-keyring, you will need to log out and back on. Then you can run
/usr/libexec/pam-keyring-tool -c
to change the default password. Alternatively you can now change a password through gnome-keyring-manager. Download and install gnome-keyring-manager. Then highlight the keyring and select Change Keyring Password from the Keyring menu of gnome-keyring-manager.
KDE specific information
To control NetworkManager by a system tray applet you need to install and start the program knetworkmanager
of the same named package. The keys to the different networks are stored automatically in KDE's password storage system kwalletmanager.
Further Information
- Red Hat Magazine article on NetworkManager : Good summary of the technology
- The NetworkManager Website
- The NetworkManager mailing list
- Local Caching Nameserver
설마 소프트웨어 문제인가 싶어 안전모드로 접속했더니 멀쩡하다 해서 의심되는 소프트웨어 몇개를 간추려 보았다.
커널쪽에 접근하는거 중에 내심 불안한 보안툴!! 알약을 지웠더니 정상부팅이 되었는데....
결국 이스트소프트 - 알약 홈페이지에 공지가 나오는구나 ㅜ_ㅜ... 시댕... 잘좀해요!! 다시 깔아야 하나.. 신용도 하락중..그래도 써야지-_-...
[긴급공지] 일부 비스타 PC의 재부팅 현상 복구 방법
1. RTP & RTSP connection
2. RTP
-
실시간 Application 을 위한 종단 간 네트워크 전송 기능 제공.
-
실시간 세션에 관한 정보가 포함되어 있으므로 Application은 지터 잘못된 패킷 순서 및 삭제된 패킷을 쉽게 조정 가능.
-
자원예약이 없으므로 서비스 품질 보장 없음.
-
맞춤형 프로토콜 - 헤더를 Application 에 따라 변경가능하다.
-
UDP/IP 로 패킷을 전송한다. Payload 부분에 멀티미디어 데이터가 포함된다.
3. RTCP
-
RTP 와 결합하여 작동하는 제어 프로토콜로써 동작한다.
-
데이터 품질에 대한 피드백과 맴버쉽정보를 전달한다..
-
패킷손실률, 지터, 라운드트립 지연등.
-
이를 바탕으로 흐름제어, 에러제어등을 수행할 수 있다.
4. RTSP
-
미디어 플레이어가 매체 스트림의 전송을 제어 할 수 있는 프로토콜.
-
실시간 멀티미디어 데이터 저송제어로써 HTTP 의 확장.
-
실제 데이터를 전송하지는 않는다.
-
네트워크 원격제어 역할을 수행한다.
-
UDP나 TCP 상으로 전송될 수 있다.
5. RTSP 흐름도
이 글은 스프링노트에서 작성되었습니다.
갑자기 피아노가 배우고 싶어진다... ㅜ_ㅜ 렛잇비보다 감동이라니...
내 코드에서 문제가 몇톤이나 될때 친구 그리고 동료가 내게와 "C로 짜"
내 코드에 수 많은 문제가 있다는걸 발견했을때 친구와 동료들은 내게 와서 격언을 말하지... "C로 짜"
그리고 마감시간에 쫒기고 눈에 보이는게 다 버그일 때 어디선가 누군가 속삭이는 소리.. "C로 짜"
C로 짜 C로 짜 C로 짜 오~ C로 짜 LOGO는 죽었고 까칠해 "C로 짜 "
난 과학분야에서 포트란을 많이 써왔고 완벽하게 동작했지. 그래픽스에도 써봐. "C로 짜"
만약 네가 어셈 코드를 디버깅하는데 30시간을 써봐. C로 짜는거에 감사하게 될꺼야.
C로 짜 C로 짜 C로 짜 오~ C로 짜 BASIC은 답이 아니야 "C로 짜"
C로 짜 C로 짜 C로 짜 오~ C로 짜 PASCAL로 깔끔한 해결이 안 될꺼야 "C로 짜"
// 대략 정리 한거...make 도중 에러가 나면 configure 에서 버젼을 낮춰주거나 소스를 살짝 고치는 수고(매개변수,NULL->0)도 해야함 ..Fedora에선 잘안됨.CentOS가 잘됨..
// git 나 wget 으로 소스 못 받아오는건 직접 홈페이지에서 받자.
feng source 설치
yum install theor*
yum install git*
yum install faad* // 못찾으면 다른 패키지에서 얻어오기..
yum install faac* //못찾으면 다른 패키지에서 얻어오기..
cd /usr/src 폴더로 이동
wget http://downloads.sourceforge.net/lame/lame-398-2.tar.gz?modtime=1222116320&big_mirror=0
압축풀고 -> ./configure -> make -> make install
yum install yasm
cd /usr/src 폴더로 이동
git clone git://git.videolan.org/x264.git
./configure --disable-asm
make
make install
cd /usr/src 폴더로 이동
wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.2.tar.bz2
wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.3.tar.bz2
둘다 압축 풀고 ./configure -> make -> make install
cp /usr/local/lib/libamrwb.so.3.0.0 /usr/lib
ln -s /usr/lib/libamrwb.so.3.0.0 /usr/lib/libamrwb.so.3
cd /usr/src 폴더로 이동
svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
./configure --prefix=/usr --enable-static --enable-shared --enable-gpl --enable-postproc --enable-swscale --enable-pthreads --enable-libamr-nb --enable-libamr-wb --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libx264 --disable-ffserver --disable-ffplay --disable-debug --disable-network --enable-nonfree --enable-avfilter --enable-avfilter-lavf --disable-devices --disable-vhook
make
make install
-- how to install autoconf for feng library --
<< autoconf 버전 낮을 시 버전업그레이드 필요 >>
wget ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.63.tar.gz
-> download latest version
./configure -> make -> make install
-- for Client --
yum install lksctp*
yum install bison-devel
yum install mysql mysql-server mysql-devel
---- feng ---
http://www.lscube.org/ 에서 feng 과 종속라이브러리 들을 다운로드한 후 압축을 푼다.
Dependencies
- glib version 2
- ffmpeg from svn.
- netembryo
- bufferpool
cd bufferpool
/usr/local/bin/autoreconf -v -i
configure
make
make install
cd netembryo
/usr/local/bin/autoreconf -v -i
configure
make make install
cd libnemesi
/usr/local/bin/autoreconf -v -i
configure
make make install
feng을 다운받고
압축 풀고 ./configure -> vim mediathread/demuxer/demuxer_avf.c
demuxer_avf.c line 210번째 줄
props.bit_per_sample = codec->bits_per_sample;
--> props.bit_per_sample = codec->bits_per_coded_sample; 교체
실행시 feng: error while loading shared libraries: /usr/lib/libavformat.so.52: cannot restore segment prot after reloc: Permission denied
이런 종류 에러가 뜨면 chcon -t texrel_shlib_t /usr/lib/libavformat.so.52 이걸로 해결
이 글은 스프링노트에서 작성되었습니다.