Mac bookにログインできなくなった

OS X 10.9.4 でフリーズ後再起動するとログイン出来なくなった。ユーザー選択して、パスワード入力画面まではいけるのだがパスワード入力後、虹色のぐるぐるが延々終わらずにフリーズしている模様。セーフモード起動試してみるも同じ。ディスクユーティリテ…

apacheでhttps通信をできるようにする

https通信を行うようにするには電子証明書が必要となる。電子証明書を作成するには証明書署名要求 (CSR: certificate signing request)を作成し、公開鍵証明書認証局(CA:Certificate Authority)にて署名した証明書を発行してもらわなければならない。今回は…

問題C. ビット数

本番中はlarge解けなかった。考え直したら解けたっぽいのでメモ書き残す。 aとbを二進数表記したときのビットをそれぞれAn, Bnと表し、それぞれの 桁のCarryをCnと表す。Nを二進数表記したものをNnと表す。 このときan+bn+Cn=NnをAnとBnがなるべく多く立って…

この一年間で読んでよかったと思った本

年度明けたし、昨年度読んでよかった本をまとめてみる。 Unixのシステムコールの使い方や仕組みを丁寧にわかりやすく解説した本。文章がとてもわかりやすく理解しやすい。記述が古い部分があったり、pthreadは載ってない。その辺気になる人は原著のほうを読…

ぼっちリーディング(1)

カーネル読んでみたいなーと思ったので読んでみる。対象は手元に転がっていたFreeBSD。 $uname -a FreeBSD foo.localdomain 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:48:17 UTC 2009 root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC …

組み込みOS自作入門勉強会(4)

この日は3章を読んだ。メインはROMとRAMの違いとメモリ上の領域の話かな。 ROMとRAM ROMは読み込み専用でプログラム側からは書き込みできないけど、電源OFFしても内容が残る。RAMはプログラム側から値を読み書きできるが、電源OFFすると値は消える。ROMは種…

組み込みOS自作入門勉強会(3)

今日は2章を読んだ。制御を行うICチップをコントローラと呼ぶ。コントローラの制御はレジスタ経由で行う。たとえば、シリアルコントローラならばコントローラの持つ特定のレジスタに1byte書き込むと、コントローラ側でその1byteをシリアル通信してくれるなど…

組み込みOS自作入門勉強会(2)

一章の続き。はじめてリンカスクリプトを書くなどした。書き込むときは、ディップスイッチをON,ON,OFF,ONにする。端末エミュレーターはminicomを使用した。人に聞くとscreenでも接続できるらしい。今度やってみよう。んで、ようやくhello worldが出せた!写…

組み込みOS自作入門勉強会(1)

Sakai Hiroaki's Home Pageを読み始めた。読書メモを残していく。まずは1stステップ。このステップのメインはクロスコンパイラ環境の構築である。当初、MacOSXでやろうとしたもののgccのコンパイルがうまくいかずに断念。そのため環境は Ubuntu10.04 on VMwa…

SRM 471 EllyPlaylists

class EllysPlaylists { public: int countPlaylists(vector <string> songs, int K) { int ret = 0; vector<string>::iterator it = songs.begin(); while( it != songs.end() ){ ret += seq( *it, K, 1, songs ); it++; } return ret; } int seq(string song, int K, int n</string></string>…

SRM 471 PrimeContainers

#include <set> #include <iostream> #include <string> #include <vector> #include <sstream> using namespace std; class PrimeContainers { public: int containerSize(int N) { int ret = 0; int i = 1; set<int> s; while(i){ if(i > N) break; s.insert( ( N / i ) ); i = i << 1; } set<int>::iterator </int></int></sstream></vector></string></iostream></set>…

SRM470 LinearTravellingSalesman

class LinearTravellingSalesman { public: int findMinimumDistance(vector <int> x, vector <int> y) { int ret = 0; vector< pair<int, int> > pos; for(int i = 0; i < x.size(); i++) pos.push_back( make_pair( x[i], y[i] ) ); sort( pos.begin(), pos.end() ); for(int i</int,></int></int>…

第4回kernel/vm勉強会に参加してみた

面白そうだったので参加してみた.発表者のPlan9率の高さにあの会場にいるとPlan9がメジャーなOSに見える.あとはBSDとUbuntuくらいだったかな.会場でYUREXが大人気だった.500円だったし,一つくらい買ってもよかったかも.発表は全体的に興味深くて面白か…

SRM469 TheMoviesLevelOneDivTwo

連続した2席があるかを見ていくだけ. #include <iostream> #include <vector> using namespace std; class TheMoviesLevelOneDivTwo { public: int find(int n, int m, vector <int> row, vector <int> seat) { int ret = 0; int s[n][m]; for(int i = 0; i < n; i++) for(int j = 0; j </int></int></vector></iostream>…

boostをインストールした

# cd /usr/ports/devel/boost-all # make install cleanこれで導入は完了./usr/local/include/boost にヘッダファイル,/usr/local/lib にライブラリファイルができるはず.boostの中にはヘッダファイルのみでコンパイルできるものと,ライブラリをリンクさ…

boost::asioを使ってtwitter api にbasic認証する.

basic認証して,home_timelineを取得する例を示す.今回はjson形式を取得した.picojsonはjsonをデコードするために使用した.XML形式や,RSS形式でやる場合はpicojsonは必要ない.twitter apiが扱う文字コードはUTF-8であることに注意.またtwitter apiはba…

SRM468 RoadOrFlightEasy

はじめて臨んだTopCoder.以下のような強引なやり方は思いついたもののC++での書き方がわからず時間内にsubmitできず.行っているのは,差分のvectorをつくって,差分を降順ソート.roadTimeの合計-(差分の先頭からK個分の和).ただし,差分の値が0以下ならr…

参考

23.5. Updating FreeBSD from Source http://www.xdelta.net/wiki/FreeBSD/makeworld.html 8.0 RELEASE インストール - 気の向くままに ~備忘録@wiki~ - アットウィキ mergemasterは-sivaでなく-UPiで。 - 春木屋

7.0から8.0へ

面倒くさがって上げてなかったFreeBSD7.0をFreeBSD8.0へあげた.そのときの作業メモを残す.csupを使ってソースを入手するのだけれど,なるべく早いサーバーを調べたい.そのためには,fastest_cvsupを使う. # cd /usr/ports/sysutils/fastest_cvsup && mak…

Software Design総集編を買った

付属のindex.htmlから閲覧用のflashを呼び出して使う形なんだけど,このflashが使いにくい.なので,libs/backnumber.xmlを利用してHTMLを生成するRubyスクリプトを書いた.Ruby初めて使ったのでRubyっぽくないコードだと思う,たぶん.HTML生成部分とロジッ…

Xorg7.4にしたらマウスやキーボードが動かなくて困った

xorg.confの修正は以下. Section "ServerLayout" に Option "AllowEmptyInput" "off" 追加. Section "ServerFlags" Option "AutoAddDevices" "False" EndSection RgbPath "/usr/local/share/X11/rgb" はコメントアウトx11-drivers/xf86-input-keyboard な…

Xdebugを使う

phpのデバッグにXdebugを使うようにした.環境はFreeBSD7.0-RELEASE.以下導入メモ.Xdebugをportsからインストール. # cd /usr/ports/devel/php-xdebug # make install ***************************************************************************** The…

PHPXrefを使う

PHP

PHPのソースからドキュメントを生成してくれるPerlスクリプトでPHPXref - The PHP Cross Referencing Documentation Utilityというものがある.ソース表示するとJavaScriptなんかで関係のあるものを表示してくれたりして,ソース追っかけるときに便利なので…

FreeBSD7でfuse-sshfsを使う

sshでアクセスできるホストのディレクトリをローカルホストのディレクトリにマウントするsshfsを導入してみた.そのときのインストールメモ.環境は,FreeBSD7-Release. portsからインストール. # cd /usr/ports/sysutils/fusefs-sshfs # make installfuse…

非root環境下でSubversionをインストールする

root権を持っていないサーバー環境下でSubversionを使用したい状況になり,インストールしたのでその時の作業メモ.インストールディレクトリは,$HOME/local/以下とする.まず,インストールおよび作業用ディレクトリを作成する. $mkdir -p $HOME/local/sr…

PDOでPostgresに接続する.

# cd /usr/ports/lang/php5 # make install # cd /usr/ports/lang/php5-extensions # make config // PDO に印をつけておく. # make installこの段階で,PDOは使えるようになる.しかし,postgres用のドライバーはインストールされていないので,postgresへ…

256色でmlterm+Vim+Screenを使う.

環境は,FreeBSD7.0-RELEASE. mltermの256色化 mltermは2.9.4現在,256色には対応していない.mltermを256色化するPatchは,http://d.hatena.ne.jp/shinichiro_h/20080313#1205334463にて配布されている.まずpatchをあてる. # cd /usr/ports/x11/mlterm #…

gnulsのcolor設定をする.

FreeBSDでは,lsのカラー表示を行う方法は何通りかある*1.私は,gnulsを使用しているが,Terminalの背景を黒にしているため,見にくい色がある.色を変更するためには,dircolorsを使う.まず,色ファイルの雛形を生成する. $dircolors -p > $HOME/dir_col…

tgifで日本語を入力できるようにする

以下の内容を /usr/local/share/X11/app-defaults/Tgif か,~/.Xresources に記述してX再起動か Xリソースを更新する. Tgif.InitialFont: Ryumin Tgif.DoubleByteInputMethod: xim Tgif.SquareDoubleByteFonts: \n\ -misc-fixed-medium-r-*--%d-*-*-*-*-*-j…

X環境を構築する

FreeBSD-7.0 Release でX環境を構築することになったので作業メモを残す. portsからでもいいけど時間がかかるので,パッケージからxorgをインストール. # pkg_add -r xorgX用の設定ファイルを作成する. # Xorg -configure作成した設定でうまく動作するか…