CS140: Operating Systems This is the home page for CS140 in Autumn 2007. If you need help, please use the class newsgroup (preferred) or email the staff mailing list rather than individual TAs or the instructor. (This helps ensure you get timely and consistent responses from us.) Friday sections will be held periodically, as announced in class, mostly to coincide with programming assignments. Loca
自作 OS Advent Calendar 2017 11 日目の記事です(盛大に遅刻しました). 1 日目の記事 に引き続き,OS を書く際に便利な C++ の機能を紹介していきます. C++ の機能 5 選 後編では,C++ の機能の中でも C++11 以降に導入された,比較的新しい機能を紹介します. 紹介するのは次の 5 つの機能です. uintN_t auto 範囲 for 文 ラムダ式 alignas uintN_t OS,特にデバイスドライバを書いているときは,整数型のビット数を気にすることが多いです. C/C++ は歴史的に,整数型(shor,int,long など)のビット数が規格では決まっていませんでした. C++11 からは,ビット数を指定した整数型が標準的に定義されるようになりました. 型名 意味 intN_t N ビット幅の符号有り整数.N = 8, 16, 32,
自作 OS Advent Calendar 2017 1 日目の記事です. 筆者が大好きな C++ の機能の中で,OS を書く際に便利なもの 10 個を紹介する予定です. 自作 OS Advent Calendar の紹介 自作 OS Advent Calendar とは自作 OS に関係すること(自作 OS そのものの紹介,開発環境の話,デバイスドライバの話,などなど)を扱うアドベントカレンダーです. uchan_nos が把握する限り,自作 OS Advent Calendar の開催は今年で 3 度目です. 1 回目は Mopp さん主催の 自作 OS Advent Calendar 2014,2 回目は uchan_nos 主催の 自作 OS Advent Calendar 2016 です. C++ の機能 5 選 前編では,C++ の機能の中でも 2003 年の規格(C++03)
リクルートテクノロジーズでセキュリティアナリストをしている市田です。 前回に引き続き「シェルコードを学べるお弁当教室 ~ icchii bento cooking studio ~」の内容で、今回は、Linux 32ビット OSにおけるシェル奪取弁当についてお話しします。 シェルの取得 「コマンドシェルを攻撃者が利用可能になると、その権限の範囲で任意のコードが実行できる」、これが <<シェル> >を攻撃者に奪取される脅威です。 そしてもしもroot(admin)権限でシェルを取得されると、システム破壊も可能となります。たとえばログファイルも削除され、消息不明の迷宮入りのインシデント対応を余儀なくされることもあり得ます。root(admin)のパスワードは強固にかつ管理も徹底すべしと言われる所以です。本日はそのコマンドシェルを実行するシェルコード弁当を作ります。 Linuxなお客様用の弁当
1. (仮) このNetwork OS野郎!! ~ ネットワークOSの作り方 ~ 海老澤 健太郎@Ponto Networks, Inc. Twitter: @ebiken (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 1 2. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 2 世の中には2種類の野郎がいる (*) 野郎=ジェンダーを問わず 3. (仮) このNetwork OS野郎!! @インフラ野郎Night おかわり| 2017/04/14 | 海老澤 健太郎@Ponto Networks, Inc. 3 自作する野郎 ネットワークOS(NOS)を 自
この記事は Kobe University Advent Calendar25日目の記事です。 低レイヤー技術(後述)をこれから学びたい人向けの入門記事です。 自身の経験を踏まえ、より多くの人達にこのレイヤーに興味を持ってほしくて書きました。 決して卒論がやばくてAdvent calendarのネタが作れなかったわけでは(ry なぜこんな記事を書いたか いわゆるシステムプログラミングのような低レイヤー(と言って差し支えない)ジャンルって一体何から始めれば良いのかいまいちピンと来ないし、何が面白いのかも分からないと思われている事が多いと思います。 にもかかわらず低レイヤーの魅力や学び方の指針みたいな物を示した、いわゆる入門記事ってかなり少ないんですよね。 本記事はこれからシステムプログラミングを始めたい方や、既にかじってみたが中々先が見えてこない、将来何の役に立つのか不安という方達に読んでい
OSやシステムソフトウェアをメイントピックとする著名な国際会議を4つ紹介します。 SOSP OSDI EuroSys USENIX ATC SOSP (ACM Symposium on Operating Systems Principles) 概要 OSやシステムソフトウェアの分野における世界最高峰の国際会議。名称は "Operating Systems" だが、分散システム、ネットワーク、ストレージ、セキュリティ、組み込み等に関するシステムソフトウェア全般を幅広く扱う。 2年に1回しか開催されない(下記のOSDIと交互に開催) 第1回は1967年、2011年に第23回 最近7回(1999年〜2011年)の平均採択率は 17% (154本/885本) 1999 2001 2003 2005 2007 2009 2011 計 投稿 90 85 128 155 131 139 157 885
GitHubに400行以下で構成されたオペレーティングシステムが登録された。オペレーティングシステムは「resume_operating_system」と呼ばれている。開発の動機や仕組みなどに関する説明は「My resume in an Operating system」にまとまっている。オペレーティングシステムの基本構造を理解する際に役に立つ。 このオペレーティングシステムはMathieu Passenaud氏が学生時代に作成したオペレーティングシステムの基礎実装をまとめたもの。開発者の経歴を表示するだけという目的で作られた趣味的な取り組みの成果物であるため、明確に名称がついていない。GitHubに登録した名前が「resume_operating_system(経歴オペレーティングシステム)」であるため、この名称で呼ばれている。 resume_operating_systemではテキスト
今回は、前回紹介したCentOS 7.xの簡易テスト環境を使い、Dockerがない環境でファイルシステムの分離を体験する方法を紹介します。 改めて、Dockerがない環境でchrootだけを試すには、フリーLinux(CentOS 7.1など)を用意すれば簡単に体験できます。もしまだでしたら前回紹介した「CentOS 7.xを手元のWindows PCで手軽に試す方法」をご覧いただき、テスト環境を用意してください。 ともあれ、やってみると「これだけのこと?」と思うかもしれません。しかし、これが実現できることは、Dockerをこれから実践することにおいて非常に大きな意味を持ちます。ぜひ「ファイルシステムの分離」を理解していただきたいのです。 ステップ1:看守の作業 ~ホストOSにログイン~ ホストOS(監獄の看守側)であるCentOS 7.1にrootアカウントでログインします。看守はホスト
長岡技術科学大学 2015年度GPGPU実践基礎工学(全15回,学部3年対象講義) 第15回GPGPU開発環境�(OpenCL) 2015年度GPGPU実践基礎工学 ・第1回 学際的分野における先端シミュレーション技術の歴史 http://www.slideshare.net/ssuserf87701/2015gpgpu1 ・第2回 GPGPUの歴史と応用例 http://www.slideshare.net/ssuserf87701/2015gpgpu2 ・第3回 GPUクラスタ上でのプログラミング(CUDA) http://www.slideshare.net/ssuserf87701/2015gpgpu3 ・第4回 CPUのアーキテクチャ http://www.slideshare.net/ssuserf87701/2015gpgpu4 ・第5回 ハードウェアによるCPUの高速化技術
OS X 風のインタフェイスを搭載した Linux ディストリビューション『elementary OS』のレビューです。 elementary OS は Ubuntu がベースの Linux ディストリビューションで、軽量と美しいインタフェイスがウリのようです。Pantheon と呼ばれるデスクトップ環境で、触ってみた感じは OS X の要素を取り入れた GNOME という感じです。 今回はバージョン 0.2.1 Luna(32-bit)を使用しました。 アプリケーションランチャは Ubuntu と似たような感じです。標準ブラウザは Webkit 系の軽量ブラウザ『Midori』、写真管理やミュージックプレーヤなどは Linux の標準的なものがインストールされています。 デスクトップ下部には『Plank』によるドックが配置されます。シンプルで動きも良いです。テーマもいくつか用意されている
SPNのトレーニングなどで使っている演習環境と同じようなものを作りたいといった質問を受けることが多いので、ここに書いておく。 演習環境は仮想化ソフトで構築されていて、Windowsにインストールできるものとしては私も使っているVMware WorkstationやOracle VM VirtualBoxなどがある。 VMware Workstation(www.vmware.com) Oracle VM VirtualBox(www.virtualbox.org) Oracle VM VirtualBoxは無償なのに有償のVMware Workstationと同等の機能を持っているので、個人で勉強するならOracle VM VirtualBoxで十分だと思う。もちろん、スナップショットの機能もある。 VMware Playerも無償だが、標準ではスナップショットの機能が無く作業効率が悪いの
実際のOSのソースコードを示して解説する教科書といえば、TanenbaumのMINIXが有名である。本書は、Dougras ComerによるXINUというOSにつての同様の趣旨の本である。このような本があるという事は、以前から知ってはいた: XINU("XINU is Not UNIX"の略)オペレーティングシステムの開発について述べた優れた本。<中略>この本はオペレーティングシステム概論の授業の副読本としてうってつけで、UNIXカーネルの授業でLionsのテキストと一緒に使っても良いくらいだ。(『Life with UNIX』p.127) この記述は本書の初版本に関するもので、LSI 11というPDP-11をワンチップ化したハードウェアを対象に書かれたものである。Amazonで調べてみると、本書はその後、PC版やMac版が出ていたようである。しかし、長いこと絶版となっていた。 ところが最
PHPだってシェル経由でないコマンド呼び出し機能が欲しい コマンド実行でシェルが怖いなら使わなければいいじゃない どちらの記事でも Python の subprocess を使ってシェルを介在せずにコマンドを実行する方法が紹介されています。 シェルを介在すると、エスケープの問題考えるのが面倒だったり、 kill してみたらシェルだけ殺して肝心のコマンドがずっと残ってるというアホみたいな問題を避けられるのでお勧めです。 いい子はこれを使いましょう。 この記事ではどうしてもシェルの機能が使いたい場合や、 subprocess の PIPE の組み立てが面倒な場合のための、バッドノウハウを紹介していきます。 ちなみに、バッドノウハウと呼んでるのは、安全安心 one size fits all ではなく、メリット・デメリット・やり方をいちいち調べないといけなくて、しかもその調べる行為がほとんどコン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く