xenのDomain0をアップデートしたら、DomainUの時計が狂うようになってしまった

Domain0 をアップデートした

Domain0のサーバを、Debian8から9にアップデートしました。 そしたら、DomainUの時計が狂いました。

extra="clocksource=jiffies"の場合

Domain0のDomainU設定ファイルの中に

extra="clocksource=jiffies"

これだと、

  • /sys/devices/system/clocksource/clocksource0/current_clocksource の中身
jiffies
  • /sys/devices/system/clocksource/clocksource0/available_clocksource の中身
xen tsc refined-jiffies jiffies

この設定だと、DomainUの時計が1分で5秒ずれる。尋常ではないズレです。

extraが空の場合

  • Domain0のDomainU設定ファイルの中のextraは書きません

これだと、

  • /sys/devices/system/clocksource/clocksource0/current_clocksource の中身
xen
  • /sys/devices/system/clocksource/clocksource0/available_clocksource の中身
xen tsc

これだと時計がDomain0に同期するようになった。

結論

clocksource=jiffies を使ってはだめになったみたい。 というか、xen使っている人なんてもういないのかなぁ。。

第8〜9回プログラミング勉強会

ちょっと体調崩したりしたので、遅くなりました。 第7回は私も休んでましたので、レポートなしです。

Numeric

今回は第12章のNumericからやりました。 四則演算などは普通に使うのですが、 Rationalとかはこういう機会でもないとなかなか使わないですよね。 復習するにはいい機会でした。

あとは、ビット演算も、orとandや論理和論理積などやりました。

Numericはそんなに難しくないですね。

Array

Arrayは配列ではあるのですが、Rubyの場合はキューやスタックとしても 機能するので、便利ですね。一般的な使い方を勉強しました。

初期化には注意です。

a = Array.new(3, [0, 0, 0])
a[1][1]=2
p a
 [[0, 2, 0], [0, 2, 0], [0, 2, 0]]

これだと期待したものができませんね。 同じオブジェクトを指してしまいます。

a=Array.new(3){[0,0,0]}
a[1][1]=2
p a
[[0, 0, 0], [0, 2, 0], [0, 0, 0]]

こうしないと、期待通りに動きません。

String

文字列処理はRubyの得意分野なので、なんでもできますし、 しっかり覚えておく必要がありますね。

相変わらず、sprintfは出てくるのですが、String#%[]を使ったほうが短いです。

Arrayにも出てきましたが、Enumeratorは難しかったですね。 徐々にわかっていければと思います。

次回はHashですね。参加者募集中です。

fukushima-programming.connpass.com

金足農業高校に寄付をした

結果としては1.9億も寄付金が集まった金足農業高校ですが、 8/25の時点で困窮していたということで、 私もささやかながら寄付をしました。

ふるさと秋田の公立高校が、甲子園準優勝というのは とても名誉なことです。

とても白熱しました。ありがとう。

第6回プログラミング勉強会

福島大学がテスト期間は終わったのですが、夏休みに入ったので、 相変わらず参加者は少ないです。ですが、前回よりも学生参加者は増えました。

第9章の演算子をやりました。演算子なんて知っているよと思っていても、 ちょっとずつ新しい発見はあるもので、

オブジェクト&.メソッド呼び出し

item = ary && ary.first

をもっとあっさり、

item = ary&.first

と表現できるようになった(2.3.0以降)とか、

単項演算子

class Point
  def +@
    dup
  end
end

こんなんで、

point = Point.new(3, 6)
p +point

こんなふうに再定義するとかもやったことないから勉強になりました。

福島プログラミング勉強会 - connpass

もし、興味がある人は参加してみてください。 connpassで参加表明をして、いきなり来ていただければ結構です。

第5回プログラミング勉強会

福島大学が引き続きテスト期間中ということもあって、 参加者は少なかったです。

第8章クラスとモジュールの8.3の「クラスを拡張する」から8章の終わりまでやりました。 クラスは概念が初心者には難しいので、時間がかかりましたね。

福島プログラミング勉強会 - connpass

もし、興味がある人は参加してみてください。

第4回プログラミング勉強会

今回は福島大学がテスト期間に入ったので、 学生参加者がほとんど不参加でした。仕方ない。

第7章メソッド呼び出しからやり始め、第8章クラスとモジュールの8.2.8クラス変数までやりました。

福島プログラミング勉強会 - connpass

もし、興味がある人は参加してみてください。

第3回プログラミング勉強会

今回は、ドットインストールのRuby入門の19〜最後までやりました。 ちょっとむずかしいところに入ったので、 初心者の方はつまづく人が多かったと思います。

福島プログラミング勉強会 - connpass

もし、興味がある人は参加してみてください。