2015/08/27

低レイヤな就活記 16卒版

僕自身の今年の一大イベントといえば、今年で大学の博士前期課程(修士)を卒業するので、どうしても避けられない就活というイベントがありました。

過去形で示している辺りから察して欲しいのですが、まあ戦いは終わって、行く先も決まって、ひとまずはそれ以外のことに集中できる環境にあります。

僕の行く先なんて気になる人はいないと思うのですが、同じ過ちを繰り返して同じような事になる人を増やさないためにも、体験談を書いておきたいと思います。

ただし、個人の見解を多分に含んでいます、これを参考にしても、僕は何も保証しません。

2015/06/28

セキュリティ・キャンプ 2015 応募用紙 選択問題5 のまとめ


みなさん、セキュリティ・キャンプ 2015応募しましたか?

え?年齢制限に達してて応募できない?なんて人も、今年の応募用紙は結構興味があるのではないでしょうか。
http://www.ipa.go.jp/jinzai/camp/2015/zenkoku2015_sheet.html

ところで、僕も今年はセキュリティ・キャンプの講師をやらせて頂くことになったので、実は応募用紙の問題に少し関わっていたりしました。

セキュリティキャンプでは、自作 CPU の開発と、その開発環境 (コンパイラ、アセンブラ) の移植開発に関する講義をやらせて頂きます。
全部話していると時間が足りないので、基本的なところを凝縮して限られた時間の中で伝えることが出来るような講義と開発時間にしようと思っています。

選択問題5はみんな解いてくれましたか?
まあ見たらなんとなくわかるかも知れませんが、これは僕が作問しました。

他の手を動かす系の問題から比べるとかなり簡単だった?と思いますが、解いてくれた人も結構多くて興味深く見させて頂きました。
初めてバイナリやアセンブラに触れた人もいたみたいで、それでこの問題を解いてくれるのかと、驚きでした。ぜひこれからも続けてバイナリ読めるようになって下さい!

ところで、問題の意味や答えが知りたい方もいると思いますし、自由記述の任意選択問題は面白い回答も結構あったので、少し個人的に問題の振り返りを書いてみたいと思います。

ちなみに、完全に正しい答えというのはありませんし、少なくとも僕は皆さんの応募用紙を問題が合っているか合っていないかだけでは評価していませんので、間違っていても安心して下さいね。

なんだかんだで、めちゃくちゃ長いです。
書いている途中で、ちょっとだけ書き始めたことに後悔しました。

もし問題を全部解いてくれたけど、全部見るの大変だ!!という方は、最後の設問5のフィードバックだけ目を通してみて下さい!!

2015/06/11

Nexus 5 の Wi-Fi が ON にならない現象 (未解決)



僕は、スマートフォンはずっと Android を使っていて、Nexus One を2010年の3月にシンガポール旅行のついでに購入して以来、Nexus シリーズを使い続け、Nexus 5 も発売直後に買って愛用しているのですが...

ある日突然 Nexus 5 の Wi-Fi が使えなくなってしまった。

上記の画像のような状態で、Wi-Fi を ON にしています... な状態でスタックしてしまっています。

Bluetooth も同様に使えなくなってしまっていて、こちらは ON にしても、すぐに勝手に OFF になってしまう状況です。

症状としてはまさにここに乗っている状態な感じ。結構報告があることからして、マイナーな症状ではなさそうですね。
[Q]Wifi stuck on 'turning on' | Google Nexus 5 | XDA Forums

たぶん、Wi-Fi と Bluetooth が同じチップに乗っていて、そのチップが死んだのだかハンダクラックかなんかでおかしくなっているのかわかりませんが、そういう感じな気がします。

ちなみに、dmesg もみてみました。

<6>[    1.434253] bcm_wifi_set_power: wifi power successed to pull up
<4>[    1.634505] wifi_set_carddetect = 1
<6>[    1.634547] wcf_status: wifi_detect = 1
<6>[    1.634619] mmc0: Slot status change detected (0 -> 1)
<6>[    1.635259] platform fe12f000.slim: Driver ngd_msm_ctrl requests probe deferral
<6>[    2.306387] msm-dwc3 msm_dwc3: DWC3 in low power mode
<4>[    3.634506] 
<4>[    3.634508] failed to power up wifi chip, retry again (4 left) **
<4>[    3.634510] 
<4>[    3.634684] ## wifi_remove
<4>[    3.634724] wifi_set_power = 0
<6>[    3.734831] bcm_wifi_set_power: wifi power successed to pull down
<4>[    3.734873] wifi_set_carddetect = 0
<6>[    3.734912] wcf_status: wifi_detect = 0
<6>[    3.734983] mmc0: Slot status change detected (1 -> 0)
<4>[    3.735470] wifi_set_power = 1
<6>[    3.885567] bcm_wifi_set_power: wifi power successed to pull up
<4>[    4.094520] wifi_set_carddetect = 1
<6>[    4.094564] wcf_status: wifi_detect = 1
<6>[    4.094637] mmc0: Slot status change detected (0 -> 1)
<6>[    4.095258] platform fe12f000.slim: Driver ngd_msm_ctrl requests probe deferral
<4>[    6.094519] 
<4>[    6.094520] failed to power up wifi chip, retry again (3 left) **
<4>[    6.094522] 
<4>[    6.094692] ## wifi_remove
<6>[    6.194770] bcm_wifi_set_power: wifi power successed to pull down
<6>[    6.194812] wcf_status: wifi_detect = 0

こんな感じのが続いていて、Wi-Fi チップの電源 ON に失敗しているようです。

リセットをかけたり、ファームウェアをいろいろ書き込んでみたり、分解してみたり、いろいろ手を売ってみましたが、全くダメそうです。

諦めて、最近は Xperia Z1f を使ってます。解決策ないかな...

2015/03/31

個人的 2014 年度まとめ

こんにちは。2014 年度も今日で終わりですね。
明日は、楽しい一日になりそうです。

ということで、今年度を少し振り返ってみました。
まあ、主に 僕の Facebook を眺めて上からまとめただけなんですが...

4月
  • 筑波大学大学院へ入学した。研究室は変わらずここ
  • 国際会議のポスター発表をした。場所は国内。
    (口頭発表は査読落ちた、ポスター通算2本目)
5月

6月
8月
9月
10月
11月
  • ISUCON 4 本戦に学生枠で出場した。(予選はいろいろあったが...) 
12月
  • ワークショップでポスター発表をした。アカデミックなイベントが楽しいという実感があった。(日本語) 
  • SECCON 2014 のオンライン予選に参加したが、海外ガチ勢だらけで歯が立たなかった。3年連続の全国出場という訳には行かなかった。
  • このあたりからぼちぼち就活っぽいものが始まった。
  • インフルエンザにかかって年末年始が終了のお知らせ。
2月
3月
  • 就活が本格的に始まった。しかし...
  • 国際会議の口頭発表の論文を投稿した。(通算2本目、査読待ち)
  • 同期で大学に入学した人々が、大学院を卒業していなくなってしまった。

とまあこんな感じで一年が終わってしまいました。
なんかだらけてしまって、あまり研究の進捗もなく、個人的な開発案件の進捗もなく...

来年度は7年間の大学 + 大学院学生生活が多分最後なので、進捗を生み出したい。
すでに、楽しそうな予定やお誘いが入っているので、頑張りたい。

2015/02/16

セキュリティキャンプフォーラム 2015 でローレイヤーな話をした


セキュリティキャンプフォーラム 2015 に行ってきました。

セキュリティ・プログラミングキャンプ界隈は、最近老害かなと思いつつ参加を自粛していたのだが、久しぶりに発表のお誘いをもらったので参加してきた。

今年のキャンプフォーラムは2部構成で、後半のテクニカルセッションのうち愛甲先生が主催のローレイヤー勉強会で発表する機会を頂いた。

話す内容は、ローレイヤーな話だったら何でも良いということなので、最近自分がやっている研究の OS の話でも良いのだが、せっかく若い人が大量にいるのでローレイヤーの層を厚くする活動をしようと思い、Open Design Computer Project に絡めてこちら側に引き込む系の話をした。


時間がなかなか足りなくて、話したいことをちゃんと伝えられたかどうかはわからない。
ちなみに、これに興味を持ったならぜひこちらのスライドも読んでみて欲しい。

そろそろ、自作 CPU 関連のネタは賞味期限も尽きてきた感があるし、どうしても万人受けする内容を作るとすごい薄い話になってしまうのが辛い。発表が下手くそなだけなのだが。

久しぶりにいろいろな人に会えて、とても良かった。研究もなかなか停滞していて、クズっている場合ではない。

今年は、SECCON も最後のオンライン予選一発にかけていたのだが撃沈して本戦出れなかったし、学生最後の年なのでやれること存分をやっていきたい。