タグ

cに関するJxckのブックマーク (10)

  • Linux スケジューラーのコア実装とシステムコール - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに これは Linux Advent Calendar 2016 の第 11 日目の記事です。Linux のタスクスケジューラーのソースコードや関連するドキュメントなどを読んで分かったことをまとめました。とても長いです・・・ はじめにスケジューラーのアーキテクチャと重要な概念を紹介し、その後はスケジューラーコアとシステムコールの実装について分かったことを延々と述べます。調べきれなかったことや分からなかったことは TODO に残したので、コメント欄とかツイッターで教えてもらえると嬉しいです。間違いの指摘も大歓迎です。 ちなみに私が読

    Linux スケジューラーのコア実装とシステムコール - Qiita
    Jxck
    Jxck 2016/12/12
  • 2016年、C言語はどう書くべきか (前編) | POSTD

    (訳注:2016/3/2、いただいた翻訳フィードバックをもとに記事を修正いたしました。) (訳注:著者のMattより、「文中で明言はしていないが、この記事の内容はx86-64 Unix/Linux/POSIXでアプリケーションをプログラミングする場合にフォーカスしている。他のプログラミング領域では、対象とするシステムに応じた(例: 8-bitの組み込みシステム、10年前のコンパイラ、多くの異なるCPUアーキテクチャで動く必要のあるアプリケーション、Win/Linuxでのビルド互換性など)特有のアドバイスが必要」との補足を頂いております。) 以下の文章は2015年の始めに書いたドラフトで、今まで公開していませんでした。私のドラフト用フォルダの中で誰の目も引かなかったため、大部分が書いた時のままです。公開するにあたり、単純に2015年を2016年に変更しました。 必要な修正、改善、苦情があり

    2016年、C言語はどう書くべきか (前編) | POSTD
    Jxck
    Jxck 2016/02/19
  • How to C (as of 2016)

    How to C in 2016 This is a draft I wrote in early 2015 and never got around to publishing. Here’s the mostly unpolished version because it wasn’t doing anybody any good sitting in my drafts folder. The simplest change was updating year 2015 to 2016 at publication time. (Update: Many people have submitted revisions, notes, and improvements. All contributions have been incorporated throughout the pa

    Jxck
    Jxck 2016/01/12
  • やり直しC言語:複雑な宣言の読み方

    C言語は宣言文が非常に読みにくいことで有名で、後発のGo言語はこれを批判して宣言の構文を変えています。私もずっと読むのが苦手だったのですが、私の頭が悪いのではなく、C言語の仕様がヘン、ということらしい。 今まで飽きるほどこの手の解説は書かれてきてるわけですが、自分なりにまとめないと覚えた気がしないので、あえてまとめておきます。ここに書いてある内容は、「C言語ポインタ完全制覇」に詳しく書いてあります。 型の派生 C言語では、int, char, floatなどの基型から、配列やポインタを派生していくことができます。対象を並べたものが配列で、対象を指し示すのがポインタです。 配列やポインタからも配列やポインタを派生できるので、派生パターンは無限に存在します。 int int の配列 int の配列 の配列 ... int へのポインタ int へのポインタ へのポインタ ... int への

    やり直しC言語:複雑な宣言の読み方
    Jxck
    Jxck 2015/09/24
  • How to include C code in your Go package | Dave Cheney

    It looks like Go 1.4 will remove support for Go packages containing C code (as described below, don’t confuse this with CGO), so enjoy it while it lasts. This is a short post designed to illustrate how Go package authors can write package level functions in C and call them from Go code without using cgo. The code for this article is available on GitHub, https://github.com/davecheney/ccode. Some wa

    Jxck
    Jxck 2013/10/14
  • 今、Cで開発するためのスタンダードを知るための本 - L'eclat des jours(2013-09-30)

    _ 今、Cで開発するためのスタンダードを知るための 例によってアスキーの鈴木さんから、をもらった。花井さんのモダンC言語プログラミングだ。なお、似たような題の洋書があって、しかも花井さんは翻訳もするので、そのの翻訳書と勘違いされる可能性もありそうだが、完全にオリジナルだ。 Cは、Unixと共に(というか少し遅れて)生まれたということは、すでに40年以上の歴史があり、それだけの年月がたてば、COBOLなどと同じく老害言語と言われてもこれっぽっちもおかしくはない。 ところが、COBOLと異なり開発者市場がどんどん先細り(あるいは固定化)されるということはなく、むしろ増えている。それどころか最近の調査では最も利用されている(TIOBE 2013)。 一方、C++が先鞭をつけたビジネスプログラミングへのオブジェクト指向プログラミングの適用は、Java、Objective-C、C#と種類を増や

    Jxck
    Jxck 2013/10/02
    読んでおいてもいいのかも。
  • Learning C with gdb - Blog - Recurse Center

    Coming from a background in higher-level languages like Ruby, Scheme, or Haskell, learning C can be challenging. In addition to having to wrestle with C’s lower-level features like manual memory management and pointers, you have to make do without a REPL. Once you get used to exploratory programming in a REPL, having to deal with the write-compile-run loop is a bit of a bummer. It occurred to me r

    Learning C with gdb - Blog - Recurse Center
    Jxck
    Jxck 2012/08/28
    C と GDB のチュートリアル。 この辺にフォーカスした記事とか久々に見たかも。
  • C言語(NW)とWebサーバのお勉強「Portable minimal web servers」を読む - Born Neet

    論文の内容 翻訳しようかと思いましたが、あんまりコードの説明もなさそうだったのでやめときました。 たぶん、 Apacheとか複雑なのもいいけど、シンプルさも大事でしょ? ちょっとCとbashで作ってみたから、紹介するよ! GPLだからご自由にどうぞ。 みたいなことが書いてあるはずです。 動作確認 ソースを読む前に、まずは動くか確認。 …以下の手順で問題なく動きました。 準備 cd /Users/t/c/szerver mkdir htdocs echo test > htdocs/index.html 設定変更 vi szerver.c #define PORT 8080 #define DOCUMENTROOT "/Users/t/c/szerver/htdocs" コンパイル gcc szerver.c -o szerver 実行 ./szerver.c NW通信の警告popupが出た

  • CODE CODIUM./Scribbles/webmaster/314

    コンピュータにちょっと詳しい人なら一発で解るポインタの利点 前提知識 前提知識として、ショートカットファイル(シンボリックリンク)、ファイル、ファイルパス、ハードディスクの役割について知っていれば、たぶん一発で解ります。 ポインタ変数をコンピュータで喩えると… ポインタ変数をコンピュータで喩えると、ポインタ変数、変数、アドレス、メモリ空間の関係は、それぞれ ポインタ変数=ショートカットファイル 変数=ファイル アドレス=ファイルパス メモリ空間=ハードディスク に対応します。察しの良い人ならこれだけでポインタの利点が分かると思いますが、以下で詳しく説明します。 ショートカットファイルの利点、ポインタ変数の利点 たとえば、C:\documentsに巨大なサイズのファイルがあったとします。あなたは 「このファイルにデスクトップ上からでもアクセスしたい」 と思いました。でもコピーすると時間かかる

    Jxck
    Jxck 2012/06/13
  • ポインタの裏話

    ポインタの裏話 岡﨑 直観 okazaki at ecei.tohoku.ac.jp http://www.chokkan.org/ @chokkanorg ポインタの裏話 プログラミング演習A 1 このような説明を 覚えていますか? 知らなくても全く問題ありません ポインタの裏話 プログラミング演習A 2 int x = 0; &xは変数xの「アドレス」 「番地」「住所」を返す 変数x 0 &x メモリ空間, 記憶空間 変数xのアド レス(住所) ポインタの裏話 プログラミング演習A 3 ____ / \ 何言ってたんだこいつ? / ⌒ ⌒\ 番地 アドレス ぬるぽ / (●) (●) \ \ / | 、“ ゙)(__人__)" ) __________ \ 。` ⌒゚:j´ ,/ j゙~~| | | | __/ \ |__| | | | || / , \n||

    Jxck
    Jxck 2012/06/04
  • 1