タグ付けされた質問 「unix」

Unixは、もともと1969年に開発されたマルチタスク、マルチユーザーのコンピューターオペレーティングシステムです。

10
ケントンプソンのコンパイラハックは依然として脅威ですか?
ケン・トンプソン・ハック(1984) Ken Thompsonは、1984年にコンパイラバイナリ(および* nixシステムのログインスクリプトのような他のコンパイル済みソフトウェア)を破壊する方法を概説しました。現代のコンパイルがこのセキュリティの欠陥に対処しているかどうか知りたいです。 簡単な説明: 2つの欠陥を含むようにコンパイラコードを書き直します。 独自のバイナリをコンパイルするとき、コンパイラはこれらの欠陥をコンパイルする必要があります 事前に選択された他のコード(ログイン関数)をコンパイルする場合、任意のバックドアをコンパイルする必要があります したがって、コンパイラは正常に動作します-ログインスクリプトなどをコンパイルするとき、セキュリティバックドアを作成でき、将来、それ自体の新しいバージョンをコンパイルするとき、以前の欠陥を保持します- そして、欠陥はコンパイラにのみ存在しますバイナリなので、検出が非常に困難です。 質問: 私はウェブ上でこれらに対する答えを見つけることができませんでした: これはジャストインタイムコンパイルとどのように関係しますか? * nixシステムでログインを処理するプログラムのような関数は、実行時にコンパイルされますか? これはまだ有効な脅威ですか、それとも1984年以降、これが重大な問題になるのを防ぐコンパイルのセキュリティの開発がありましたか? これはすべての言語に影響しますか? なぜ知りたいのですか? 宿題をしているときにこれに出くわしましたが、面白そうに思えましたが、これが現在の問題なのか、解決された問題なのかを具体的に理解する背景がありません。 参考資料 概要 いくつかのコード
156 linux  unix  compiler  hacking 

4
Unixパイプの正確な工夫は何ですか
ダグラス・マックロイがどのようにコンセプトを思いついたのか、そしてケン・トンプソンがそれを一晩でどのように実装したのかという話を聞いたことがあります。 私が理解している限り、パイプは、1つのプロセスが書き込みと他の読み取りを行う2つのプロセス間でメモリを共有するシステムコールです。 OSの内部や概念に精通していない人として、私はストーリーの「天才」とは一体何なのか疑問に思っていました。メモリを共有する2つのプロセスのアイデアですか?それとも実装ですか?または両方? PS:パイプの有用性やシェルでの使用方法を知っています。問題は、の概念と実装に関するものです|

5
C内からシェルコマンドを呼び出すことをお勧めしますか?
udevadm info -q path -n /dev/ttyUSB2Cプログラムから呼び出したいUNIXシェルコマンド()があります。おそらく約1週間の闘争で、私はそれを自分で再実装することができましたが、私はそれをしたくありません。 単に電話するのは広く受け入れられている良い習慣popen("my_command", "r");ですか?それは受け入れられないセキュリティ問題を引き起こし、互換性の問題を転送しますか?このようなことをするのは間違っているように感じますが、なぜそれが悪いのかを指で確かめることはできません。
50 c  unix  shell 

5
UNIX哲学のプログラミングは、関数型プログラミングと同じですか?
UNIXプログラミング環境(古典的なテキスト)は、プログラミングに対するUNIXのアプローチは、より複雑な問題を解決するために組み合わせることができる、小さく明確に定義されたツールを構築することであると述べています。CとBashシェルを学習する中で、これは広範なプログラミングの問題に対処するために使用できる強力な概念であることがわかりました。 Linuxプラットフォームを使用するだけで、コンセプトは非常に明確であり、常に使用されています。I / Oをリダイレクトし、ls、grepなどのシステムツールをリンクするコマンドラインで形成される式は、この概念がいかに強力かを示しています。 私を混乱させているのは、これらのプログラムの多くが命令型/手続き型プログラミングスタイルを使用してCで書かれていることですが、コマンドラインでの使用方法と結合方法は、各プログラムが機能的なプログラミングに似ているようです結合される可能性のある他のプログラムの状態に依存しない孤立した関数。 これは正確であり、UNIXプログラミングの哲学を理解することは、基本的に命令型プログラミングスタイルを使用して構築されたツールを使用した機能プログラミングです。

7
Windowsプログラミングの哲学はありますか?[閉まっている]
UnixとWindowsの両方の環境でプログラミングを行ってきました。私は主にUnixで働いており、そこでUnix Philosophyを学びました。 1つのことを行うプログラムを作成し、それをうまく実行します。 連携して動作するプログラムを作成します。 テキストストリームを処理するプログラムを作成します。これはユニバーサルインターフェースであるためです。 UnixとWindowsの世界では、プログラミングの文化に明らかな違いがあるようです。例えば: GUIとCLI レジストリと設定ファイル 特定のニーズに特化した多くのツールと組み合わせることができる汎用直交ツールのグループ Windowsの世界には「Unix哲学」に相当するものがありますか?Windowsからプログラミングに移行する際に、UnixプログラマーがWindowsから学習できること、または知っておくべきことは何ですか? Windowsプログラミングのベストプラクティス(およびWindowsとUnixの戦いではない)に焦点を当てた回答をお願いします。

8
UnixとLinuxの設計およびその他の面で基本的な違いはありますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 7年前に閉鎖されました。 私はこの文章を読み続けます: LinuxはUnixライクなシステムですが、Unixではありません。 両者の本当の違いはわかりません。LinuxはUnixから多くのアイデアを得ており、2つのライセンスは異なることを知っています。それとは別に、私はそれらのいずれかの専門家ではないので、デザインまたは他の重要な側面に基本的な違いがあるかどうかを知りたいです。

3
Unixソケットの簡単な説明
私は検索することができ、ウィキペディアのエントリや他の場所をすでに見てきましたが、プログラミングの経験はありますが、概念を実際には把握していません。私を10歳のように扱い、ソケット通信について明確な説明をお願いできますか?
20 unix  sockets 

12
一般的なUnixスキルのために誰かにインタビューする[非公開]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 * nixシェルの使用経験があると主張する開発者をどのようにテストしますか(明確にするために、誰かが* nixで開発できるかどうかはテストしたくありません。 ログファイルから情報を取得する問題を解決することを考えていました。これには、cat、grep、cutなどの基本的な作業と、パイピングの組み合わせが含まれます。 他にどんな基本的な知識を求めますか?繰り返しになりますが、これは* nixシステム用に開発する人へのインタビュー用ではなく、* nixシステム管理者用ではなく、* nixシステムで作業を行う必要のある通常の開発者用です。
20 interview  linux  unix  shell 

3
「kill」コマンドはなぜそう呼ばれますか?
killコマンドを「kill」と呼ぶことにしたのはなぜですか? つまり、このユーティリティはプロセスの終了によく使用されますが、実際には任意のシグナルの送信に使用できます。 少し混乱していませんか?おそらく、いくつかの歴史的な理由があります。 man killこのコマンドがVersion 3 AT&T UNIXに登場したことは、私が知っていることすべてです。

4
コマンドラインオプションスタイル-POSIXまたは何?
どこかで、次のようなWindowsスタイルとUnixスタイルの混在を使用したjava / javacに対する暴言を見ました java -classpath ... -ea ... Something 私見、それはミックスではありません、それはちょうどfind作品のようでもありませんか?知る限り、POSIXによると、構文は次のようになります。 java --classpath ... --ea ... Something そして-abcdef、一度に6短いオプションを指定することを意味します。どのバージョンが一般的にタイピングとエラーの減少につながるのだろうか。 私はJavaで小さなユーティリティを書いていますが、/a /b主にUnixに興味があるので、Windowsスタイルを使用するつもりはありません。どのスタイルを選ぶべきですか?

3
Linuxファイル名の小文字
UpperCaseは長い複雑な名前の最初の文字の単語の区切りで実際に読みやすいことがわかったので、UpperCaseでLinuxファイル名の一部を指定する傾向があります。ほとんどが実行可能ファイル、いくつかのディレクトリも。 しかし、Linux distribのすべてのファイル名の大部分は小文字であることに気付きました。 だから私は少し前にグーグルを作りました、そして私はこの記事を見つけました:Linux File Names、Unixの世界では常に小文字を使うべきだと述べています、 ... 大文字または大/小文字混合を使用する正当な理由が考えられない限り、Linuxでは常に小文字を使用するのが最善です。ほとんどのUnixの人々はほとんど排他的に小文字を使用しますが、この「文化的な」点は別として、小文字を使用するもう1つの正当な理由があります。LinuxでDOSファイルシステムを共有またはアクセスしている場合、DOSは大文字または大文字と小文字が混在したファイル名のファイルを表示できません... それは本当ですか?

2
Oracleディレクトリの名前が/ u01 / u02などであるのはなぜですか?[閉まっている]
閉じた。この質問には、詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善したいですか?詳細を追加し、この投稿を編集して問題を明確にします。 4年前に閉鎖されました。 私は数年前からOracle RDBMSを使用してきましたが、今日、n回インストールした後、なぜ/ u01、/ u02などにインストールするのでしょうか? もちろん、他の場所にインストールすることもできますが、何らかの理由で、この規則はどこでも使用されており、たとえば/ optに深刻なOracleのインストールを見たことはありません。 見逃した歴史の教訓は?
11 oracle  unix 

4
UNIXベースのシステムについて開発者は何を知っておくべきですか?
これはまだ誰からも質問されていないことに少し驚いていますが、UNIXベースのシステムでの作業について、すべての開発者が知っておくべきことは何ですか。 * nixの経験は非常に限られています。自分の目的でWindowsを使用する理由はまったくないからです。しかし、会社が* nixの経験を持つ人を理想的に望む2つのインタビューがあります。彼らが私がしたい申し出をするならば、私はそれを知ることに問題はありませんが、私の申し出の大部分がWindowsシステムを扱っているとき、それは投資の価値がありません。うまくいけば、これは理解可能です。 どのツールについて知っておくべきですか?私が知っておくべき癖がありますか?広く理解するためにすぐに読むことができる優れた簡潔なリソースはありますか?
8 unix 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.