並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 218件

新着順 人気順

POSIXの検索結果41 - 80 件 / 218件

  • OpenBSD、予測不可能なrand関数を実装(ただしPOSIX違反) | スラド デベロッパー

    乱数が欲しいとき、言語の標準関数にrandやrandomという名前の関数があればそれを使うのは自然であろう。しかし、Cのrandはランダムではない。むしろ規定されているのはランダムネスではなく、その逆、srandによる予測可能性である。それにも関わらず余りにも多くのコードが定数やpidや現在時刻をシードにして安心しきっている。OpenBSDはPOSIXを破って、そのそうなアホなコードでもランダムになるよう変更を行った。 今後しばらくOpenBSDでsrandによる再現可能性を必要とする場合にはsrand_deterministicを呼ぶ必要がある (srandのユースケースをすべて調査したあとで元に戻す可能性はあるが)。このような乱暴な手法でセキュリティを実現しようとする独善的態度には批判もありそうだ。

    • GitHub - nuta/nsh: A command-line shell like fish, but POSIX compatible.

      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

        GitHub - nuta/nsh: A command-line shell like fish, but POSIX compatible.
      • コマンドパイプラインの終了コード - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

        拡張 POSIX シェルスクリプト Advent Calendar 2013、18日目の記事です。 今日も書く暇がなかったので軽く済ませます。すみません。 今日は Twitter で @koie さん からシェルネタを振られたので、 勝手に採用して、もう少し詳しく紹介したいと思います。 コマンドの終了コード 実行したコマンドの終了コードはシェル変数 $? で取得できます。 $ true $ echo $? 0 $ false $ echo $? 1 $ grep 使用法: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information. $ echo $? 2

        • POSIX Threads (pthreads) for Win32

          Current release: 2.9.1 (2012-05-27) See the ANNOUNCEMENT and NEWS for details. Pthreads-w32 release 1.11.0 (2005-06-04) was the last series 1.x.x version! (Version 1.11.0 is a back-port of the 2.7.0 functionality and bug fixes. See the NEWS file inside the package for more information.) What is this project about? The POSIX 1003.1-2001 standard defines an application programming interface (API) fo

          • 革命の日々! ディレクトリ操作を asyncに行うのはもはやPOSIX non-comformance

            Linuxでは伝統的にディレクトリ操作(ファイルのrenameとか)を asyncに行なってきた。これはBSDなどよりも性能がいい理由の一つだったんだけど、クラッシュした時にとんでもない壊れ方をするのでまあ色々と評判が悪かった。 さて、じゃあこのようなシステムで安全なアプリケーションを書くためにはどうすればいいかという話になるが、頭の良い人がディレクトリに対してfdatasyncすればいいじゃん。と言い出して、みんなそれがPOSIX filesystem のルールだと思ってたんだな。 で、今回、aio_fsync()がなぜか write permissionを要求してるので、ディレクトリにaio_fsync()できねーじゃねーか。という規格の不整合を上訴したひとがいて、議論の結果「ディレクトリに操作に対してfdatasync()を要求するようなasyncなファイルシステムはPOSIX準拠じ

            • Star a very fast and Posix 1003.1 compliant tar archiver for UNIX

              Cdrtools ist eine Reihe von Befehlszeilenprogrammen, die es ermöglichen, CD/DVD/BluRay-Medien zu beschreiben. Es stammt von Jörg Schilling, der auch Schillix entwickelt hat. Die Suite enthält die folgenden Programme: cdrecord – Ein CD/DVD/BD-Brennprogramm readcd – Ein Programm zum Lesen von CD/DVD/BD-Medien mit CD-Klonfunktionen. cdda2wav – Das am weitesten entwickelte CD-Audio-Extraktionsprogramm

              • mmap+POSIXセマフォによる高速なプロセス間通信 - mp::ipc_vector - Blog by Sadayuki Furuhashi

                同じホストの異なるプロセスの間で、高速な通信を行いたいときがあります: fork() したプロセスと通信したい場合や、「アプリケーションたくさん → localhostのクライアントデーモン1つ → サーバー」という形で接続したい*1 *2 場合などなど。 あるいは共有リソースを管理するプロセスが必要なとき、具体的には memcached が localhost で動いるイメージ。 こんなときに高速なプロセス間通信がしたい。スレッドなみに高速だと嬉しい。 そこで、POSIXセマフォを使って排他制御をしつつ、mmap(2) を使って共有したメモリの上でデータをやりとりすることで、高速にプロセス間で通信を行えるようにするライブラリを作ってみました。 さっそくベンチマーク: 時間 スループット換算 UNIXドメインソケット 4.44 sec 25 MB/s ipc_vector(sleepなし)

                  mmap+POSIXセマフォによる高速なプロセス間通信 - mp::ipc_vector - Blog by Sadayuki Furuhashi
                • 「大岡裁き」ならぬ「POSIX裁き」 - Rich Lab. Blog

                  この記事はPOSIX原理主義 Advent Calendar 2016の9日目の記事です。 今日のテーマは、POSIXという規格で起こった一つの事件とその裁きを、大岡政談(大岡裁き)になぞらえて紹介します。 大岡政談とは何か そもそも大岡政談とは何でしょう?それはあの水戸黄門と共に時代劇の定番となった大岡越前をモデルにした(ほぼ創作上の)事件簿です。 実際の水戸黄門も諸国漫遊をしておらず、あれは創作物語だったのと同様に、大岡越前の名裁きとされる逸話も史実だと確認できているものは今のところ一つだけ*1で、あとは落語の囃と言われています。 創作であろうものの、その中でも特に有名なのが「三方一両損」 昔、大工の吉五郎という男が小判三両を無くした。それを左官の金太郎が拾い、幸い財布に吉五郎の名が入っていたことから善意で届けたところ、恥に感じた吉五郎は受け取りを拒否。やがて喧嘩になり、町奉行大岡様の

                    「大岡裁き」ならぬ「POSIX裁き」 - Rich Lab. Blog
                  • POSIX使えねー

                    Win32 APIに慣れた身としては、POSIXが使えなさ過ぎて困る。 まず、あまりにも機能が少ない。もちろん、POSIXは環境が用意するべき最低限の保証なのだから、こういうものなのかもしれないが、低機能は低機能だ。さらに、低級だ。 そもそも、APIの設計からしてひどい。まず、関数名が暗号のように短い。Windowsのやり方DoSomethingOrOtherExW(多数の引数)が最適とは言わないが、すくなくとも、Win32 APIの方が、どういう意味なのかはわかりやすい。関数名が十分に長いので検索もしやすい。さらに統一されたドキュメントもある。今の時代、関数名が長すぎて困るということはないのだ。当時のCコンパイラーが認識する識別子の長さに関係していたのか、あるいは単にUNIX文化が略語を好むのか。 POSIXのドキュメントと格闘した挙句、結局、ほとんどの場合、Boostにもっとマシなライ

                    • POSIX準拠とは本当はどういうことなのか?「POSIXで規定されたものだけを使う」ではありません - Qiita

                      POSIX 準拠とは 「POSIX準拠」とは移植性を高めるための POSIX が定義した要件を満たすことです。Linux/Unix用の多数のソフトウェアは POSIX に準拠しており、多くの環境での動作を実現しています。POSIX の要件には OS ベンダー向けとアプリケーションの開発者向けの要件があり、高い移植性の実現には双方が POSIX の要件を満たして開発する必要があります。POSIX が目標とする移植性とは実行ファイルのバイナリがそのまま動くことではなく「ソースコードレベルの移植性」です。つまり 「アプリケーションの移植性が高い」とは別の環境でのビルドとインストールが容易であるという意味です。例えば cURL、SQLite、bash などは POSIX 準拠のソフトウェアの例で、数多くの OS で動作しているという事実は POSIX 準拠であることの証明です。現在、数えきれないほ

                        POSIX準拠とは本当はどういうことなのか?「POSIXで規定されたものだけを使う」ではありません - Qiita
                      • POSIX原理主義でOAuthも侵略「火を吹くTwitter怪人“小鳥男”」 - Qiita

                        この記事は、POSIX原理主義の思想で世界征服を目論む秘密結社シェルショッカー日本支部がお送りします。 物語に登場する名称は一部を除き架空のものであり、実在する人名・団体名等とは一切関係ありません。 Twitterリア充祭、絶賛開催中 全世界70𥝱人(70𥝱人=70,000,000,000,000,000,000,000,000人)のプログラマーどもよ、メリークリスマス。私こそ秘密結社シェルショッカー日本支部のリッチー大佐である。 こんな時間に、しかもクリスマスの夜にQittaを訪れているお前たちなら当然、ひとりでネットと戯れているはずだな!しかし、ネットの向こうには、カノジョやデートスポット、高級な料理の写真とともに自分がいかに勝ち組であるかをTwitterでひけらかすリア充どもが、今まさに増殖している。しばらくの間、Twitterを開けばそんな奴らのツイートが洪水のように押し寄せる

                          POSIX原理主義でOAuthも侵略「火を吹くTwitter怪人“小鳥男”」 - Qiita
                        • Comparison of C/POSIX standard library implementations for Linux

                          Comparison of C/POSIX standard library implementations for Linux A project of Eta Labs. The table below and notes which follow are a comparison of some of the different standard library implementations available for Linux, with a particular focus on the balance between feature-richness and bloat. I have tried to be fair and objective, but as I am the author of musl, that may have influenced my cho

                          • perl 5.21.1+ で POSIX.pm が C99 functions を default で export する問題。 - tokuhirom's blog

                            https://github.com/yappo/p5-Geo-Coordinates-Converter/pull/1 Perl 5.21.1+ だと思うんだけど、POSIX.pm が C99 functions をサポートしていて、さらにそれを default で export してくる。具体的には round() とかそのへん。 具体的には以下のものね。 'strtold', # platform varying (C99) # C99 math qw/acosh asinh atanh cbrt copysign cosh erf erfc exp2 expm1 fdim fma fmax fmin fpclassify hypot ilogb isfinite isgreater isgreaterequal isinf isless islessequal islessgrea

                            • Posixメッセージキュー - s-kita’s blog

                              Introductionメッセージキューは、メッセージのリンク構造と考えることが出来る 各メッセージはレコードであり、各メッセージには送信側が指定した優先度が付いている。 メッセージの書き込みに際しては、そのキューにおいて何らかのプロセスがメッセージの到着を待っていることが要求されない。(パイプと対照的) メッセージキューはパイプと異なり、カーネル持続性(kernel persistence)を持つ。(パイプ、FIFOでは、それらが最後にクローズされる際に、残っているデータは破棄される。) PosixメッセージキューとSystem V メッセージキューの違いPosixメッセージキューからの読み出しは、常に最も高い優先度の最も古いメッセージを返す。System V メッセージキューでは、任意の優先度のメッセージを読み出すことが出来る。 Posixメッセージキューでは、空のキューにメッセージが

                                Posixメッセージキュー - s-kita’s blog
                              • Linux Tutorial: POSIX Threads

                                POSIX thread (pthread) libraries The POSIX thread libraries are a standards based thread API for C/C++. It allows one to spawn a new concurrent process flow. It is most effective on multi-processor or multi-core systems where the process flow can be scheduled to run on another processor thus gaining speed through parallel or distributed processing. Threads require less overhead than "forking" or s

                                • NuttXというPOSIXに対応した組み込みOSをためしてみる | DevelopersIO

                                  NuttXというPosix対応の組み込みOSを、STM32F4 Discoveryボードで動かしてみました。噂のSPRESENSEもこのOSで動いているそうです。(組み込みOSにしては)かなり高機能なので探検しがいがありますよ。 はじめに 組み込み向けOSとして最近ちょっと話題になっているNuttXを動かしてみました。POSIXに対応しているので、UNIXを知っている人なら馴染みのある使い方ができるのが特徴です。STM32 F4 Discoveryという開発ボードを使って動かしてみたのでレポートします。 組み込みOS 以前、組み込み向けのOSとしてAmazon FreeRTOSを紹介しましたが、組み込み向けのOSは他にもいろいろな種類があります。 組み込み向けのOSは、規模や機能がピンキリで、単にスレッドを管理するモニター的な薄い軽量OSから、ちゃんとデバイスドライバーやシェルを装備したフ

                                    NuttXというPOSIXに対応した組み込みOSをためしてみる | DevelopersIO
                                  • 日本語対応 wdiff で単語ごとの差分表示 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

                                    日本語対応 wdiff で単語ごとの差分表示 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog Doc-ja Advent Calendar 2013 兼 拡張 POSIX シェルスクリプト Advent Calendar 2013、12日目の記事です。 今日は翻訳作業に役立つツールを 2つ紹介します。 単語ごとの差分を表示する wdiff コマンドと、 その日本語対応版 jwdiff コマンドです。 wdiff の紹介 wdiff はテキストデータの差分を単語ごとに示してくれるツールです。 一般的によく利用されるテキストデータ差分表示ツールである diff は、 行ごとに差分を表示します。 $ diff -u en.txt.old en.txt --- en.txt.old 2013-12-12 02:16:42.309525648

                                      日本語対応 wdiff で単語ごとの差分表示 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog
                                    • シェルスクリプト初期化処理のお約束 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

                                      拡張 POSIX シェルスクリプト Advent Calendar 2013、24日目の記事です。 アドベントカレンダーって 24までらしいですよ? 今日で最終日ですよね?! ねっ??? あれ、25日まであるのもチラホラ? 後半、奇跡的にネタが発生したりしてなんとか間に合いましたが、もう進捗駄目です。 明日は期待しないでください。今日も適当な内容でごめんなさい。 実質的に最後の今日のお第は、シェルスクリプトの最初にすべきことです。 Perl スクリプトで use strict; use warnings; がお約束になっているように、 シェルにもいくつかお約束があります。 #!/bin/sh set -u set -e umask 0750 export PATH="/bin:/usr/bin" export LANG="C" ## 以降、好きに書け! set -u (必須) シェルオプシ

                                      • posix-commands/015-cd.md at master · EzoeRyou/posix-commands

                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                          posix-commands/015-cd.md at master · EzoeRyou/posix-commands
                                        • POSIX close(2) is broken

                                          In the world of POSIX, everything is a file. Well, sort of. There's sockets and pipes, which behave rather like files except that you can't seek on them and they have some extra metadata. And there's devices, where sometimes you can only read and write appropriately-sized blocks, not individual bytes. And then there's terminals, which are all sorts of weird. But in all these cases, you've got a fi

                                          • ロケールに影響されずにGNU互換のstrftime(3)が使えるPOSIX::strftime::Compilerというモジュールを書きました - blog.nomadscafe.jp

                                            1週間ぐらいtrialでしたが、Windowsでも動いたようなので0.10を出しました。すごーーーく、、、、ニッチです https://metacpan.org/release/POSIX-strftime-Compiler https://github.com/kazeburo/POSIX-strftime-Compiler POSIX::strftime::CompilerはGNU互換で、ロケールの設定に影響を受けないstrftime(3)を提供します。WindowsでもGNU互換の文字が使えます。おそらくloggerとかloggerとかloggerに便利です $ LC_ALL=ja_JP.UTF-8 perl -Ilib -MPOSIX::strftime::Compiler -E ' say POSIX::strftime::Compiler::strftime(q!%d/%b/%

                                            • C11/C++11/POSIXスレッドAPI比較 - yohhoyの日記

                                              C11標準ライブラリ、C++11標準ライブラリ、POSIXスレッドのスレッドライブラリ(Pthreads) API比較。 各スレッドライブラリAPIを、“スレッド”、“CallOnce”、“排他制御(mutex)”、“条件変数(condition variable)”、“TLS(Thread Local Storage)”、その他機能に分類して比較する。表記簡略化のためC++11標準ライブラリは名前空間stdを省略している。 概略: C11はISO/IEC JTC1/SC22/WG14 N1570、C++11はISO/IEC JTC1/SC22/WG21 N3337、POSIXはIEEE Std 1003.1-2008に基づく。 C11標準ライブラリとPOSIXスレッドライブラリのAPI体系はほぼ同一。*1 C++11標準ライブラリはC11標準ライブラリ提供のスレッドサポート機能を包含し、

                                                C11/C++11/POSIXスレッドAPI比較 - yohhoyの日記
                                              • zsh でシェルスクリプトを書くときの留意点 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

                                                拡張 POSIX シェルスクリプト Advent Calendar 2013、3日目の記事です。 初日に「bash を避けて ksh や zsh で書くとスクリプトが速くなるよ!」 と紹介しましたが、実は zsh でふつうの sh なシェルスクリプトを書くと、色々ハマれます。 何が問題でどうすればいいのでしょうか。 いきなりですが、最初にどうすればいいかを紹介します。 スクリプトの先頭を以下のように書くだけです。 zsh は sh, ksh, csh (誰が使うの?) のエミュレーション機能を持っていて、 それを切り替えるのが組込みコマンド emulate です。 -R オプションを指定すると、各種シェルオプション (zshoptions(1) を参照) を指定したシェルエミュレーションに合ったデフォルト値にリセットします。 こうすることで概ね POSIX sh 互換の動きとなり、概ね P

                                                • read コマンドの使い方 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

                                                  拡張 POSIX シェルスクリプト Advent Calendar 2013、13日目の記事です。 今日のネタは組込みコマンド read の解説と使い方を紹介します。 read コマンドとは? read の基本仕様・動作は次の通りです。 シェルの組込みコマンドである。 標準入力を読み、一行読み込むか EOF になると終了する。 終了コードは、行を読み込めたときは 0、 読み込めなかったとき (EOF も含む) は 1 となる。 引数にシェル変数名が指定されていたら読み込んだ行を変数に格納する。 読み込んだ行の末尾に改行が付いていたら削除した値となる。 引数のシェル変数名が複数指定されていたら区切り文字 (デフォルトはスペースとタブ。シェル変数 $IFS の値) で分割して変数に格納する。 入力の区切り文字はバックスラッシュ \ で分割をエスケープすることができる。 代表的なオプションは次の

                                                  • 鬼車+Unicodeの\[\[:print:\]\]はPOSIX流じゃないらしい - moriyoshiの日記

                                                    追記: どっちが正しいとかそういう話ではないので念のため...。 追記2: Technical ReportがAnnexとなっていたのを修正。 追記3: 微妙に誤解があった部分を修正。結論としては同じ。 id:ockeghem さんの、 「POSIX正規表現の[:print:]は改行やタブがマッチするかどうかがPerlとPHPで異なりますね。Perlはマッチしない、PHPはマッチする。どっちが正しいんだ? 」というつぶやきを見て、いろいろ調べてみたんですが、 今回はPHPのせいじゃなかった みたいなのでいろいろほっとしました。 さて、まずは試してみる PHP: <?php foreach (str_split("\x09\x0a\x0d a") as $c) { var_dump(ord($c)); echo "preg_match(): "; var_dump(preg_match("(

                                                      鬼車+Unicodeの\[\[:print:\]\]はPOSIX流じゃないらしい - moriyoshiの日記
                                                    • echo コマンドの違いと移植性の問題 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

                                                      echo コマンドの違いと移植性の問題 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog 拡張 POSIX シェルスクリプト Advent Calendar 2013、8日目の記事です。 今日はシェルや OS ごとに微妙に異なる echo コマンドの違いを紹介します。 echo コマンドの挙動は大きく分けて 2種類あります。 BSD 系 echo コマンドの挙動 引数に指定された文字列をそのまま出力します。 複数の文字列が指定された場合はスペース (0x20) 一文字で区切られます。 最後に改行を出力しますが、最初の引数が -n のときはオプションとして認識し、 最後の改行を出力しません。 $ echo foo foo $ echo foo bar foo bar $ echo 'foo\nbar' foo\nbar $ echo f

                                                      • Mitzyuki's Blog :: posix shell で標準入力同士の <i>diff</i> (1) を実現する方法

                                                        posix shell で標準入力同士の diff (1) を実現する方法 コマンド command1 の出力結果と コマンド command2 の出力結果を diff (1) で比較したい場合、 一番手軽なのはそれぞれの出力を一時ファイルに出力して比較する方法である。 $ command1 > ${TMP:-/tmp}/output1 $ command2 > ${TMP:-/tmp}/output2 $ diff ${TMP:-/tmp}/output1 ${TMP:-/tmp}/output2 : $ rm ${TMP:-/tmp}/output1 ${TMP:-/tmp}/output2 しかし、この方法では一時ファイルを作成するので 処理効率が悪く一時ファイルの削除など後処理をする必要がある。 例えば bash (1) の場合は以下の様にする事で簡単に比較できる。 $ diff

                                                        • Strategies for Implementing POSIX Condition Variables on Win32

                                                          Strategies for Implementing POSIX Condition Variables on Win32 Douglas C. Schmidt and Irfan Pyarali Department of Computer Science Washington University, St. Louis, Missouri 1. Introduction The threading API provided by the Microsoft Win32 [Richter] family of operating systems (i.e., Windows NT, Windows '95, and Windows CE) provides some of the same concurrency constructs defined by the POSIX Pthr

                                                          • シェルの歴史 総まとめ(種類と系統図)と POSIX の役割 〜 シェルスクリプトの現在・過去・未来【POSIX改訂間近】 - Qiita

                                                            シェルの歴史 総まとめ(種類と系統図)と POSIX の役割 〜 シェルスクリプトの現在・過去・未来【POSIX改訂間近】ShellScriptBashUNIXPOSIXksh はじめに Linux / Unix をターミナルから使う時に使用するソフトウェアがシェルです。シェルの役目は CLI ベースのユーザーインターフェースとしてユーザーからの操作でプログラム(主に CLI コマンド)の実行を仲介したり、その操作を自動化するためのシェルスクリプトを実行する機能を持っています。現在最も使用されているシェルは GNU プロジェクトが開発している bash ですが、OS によって異なるさまざまなシェルが使われています。 シェルの最低限の仕様は POSIX で標準化されています。この標準規格に準拠しているシェルは「POSIX(準拠)シェル」と一般的に呼ばれています。シェルは大別すると「POSIX

                                                              シェルの歴史 総まとめ(種類と系統図)と POSIX の役割 〜 シェルスクリプトの現在・過去・未来【POSIX改訂間近】 - Qiita
                                                            • ShellSpec | BDD unit testing framework for shell scripts (bash, ksh, zsh, dash and all POSIX shells)

                                                              Let’s have fun testing your shell scripts! ShellSpec is a full-featured BDD unit testing framework for dash, bash, ksh, zsh and all POSIX shells that provides first-class features such as code coverage, mocking, parameterized test, parallel execution and more. It was developed as a dev/test tool for cross-platform shell scripts and shell script libraries. ShellSpec is a new modern testing framewor

                                                              • POSIXとは - IT用語辞典

                                                                概要 POSIX(Portable Operating System Interface)とは、主にUNIX系OSに共通する機能などについて、プログラムからの呼び出し方法(API:Application Programming Interface)などの標準を定めた規格。IEEEによって標準化された。 オペレーティングシステム(OS)の中核部であるカーネルの機能を呼び出すシステムコールをC言語から利用するためのAPI仕様や標準ライブラリ関数などを定めており、POSIX仕様のみを用いて開発されたプログラムはPOSIX準拠のOSならばどれでも同じように動作させることができる。 API以外にも、シェルのコマンド体系や、プロセスやスレッド、シグナル、パイプ、I/Oインターフェース、ファイルやディレクトリの構成、パスワードファイルなどのシステムデータベースの形式、アーカイブファイルの形式などについて

                                                                  POSIXとは - IT用語辞典
                                                                • バイナリーデータの扱い方 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

                                                                  http://blog.ueda.asia/?p=1549 「ほう…」と思い覗いてみたのですが、「『シェル芸』か?」という内容でした。 ふつうに外部のイメージ処理コマンド使っているじゃん! まあ、いいんですけどね。 人には言わない心の叫びです。気にしないでください。 外部コマンドとの華麗なコラボもシェルスクリプトの醍醐味の一つです。 後日、私と同じ感想を持った人がいて、それを受けて blog 記事が追加されました。 http://blog.ueda.asia/?p=1616 なるほどー。sed とか awk とか便利だよねー…って、これも「シェル芸」と言えるだろうか? 「芸」というと、もうちょっと、なんというか、その、あれ。 まあ、いいんですけどね。シェルももっと頑張れるんだー…っていうか、ね。 …というわけで、元ネタである 「JPEG ファイルから EXIF 等のアプリケーション付加情報

                                                                  • POSIXコマンドチートシート(を作る) - Qiita

                                                                    この記事の説明 POSIX規格で用意されているコマンドとその概要が一覧できるページ(チートシート)が欲しいという要望をもらった。もちろんThe Open GroupのPOSIXのページへ行って、1つ1つのコマンドのページを開けばわかることはわかるのだが、概要という形では一覧できない。 確かにそうだと思ったので、生成することにした。もちろんPOSIX原理主義(極力POSIXの範囲のコマンド)1で。 そこはやっぱ意地でしょ。 というわけで、まずは生成したチートシートをどうぞ。 これが、POSIXの範囲で使えるコマンド一覧だ! admin - create and administer SCCS files (DEVELOPMENT) alias - define or display aliases ar - create and maintain library archives asa -

                                                                      POSIXコマンドチートシート(を作る) - Qiita
                                                                    • ~sircmpwn/shit - An implementation of git in (almost) pure POSIX shell - sourcehut git

                                                                      #shit shit == Shell Git This is an implementation of Git using (almost) entirely POSIX shell. Caveats: There are a couple of GNU coreutilsisms, which are marked with "XXX: GNUism" throughout. They have been tested on BusyBox as well. A native zlib implementation is required: zlib Why the fuck would you use this #Status Enough plumbing commands are written to make this write the initial commit with

                                                                      • The benefits and costs of writing a POSIX kernel in a high-level language | USENIX

                                                                        The benefits and costs of writing a POSIX kernel in a high-level language This paper presents an evaluation of the use of a high-level language (HLL) with garbage collection to implement a monolithic POSIX-style kernel. The goal is to explore if it is reasonable to use an HLL instead of C for such kernels, by examining performance costs, implementation challenges, and programmability and safety be

                                                                        • [C言語]POSIXスレッドを用いたechoサーバ « イイ!! プログラミング Blog

                                                                          サーバの仕組みとスレッド 通常、Webサーバなどは親プロセスがポートをListenし、接続があったら、子プロセスを生成し、その後の(クライアントへのデータ送信等の)処理は、子プロセスに任せるというフローをとる。 そうすることで、親プロセスはクライアントへデータ送信が終わるのを待つ必要がなくなり、どんどん接続を受けることが可能になる。 接続数が多くなると、当然、子プロセスが多くなり、サーバへの過負荷となる。 そこで、子プロセスではなく、スレッドでクライアントの処理を行うと負荷低減につながる((スレッドの生成は子プロセスの生成より軽量)) echoサーバのPOSIXスレッド化 [C言語]Socket間通信 echoサーバを作るで作成したechoサーバにptheadを組み込み、複数クライアントに対して同時処理ができるように改良する。POSIXスレッドについて知りたければ、まずは[C言語]POSI

                                                                          • POSIXスレッド - Wikipedia

                                                                            POSIXスレッド は、スレッドのPOSIX標準である。スレッド生成やスレッド操作の API を定義している。 POSIXスレッド標準を実装したライブラリは Pthreads と呼ばれることが多い。Pthreads は主にUnix系POSIXシステム(Linux や Solaris)で使われているが、Microsoft Windows 用実装も存在する。例えば、pthreads-w32 は Pthreads の API のサブセットをサポートしている[1]。 内容[編集] Pthreads はC言語のデータ型、関数、定数を定義している。その実装は pthread.h というヘッダファイルとスレッドライブラリにある。スレッドのスリープは unistd.h の sleep() もしくは time.h の nanosleep() を使用する。 データ型: pthread_t: スレッドへのハンド

                                                                            • パイプラインとサブシェルの問題はシェル依存 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

                                                                              パイプラインとサブシェルの問題はシェル依存 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog 拡張 POSIX シェルスクリプト Advent Calendar 2013、10日目の記事です。 そろそろネタが尽きそうです。 スクリプトの添削依頼や疑問・質問、やって欲しいネタをお待ちしております。 記事に反映できるかどうかは内容や私の実力次第ですが…。 今日はコマンドパイプラインを実行したときの変数のスコープの問題について紹介します。 「あー、パイプラインとサブシェルの問題だね。知っているよ!」という方も、 最後までお付き合いいただけると新しい発見があるかもしれません。 まずシェルスクリプトのお題として 「メンバー情報が空でないグループの数とグループ名の一覧をカンマ区切りで表示するスクリプトの作成」 を考えてみます。 実装のポイントは次

                                                                              • シリアル通信(POSIX編)

                                                                                [ C++で開発 ] シリアル通信プログラム(POSIX編) UNIX系OSでは、POSIX規格によりおおよそシリアル通信のシステムコール等が標準化されています。(POSIX.1-2001らしい) シリアル通信の設定に関するメモ シリアル通信(RS-232C)での設定について、最低限前提となる知識を整理します。 調歩同期式(無手順) スタートビッド、ストップビット キャラクタ(1文字)の前後に、文字を識別できるように必ず付けるのがスタートビットおよびストップビットです。スタートビットは1ビットですが、ストップビットは1ビット・1.5ビット・2ビットがあります。 パリティビット EVEN(偶数)、ODD(奇数)、なし、の3つから選択します。EVENまたはODDのときは、データビットとパリティビットの中でビットが1となる数をEVENまたはODDになるよう調整します。 ビットレート RTS Re

                                                                                • 🥜: A C to POSIX Shell Compiler you can Trust

                                                                                  Write portable shell scripts directly in C No shell scripting required. Try Pnut Pnut is an C to POSIX shell transpiler that can compile C programs into human-readable shell scripts. This unique approach ensures that your executables are highly portable, running seamlessly on any system with a POSIX-compliant shell. Say goodbye to the constraints of platform-specific binaries and embrace the futur